|
|
|
|
@ -89,6 +89,7 @@
|
|
|
|
|
v-model="formData.finishDate"
|
|
|
|
|
type="date"
|
|
|
|
|
value-format="x"
|
|
|
|
|
:disabled-date="disablePastDate"
|
|
|
|
|
:placeholder="t('ProductionPlan.Task.detailFormDeliveryDatePlaceholder')"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
@ -158,12 +159,29 @@ const formData = ref({
|
|
|
|
|
boxingDate: undefined,
|
|
|
|
|
arriveDate: undefined,
|
|
|
|
|
})
|
|
|
|
|
const disablePastDate = (date: Date) => {
|
|
|
|
|
return date.getTime() < new Date(new Date().setHours(0, 0, 0, 0)).getTime()
|
|
|
|
|
}
|
|
|
|
|
const validateFinishDate = (_rule: any, value: any, callback: (error?: Error) => void) => {
|
|
|
|
|
if (!value) {
|
|
|
|
|
callback()
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
const selected = Number(value)
|
|
|
|
|
const todayStart = new Date(new Date().setHours(0, 0, 0, 0)).getTime()
|
|
|
|
|
if (Number.isFinite(selected) && selected < todayStart) {
|
|
|
|
|
callback(new Error('交货日期不能早于今天'))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
callback()
|
|
|
|
|
}
|
|
|
|
|
const formRules = reactive({
|
|
|
|
|
productId: [{ required: true, message: t('ProductionPlan.Task.validatorDetailProductIdRequired'), trigger: 'blur' }],
|
|
|
|
|
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: [{ required: true, message: t('ProductionPlan.Task.validatorDetailPackageSizeRequired'), trigger: 'blur' }],
|
|
|
|
|
finishDate: [{ validator: validateFinishDate, trigger: ['change', 'blur'] }]
|
|
|
|
|
})
|
|
|
|
|
const formRef = ref() // 表单 Ref
|
|
|
|
|
|
|
|
|
|
|