|
|
|
|
@ -120,6 +120,7 @@
|
|
|
|
|
value-format="x"
|
|
|
|
|
:placeholder="t('ProductionPlan.Plan.dialogPlanStartPlaceholder')"
|
|
|
|
|
class="!w-full"
|
|
|
|
|
@change="handlePlanStartTimeChange"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item :label="t('ProductionPlan.Plan.dialogPlanEndLabel')" prop="planEndTime">
|
|
|
|
|
@ -129,6 +130,7 @@
|
|
|
|
|
value-format="x"
|
|
|
|
|
:placeholder="t('ProductionPlan.Plan.dialogPlanEndPlaceholder')"
|
|
|
|
|
class="!w-full"
|
|
|
|
|
@change="handlePlanEndTimeChange"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="最晚开工时间" prop="latestStartTime">
|
|
|
|
|
@ -268,13 +270,53 @@ const validateLatestStartTime = (_rule: any, value: any, callback: (error?: Erro
|
|
|
|
|
}
|
|
|
|
|
callback()
|
|
|
|
|
}
|
|
|
|
|
const validatePlanStartTime = (_rule: any, value: any, callback: (error?: Error) => void) => {
|
|
|
|
|
if (!value || !formData.value.planEndTime) {
|
|
|
|
|
callback()
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
const startTime = Number(value)
|
|
|
|
|
const endTime = Number(formData.value.planEndTime)
|
|
|
|
|
if (Number.isNaN(startTime) || Number.isNaN(endTime)) {
|
|
|
|
|
callback()
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if (startTime > endTime) {
|
|
|
|
|
callback(new Error('计划开始时间不能晚于计划结束时间'))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
callback()
|
|
|
|
|
}
|
|
|
|
|
const validatePlanEndTime = (_rule: any, value: any, callback: (error?: Error) => void) => {
|
|
|
|
|
if (!value || !formData.value.planStartTime) {
|
|
|
|
|
callback()
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
const endTime = Number(value)
|
|
|
|
|
const startTime = Number(formData.value.planStartTime)
|
|
|
|
|
if (Number.isNaN(endTime) || Number.isNaN(startTime)) {
|
|
|
|
|
callback()
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if (endTime < startTime) {
|
|
|
|
|
callback(new Error('计划结束时间不能早于计划开始时间'))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
callback()
|
|
|
|
|
}
|
|
|
|
|
const formRules = reactive({
|
|
|
|
|
taskDetailId: [{ required: true, message: t('ProductionPlan.Plan.validatorTaskDetailRequired'), trigger: 'blur' }],
|
|
|
|
|
taskId: [{ required: true, message: t('ProductionPlan.Plan.validatorTaskRequired'), trigger: 'blur' }],
|
|
|
|
|
planNumber: [{ required: true, message: t('ProductionPlan.Plan.validatorPlanNumberRequired'), trigger: 'blur' }],
|
|
|
|
|
// reyaNumber: [{ required: true, message: t('ProductionPlan.Plan.validatorReyaNumberRequired'), trigger: 'blur' }],
|
|
|
|
|
planStartTime: [{ required: true, message: t('ProductionPlan.Plan.validatorPlanStartRequired'), trigger: 'blur' }],
|
|
|
|
|
planEndTime: [{ required: true, message: t('ProductionPlan.Plan.validatorPlanEndRequired'), trigger: 'blur' }],
|
|
|
|
|
planStartTime: [
|
|
|
|
|
{ required: true, message: t('ProductionPlan.Plan.validatorPlanStartRequired'), trigger: 'blur' },
|
|
|
|
|
{ validator: validatePlanStartTime, trigger: 'change' }
|
|
|
|
|
],
|
|
|
|
|
planEndTime: [
|
|
|
|
|
{ required: true, message: t('ProductionPlan.Plan.validatorPlanEndRequired'), trigger: 'blur' },
|
|
|
|
|
{ validator: validatePlanEndTime, trigger: 'change' }
|
|
|
|
|
],
|
|
|
|
|
feedingPipeline: [{ required: true, message: '请选择设备', trigger: 'change' }],
|
|
|
|
|
isPreProduction: [{ required: true, message: t('ProductionPlan.Plan.validatorPreProductionRequired'), trigger: 'blur' }],
|
|
|
|
|
latestStartTime: [
|
|
|
|
|
@ -431,6 +473,12 @@ const handleTaskChange = async() => {
|
|
|
|
|
const handleTaskDetailChange = async() => {
|
|
|
|
|
syncFinishDateByTaskDetail()
|
|
|
|
|
}
|
|
|
|
|
const handlePlanStartTimeChange = () => {
|
|
|
|
|
formRef.value?.validateField(['planStartTime', 'planEndTime'])
|
|
|
|
|
}
|
|
|
|
|
const handlePlanEndTimeChange = () => {
|
|
|
|
|
formRef.value?.validateField(['planStartTime', 'planEndTime'])
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|