diff --git a/src/views/mes/task/components/TaskDetailForm.vue b/src/views/mes/task/components/TaskDetailForm.vue index bd65e5ea..c2e40266 100644 --- a/src/views/mes/task/components/TaskDetailForm.vue +++ b/src/views/mes/task/components/TaskDetailForm.vue @@ -64,6 +64,7 @@ @@ -180,7 +181,7 @@ const formRules = reactive({ unitId: [{ required: true, message: t('ProductionPlan.Task.validatorDetailUnitIdRequired'), trigger: 'blur' }], taskId: [{ required: true, message: t('ProductionPlan.Task.validatorDetailTaskIdRequired'), trigger: 'blur' }], number: [{ required: true, message: t('ProductionPlan.Task.validatorDetailNumberRequired'), trigger: 'blur' }], - packageSize: [{ required: true, message: t('ProductionPlan.Task.validatorDetailPackageSizeRequired'), trigger: 'blur' }], + packageSize: [], finishDate: [{ validator: validateFinishDate, trigger: ['change', 'blur'] }] }) const formRef = ref() // 表单 Ref @@ -241,6 +242,22 @@ const submitForm = async () => { } } +/** 监听数量和每包数量变化,自动计算打包数量 */ +watch( + () => [formData.value.number, formData.value.packageSize], + ([number, packageSize]) => { + if (!number && number !== 0) { + formData.value.packageNumber = undefined + return + } + if (!packageSize || packageSize === 0) { + formData.value.packageNumber = number + } else { + formData.value.packageNumber = Math.ceil(number / packageSize) + } + } +) + /** 处理产品变更 */ const onChangeProduct = (productId) => { const product = productList.value.find((item) => item.id === productId)