diff --git a/src/pages.json b/src/pages.json index 6e04648..9be7f9d 100644 --- a/src/pages.json +++ b/src/pages.json @@ -265,6 +265,13 @@ "navigationBarBackgroundColor": "#409eff", "navigationBarTextStyle": "white" } + }, + { + "path" : "pages/overhaulOrder/addSubItem", + "style" : + { + "navigationBarTitleText" : "" + } } ], "tabBar": { diff --git a/src/pages/overhaulOrder/addForm.vue b/src/pages/overhaulOrder/addForm.vue index f1fb474..d87c002 100644 --- a/src/pages/overhaulOrder/addForm.vue +++ b/src/pages/overhaulOrder/addForm.vue @@ -68,6 +68,82 @@ + + + + + + + + + + {{item.name}} + + + + + + + 预估人数: + {{item.peoples}}人 + + + 预估分钟: + {{item.estimatedMinutes}}分钟 + + + 实际分钟: + {{item.actualMinutes}}分钟 + + + 责任人: + {{item.chargePeoplesName}} + + + 完成情况: + + {{item.status===0 || item.status === '0'? '完成':item.status===1 ||item.status === '1'?'未完成':''}} + + + + 完成时间: + {{$time.formatDate(item.completionTime)}} + + + 工程师确认: + {{item.engineer}} + + + 未完成原因: + {{item.uncompleted}} + + + + 备件: + + + + {{cur.name}} + + + 备件编号:{{cur.number}} + + + 数量:{{cur.qty}} + + + + + + + + 添加检修内容 + + + @@ -96,6 +172,7 @@ + @@ -127,7 +204,8 @@ deviceName: '', deviceNumber: '', faultTypeName: '', - maintenance:'' + maintenance:'', + subList: [] }) @@ -143,6 +221,10 @@ const selecUserList = ref([])//维修人员 const isShowSelecUser = ref(false) const chooseUserInfo = ref(null) + const serviceList = ref([]) + const list = ref([{ + name: '检修内容' + }]) function submit() { // 校验 if (!form.value.describes) { @@ -174,7 +256,8 @@ factoryAreaNumber: form.value.factoryAreaNumber, type: type.value, faultType: form.value.faultType, - maintenance:form.value.maintenance + maintenance:form.value.maintenance, + subList: serviceList.value, } if (form.value.id) { proxy.$modal.confirm('是否修改检修工单').then(() => { @@ -241,7 +324,8 @@ deviceName:'', deviceNumber:'', faultTypeName:'', - maintenance:'' + maintenance:'', + subList: [] } isDisabled.value = false } @@ -355,6 +439,7 @@ deviceNumber: data.deviceNumber, factoryAreaName: data.factoryAreaName, faultType: data.faultType, + subList: data.subList, } isDisabled.value = form.value.maintenanceNumber || form.value.id ? true : false }; @@ -367,6 +452,7 @@ form.value.deviceName = data.name form.value.factoryAreaName = data.factoryAreaName form.value.factoryAreaNumber = data.factoryAreaNumber + form.value.subList= data.subList isDisabled.value = true } else { form.value.maintenanceNumber = '' @@ -375,10 +461,25 @@ form.value.deviceName = '' form.value.factoryAreaName = '' form.value.factoryAreaNumber = '' + form.value.subList= [] isDisabled.value = false } }) + // 从其他页面返回时,处理回写数据 + uni.$on('handleSubmitForm', (formData) => { + // 更新 serviceList + if (formData.id) { + // 更新已有项目 + const index = serviceList.value.findIndex(item => item.id === formData.id); + if (index !== -1) { + serviceList.value.splice(index, 1, formData); + } + } else { + // 添加新项目 + serviceList.value.push(formData); + } + }); }) // 打开人员列表 @@ -428,6 +529,35 @@ let str = array.filter(item => item.id == val)[0].name return str } + + // 添加表格表单 + function addSubForm(clickType, item) { + if(!form.value.factoryAreaNumber){ + proxy.$modal.showToast('请先选择维修工单或设备!') + return; + } + if (clickType == 'updata') { + proxy.$tab.navigateTo( + `/pages/overhaulOrder/addSubItem?type=${type.value}&number=${form.value.number}&factoryAreaNumber=${form.value.factoryAreaNumber}&data=${encodeURIComponent(JSON.stringify(item))}&deviceNumber=${form.value.deviceNumber}` + ) + } else { + proxy.$tab.navigateTo( + `/pages/overhaulOrder/addSubItem?type=${type.value}&number=${form.value.number}&factoryAreaNumber=${form.value.factoryAreaNumber}&deviceNumber=${form.value.deviceNumber}` + ) + } + } + + // 删除维修内容 + function delService(item) { + proxy.$modal.confirm('确定删除维修内容吗?').then(() => { + serviceList.value = serviceList.value.filter(element=>{ + return element.name != item.name + }) + }) + + } + + \ No newline at end of file diff --git a/src/pages/overhaulOrder/addSubItem.vue b/src/pages/overhaulOrder/addSubItem.vue new file mode 100644 index 0000000..392e45e --- /dev/null +++ b/src/pages/overhaulOrder/addSubItem.vue @@ -0,0 +1,639 @@ + + + + + \ No newline at end of file