diff --git a/src/components/negative/verify.vue b/src/components/negative/verify.vue index 75822e3..710c19d 100644 --- a/src/components/negative/verify.vue +++ b/src/components/negative/verify.vue @@ -757,6 +757,7 @@ :key="dictItem.dictCode" :value="dictItem.dictValue" :label="dictItem.dictLabel" + :disabled="isNoAccountabilityResultDisabled(item.handleResultCode, dictItem.dictValue, NO_ACCOUNTABILITY_RESULT)" /> @@ -1089,10 +1090,11 @@ multiple > @@ -1488,10 +1490,11 @@ multiple > @@ -1859,6 +1862,7 @@ function handleCheckboxChange(blameLeader, bool, val) { } function handleChangeResultCode(item) { + normalizeNoAccountabilityResult(item, "handleResultCode", NO_ACCOUNTABILITY_RESULT); if (item.handleResultCode && item.handleResultCode.length > 0) { item.handleResultName = dict.handleResult .filter((obj) => item.handleResultCode.includes(obj.dictValue)) @@ -1870,6 +1874,7 @@ function handleChangeResultCode(item) { } function handleChangeLeadResultCode(item) { + normalizeNoAccountabilityResult(item, "leadHandleResultCode", NO_ACCOUNTABILITY_RESULT); if (item.leadHandleResultCode && item.leadHandleResultCode.length > 0) { item.leadHandleResultName = dict.handleResult .filter((obj) => item.leadHandleResultCode.includes(obj.dictValue)) @@ -1881,6 +1886,7 @@ function handleChangeLeadResultCode(item) { } function handleChangeDepartResultCode(item) { + normalizeNoAccountabilityResult(item, "handleResultCode", DEPART_NO_ACCOUNTABILITY_RESULT); if (item.handleResultCode && item.handleResultCode.length > 0) { item.handleResultName = dict.departHandleResult .filter((obj) => item.handleResultCode.includes(obj.dictValue)) @@ -1914,6 +1920,22 @@ const showSamePersonDialog = ref(false); // 是否属实 const isUntrue = computed(() => ['4', '5'].includes(String(form.value.checkStatusCode))); +const NO_ACCOUNTABILITY_RESULT = "14"; +const DEPART_NO_ACCOUNTABILITY_RESULT = "2-1"; + +function isNoAccountabilityResultDisabled(selectedValues, optionValue, noAccountabilityValue) { + return ( + selectedValues?.includes(noAccountabilityValue) && + optionValue !== noAccountabilityValue + ); +} + +function normalizeNoAccountabilityResult(item, field, noAccountabilityValue) { + if (item[field]?.includes(noAccountabilityValue) && item[field].length > 1) { + item[field] = [noAccountabilityValue]; + } +} + async function validate() { // 解决核查办理 当涉及对象是涉及个人时,有一条涉及单位的数据,导致问题无法提交的问题。