Commit a6418024 by zhaochengxiang

DDL导出

parent 48208148
...@@ -246,6 +246,18 @@ export function* heartbeat() { ...@@ -246,6 +246,18 @@ export function* heartbeat() {
return yield call(datamodelerService.heartbeat); return yield call(datamodelerService.heartbeat);
} }
export function* downloadExportTableDDLListZip(payload) {
return yield call(datamodelerService.downloadExportTableDDLListZip, payload);
}
export function* exportTableDDLAbstractList(payload) {
return yield call(datamodelerService.exportTableDDLAbstractList, payload);
}
export function* getExportTableDDL(payload) {
return yield call(datamodelerService.getExportTableDDL, payload);
}
export function* validateDataModel(payload) { export function* validateDataModel(payload) {
return yield call(datamodelerService.validateDataModel, payload); return yield call(datamodelerService.validateDataModel, payload);
} }
......
import { PostFile, GetJSON, PostJSON, Post, Get, Delete } from "../util/axios" import { PostFile, GetJSON, PostJSON, Post, Get, Delete, callFetchRaw } from "../util/axios"
export function loadDataModelCatalog() { export function loadDataModelCatalog() {
return GetJSON("/datamodeler/easyDataModelerCURD/loadDataModelCatalog"); return GetJSON("/datamodeler/easyDataModelerCURD/loadDataModelCatalog");
...@@ -233,6 +233,18 @@ export function heartbeat() { ...@@ -233,6 +233,18 @@ export function heartbeat() {
return Get("/datamodeler/easyDataModelerExport/heartbeat"); return Get("/datamodeler/easyDataModelerExport/heartbeat");
} }
export function downloadExportTableDDLListZip(payload) {
return callFetchRaw("post","/datamodeler/easyDataModelerExport/downloadExportTableDDLListZip", payload);
}
export function exportTableDDLAbstractList(payload) {
return PostJSON("/datamodeler/easyDataModelerExport/exportTableDDLAbstractList", payload);
}
export function getExportTableDDL(payload) {
return Post("/datamodeler/easyDataModelerExport/getExportTableDDL", payload);
}
export function validateDataModel(payload) { export function validateDataModel(payload) {
return PostJSON("/datamodeler/easyDataModelerConstraint/validateDataModel", payload); return PostJSON("/datamodeler/easyDataModelerConstraint/validateDataModel", payload);
} }
......
import { AxiosResponse } from "axios"
export default function (res: AxiosResponse<any>) {
const blob = res.data
const headers = res.headers
let tempName = headers["content-disposition"]
?.split(";")?.[1]
?.split("filename=")?.[1]?.split(".")?.[0].replace(/"/g, "");
tempName = decodeURI(tempName);
// const blob = new Blob([content], { type: 'application/octet-stream' })
var url = (window.URL && window.URL.createObjectURL) ? window.URL.createObjectURL(blob) : window.webkitURL.createObjectURL(blob);
const link = document.createElement('a');
link.style.display = 'none';
link.href = url;
link.setAttribute('download', tempName); //or any other extension
document.body.appendChild(link);
link.click();
URL.revokeObjectURL(link.href) // 释放URL 对象
document.body.removeChild(link)
}
\ No newline at end of file
...@@ -8,7 +8,7 @@ import ModelTree from './Component/ModelTree'; ...@@ -8,7 +8,7 @@ import ModelTree from './Component/ModelTree';
import ModelTable from './Component/ModelTable'; import ModelTable from './Component/ModelTable';
import ImportModal from './Component/ImportModal'; import ImportModal from './Component/ImportModal';
import ImportStockWordDrawer from './Component/ImportStockWordDrawer'; import ImportStockWordDrawer from './Component/ImportStockWordDrawer';
import ExportDDLModal from './Component/ExportDDLModal'; import ExportDDLModal from './Component/export-ddl';
import ExportOtherModal from './Component/ExportOtherModal'; import ExportOtherModal from './Component/ExportOtherModal';
import RecatalogModal from './Component/RecatalogModal'; import RecatalogModal from './Component/RecatalogModal';
import HistoryAndVersionDrawer from './Component/HistoryAndVersionDrawer'; import HistoryAndVersionDrawer from './Component/HistoryAndVersionDrawer';
...@@ -247,20 +247,7 @@ class ModelComponet extends React.Component { ...@@ -247,20 +247,7 @@ class ModelComponet extends React.Component {
return; return;
} }
//模型名称在导出ddl的时候有使用 this.setState({ exportDDLModalVisible: true });
const _selectModelerNames = [];
(selectModelerIds||[]).forEach(id => {
(tableData||[]).forEach(item => {
if (item.id === id) {
_selectModelerNames.push(item.name||'');
}
});
});
this.setState({ exportDDLModalVisible: true, selectModelerNames: _selectModelerNames, exportDDLModalReference: 'exportDDL' });
} }
onExportOtherBtnClick = () => { onExportOtherBtnClick = () => {
...@@ -771,10 +758,7 @@ class ModelComponet extends React.Component { ...@@ -771,10 +758,7 @@ class ModelComponet extends React.Component {
{ {
value => <ExportDDLModal value => <ExportDDLModal
visible={exportDDLModalVisible} visible={exportDDLModalVisible}
reference={exportDDLModalReference} ids={selectModelerIds}
ids={(exportDDLModalReference==='exportDDL')?selectModelerIds:[currentModel.id]}
names={selectModelerNames}
env={value?.env}
onCancel={this.onExportDDLModalCancel} onCancel={this.onExportDDLModalCancel}
/> />
} }
......
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