Commit b25a1bac by zhaochengxiang

拆分模型导出

parent f213facb
......@@ -376,11 +376,13 @@ const EditModel = (props) => {
window.open(`/api/datamodeler/easyDataModelerExport/excel?ids=${_id}`);
} else if (val === 'word') {
window.open(`/api/datamodeler/easyDataModelerExport/word/template?ids=${_id}`);
} else if (val === 'basicExcel') {
window.open(`/api/datamodeler/easyDataModelerExport/modelBaseDataExcel?ids=${_id}`);
}
}
const onExportInfo = () => {
window.open(`/api/datamodeler/easyDataModelerExport/modelBaseDataExcel?ids=${modelerData?.id}`);
}
const onChangeCatalog = () => {
setRecatalogParams({
visible: true,
......@@ -513,6 +515,16 @@ const EditModel = (props) => {
>
导出
</PermissionButton>
<PermissionButton
type='primary'
onClick={onExportInfo}
ghost
permissionKey='导出模型信息'
defaultPermission={branchId?true:undefined}
permissions={privilege?.optionList?.filter(item => item.enabled)?.map(item => item.name)}
>
导出模型信息
</PermissionButton>
{
!branchId && <PermissionButton
type='primary'
......@@ -609,6 +621,7 @@ const EditModel = (props) => {
onExport={() => {
setExportParams({ visible: true })
}}
onExportInfo={onExportInfo}
onHistory={() => {
setHistoryAndVersionDrawerVisible(true)
}}
......@@ -723,7 +736,7 @@ const EditModel = (props) => {
export default EditModel;
const PhysicalModelApprovalBottom = ({ loading, type, data, modelerData, id, taskId, onChange, onOk, onHistory, onExport, onEdit }) => {
const PhysicalModelApprovalBottom = ({ loading, type, data, modelerData, id, taskId, onChange, onOk, onHistory, onExport, onExportInfo, onEdit }) => {
const [item, setItem] = useState()
const [waiting, setWaiting] = useState(false)
......@@ -751,6 +764,10 @@ const PhysicalModelApprovalBottom = ({ loading, type, data, modelerData, id, tas
onExport?.()
}
const onExportInfoClick = () => {
onExportInfo?.()
}
const onHistoryClick = () => {
onHistory?.()
}
......@@ -819,6 +836,7 @@ const PhysicalModelApprovalBottom = ({ loading, type, data, modelerData, id, tas
<div className='flex' style={{ width: '100%', justifyContent: 'space-between' }}>
<Space>
<Button type='primary' ghost onClick={onExportClick}>导出</Button>
<Button type='primary' ghost onClick={onExportInfoClick}>导出模型信息</Button>
<Button type='primary' ghost onClick={onHistoryClick}>历史版本</Button>
<Tooltip title={editTip}>
<Button type='primary' onClick={onEditClick} disabled={editDisabled}>编辑</Button>
......
......@@ -6,7 +6,7 @@ const exportModes = [
{ name: '导出Erwin', key: 'erwin' },
{ name: '导出Excel', key: 'excel' },
{ name: '导出Word', key: 'word' },
{ name: '导出模型信息', key: 'basicExcel' },
// { name: '导出模型信息', key: 'basicExcel' },
]
const ExportOtherModal = (props) => {
......@@ -63,7 +63,7 @@ const ExportOtherModal = (props) => {
forceRender
visible={visible}
title='模型导出'
width={700}
width={540}
onCancel={cancel}
footer={footer}
>
......
......@@ -117,7 +117,7 @@ class Model extends React.Component {
componentDidUpdate(prevProps, prevState) {
const { selectModelerIds, tableData, catalogId, permissions, currentView } = this.state;
if (selectModelerIds !== prevState.selectModelerIds || tableData !== prevState.tableData) {
let canExport = true, canStartFlow = true, canChangeCatalog = true, canDelete = true, canBatchAddTag = true, canBatchJoin = true;
let canExport = true, canExportInfo = true, canStartFlow = true, canChangeCatalog = true, canDelete = true, canBatchAddTag = true, canBatchJoin = true;
//分支管理返回的模型 都是有权限的
if (currentView !== 'branch') {
selectModelerIds?.forEach(id => {
......@@ -131,6 +131,8 @@ class Model extends React.Component {
modelItem.optionList?.forEach(item => {
if (item.name === '导出' && item.enabled === false) {
canExport = false;
} else if (item.name === '导出模型信息' && item.enabled === false) {
canExportInfo = false;
} else if (item.name === '送审' && (item.enabled===false||modelItem.state?.id!=='1')) {
canStartFlow = false;
} else if (item.name === '变更目录' && (item.enabled===false||!modelItem.supportRecatalog)) {
......@@ -167,6 +169,7 @@ class Model extends React.Component {
this.setState({
canExport,
canExportInfo,
canStartFlow,
canChangeCatalog,
canDelete,
......@@ -674,8 +677,6 @@ class Model extends React.Component {
window.open(`/api/datamodeler/easyDataModelerExport/excel?ids=${selectModelerIds.join(',')}`);
} else if (key === 'word') {
window.open(`/api/datamodeler/easyDataModelerExport/word/template?ids=${selectModelerIds.join(',')}`);
} else if (key === 'basicExcel') {
window.open(`/api/datamodeler/easyDataModelerExport/modelBaseDataExcel?ids=${selectModelerIds.join(',')}`);
}
});
}
......@@ -740,7 +741,7 @@ class Model extends React.Component {
}
render() {
const { importModalVisible, catalogId, loadingTableData, selectModelerIds, keyword, filterTableData, selectModelerNames, exportDDLModalVisible, exportOtherModalVisible, importStockWordDrawerVisible , loadingStates, modelStates, currentModelState, currentView, recatalogModalVisible, exportDDLModalReference, currentModel, offset, historyAndVersionDrawerVisible, modelerId, expandTree, showDeleteTip, colSettingModalVisible, visibleColNames, canExport, canStartFlow, canChangeCatalog, canDelete, canAdd } = this.state;
const { importModalVisible, catalogId, loadingTableData, selectModelerIds, keyword, filterTableData, selectModelerNames, exportDDLModalVisible, exportOtherModalVisible, importStockWordDrawerVisible , loadingStates, modelStates, currentModelState, currentView, recatalogModalVisible, exportDDLModalReference, currentModel, offset, historyAndVersionDrawerVisible, modelerId, expandTree, showDeleteTip, colSettingModalVisible, visibleColNames, canExport, canExportInfo, canStartFlow, canChangeCatalog, canDelete, canAdd } = this.state;
const classes = classNames('data-model', {
'data-model-collapse': !expandTree
......@@ -832,6 +833,17 @@ class Model extends React.Component {
</PermissionButton>
<PermissionButton
defaultPermission={canExportInfo}
tip={(selectModelerIds||[]).length===0?'请先选择模型':''}
onClick={() => {
window.open(`/api/datamodeler/easyDataModelerExport/modelBaseDataExcel?ids=${selectModelerIds.join(',')}`);
}}
disabled={(selectModelerIds||[]).length===0}
>
导出模型信息
</PermissionButton>
<PermissionButton
defaultPermission={canStartFlow}
tip={startFlowTip}
onClick={this.startFlow}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment