去掉患者占总人口比的必填标识;L多样性字段支持选择所有字段
Showing
2 changed files
with
28 additions
and
42 deletions
| ... | @@ -112,7 +112,7 @@ const dataSelectInfoItems = ref([{ | ... | @@ -112,7 +112,7 @@ const dataSelectInfoItems = ref([{ |
| 112 | inputType: 'scoreNumber', | 112 | inputType: 'scoreNumber', |
| 113 | decimalCnt: 9, | 113 | decimalCnt: 9, |
| 114 | default: '', | 114 | default: '', |
| 115 | required: true, | 115 | required: false, |
| 116 | filterable: true, | 116 | filterable: true, |
| 117 | clearable: true, | 117 | clearable: true, |
| 118 | visible: true, | 118 | visible: true, |
| ... | @@ -177,7 +177,7 @@ const dataSelectInfoItems = ref([{ | ... | @@ -177,7 +177,7 @@ const dataSelectInfoItems = ref([{ |
| 177 | const dataSelectInfoFormRules = ref({ | 177 | const dataSelectInfoFormRules = ref({ |
| 178 | taskName: [required('请输入任务名称')], | 178 | taskName: [required('请输入任务名称')], |
| 179 | dataSharingTypeCode: [required('请选择数据共享类型')], | 179 | dataSharingTypeCode: [required('请选择数据共享类型')], |
| 180 | patientPopulationRate: [required('请输入患者占总人口比')], | 180 | // patientPopulationRate: [required('请输入患者占总人口比')], |
| 181 | dataSourceGuid: [required('请选择数据源')], | 181 | dataSourceGuid: [required('请选择数据源')], |
| 182 | tableName: [required('请选择数据表')], | 182 | tableName: [required('请选择数据表')], |
| 183 | file: [{ | 183 | file: [{ | ... | ... |
| ... | @@ -153,7 +153,7 @@ const ruleModelTableInfo = ref({ | ... | @@ -153,7 +153,7 @@ const ruleModelTableInfo = ref({ |
| 153 | proxy.$openMessageBox("此操作将永久删除, 是否继续?", () => { | 153 | proxy.$openMessageBox("此操作将永久删除, 是否继续?", () => { |
| 154 | let fieldName = scope.row.fieldName; | 154 | let fieldName = scope.row.fieldName; |
| 155 | ruleModelTableInfo.value.data.splice(scope.$index, 1); | 155 | ruleModelTableInfo.value.data.splice(scope.$index, 1); |
| 156 | updatePrivacyFormFieldsOptions(fieldName); | 156 | // updatePrivacyFormFieldsOptions(fieldName); |
| 157 | // 同步去掉隐私模型设置中的字段。 | 157 | // 同步去掉隐私模型设置中的字段。 |
| 158 | proxy.$ElMessage.success('删除成功'); | 158 | proxy.$ElMessage.success('删除成功'); |
| 159 | }, () => { | 159 | }, () => { |
| ... | @@ -512,20 +512,14 @@ const drawerBtnClick = async (btn, info) => { | ... | @@ -512,20 +512,14 @@ const drawerBtnClick = async (btn, info) => { |
| 512 | } | 512 | } |
| 513 | } | 513 | } |
| 514 | drawerInfo.value.visible = false; | 514 | drawerInfo.value.visible = false; |
| 515 | updatePrivacyFormFieldsOptions(changeFields); | 515 | // updatePrivacyFormFieldsOptions(changeFields); |
| 516 | } | 516 | } |
| 517 | } | 517 | } |
| 518 | 518 | ||
| 519 | /** 更新下拉选择字段的下拉列表,若是字段被删除,需要同步去掉下拉选择值。 */ | 519 | /** 更新下拉选择字段的下拉列表,若是字段被删除,需要同步去掉下拉选择值。 */ |
| 520 | const updatePrivacyFormFieldsOptions = (changeFields) => { | 520 | const updatePrivacyFormFieldsOptions = (changeFields) => { |
| 521 | let optionsList = ruleModelTableInfo.value.data?.map(v => { | 521 | privacyFormItems.value[2].children[0].options = props.fieldNameList; |
| 522 | return { | 522 | privacyFormItems.value[3].children[0].options = props.fieldNameList; |
| 523 | fieldName: v.fieldName, | ||
| 524 | fieldChName: v.fieldChName | ||
| 525 | } | ||
| 526 | }) || []; | ||
| 527 | privacyFormItems.value[2].children[0].options = optionsList; | ||
| 528 | privacyFormItems.value[3].children[0].options = optionsList; | ||
| 529 | let formInline = privacyFormRef.value?.formInline; | 523 | let formInline = privacyFormRef.value?.formInline; |
| 530 | privacyFormItems.value.forEach((item, index) => { | 524 | privacyFormItems.value.forEach((item, index) => { |
| 531 | item.default = formInline[item.field]; | 525 | item.default = formInline[item.field]; |
| ... | @@ -814,10 +808,11 @@ const privacyFormItems: any = ref([{ | ... | @@ -814,10 +808,11 @@ const privacyFormItems: any = ref([{ |
| 814 | type: 'select', | 808 | type: 'select', |
| 815 | placeholder: '请选择字段', | 809 | placeholder: '请选择字段', |
| 816 | field: 'ldFieldName', | 810 | field: 'ldFieldName', |
| 817 | options: [], | 811 | options: props.fieldNameList || [], |
| 818 | props: { | 812 | props: { |
| 819 | label: 'fieldChName', | 813 | label: 'chName', |
| 820 | value: 'fieldName' | 814 | value: 'enName', |
| 815 | disabled: false | ||
| 821 | }, | 816 | }, |
| 822 | default: '', | 817 | default: '', |
| 823 | filterable: true, | 818 | filterable: true, |
| ... | @@ -861,10 +856,11 @@ const privacyFormItems: any = ref([{ | ... | @@ -861,10 +856,11 @@ const privacyFormItems: any = ref([{ |
| 861 | placeholder: '请选择字段', | 856 | placeholder: '请选择字段', |
| 862 | field: 'tcFieldName', | 857 | field: 'tcFieldName', |
| 863 | default: '', | 858 | default: '', |
| 864 | options: [], | 859 | options: props.fieldNameList || [], |
| 865 | props: { | 860 | props: { |
| 866 | label: 'fieldChName', | 861 | label: 'chName', |
| 867 | value: 'fieldName' | 862 | value: 'enName', |
| 863 | disabled: false | ||
| 868 | }, | 864 | }, |
| 869 | filterable: true, | 865 | filterable: true, |
| 870 | clearable: true, | 866 | clearable: true, |
| ... | @@ -1071,36 +1067,26 @@ const getStepTwoConfigInfo = async () => { | ... | @@ -1071,36 +1067,26 @@ const getStepTwoConfigInfo = async () => { |
| 1071 | 1067 | ||
| 1072 | /** 字段改变,可能是切换了表,需要清空规则配置。判断 第一步到第二步时,如果字段列表中与字段脱敏规则中的字段不匹配,应清空,并同时清空T接近字段。 */ | 1068 | /** 字段改变,可能是切换了表,需要清空规则配置。判断 第一步到第二步时,如果字段列表中与字段脱敏规则中的字段不匹配,应清空,并同时清空T接近字段。 */ |
| 1073 | const updateNextStepRules = () => { | 1069 | const updateNextStepRules = () => { |
| 1074 | let deleteFieldNames: string[] = []; | ||
| 1075 | ruleModelTableInfo.value.data = ruleModelTableInfo.value.data.filter(rule => { | 1070 | ruleModelTableInfo.value.data = ruleModelTableInfo.value.data.filter(rule => { |
| 1076 | if (!props.fieldNameList?.some(v => v.enName == rule.fieldName)) { | 1071 | if (!props.fieldNameList?.some(v => v.enName == rule.fieldName)) { |
| 1077 | deleteFieldNames.push(rule.fieldName); | ||
| 1078 | return false; | 1072 | return false; |
| 1079 | } | 1073 | } |
| 1080 | return true; | 1074 | return true; |
| 1081 | }); | 1075 | }); |
| 1082 | if (deleteFieldNames?.length) { | 1076 | privacyFormItems.value[2].children[0].options = props.fieldNameList; |
| 1083 | let optionsList = ruleModelTableInfo.value.data?.map(v => { | 1077 | privacyFormItems.value[3].children[0].options = props.fieldNameList; |
| 1084 | return { | 1078 | let formInline = privacyFormRef.value?.formInline; |
| 1085 | fieldName: v.fieldName, | 1079 | privacyFormItems.value.forEach((item, index) => { |
| 1086 | fieldChName: v.fieldChName | 1080 | item.default = formInline[item.field]; |
| 1087 | } | 1081 | if (item.default == 'Y') { |
| 1088 | }) || []; | 1082 | item.children?.forEach(child => { |
| 1089 | privacyFormItems.value[2].children[0].options = optionsList; | 1083 | child.default = formInline[child.field]; |
| 1090 | privacyFormItems.value[3].children[0].options = optionsList; | 1084 | if ((child.field == 'tcFieldName' || child.field == 'ldFieldName') && !props.fieldNameList.some(f => f.enName == child.default)) { |
| 1091 | let formInline = privacyFormRef.value?.formInline; | 1085 | child.default = '' |
| 1092 | privacyFormItems.value.forEach((item, index) => { | 1086 | } |
| 1093 | item.default = formInline[item.field]; | 1087 | }); |
| 1094 | if (item.default == 'Y') { | 1088 | } |
| 1095 | item.children?.forEach(child => { | 1089 | }) |
| 1096 | child.default = formInline[child.field]; | ||
| 1097 | if ((child.field == 'tcFieldName' || child.field == 'ldFieldName') && deleteFieldNames.includes(child.default)) { | ||
| 1098 | child.default = '' | ||
| 1099 | } | ||
| 1100 | }); | ||
| 1101 | } | ||
| 1102 | }) | ||
| 1103 | } | ||
| 1104 | } | 1090 | } |
| 1105 | 1091 | ||
| 1106 | defineExpose({ | 1092 | defineExpose({ | ... | ... |
-
Please register or sign in to post a comment