feat(mes): 更新维修工单表单逻辑及字段展示

pull/871/MERGE
YunaiV 2026-04-04 01:22:55 +08:00
parent 307bac15e1
commit 469363c046
1 changed files with 15 additions and 24 deletions

View File

@ -60,29 +60,16 @@
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- DONE @AI验收日期由后端自动设置仅详情时展示 --> <el-col :span="8" v-if="showConfirmFields">
<el-col :span="8" v-if="showDetailFields"> <el-form-item label="维修人" prop="acceptedUserId">
<el-form-item label="验收日期" prop="confirmDate"> <UserSelect v-model="formData.acceptedUserId" placeholder="请选择维修人" disabled />
<el-date-picker
v-model="formData.confirmDate"
type="datetime"
value-format="x"
placeholder="选择验收日期"
disabled
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<!-- DONE @AI维修结果在验收(finish)时可选择详情(detail)时只读展示 --> <el-col :span="8" v-if="showDetailFields">
<el-col :span="8" v-if="isFinish || showDetailFields">
<el-form-item label="维修结果" prop="result"> <el-form-item label="维修结果" prop="result">
<el-select <el-select v-model="formData.result" placeholder="请选择维修结果" clearable disabled>
v-model="formData.result"
placeholder="请选择维修结果"
clearable
:disabled="!isFinish"
>
<el-option <el-option
v-for="dict in getIntDictOptions(DICT_TYPE.MES_DV_REPAIR_RESULT)" v-for="dict in getIntDictOptions(DICT_TYPE.MES_DV_REPAIR_RESULT)"
:key="dict.value" :key="dict.value"
@ -92,9 +79,15 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-if="showConfirmFields"> <el-col :span="8" v-if="showDetailFields">
<el-form-item label="维修人" prop="acceptedUserId"> <el-form-item label="验收日期" prop="confirmDate">
<UserSelect v-model="formData.acceptedUserId" placeholder="请选择维修人" disabled /> <el-date-picker
v-model="formData.confirmDate"
type="datetime"
value-format="x"
placeholder="选择验收日期"
disabled
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-if="showDetailFields"> <el-col :span="8" v-if="showDetailFields">
@ -180,7 +173,6 @@ const formType = ref<string>('create') // 表单类型create / update / confi
const isEditable = computed(() => ['create', 'update'].includes(formType.value)) // const isEditable = computed(() => ['create', 'update'].includes(formType.value)) //
const isConfirm = computed(() => formType.value === 'confirm') // const isConfirm = computed(() => formType.value === 'confirm') //
const isFinish = computed(() => formType.value === 'finish') // const isFinish = computed(() => formType.value === 'finish') //
// DONE @AIfinish isDetail
const isDetail = computed(() => formType.value === 'detail') // detail const isDetail = computed(() => formType.value === 'detail') // detail
const isHeaderReadonly = computed(() => ['confirm', 'finish', 'detail'].includes(formType.value)) // const isHeaderReadonly = computed(() => ['confirm', 'finish', 'detail'].includes(formType.value)) //
const showFinishFields = computed(() => { const showFinishFields = computed(() => {
@ -233,8 +225,7 @@ const formRules = reactive({
name: [{ required: true, message: '维修单名称不能为空', trigger: 'blur' }], name: [{ required: true, message: '维修单名称不能为空', trigger: 'blur' }],
machineryId: [{ required: true, message: '设备不能为空', trigger: 'blur' }], machineryId: [{ required: true, message: '设备不能为空', trigger: 'blur' }],
requireDate: [{ required: true, message: '报修日期不能为空', trigger: 'blur' }], requireDate: [{ required: true, message: '报修日期不能为空', trigger: 'blur' }],
finishDate: [{ required: true, message: '维修完成日期不能为空', trigger: 'change' }], finishDate: [{ required: true, message: '维修完成日期不能为空', trigger: 'change' }]
result: [{ required: true, message: '维修结果不能为空', trigger: 'change' }]
}) })
const formRef = ref() // Ref const formRef = ref() // Ref
const originalFormData = ref<string>('') // const originalFormData = ref<string>('') //