diff --git a/src/views/mes/zjTask/ZjTaskForm.vue b/src/views/mes/zjTask/ZjTaskForm.vue index bb900a8f..7dbb570d 100644 --- a/src/views/mes/zjTask/ZjTaskForm.vue +++ b/src/views/mes/zjTask/ZjTaskForm.vue @@ -2,7 +2,14 @@ - + + + + + + + + ([]) const formData = ref<{ [key: string]: any }>({ id: undefined, code: undefined, + isCode: true, name: undefined, type: undefined, schemaId: undefined, @@ -133,7 +141,17 @@ const formData = ref<{ [key: string]: any }>({ }) const formRules = reactive({ - code: [{ required: true, message: t('QualityManagement.ZjTask.validatorCodeRequired'), trigger: 'blur' }], + code: [{ required: true, validator: (_rule, value, callback) => { + if (Boolean(formData.value.isCode)) { + callback() + return + } + if (value === undefined || value === null || String(value).trim() === '') { + callback(new Error(t('QualityManagement.ZjTask.validatorCodeRequired'))) + return + } + callback() + }, trigger: 'blur' }], type: [{ required: true, message: t('QualityManagement.ZjTask.validatorTypeRequired'), trigger: 'change' }], schemaId: [{ required: true, message: t('QualityManagement.ZjTask.validatorSchemaRequired'), trigger: 'change' }], ticket: [{ required: true, message: t('QualityManagement.ZjTask.validatorTicketRequired'), trigger: 'blur' }], @@ -150,6 +168,13 @@ const selectedSchemaId = ref(undefined) const orgTypeOptions = getStrDictOptions(DICT_TYPE.MES_ORG_TYPE) const userList = ref([]) +const handleCodeAutoChange = (value: boolean) => { + if (value) { + formData.value.code = undefined + } + formRef.value?.clearValidate('code') +} + const formatSchemaVal = (val: string | number | null | undefined) => { if (val === null || val === undefined || val === '') return '' const text = String(val).trim() @@ -205,6 +230,7 @@ const resetForm = () => { formData.value = { id: undefined, code: undefined, + isCode: true, name: undefined, type: undefined, schemaId: undefined,