Commit 78f22d55 by zhaochengxiang

预览DDL

parent a75c0f44
...@@ -258,6 +258,10 @@ export function* getExportTableDDL(payload) { ...@@ -258,6 +258,10 @@ export function* getExportTableDDL(payload) {
return yield call(datamodelerService.getExportTableDDL, payload); return yield call(datamodelerService.getExportTableDDL, payload);
} }
export function* getPreviewTableDDL(payload) {
return yield call(datamodelerService.getPreviewTableDDL, payload);
}
export function* validateDataModel(payload) { export function* validateDataModel(payload) {
return yield call(datamodelerService.validateDataModel, payload); return yield call(datamodelerService.validateDataModel, payload);
} }
......
...@@ -245,6 +245,10 @@ export function getExportTableDDL(payload) { ...@@ -245,6 +245,10 @@ export function getExportTableDDL(payload) {
return Post("/datamodeler/easyDataModelerExport/getExportTableDDL", payload); return Post("/datamodeler/easyDataModelerExport/getExportTableDDL", payload);
} }
export function getPreviewTableDDL(payload) {
return Post("/datamodeler/easyDataModelerExport/getPreviewTableDDL", payload)
}
export function validateDataModel(payload) { export function validateDataModel(payload) {
return PostJSON("/datamodeler/easyDataModelerConstraint/validateDataModel", payload); return PostJSON("/datamodeler/easyDataModelerConstraint/validateDataModel", payload);
} }
......
...@@ -9,6 +9,7 @@ import { dispatchLatest, dispatch } from '../../../../model'; ...@@ -9,6 +9,7 @@ import { dispatchLatest, dispatch } from '../../../../model';
import { getDataModelerRole, getQueryParam, showMessage, showNotifaction } from '../../../../util'; import { getDataModelerRole, getQueryParam, showMessage, showNotifaction } from '../../../../util';
import { Action, CatalogId, ModelerId, Hints, ModelerData, PermitCheckOut, Editable, StateId, VersionId, Holder, DDL, RequireId, LogicId, MetadataId, DataModelerRoleReader } from '../../../../util/constant'; import { Action, CatalogId, ModelerId, Hints, ModelerData, PermitCheckOut, Editable, StateId, VersionId, Holder, DDL, RequireId, LogicId, MetadataId, DataModelerRoleReader } from '../../../../util/constant';
import HistoryAndVersionDrawer from './HistoryAndVersionDrawer'; import HistoryAndVersionDrawer from './HistoryAndVersionDrawer';
import PreviewDDL from './preview-ddl';
import './EditModel.less'; import './EditModel.less';
...@@ -21,6 +22,7 @@ const EditModel = (props) => { ...@@ -21,6 +22,7 @@ const EditModel = (props) => {
const [ confirmLoading, setConfirmLoading ] = useState(false); const [ confirmLoading, setConfirmLoading ] = useState(false);
const [ catalogModalVisible, setCatalogModalVisible ] = useState(false); const [ catalogModalVisible, setCatalogModalVisible ] = useState(false);
const [ historyAndVersionDrawerVisible, setHistoryAndVersionDrawerVisible ] = useState(false); const [ historyAndVersionDrawerVisible, setHistoryAndVersionDrawerVisible ] = useState(false);
const [previewDDLVisible, setPreviewDDLVisible] = useState(false);
const [user, setUser] = useState(); const [user, setUser] = useState();
const actionRef = useRef(''); const actionRef = useRef('');
...@@ -134,6 +136,10 @@ const EditModel = (props) => { ...@@ -134,6 +136,10 @@ const EditModel = (props) => {
} }
} }
const onPreviewDDLClick = () => {
setPreviewDDLVisible(true)
}
const save = async (e, cid = '') => { const save = async (e, cid = '') => {
try { try {
const row = await form.validateFields(); const row = await form.validateFields();
...@@ -283,6 +289,9 @@ const EditModel = (props) => { ...@@ -283,6 +289,9 @@ const EditModel = (props) => {
if (action==='add') { if (action==='add') {
actionsBtn = ( actionsBtn = (
<Space> <Space>
<Button onClick={onPreviewDDLClick}>
预览下发DDL
</Button>
<Button <Button
type='primary' type='primary'
onClick={save} onClick={save}
...@@ -327,6 +336,9 @@ const EditModel = (props) => { ...@@ -327,6 +336,9 @@ const EditModel = (props) => {
{/* <Button type='primary' onClick={onHistory} danger > {/* <Button type='primary' onClick={onHistory} danger >
版本历史 版本历史
</Button> */} </Button> */}
<Button onClick={onPreviewDDLClick}>
预览下发DDL
</Button>
<Button <Button
type='primary' type='primary'
onClick={save} onClick={save}
...@@ -374,6 +386,13 @@ const EditModel = (props) => { ...@@ -374,6 +386,13 @@ const EditModel = (props) => {
visible={historyAndVersionDrawerVisible} visible={historyAndVersionDrawerVisible}
onCancel={onHistoryAndVersionDrawerCancel} onCancel={onHistoryAndVersionDrawerCancel}
/> />
<PreviewDDL
modelerData={modelerData}
visible={previewDDLVisible}
onCancel={() => {
setPreviewDDLVisible(false)
}}
/>
</div> </div>
); );
} }
......
import React from "react"
import { Modal, Spin, Input } from 'antd'
import { dispatch } from '../../../../model'
const FC = (props) => {
const { visible, modelerData, onCancel } = props
const [loading, setLoading] = React.useState(false)
const [ddl, setDDL] = React.useState()
React.useEffect(() => {
if (visible && modelerData) {
getPreviewDDL()
}
}, [visible, modelerData])
const getPreviewDDL = () => {
setLoading(true)
dispatch({
type: 'datamodel.getPreviewTableDDL',
payload: {
data: modelerData,
},
callback: (data) => {
setLoading(false)
setDDL(data)
},
error: () => {
setLoading(false)
}
})
}
const close = () => {
setDDL()
onCancel?.()
}
return (
<Modal
visible={visible}
footer={null}
width='90%'
bodyStyle={{ padding: '15px' }}
title='预览下发DDL'
centered destroyOnClose
onCancel={() => { close() }}
>
<Spin spinning={loading}>
<Input.TextArea value={ddl??''} style={{ height: 'calc(80vh - 70px)', resize: 'none' }} />
</Spin>
</Modal>
)
}
export default FC
\ No newline at end of file
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