diff --git a/api/app/lib/controllers/metadataAcquisition/adapter.js b/api/app/lib/controllers/metadataAcquisition/adapter.js
index 5fc86b2..b25ef50 100644
--- a/api/app/lib/controllers/metadataAcquisition/adapter.js
+++ b/api/app/lib/controllers/metadataAcquisition/adapter.js
@@ -65,7 +65,6 @@ function getAdapters(opts) {
}
}
-
module.exports = {
checkConnect,
addAdapter,
diff --git a/api/app/lib/controllers/metadataAcquisition/dataSource.js b/api/app/lib/controllers/metadataAcquisition/dataSource.js
index 5fdfac0..42f41f5 100644
--- a/api/app/lib/controllers/metadataAcquisition/dataSource.js
+++ b/api/app/lib/controllers/metadataAcquisition/dataSource.js
@@ -61,7 +61,53 @@ function getDataSource(opts) {
}
+// 修改数据源
+function editDataSource(opts) {
+ return async function (ctx, next) {
+
+ try {
+ const models = ctx.fs.dc.models;
+ const { id } = ctx.params;
+ const body = ctx.request.body;
+ await models.DataSource.update(
+ body,
+ { where: { id: id, } }
+ )
+ ctx.status = 204;
+ ctx.body = { message: '修改数据源成功' }
+ } catch (error) {
+ ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`);
+ ctx.status = 400;
+ ctx.body = { message: '修改数据源失败' }
+ }
+ }
+}
+
+// 删除数据源
+function deleteDataSource(opts) {
+ return async function (ctx, next) {
+
+ try {
+ const models = ctx.fs.dc.models;
+ const { id } = ctx.params;
+ await models.DataSource.destroy({
+ where: {
+ id: id
+ }
+ })
+ ctx.status = 204;
+ ctx.body = { message: '删除数据源成功' }
+ } catch (error) {
+ ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`);
+ ctx.status = 400;
+ ctx.body = { message: '删除数据源失败' }
+ }
+ }
+}
+
module.exports = {
addDataSource,
- getDataSource
+ getDataSource,
+ editDataSource,
+ deleteDataSource
}
\ No newline at end of file
diff --git a/api/app/lib/routes/metadataAcquisition/dataSource.js b/api/app/lib/routes/metadataAcquisition/dataSource.js
index 5192f80..3709aa2 100644
--- a/api/app/lib/routes/metadataAcquisition/dataSource.js
+++ b/api/app/lib/routes/metadataAcquisition/dataSource.js
@@ -4,11 +4,19 @@ const dataSource = require('../../controllers/metadataAcquisition/dataSource');
module.exports = function (app, router, opts, AuthCode) {
- app.fs.api.logAttr['POST/meta/acq/dataSource'] = { content: '增加模型信息', visible: true };
+ app.fs.api.logAttr['POST/meta/acq/dataSource'] = { content: '增加数据源信息', visible: true };
router.post('/meta/acq/dataSource', dataSource.addDataSource(opts))
//获取数据源列表
app.fs.api.logAttr['GET/meta/acq/dataSources'] = { content: '获取数据源列表', visible: true };
router.get('/meta/acq/dataSources', dataSource.getDataSource(opts));
+ // 修改数据源信息
+ app.fs.api.logAttr['PUT/acq/dataSource/:id'] = { content: '修改数据源信息', visible: true };
+ router.put('/acq/dataSource/:id', dataSource.editDataSource(opts))
+
+ // 删除数据源信息
+ app.fs.api.logAttr['DEL/acq/dataSource/:id'] = { content: '删除数据源信息', visible: true };
+ router.del('acq/dataSource/:id', dataSource.deleteDataSource(opts))
+
};
diff --git a/web/client/src/sections/metadataAcquisition/actions/dataSource.js b/web/client/src/sections/metadataAcquisition/actions/dataSource.js
index a4639b0..a9c0746 100644
--- a/web/client/src/sections/metadataAcquisition/actions/dataSource.js
+++ b/web/client/src/sections/metadataAcquisition/actions/dataSource.js
@@ -8,7 +8,7 @@ export function addDataSource(params, msg) {
type: 'post',
data: params,
dispatch,
- actionType: 'ADD_ADAPTER',
+ actionType: 'ADD_DATSOURCE',
url: ApiTable.addDataSource,
msg: {
option: msg || '新增数据源',
@@ -28,4 +28,29 @@ export function getDataSources(query) {
});
}
+export function deleteDataSource(id) {
+ return (dispatch) => basicAction({
+ type: 'del',
+ dispatch,
+ actionType: 'DELETE_ACQ_DATASOURCE',
+ url: ApiTable.modifyDataSource.replace('{id}', id),
+ msg: {
+ option: '模型删除',
+ },
+ });
+}
+
+export function modifyDataSource(id, params, msg) {
+ return (dispatch) => basicAction({
+ type: 'put',
+ data: params,
+ dispatch,
+ actionType: 'MODIFY_ACQ_DATASOURCE',
+ url: ApiTable.modifyDataSource.replace('{id}', id),
+ msg: {
+ option: msg || '模型编辑',
+ },
+ });
+}
+
diff --git a/web/client/src/sections/metadataAcquisition/components/adapterStep.js b/web/client/src/sections/metadataAcquisition/components/adapterStep.js
index 5f04479..eb2a4a4 100644
--- a/web/client/src/sections/metadataAcquisition/components/adapterStep.js
+++ b/web/client/src/sections/metadataAcquisition/components/adapterStep.js
@@ -4,25 +4,27 @@ import { Steps, Row, Col, Table, Button } from 'antd'
import { STEP_CONFIG } from './steps/index';
const AdapterStep = (props) => {
- const { type } = props;
+ const {
+ type = 'postgre',
+ stepProps = 3,//步骤配置 适配器显示3步 数据源显示2步
+ currentChange
+ } = props;
const [current, setCurrent] = useState(0);
const [stepOneValues, setStepOneValues] = useState();
const [stepTwoValues, setStepTwoValues] = useState({});
const { StepOne, StepTwo, StepThree } = STEP_CONFIG[type]; //记录第一页表单数据用于切换步骤时展示上一次填写的值
+ useEffect(() => {
+ currentChange(current)
+ }, [current]);
+
const next = () => {
- current < 2 && setCurrent(current + 1);
+ (current < 2 && current < stepProps - 1) && setCurrent(current + 1);
};
const prev = () => {
setCurrent(current - 1);
};
- const stepOneValuesFinish = (values) => {
- setStepOneValues(values)
- }
- const stepTwoValuesFinish = (values) => {
- setStepTwoValues(values)
- }
const onFinish = () => {
props.onFinish({
stepOneValues,
@@ -30,6 +32,14 @@ const AdapterStep = (props) => {
})
}
+ const stepOneValuesFinish = (values) => {
+ setStepOneValues(values)
+ }
+ const stepTwoValuesFinish = (values) => {
+ stepProps == 2 ? onFinish() : setStepTwoValues(values)
+ }
+
+
const steps = [
{
title: '配置数据源基本信息',
@@ -51,7 +61,7 @@ const AdapterStep = (props) => {
}));
return <>
-