df370175 by lihua

去掉患者占总人口比的必填标识;L多样性字段支持选择所有字段

1 parent b38321bc
...@@ -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({
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!