From 8241ccfc0a8f98e846b15116ce76a44ef92a9a2b Mon Sep 17 00:00:00 2001 From: wangchengming <15110151257@163.com> Date: Sun, 20 Apr 2025 19:52:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E6=9C=80=E6=96=B0=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/dataformatsRules.js | 4 +- src/api/datatypeConversionRules.js | 4 +- .../datawashing/dataformatsRules/index.vue | 66 +++---- .../dataformatsRules/rulesModel.vue | 101 +++++++---- .../datawashing/dataformatsRules/subPage.vue | 159 +++++++++++++++++ .../datatypeConversionRules/index.vue | 64 +++---- .../datatypeConversionRules/rulesModel.vue | 60 +++++-- .../datatypeConversionRules/subPage.vue | 168 ++++++++++++++++++ .../datawashing/deEmphasisRules/index.vue | 2 +- .../deEmphasisRules/modules/rulesModel.vue | 80 ++++++--- .../missingvalueRules/rulesModel.vue | 3 +- 11 files changed, 541 insertions(+), 170 deletions(-) create mode 100644 src/views/datawashing/dataformatsRules/subPage.vue create mode 100644 src/views/datawashing/datatypeConversionRules/subPage.vue diff --git a/src/api/dataformatsRules.js b/src/api/dataformatsRules.js index 5b9f145..d816314 100644 --- a/src/api/dataformatsRules.js +++ b/src/api/dataformatsRules.js @@ -5,11 +5,13 @@ const updateRules = (params)=>putAction("/dataFormatRules/updateRules",params); const deleteRules = (params)=>deleteAction("/dataFormatRules/deleteRules",params); const queryPage = (params)=>getAction("/dataFormatRules/queryPage",params); const queryById = (params)=>getAction("/dataFormatRules/queryById",params); +const queryRulesByTableName = (params)=>getAction("dataFormatRules/queryRulesByTableName",params); export { createRules, updateRules, deleteRules, queryPage, - queryById + queryById, + queryRulesByTableName } \ No newline at end of file diff --git a/src/api/datatypeConversionRules.js b/src/api/datatypeConversionRules.js index cff73e5..21e71a4 100644 --- a/src/api/datatypeConversionRules.js +++ b/src/api/datatypeConversionRules.js @@ -5,11 +5,13 @@ const updateRules = (params)=>putAction("/typeConversionRules/updateRules",param const deleteRules = (params)=>deleteAction("/typeConversionRules/deleteRules",params); const queryPage = (params)=>getAction("/typeConversionRules/queryPage",params); const queryById = (params)=>getAction("/typeConversionRules/queryById",params); +const queryRulesByTableName = (params)=>getAction("typeConversionRules/queryRulesByTableName",params); export { createRules, updateRules, deleteRules, queryPage, - queryById + queryById, + queryRulesByTableName } \ No newline at end of file diff --git a/src/views/datawashing/dataformatsRules/index.vue b/src/views/datawashing/dataformatsRules/index.vue index 6681c52..1f85efd 100644 --- a/src/views/datawashing/dataformatsRules/index.vue +++ b/src/views/datawashing/dataformatsRules/index.vue @@ -28,9 +28,9 @@ 查询 - + @@ -41,34 +41,33 @@
- 编辑 - - 删除 + 配置 +
- - + \ No newline at end of file diff --git a/src/views/datawashing/dataformatsRules/rulesModel.vue b/src/views/datawashing/dataformatsRules/rulesModel.vue index c566168..b3892ad 100644 --- a/src/views/datawashing/dataformatsRules/rulesModel.vue +++ b/src/views/datawashing/dataformatsRules/rulesModel.vue @@ -7,21 +7,15 @@ - - - - 完全去重 - - - 关键列去重 - - + + - - + + + 转大写 + 转小写 + @@ -32,7 +26,9 @@ import JCron from "@/components/jeecg/JCron"; import JSelectMultiple from '@/components/jeecg/JSelectMultiple' import { createRules, updateRules, queryById } from '@/api/dataformatsRules' - +import { querytableColumns } from '@/api/deEmphasisRules' +import { TreeSelect } from 'ant-design-vue'; +const SHOW_PARENT = TreeSelect.SHOW_PARENT; export default { name: "rulesModal", @@ -42,17 +38,19 @@ export default { }, data() { return { + SHOW_PARENT, title: "操作", visible: false, model: {}, confirmLoading: false, form: { tableName: null, - transfStrategy: null, - transfFileds: null + transfFileds: null, + transfStrategy: null }, rules: { tableName: [{ required: true, message: '请输入表名', trigger: 'blur' }], + transfFileds: [{ required: true, message: '请选择', trigger: 'change' }], transfStrategy: [{ required: true, message: '请选择', trigger: 'change' }] }, labelCol: { @@ -63,29 +61,65 @@ export default { xs: { span: 24 }, sm: { span: 16 }, }, - treeData: [] + treeData: [], + checkedList: [] } }, created() { // this.loadData(); }, - methods: { - add() { - this.form = { - tableName: null, - transfStrategy: null, - transfFileds: null - } - this.visible = true; - }, - eidt(recordId) { - queryById({ id: recordId }).then(res => { + methods: { + getQuerytableColumns(dataType, tableName) { + querytableColumns({ dataType: dataType, tableName: tableName }).then(res => { if (res.code == 200) { - this.form = res.result - this.visible = true; + this.treeData = [] + res.result.forEach(element => { + this.treeData.push({ + title: element, + value: element, + key: element, + }) + }); } }) }, + handleChange(value) { + if (value == 1) { + this.form.judgmentField = 'ALL' + } else { + + } + }, + add(tableName, dataType) { + this.getQuerytableColumns(dataType, tableName) + this.form = { + tableName: tableName, + transfFileds: null, + transfStrategy: null + } + this.checkedList = [] + this.visible = true; + }, + eidt(record, dataType1) { + console.log('sfdsafa',record, dataType1) + if (record.id) { + queryById({ id: record.id }).then(res => { + if (res.code == 200) { + this.form = res.result + this.checkedList = res.result.transfFileds.split(',') + } + }) + } else { + this.form = { + id: null, + tableName: record.tableName, + transfFileds: null, + transfStrategy: null + } + } + this.getQuerytableColumns(dataType1, record.tableName) + this.visible = true; + }, close() { this.visible = false; }, @@ -93,6 +127,7 @@ export default { this.$refs.ruleForm.validate(valid => { if (valid) { this.confirmLoading = true; + this.form.transfFileds = this.checkedList.join(',') if (!this.form.id) { createRules(this.form).then(res => { if (res.code === 200) { @@ -106,7 +141,7 @@ export default { } else { this.$notification.error({ message: '系统提示', - description: '操作失败' + description: res.message }) this.confirmLoading = false } @@ -124,7 +159,7 @@ export default { } else { this.$notification.error({ message: '系统提示', - description: '操作失败' + description: res.message }) this.confirmLoading = false } diff --git a/src/views/datawashing/dataformatsRules/subPage.vue b/src/views/datawashing/dataformatsRules/subPage.vue new file mode 100644 index 0000000..99b3a1a --- /dev/null +++ b/src/views/datawashing/dataformatsRules/subPage.vue @@ -0,0 +1,159 @@ + + \ No newline at end of file diff --git a/src/views/datawashing/datatypeConversionRules/index.vue b/src/views/datawashing/datatypeConversionRules/index.vue index 4325455..04a2a23 100644 --- a/src/views/datawashing/datatypeConversionRules/index.vue +++ b/src/views/datawashing/datatypeConversionRules/index.vue @@ -28,9 +28,9 @@ 查询 - + @@ -47,28 +47,27 @@ {{ moment(text).format('YYYY-MM-DD') }} --> - 编辑 - - 删除 + 配置 +
- - + \ No newline at end of file diff --git a/src/views/datawashing/datatypeConversionRules/rulesModel.vue b/src/views/datawashing/datatypeConversionRules/rulesModel.vue index 2328c8a..b921059 100644 --- a/src/views/datawashing/datatypeConversionRules/rulesModel.vue +++ b/src/views/datawashing/datatypeConversionRules/rulesModel.vue @@ -8,14 +8,8 @@
- - - 列1 - - - 列2 - - + @@ -38,7 +32,9 @@ import JCron from "@/components/jeecg/JCron"; import JSelectMultiple from '@/components/jeecg/JSelectMultiple' import { createRules, updateRules, queryById } from '@/api/datatypeConversionRules' - +import { querytableColumns } from '@/api/deEmphasisRules' +import { TreeSelect } from 'ant-design-vue'; +const SHOW_PARENT = TreeSelect.SHOW_PARENT; export default { name: "rulesModal", @@ -48,6 +44,7 @@ export default { }, data() { return { + SHOW_PARENT, title: "操作", visible: false, model: {}, @@ -78,6 +75,20 @@ export default { // this.loadData(); }, methods: { + getQuerytableColumns(dataType, tableName) { + querytableColumns({ dataType: dataType, tableName: tableName }).then(res => { + if (res.code == 200) { + this.treeData = [] + res.result.forEach(element => { + this.treeData.push({ + title: element, + value: element, + key: element, + }) + }); + } + }) + }, handleChange(value) { if (value == 1) { this.form.judgmentField = 'ALL' @@ -85,22 +96,33 @@ export default { } }, - add() { + add(tableName, dataType) { + this.getQuerytableColumns(dataType, tableName) this.form = { - tableName: null, + tableName: tableName, columnName: null, dataType: null, dataPrecision: null } this.visible = true; }, - eidt(recordId) { - queryById({ id: recordId }).then(res => { - if (res.code == 200) { - this.form = res.result - this.visible = true; + eidt(record, dataType1) { + console.log('sfdsafa',record, dataType1) + if (record.id) { + queryById({ id: record.id }).then(res => { + if (res.code == 200) this.form = res.result + }) + } else { + this.form = { + id: null, + tableName: record.tableName, + columnName: null, + dataType: null, + dataPrecision: null } - }) + } + this.getQuerytableColumns(dataType1, record.tableName) + this.visible = true; }, close() { this.visible = false; @@ -122,7 +144,7 @@ export default { } else { this.$notification.error({ message: '系统提示', - description: '操作失败' + description: res.message }) this.confirmLoading = false } @@ -140,7 +162,7 @@ export default { } else { this.$notification.error({ message: '系统提示', - description: '操作失败' + description: res.message }) this.confirmLoading = false } diff --git a/src/views/datawashing/datatypeConversionRules/subPage.vue b/src/views/datawashing/datatypeConversionRules/subPage.vue new file mode 100644 index 0000000..8c85b18 --- /dev/null +++ b/src/views/datawashing/datatypeConversionRules/subPage.vue @@ -0,0 +1,168 @@ + + \ No newline at end of file diff --git a/src/views/datawashing/deEmphasisRules/index.vue b/src/views/datawashing/deEmphasisRules/index.vue index 642d66d..bfac946 100644 --- a/src/views/datawashing/deEmphasisRules/index.vue +++ b/src/views/datawashing/deEmphasisRules/index.vue @@ -181,7 +181,7 @@ export default { this.$refs.modalForm.dataType = this.queryParam.dataType }, handleEdit(record) { - this.$refs.modalForm.eidt(record.tableName, this.queryParam.dataType); + this.$refs.modalForm.eidt(record, this.queryParam.dataType); this.$refs.modalForm.title = "配置"; }, handleRemove(recordId) { diff --git a/src/views/datawashing/deEmphasisRules/modules/rulesModel.vue b/src/views/datawashing/deEmphasisRules/modules/rulesModel.vue index 5eb258b..41b13e5 100644 --- a/src/views/datawashing/deEmphasisRules/modules/rulesModel.vue +++ b/src/views/datawashing/deEmphasisRules/modules/rulesModel.vue @@ -20,8 +20,7 @@ + :tree-data="treeData" multiple :show-checked-strategy="SHOW_PARENT" search-placeholder="请选项" /> @@ -104,9 +103,20 @@ export default { } this.visible = true; }, - eidt(tableName, dataType) { - this.form.tableName = tableName - this.getQuerytableColumns(dataType, tableName) + eidt(record, dataType) { + if (record.id) { + queryById({ id: record.id }).then(res => { + if (res.code == 200) this.form = res.result + }) + } else { + this.form = { + id: null, + tableName: record.tableName, + duplicationType: 1, + judgmentField: null + } + } + this.getQuerytableColumns(dataType, record.tableName) this.visible = true; }, close() { @@ -119,23 +129,45 @@ export default { this.form.judgmentField = this.checkedList.join(',') console.log('提交', this.form) - updateRules(this.form).then(res => { - if (res.code === 200) { - this.$notification.success({ - message: '系统提示', - description: res.message - }) - this.confirmLoading = false - this.$emit('fatherMethod') - this.handleCancel() - } else { - this.$notification.error({ - message: '系统提示', - description: res.message - }) - this.confirmLoading = false - } - }) + if (!this.form.id) { + + createRules(this.form).then(res => { + if (res.code === 200) { + this.$notification.success({ + message: '系统提示', + description: res.message + }) + this.confirmLoading = false + this.$emit('fatherMethod') + this.handleCancel() + } else { + this.$notification.error({ + message: '系统提示', + description: res.message + }) + this.confirmLoading = false + } + }) + } else { + + updateRules(this.form).then(res => { + if (res.code === 200) { + this.$notification.success({ + message: '系统提示', + description: res.message + }) + this.confirmLoading = false + this.$emit('fatherMethod') + this.handleCancel() + } else { + this.$notification.error({ + message: '系统提示', + description: res.message + }) + this.confirmLoading = false + } + }) + } } }); }, @@ -144,6 +176,4 @@ export default { }, } } - - - \ No newline at end of file + \ No newline at end of file diff --git a/src/views/datawashing/missingvalueRules/rulesModel.vue b/src/views/datawashing/missingvalueRules/rulesModel.vue index 633c67f..a54e4e2 100644 --- a/src/views/datawashing/missingvalueRules/rulesModel.vue +++ b/src/views/datawashing/missingvalueRules/rulesModel.vue @@ -97,7 +97,8 @@ export default { }) } else { this.form = { - tableName: null, + id: null, + tableName: record.tableName, stringStrategy: null, digitStrategy: null, dateTimeStrategy: null