数据质量联调部分修改
Showing
6 changed files
with
47 additions
and
47 deletions
This diff could not be displayed because it is too large.
| ... | @@ -76,7 +76,7 @@ export const updateRuleBizState = (params) => request({ | ... | @@ -76,7 +76,7 @@ export const updateRuleBizState = (params) => request({ |
| 76 | 76 | ||
| 77 | /** 获取数据库表列表 */ | 77 | /** 获取数据库表列表 */ |
| 78 | export const getDatabase = (params) => request({ | 78 | export const getDatabase = (params) => request({ |
| 79 | url: `${import.meta.env.VITE_APP_API_BASEURL}/data-source/get-source-list`, | 79 | url: `${import.meta.env.VITE_APP_DATA_SOURCE_URL}/data-source/get-source-list`, |
| 80 | method: 'post', | 80 | method: 'post', |
| 81 | data: params | 81 | data: params |
| 82 | }) | 82 | }) |
| ... | @@ -138,23 +138,20 @@ export const getRuleTypeList = () => request({ | ... | @@ -138,23 +138,20 @@ export const getRuleTypeList = () => request({ |
| 138 | 138 | ||
| 139 | // 获取规则大类的接口 | 139 | // 获取规则大类的接口 |
| 140 | export const getLargeCategoryList = () => request({ | 140 | export const getLargeCategoryList = () => request({ |
| 141 | url:`${import.meta.env.VITE_APP_API_BASEURL}/data-dict/get-data-list`, | 141 | url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType?dictType=${'规则大类'}`, |
| 142 | method: 'post', | 142 | method: 'get', |
| 143 | data: { paramCode: "LARGE-CATEGORY" } | ||
| 144 | }) | 143 | }) |
| 145 | 144 | ||
| 146 | // 获取规则小类的接口 | 145 | // 获取规则小类的接口 |
| 147 | export const getSmallCategoryList = () => request({ | 146 | export const getSmallCategoryList = () => request({ |
| 148 | url:`${import.meta.env.VITE_APP_API_BASEURL}/data-dict/get-data-list`, | 147 | url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType?dictType=${'规则小类'}`, |
| 149 | method: 'post', | 148 | method: 'get', |
| 150 | data: { paramCode: "SMALL-CATEGORY" } | ||
| 151 | }) | 149 | }) |
| 152 | 150 | ||
| 153 | // 获取规范性检验规则。 | 151 | // 获取规范性检验规则。 |
| 154 | export const getCheckRulesList = () => request({ | 152 | export const getCheckRulesList = () => request({ |
| 155 | url:`${import.meta.env.VITE_APP_API_BASEURL}/data-dict/get-data-list`, | 153 | url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType?dictType=${'正则校验'}`, |
| 156 | method: 'post', | 154 | method: 'get', |
| 157 | data: { paramCode: "REGULAR_RULE" } | ||
| 158 | }) | 155 | }) |
| 159 | 156 | ||
| 160 | // 根据规则guid获取规则的详情信息。 | 157 | // 根据规则guid获取规则的详情信息。 | ... | ... |
| ... | @@ -144,7 +144,7 @@ const getMetaChangeTableData = () => { | ... | @@ -144,7 +144,7 @@ const getMetaChangeTableData = () => { |
| 144 | } | 144 | } |
| 145 | 145 | ||
| 146 | 146 | ||
| 147 | const activeTabName = ref('task'); | 147 | const activeTabName = ref('meta'); |
| 148 | 148 | ||
| 149 | watch(() => activeTabName.value, (val) => { | 149 | watch(() => activeTabName.value, (val) => { |
| 150 | if(val==="task"){ | 150 | if(val==="task"){ |
| ... | @@ -420,9 +420,7 @@ const metaChangeTableInfo = ref({ | ... | @@ -420,9 +420,7 @@ const metaChangeTableInfo = ref({ |
| 420 | // { label: "状态", field: "changeTime", width: 180, }, | 420 | // { label: "状态", field: "changeTime", width: 180, }, |
| 421 | // { label: "操作时间", field: "changeTime", width: 180, }, | 421 | // { label: "操作时间", field: "changeTime", width: 180, }, |
| 422 | ], | 422 | ], |
| 423 | data: [{ | 423 | data: [], |
| 424 | guid: 1 | ||
| 425 | }], | ||
| 426 | page: { | 424 | page: { |
| 427 | type: "normal", | 425 | type: "normal", |
| 428 | rows: 0, | 426 | rows: 0, |
| ... | @@ -486,6 +484,7 @@ onBeforeMount(() => { | ... | @@ -486,6 +484,7 @@ onBeforeMount(() => { |
| 486 | </div> | 484 | </div> |
| 487 | <div class="main_wrap"> | 485 | <div class="main_wrap"> |
| 488 | <el-tabs v-model="activeTabName"> | 486 | <el-tabs v-model="activeTabName"> |
| 487 | <!-- | ||
| 489 | <el-tab-pane label="同步任务变更记录" name="task"> | 488 | <el-tab-pane label="同步任务变更记录" name="task"> |
| 490 | <div class="table_tool_wrap"> | 489 | <div class="table_tool_wrap"> |
| 491 | <TableTools :searchItems="tableSearchItemList" :init="false" searchId="detect-table-search" | 490 | <TableTools :searchItems="tableSearchItemList" :init="false" searchId="detect-table-search" |
| ... | @@ -496,6 +495,7 @@ onBeforeMount(() => { | ... | @@ -496,6 +495,7 @@ onBeforeMount(() => { |
| 496 | @tablePageChange="taskChangeTablePageChange" /> | 495 | @tablePageChange="taskChangeTablePageChange" /> |
| 497 | </div> | 496 | </div> |
| 498 | </el-tab-pane> | 497 | </el-tab-pane> |
| 498 | --> | ||
| 499 | <el-tab-pane label="元数据变更记录" name="meta"> | 499 | <el-tab-pane label="元数据变更记录" name="meta"> |
| 500 | <div class="table_tool_wrap"> | 500 | <div class="table_tool_wrap"> |
| 501 | <TableTools :searchItems="metaTableSearchItemList" :init="false" searchId="meta-detect-table-search" | 501 | <TableTools :searchItems="metaTableSearchItemList" :init="false" searchId="meta-detect-table-search" | ... | ... |
| ... | @@ -238,12 +238,12 @@ const rulesDetailTableBtnClick = (scope, btn) => { | ... | @@ -238,12 +238,12 @@ const rulesDetailTableBtnClick = (scope, btn) => { |
| 238 | label: row.ruleName | 238 | label: row.ruleName |
| 239 | }]; | 239 | }]; |
| 240 | smallCategoryList.value = [{ | 240 | smallCategoryList.value = [{ |
| 241 | paramValue: detailInfo.value.smallCategory, | 241 | value: detailInfo.value.smallCategory, |
| 242 | paramName: row.smallCategory | 242 | label: row.smallCategory |
| 243 | }]; | 243 | }]; |
| 244 | largeCategoryList.value = [{ | 244 | largeCategoryList.value = [{ |
| 245 | paramValue: detailInfo.value.largeCategory, | 245 | value: detailInfo.value.largeCategory, |
| 246 | paramName: row.largeCategory | 246 | label: row.largeCategory |
| 247 | }]; | 247 | }]; |
| 248 | oneRulesDetailDialogVisible.value = true; | 248 | oneRulesDetailDialogVisible.value = true; |
| 249 | } else { | 249 | } else { |
| ... | @@ -268,12 +268,12 @@ const rulesDetailTableBtnClick = (scope, btn) => { | ... | @@ -268,12 +268,12 @@ const rulesDetailTableBtnClick = (scope, btn) => { |
| 268 | label: row.ruleName | 268 | label: row.ruleName |
| 269 | }]; | 269 | }]; |
| 270 | smallCategoryList.value = [{ | 270 | smallCategoryList.value = [{ |
| 271 | paramValue: detailInfo.value.smallCategory, | 271 | value: detailInfo.value.smallCategory, |
| 272 | paramName: row.smallCategory | 272 | label: row.smallCategory |
| 273 | }]; | 273 | }]; |
| 274 | largeCategoryList.value = [{ | 274 | largeCategoryList.value = [{ |
| 275 | paramValue: detailInfo.value.largeCategory, | 275 | value: detailInfo.value.largeCategory, |
| 276 | paramName: row.largeCategory | 276 | label: row.largeCategory |
| 277 | }]; | 277 | }]; |
| 278 | } else { | 278 | } else { |
| 279 | ElMessage.error(res.msg); | 279 | ElMessage.error(res.msg); | ... | ... |
| ... | @@ -135,18 +135,18 @@ const rulesListByType: any = computed(() => { | ... | @@ -135,18 +135,18 @@ const rulesListByType: any = computed(() => { |
| 135 | return {}; | 135 | return {}; |
| 136 | } | 136 | } |
| 137 | return { | 137 | return { |
| 138 | char: checkRulesList.value.filter(r => r.paramValue == 'length_rule' || r.paramValue == 'ch_rule' || r.paramValue == 'en_rule' || r.paramValue == 'num_value_rule' || r.paramValue == 'custom_regular_rule'), | 138 | char: checkRulesList.value.filter(r => r.value == 'length_rule' || r.value == 'ch_rule' || r.value == 'en_rule' || r.value == 'num_value_rule' || r.value == 'custom_regular_rule'), |
| 139 | varchar: checkRulesList.value.filter(r => r.paramValue == 'length_rule' || r.paramValue == 'id_card_rule' || r.paramValue == 'phone_number_rule' || r.paramValue == 'ch_rule' || r.paramValue == 'en_rule' || r.paramValue == 'num_value_rule' || r.paramValue == 'custom_regular_rule'), | 139 | varchar: checkRulesList.value.filter(r => r.value == 'length_rule' || r.value == 'id_card_rule' || r.value == 'phone_number_rule' || r.value == 'ch_rule' || r.value == 'en_rule' || r.value == 'num_value_rule' || r.value == 'custom_regular_rule'), |
| 140 | int: checkRulesList.value.filter(r => r.paramValue == 'length_rule' || r.paramValue == 'num_value_rule' || r.paramValue == 'custom_regular_rule'), | 140 | int: checkRulesList.value.filter(r => r.value == 'length_rule' || r.value == 'num_value_rule' || r.value == 'custom_regular_rule'), |
| 141 | date: checkRulesList.value.filter(r => r.paramValue == 'date_format_rule' || r.paramValue == 'custom_regular_rule'), | 141 | date: checkRulesList.value.filter(r => r.value == 'date_format_rule' || r.value == 'custom_regular_rule'), |
| 142 | datetime: checkRulesList.value.filter(r => r.paramValue == 'date_format_rule' || r.paramValue == 'custom_regular_rule'), | 142 | datetime: checkRulesList.value.filter(r => r.value == 'date_format_rule' || r.value == 'custom_regular_rule'), |
| 143 | timestamp: checkRulesList.value.filter(r => r.paramValue == 'custom_regular_rule' || r.paramValue == 'custom_regular_rule'), | 143 | timestamp: checkRulesList.value.filter(r => r.value == 'custom_regular_rule' || r.value == 'custom_regular_rule'), |
| 144 | // text: checkRulesList.value.filter(r => r.paramValue == ''), | 144 | // text: checkRulesList.value.filter(r => r.value == ''), |
| 145 | decimal: checkRulesList.value.filter(r => r.paramValue == 'length_rule' || r.paramValue == 'precision_rule' || r.paramValue == 'num_value_rule' || r.paramValue == 'custom_regular_rule'), | 145 | decimal: checkRulesList.value.filter(r => r.value == 'length_rule' || r.value == 'precision_rule' || r.value == 'num_value_rule' || r.value == 'custom_regular_rule'), |
| 146 | // json: checkRulesList.value.filter(r => r.paramValue == ''), | 146 | // json: checkRulesList.value.filter(r => r.value == ''), |
| 147 | tinyint: checkRulesList.value.filter(r => r.paramValue == 'length_rule' || r.paramValue == 'num_value_rule' || r.paramValue == 'custom_regular_rule'), | 147 | tinyint: checkRulesList.value.filter(r => r.value == 'length_rule' || r.value == 'num_value_rule' || r.value == 'custom_regular_rule'), |
| 148 | time: checkRulesList.value.filter(r => r.paramValue == 'custom_regular_rule'), | 148 | time: checkRulesList.value.filter(r => r.value == 'custom_regular_rule'), |
| 149 | bit: checkRulesList.value.filter(r => r.paramValue == 'ch_rule' || r.paramValue == 'en_rule' || r.paramValue == 'custom_regular_rule'), | 149 | bit: checkRulesList.value.filter(r => r.value == 'ch_rule' || r.value == 'en_rule' || r.value == 'custom_regular_rule'), |
| 150 | } | 150 | } |
| 151 | }); | 151 | }); |
| 152 | 152 | ||
| ... | @@ -238,8 +238,8 @@ const panelList: any = ref([ | ... | @@ -238,8 +238,8 @@ const panelList: any = ref([ |
| 238 | default: '1', | 238 | default: '1', |
| 239 | options: props.largeCategoryList, | 239 | options: props.largeCategoryList, |
| 240 | props: { | 240 | props: { |
| 241 | label: 'paramName', | 241 | label: 'label', |
| 242 | value: 'paramValue' | 242 | value: 'value' |
| 243 | }, | 243 | }, |
| 244 | required: true, | 244 | required: true, |
| 245 | visible: true | 245 | visible: true |
| ... | @@ -249,8 +249,8 @@ const panelList: any = ref([ | ... | @@ -249,8 +249,8 @@ const panelList: any = ref([ |
| 249 | placeholder: '请选择', | 249 | placeholder: '请选择', |
| 250 | field: 'smallCategory', | 250 | field: 'smallCategory', |
| 251 | props: { | 251 | props: { |
| 252 | label: 'paramName', | 252 | label: 'label', |
| 253 | value: 'paramValue' | 253 | value: 'value' |
| 254 | }, | 254 | }, |
| 255 | default: '', | 255 | default: '', |
| 256 | options: props.smallCategoryList.slice(6), | 256 | options: props.smallCategoryList.slice(6), |
| ... | @@ -1006,7 +1006,7 @@ const setPanelListValue = (item, isSelectChange = false, init = false, radioGrou | ... | @@ -1006,7 +1006,7 @@ const setPanelListValue = (item, isSelectChange = false, init = false, radioGrou |
| 1006 | } | 1006 | } |
| 1007 | } | 1007 | } |
| 1008 | if (isSelectChange) { | 1008 | if (isSelectChange) { |
| 1009 | val['smallCategory'] = panelList.value[2].options[0]?.paramValue; | 1009 | val['smallCategory'] = panelList.value[2].options[0]?.value; |
| 1010 | } else if (!val['smallCategory']) { | 1010 | } else if (!val['smallCategory']) { |
| 1011 | val['smallCategory'] = getDefaultSmallCategory(formItems.value[0].default); | 1011 | val['smallCategory'] = getDefaultSmallCategory(formItems.value[0].default); |
| 1012 | } else if (radioGroupChange && !init) {//切换规则类型。 | 1012 | } else if (radioGroupChange && !init) {//切换规则类型。 |
| ... | @@ -2306,8 +2306,8 @@ defineExpose({ | ... | @@ -2306,8 +2306,8 @@ defineExpose({ |
| 2306 | <template #default="scope"> | 2306 | <template #default="scope"> |
| 2307 | <el-select v-if="!props.readonly || (scope.row.dataType == 'text' || scope.row.dataType == 'json')" | 2307 | <el-select v-if="!props.readonly || (scope.row.dataType == 'text' || scope.row.dataType == 'json')" |
| 2308 | v-model="scope.row['checkRule']" placeholder="请选择" filterable clearable> | 2308 | v-model="scope.row['checkRule']" placeholder="请选择" filterable clearable> |
| 2309 | <el-option v-for="opt in rulesListByType[scope.row.dataType]" :key="opt['paramValue']" | 2309 | <el-option v-for="opt in rulesListByType[scope.row.dataType]" :key="opt['value']" |
| 2310 | :label="opt['paramName']" :value="opt['paramValue']" /> | 2310 | :label="opt['label']" :value="opt['value']" /> |
| 2311 | </el-select> | 2311 | </el-select> |
| 2312 | <span v-else>{{ scope.row.checkRuleName ?? '--' }}</span> | 2312 | <span v-else>{{ scope.row.checkRuleName ?? '--' }}</span> |
| 2313 | </template> | 2313 | </template> | ... | ... |
| ... | @@ -16,6 +16,9 @@ import { | ... | @@ -16,6 +16,9 @@ import { |
| 16 | getSmallCategoryList, | 16 | getSmallCategoryList, |
| 17 | getLargeCategoryList, | 17 | getLargeCategoryList, |
| 18 | } from '@/api/modules/dataQuality'; | 18 | } from '@/api/modules/dataQuality'; |
| 19 | import { | ||
| 20 | getMetaTreeData | ||
| 21 | } from '@/api/modules/dataMetaService'; | ||
| 19 | import ruleForm from "../data_quality/ruleForm.vue"; | 22 | import ruleForm from "../data_quality/ruleForm.vue"; |
| 20 | import useUserStore from "@/store/modules/user"; | 23 | import useUserStore from "@/store/modules/user"; |
| 21 | import useDataQualityStore from "@/store/modules/dataQuality"; | 24 | import useDataQualityStore from "@/store/modules/dataQuality"; |
| ... | @@ -60,7 +63,7 @@ const toSubjectTables: any = ref([]); | ... | @@ -60,7 +63,7 @@ const toSubjectTables: any = ref([]); |
| 60 | 63 | ||
| 61 | const getSubjectTableTreeData = () => { | 64 | const getSubjectTableTreeData = () => { |
| 62 | dsFromTreeDataLoading.value = true; | 65 | dsFromTreeDataLoading.value = true; |
| 63 | getSubjectTableTree({}).then((res: any) => { | 66 | getMetaTreeData({}).then((res: any) => { |
| 64 | dsFromTreeDataLoading.value = false; | 67 | dsFromTreeDataLoading.value = false; |
| 65 | if (res.code == proxy.$passCode) { | 68 | if (res.code == proxy.$passCode) { |
| 66 | dsFromTreeData.value = res.data?.map(d => { | 69 | dsFromTreeData.value = res.data?.map(d => { |
| ... | @@ -428,17 +431,17 @@ const save = () => { | ... | @@ -428,17 +431,17 @@ const save = () => { |
| 428 | <div class="operator_panel is-block"> | 431 | <div class="operator_panel is-block"> |
| 429 | <div class="panel_title"> | 432 | <div class="panel_title"> |
| 430 | <div class="title_text"> | 433 | <div class="title_text"> |
| 431 | <span>选择主题表</span> | 434 | <span>选择表</span> |
| 432 | <span class="tips_text">选择需要添加质检规则的主题表</span> | 435 | <span class="tips_text">选择需要添加质检规则的表,请确保数据库为脱产环境,避免数据质检影响您的生产环境,且允许在该脱产环境建脏数据的库,请知晓!</span> |
| 433 | </div> | 436 | </div> |
| 434 | </div> | 437 | </div> |
| 435 | <TreeTransfer mode="transfer" :title="['主题表', '已选表']" pid="parentGuid" | 438 | <TreeTransfer mode="transfer" :title="['可选表', '已选表']" pid="parentGuid" |
| 436 | :from-tree-data-loading="dsFromTreeDataLoading" :lazy="true" :checkOnClickNode="true" | 439 | :from-tree-data-loading="dsFromTreeDataLoading" :checkOnClickNode="true" |
| 437 | :from_checked_all="false" :from_data="dsFromTreeData" :to_data="dsToTreeData" node_key="guid" | 440 | :from_checked_all="false" :from_data="dsFromTreeData" :to_data="dsToTreeData" node_key="guid" |
| 438 | :transferOpenNode="true" width="70%" :defaultProps="{ | 441 | :transferOpenNode="true" width="70%" :defaultProps="{ |
| 439 | label: 'name', | 442 | label: 'name', |
| 440 | value: 'guid' | 443 | value: 'guid' |
| 441 | }" :lazyFn="handleSubjectTableLazyFn" @left-check-change="handleSubjectCheckedChange" | 444 | }" |
| 442 | height="calc(100% - 64px)"> | 445 | height="calc(100% - 64px)"> |
| 443 | </TreeTransfer> | 446 | </TreeTransfer> |
| 444 | </div> | 447 | </div> | ... | ... |
-
Please register or sign in to post a comment