diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 8bae72b..b53e1c0 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -14,7 +14,7 @@ } // 详情 -export function detail(data: object) { +export function detail(data: { id: string; sampleNo?: string; sampleName?: string }) { return request({ url: '/business/outsourceProject/apply/detail', method: 'post', diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 8bae72b..b53e1c0 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -14,7 +14,7 @@ } // 详情 -export function detail(data: object) { +export function detail(data: { id: string; sampleNo?: string; sampleName?: string }) { return request({ url: '/business/outsourceProject/apply/detail', method: 'post', diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts index dba2e12..1b994e2 100644 --- a/src/api/business/subpackage/certificate.ts +++ b/src/api/business/subpackage/certificate.ts @@ -28,7 +28,6 @@ return request({ url: '/business/outsourceCertificate/add', method: 'post', - responseType: 'blob', data, }) } @@ -37,7 +36,15 @@ return request({ url: '/business/outsourceCertificate/update', method: 'post', - responseType: 'blob', + data, + }) +} + +// 样品列表 +export function getSampleListByCertificate(data: any) { + return request({ + url: `/customer/sample/listPageBySubpackageCertificate?offset=${data.offset}&limit=${data.limit}`, + method: 'post', data, }) } diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 8bae72b..b53e1c0 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -14,7 +14,7 @@ } // 详情 -export function detail(data: object) { +export function detail(data: { id: string; sampleNo?: string; sampleName?: string }) { return request({ url: '/business/outsourceProject/apply/detail', method: 'post', diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts index dba2e12..1b994e2 100644 --- a/src/api/business/subpackage/certificate.ts +++ b/src/api/business/subpackage/certificate.ts @@ -28,7 +28,6 @@ return request({ url: '/business/outsourceCertificate/add', method: 'post', - responseType: 'blob', data, }) } @@ -37,7 +36,15 @@ return request({ url: '/business/outsourceCertificate/update', method: 'post', - responseType: 'blob', + data, + }) +} + +// 样品列表 +export function getSampleListByCertificate(data: any) { + return request({ + url: `/customer/sample/listPageBySubpackageCertificate?offset=${data.offset}&limit=${data.limit}`, + method: 'post', data, }) } diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 5427add..9775e03 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -72,7 +72,7 @@ }, }, { - path: 'equipmentReminderDetail/:id', + path: 'equipmentReminderDetail/:type/:id', name: 'EquipmentReminderDetail', component: () => import('@/views/business/board/equipmentReminder/detail.vue'), meta: { diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 8bae72b..b53e1c0 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -14,7 +14,7 @@ } // 详情 -export function detail(data: object) { +export function detail(data: { id: string; sampleNo?: string; sampleName?: string }) { return request({ url: '/business/outsourceProject/apply/detail', method: 'post', diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts index dba2e12..1b994e2 100644 --- a/src/api/business/subpackage/certificate.ts +++ b/src/api/business/subpackage/certificate.ts @@ -28,7 +28,6 @@ return request({ url: '/business/outsourceCertificate/add', method: 'post', - responseType: 'blob', data, }) } @@ -37,7 +36,15 @@ return request({ url: '/business/outsourceCertificate/update', method: 'post', - responseType: 'blob', + data, + }) +} + +// 样品列表 +export function getSampleListByCertificate(data: any) { + return request({ + url: `/customer/sample/listPageBySubpackageCertificate?offset=${data.offset}&limit=${data.limit}`, + method: 'post', data, }) } diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 5427add..9775e03 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -72,7 +72,7 @@ }, }, { - path: 'equipmentReminderDetail/:id', + path: 'equipmentReminderDetail/:type/:id', name: 'EquipmentReminderDetail', component: () => import('@/views/business/board/equipmentReminder/detail.vue'), meta: { diff --git a/src/views/business/board/equipmentReminder/components/baseInfo.vue b/src/views/business/board/equipmentReminder/components/baseInfo.vue new file mode 100644 index 0000000..b83f205 --- /dev/null +++ b/src/views/business/board/equipmentReminder/components/baseInfo.vue @@ -0,0 +1,730 @@ + + + + + + diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 8bae72b..b53e1c0 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -14,7 +14,7 @@ } // 详情 -export function detail(data: object) { +export function detail(data: { id: string; sampleNo?: string; sampleName?: string }) { return request({ url: '/business/outsourceProject/apply/detail', method: 'post', diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts index dba2e12..1b994e2 100644 --- a/src/api/business/subpackage/certificate.ts +++ b/src/api/business/subpackage/certificate.ts @@ -28,7 +28,6 @@ return request({ url: '/business/outsourceCertificate/add', method: 'post', - responseType: 'blob', data, }) } @@ -37,7 +36,15 @@ return request({ url: '/business/outsourceCertificate/update', method: 'post', - responseType: 'blob', + data, + }) +} + +// 样品列表 +export function getSampleListByCertificate(data: any) { + return request({ + url: `/customer/sample/listPageBySubpackageCertificate?offset=${data.offset}&limit=${data.limit}`, + method: 'post', data, }) } diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 5427add..9775e03 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -72,7 +72,7 @@ }, }, { - path: 'equipmentReminderDetail/:id', + path: 'equipmentReminderDetail/:type/:id', name: 'EquipmentReminderDetail', component: () => import('@/views/business/board/equipmentReminder/detail.vue'), meta: { diff --git a/src/views/business/board/equipmentReminder/components/baseInfo.vue b/src/views/business/board/equipmentReminder/components/baseInfo.vue new file mode 100644 index 0000000..b83f205 --- /dev/null +++ b/src/views/business/board/equipmentReminder/components/baseInfo.vue @@ -0,0 +1,730 @@ + + + + + + diff --git a/src/views/business/board/equipmentReminder/detail.vue b/src/views/business/board/equipmentReminder/detail.vue index 97064a2..05ef2b7 100644 --- a/src/views/business/board/equipmentReminder/detail.vue +++ b/src/views/business/board/equipmentReminder/detail.vue @@ -1,11 +1,184 @@ - - diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 8bae72b..b53e1c0 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -14,7 +14,7 @@ } // 详情 -export function detail(data: object) { +export function detail(data: { id: string; sampleNo?: string; sampleName?: string }) { return request({ url: '/business/outsourceProject/apply/detail', method: 'post', diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts index dba2e12..1b994e2 100644 --- a/src/api/business/subpackage/certificate.ts +++ b/src/api/business/subpackage/certificate.ts @@ -28,7 +28,6 @@ return request({ url: '/business/outsourceCertificate/add', method: 'post', - responseType: 'blob', data, }) } @@ -37,7 +36,15 @@ return request({ url: '/business/outsourceCertificate/update', method: 'post', - responseType: 'blob', + data, + }) +} + +// 样品列表 +export function getSampleListByCertificate(data: any) { + return request({ + url: `/customer/sample/listPageBySubpackageCertificate?offset=${data.offset}&limit=${data.limit}`, + method: 'post', data, }) } diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 5427add..9775e03 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -72,7 +72,7 @@ }, }, { - path: 'equipmentReminderDetail/:id', + path: 'equipmentReminderDetail/:type/:id', name: 'EquipmentReminderDetail', component: () => import('@/views/business/board/equipmentReminder/detail.vue'), meta: { diff --git a/src/views/business/board/equipmentReminder/components/baseInfo.vue b/src/views/business/board/equipmentReminder/components/baseInfo.vue new file mode 100644 index 0000000..b83f205 --- /dev/null +++ b/src/views/business/board/equipmentReminder/components/baseInfo.vue @@ -0,0 +1,730 @@ + + + + + + diff --git a/src/views/business/board/equipmentReminder/detail.vue b/src/views/business/board/equipmentReminder/detail.vue index 97064a2..05ef2b7 100644 --- a/src/views/business/board/equipmentReminder/detail.vue +++ b/src/views/business/board/equipmentReminder/detail.vue @@ -1,11 +1,184 @@ - - diff --git a/src/views/business/board/equipmentReminder/list.vue b/src/views/business/board/equipmentReminder/list.vue index 301487b..e0570fa 100644 --- a/src/views/business/board/equipmentReminder/list.vue +++ b/src/views/business/board/equipmentReminder/list.vue @@ -94,7 +94,19 @@ // 点击详情 const handleEdit = (row: IList) => { - $router.push(`/board/equipmentReminderDetail/${row.id}`) + // $router.push(`/board/equipmentReminderDetail/${row.id}`) + $router.push({ + // name: 'EquipmentReminderDetail', + path: `/board/equipmentReminderDetail/detail/${row.id}`, + // params: { + // type: 'detail', + // }, + query: { + title: '详情', + name: '固定资产', + id: row.id, + }, + }) } // 点击搜索 diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 8bae72b..b53e1c0 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -14,7 +14,7 @@ } // 详情 -export function detail(data: object) { +export function detail(data: { id: string; sampleNo?: string; sampleName?: string }) { return request({ url: '/business/outsourceProject/apply/detail', method: 'post', diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts index dba2e12..1b994e2 100644 --- a/src/api/business/subpackage/certificate.ts +++ b/src/api/business/subpackage/certificate.ts @@ -28,7 +28,6 @@ return request({ url: '/business/outsourceCertificate/add', method: 'post', - responseType: 'blob', data, }) } @@ -37,7 +36,15 @@ return request({ url: '/business/outsourceCertificate/update', method: 'post', - responseType: 'blob', + data, + }) +} + +// 样品列表 +export function getSampleListByCertificate(data: any) { + return request({ + url: `/customer/sample/listPageBySubpackageCertificate?offset=${data.offset}&limit=${data.limit}`, + method: 'post', data, }) } diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 5427add..9775e03 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -72,7 +72,7 @@ }, }, { - path: 'equipmentReminderDetail/:id', + path: 'equipmentReminderDetail/:type/:id', name: 'EquipmentReminderDetail', component: () => import('@/views/business/board/equipmentReminder/detail.vue'), meta: { diff --git a/src/views/business/board/equipmentReminder/components/baseInfo.vue b/src/views/business/board/equipmentReminder/components/baseInfo.vue new file mode 100644 index 0000000..b83f205 --- /dev/null +++ b/src/views/business/board/equipmentReminder/components/baseInfo.vue @@ -0,0 +1,730 @@ + + + + + + diff --git a/src/views/business/board/equipmentReminder/detail.vue b/src/views/business/board/equipmentReminder/detail.vue index 97064a2..05ef2b7 100644 --- a/src/views/business/board/equipmentReminder/detail.vue +++ b/src/views/business/board/equipmentReminder/detail.vue @@ -1,11 +1,184 @@ - - diff --git a/src/views/business/board/equipmentReminder/list.vue b/src/views/business/board/equipmentReminder/list.vue index 301487b..e0570fa 100644 --- a/src/views/business/board/equipmentReminder/list.vue +++ b/src/views/business/board/equipmentReminder/list.vue @@ -94,7 +94,19 @@ // 点击详情 const handleEdit = (row: IList) => { - $router.push(`/board/equipmentReminderDetail/${row.id}`) + // $router.push(`/board/equipmentReminderDetail/${row.id}`) + $router.push({ + // name: 'EquipmentReminderDetail', + path: `/board/equipmentReminderDetail/detail/${row.id}`, + // params: { + // type: 'detail', + // }, + query: { + title: '详情', + name: '固定资产', + id: row.id, + }, + }) } // 点击搜索 diff --git a/src/views/business/fieldTest/approve/approve-interface.ts b/src/views/business/fieldTest/approve/approve-interface.ts index aad0410..d7ec099 100644 --- a/src/views/business/fieldTest/approve/approve-interface.ts +++ b/src/views/business/fieldTest/approve/approve-interface.ts @@ -39,6 +39,7 @@ applyPerson: string // 申请人 applyPersonName: string // 申请人名称 applyTime: string // 申请时间 + directorId: string // 负责人id directorName: string // 负责人 taskSource: string // 任务来源-字典code taskSourceName: string // 任务来源-字典value diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 8bae72b..b53e1c0 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -14,7 +14,7 @@ } // 详情 -export function detail(data: object) { +export function detail(data: { id: string; sampleNo?: string; sampleName?: string }) { return request({ url: '/business/outsourceProject/apply/detail', method: 'post', diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts index dba2e12..1b994e2 100644 --- a/src/api/business/subpackage/certificate.ts +++ b/src/api/business/subpackage/certificate.ts @@ -28,7 +28,6 @@ return request({ url: '/business/outsourceCertificate/add', method: 'post', - responseType: 'blob', data, }) } @@ -37,7 +36,15 @@ return request({ url: '/business/outsourceCertificate/update', method: 'post', - responseType: 'blob', + data, + }) +} + +// 样品列表 +export function getSampleListByCertificate(data: any) { + return request({ + url: `/customer/sample/listPageBySubpackageCertificate?offset=${data.offset}&limit=${data.limit}`, + method: 'post', data, }) } diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 5427add..9775e03 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -72,7 +72,7 @@ }, }, { - path: 'equipmentReminderDetail/:id', + path: 'equipmentReminderDetail/:type/:id', name: 'EquipmentReminderDetail', component: () => import('@/views/business/board/equipmentReminder/detail.vue'), meta: { diff --git a/src/views/business/board/equipmentReminder/components/baseInfo.vue b/src/views/business/board/equipmentReminder/components/baseInfo.vue new file mode 100644 index 0000000..b83f205 --- /dev/null +++ b/src/views/business/board/equipmentReminder/components/baseInfo.vue @@ -0,0 +1,730 @@ + + + + + + diff --git a/src/views/business/board/equipmentReminder/detail.vue b/src/views/business/board/equipmentReminder/detail.vue index 97064a2..05ef2b7 100644 --- a/src/views/business/board/equipmentReminder/detail.vue +++ b/src/views/business/board/equipmentReminder/detail.vue @@ -1,11 +1,184 @@ - - diff --git a/src/views/business/board/equipmentReminder/list.vue b/src/views/business/board/equipmentReminder/list.vue index 301487b..e0570fa 100644 --- a/src/views/business/board/equipmentReminder/list.vue +++ b/src/views/business/board/equipmentReminder/list.vue @@ -94,7 +94,19 @@ // 点击详情 const handleEdit = (row: IList) => { - $router.push(`/board/equipmentReminderDetail/${row.id}`) + // $router.push(`/board/equipmentReminderDetail/${row.id}`) + $router.push({ + // name: 'EquipmentReminderDetail', + path: `/board/equipmentReminderDetail/detail/${row.id}`, + // params: { + // type: 'detail', + // }, + query: { + title: '详情', + name: '固定资产', + id: row.id, + }, + }) } // 点击搜索 diff --git a/src/views/business/fieldTest/approve/approve-interface.ts b/src/views/business/fieldTest/approve/approve-interface.ts index aad0410..d7ec099 100644 --- a/src/views/business/fieldTest/approve/approve-interface.ts +++ b/src/views/business/fieldTest/approve/approve-interface.ts @@ -39,6 +39,7 @@ applyPerson: string // 申请人 applyPersonName: string // 申请人名称 applyTime: string // 申请时间 + directorId: string // 负责人id directorName: string // 负责人 taskSource: string // 任务来源-字典code taskSourceName: string // 任务来源-字典value diff --git a/src/views/business/fieldTest/approve/edit.vue b/src/views/business/fieldTest/approve/edit.vue index c9be5b6..04dcffe 100644 --- a/src/views/business/fieldTest/approve/edit.vue +++ b/src/views/business/fieldTest/approve/edit.vue @@ -17,7 +17,7 @@ import { SCHEDULE } from '@/utils/scheduleDict' import type { userType } from '@/views/system/user/user-interface' import SelectDeviceDialog from '@/views/device/receive/selectDeviceDialog.vue' -import { addFieldTestApproveList, failUpdateFieldTestApprove, submit, updateFieldTestApprove } from '@/api/business/fieldTest/apply' +import { addFieldTestApproveList, failUpdateFieldTestApprove, getDetail, submit, updateFieldTestApprove } from '@/api/business/fieldTest/apply' const user = useUserStore() // 用户信息 const { proxy } = getCurrentInstance() as any const $router = useRouter() // 关闭页面使用 @@ -33,6 +33,7 @@ const pageType = ref('add') // 页面类型: add, edit, detail const infoId = ref('') // 列表id const submitId = ref('') // 新建提交时所用的id +const $route = useRoute() // 路由参数 const ruleFormRef = ref() // 表单ref const form = ref({ siteExecutiveNo: '', // 现场检测编号 @@ -40,6 +41,7 @@ applyPerson: '', // 申请人 applyPersonName: '', // 申请人名称 applyTime: '', // 申请时间 + directorId: '', // 负责人id directorName: '', // 负责人 taskSource: '', // 任务来源-字典code taskSourceName: '', // 任务来源-字典value @@ -66,7 +68,7 @@ }) // 校验规则 const formRules = ref({ - directorName: [{ required: true, message: '要求负责人不能为空', trigger: ['blur', 'change'] }], + directorId: [{ required: true, message: '要求负责人不能为空', trigger: ['blur', 'change'] }], taskSource: [{ required: true, message: '要求任务来源不能为空', trigger: ['blur', 'change'] }], preCost: [{ required: true, message: '要求预计计量费用不能为空', trigger: ['blur', 'change'] }], preStartTime: [{ required: true, message: '要求预计开始时间不能为空', trigger: ['blur', 'change'] }], @@ -77,6 +79,13 @@ executiveItem: [{ required: true, message: '要求现场测试、校准或检定项目不能为空', trigger: ['blur', 'change'] }], orderCode: [{ required: true, message: '要求委托书编号不能为空', trigger: ['blur', 'change'] }], }) +// -----------------------------------------------路由参数--------------------------------- +if ($route.params && $route.params.type) { + pageType.value = $route.params.type as string + if ($route.params.id) { + infoId.value = $route.params.id as string + } +} // ---------------------------------------------负责人----------------------------------- // 选择器模糊查询 const remoteMethod = (query: string) => { @@ -153,7 +162,7 @@ const meterPersonColumns = ref([ { text: '姓名', value: 'name', width: '220' }, { text: '人员编号', value: 'staffNo', width: '160' }, - { text: '工作部门', value: 'deptId' }, + { text: '工作部门', value: 'deptName' }, { text: '计量专业', value: 'major' }, { text: '证书编号', value: 'verifierCertificateNo' }, { text: '证书有效期', value: 'certificateDate', width: '120' }, @@ -175,7 +184,10 @@ // 只添加列表里不存在的 const index = form.value.meterStaffList.findIndex((i: any) => item.staffNo === i.staffNo) if (index === -1) { - form.value.meterStaffList.push(item) + form.value.meterStaffList.push({ + ...item, + deptName: item.deptId, + }) } }) } @@ -199,7 +211,7 @@ { name: '', // 姓名 staffNo: '', // 人员编号 - deptId: '', // 工作部门 + deptName: '', // 工作部门 major: '', // 计量专业 verifierCertificateNo: '', // 证书编号 certificateDate: '', // 证书有效期 @@ -345,19 +357,25 @@ if (index !== -1) { form.value.equipmentInfoList.splice(indexEquipment, 1) } - form.value.equipmentInfoList = form.value.equipmentInfoList.map((item: { id: string }) => { + // + const equipmentInfoList = form.value.equipmentInfoList.map((item: { id: string }) => { return { id: item.id, } }) - form.value.meterStaffList = form.value.meterStaffList.map((item: { id: string }) => { + const meterStaffList = form.value.meterStaffList.map((item: { id: string }) => { return { id: item.id, } }) + const params = { + ...form.value, + meterStaffList, + equipmentInfoList, + } // 新建 if (pageType.value === 'add') { - addFieldTestApproveList(form.value).then((res) => { + addFieldTestApproveList(params).then((res) => { submitId.value = res.data.data ElMessage.success('保存成功') loading.close() @@ -368,7 +386,7 @@ // 保存 else if (pageType.value === 'edit') { if (approvalStatusName.value === '未通过-驳回') { - failUpdateFieldTestApprove(form.value).then((res) => { + failUpdateFieldTestApprove(params).then((res) => { ElMessage.success('保存成功') loading.close() close() @@ -377,7 +395,7 @@ }) } else { - updateFieldTestApprove(form.value).then((res) => { + updateFieldTestApprove(params).then((res) => { ElMessage.success('保存成功') loading.close() close() @@ -415,12 +433,39 @@ } } -onMounted(() => { - if (pageType.value !== 'detail') { - fetchUserList() // 获取用户列表 - getDict()// 字典 - } +// 获取详细信息 +const getInfo = () => { + getDetail({ id: infoId.value }).then((res) => { + form.value = res.data + form.value.meterStaffList = res.data.meterStaffList.map((item: any) => { + return { + ...item, + certificateDate: item.certificateDate ? dayjs(item.certificateDate).format('YYYY-MM-DD') : '', + } + }) // 现场测试、校准或检定人员 + form.value.equipmentInfoList = res.data.equipmentInfoList.map((item: any) => { + return { + ...item, + validDate: item.validDate ? dayjs(item.validDate).format('YYYY-MM-DD') : '', + } + }) // 携带仪器设备 + form.value.siteExecutiveName = '现场检测审批单' // 现场检测审批名字 + form.value.applyPerson = user.id// 申请人 + form.value.applyPersonName = user.name // 申请人名字 + }) +} + +const changedirectorId = (val) => { + console.log('00000', val) +} + +onMounted(async () => { + fetchUserList() // 获取用户列表 + await getDict()// 字典 + form.value.processId = $route.query.processId as string // 任务id + approvalStatusName.value = $route.query.approvalStatusName as string // 审批类型名称 if (pageType.value !== 'add') { + getInfo() // 获取详情 getApprovalRecord(form.value.processId) } form.value.siteExecutiveName = '现场检测审批单' // 现场检测审批名字 @@ -488,16 +533,18 @@ - + diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 8bae72b..b53e1c0 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -14,7 +14,7 @@ } // 详情 -export function detail(data: object) { +export function detail(data: { id: string; sampleNo?: string; sampleName?: string }) { return request({ url: '/business/outsourceProject/apply/detail', method: 'post', diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts index dba2e12..1b994e2 100644 --- a/src/api/business/subpackage/certificate.ts +++ b/src/api/business/subpackage/certificate.ts @@ -28,7 +28,6 @@ return request({ url: '/business/outsourceCertificate/add', method: 'post', - responseType: 'blob', data, }) } @@ -37,7 +36,15 @@ return request({ url: '/business/outsourceCertificate/update', method: 'post', - responseType: 'blob', + data, + }) +} + +// 样品列表 +export function getSampleListByCertificate(data: any) { + return request({ + url: `/customer/sample/listPageBySubpackageCertificate?offset=${data.offset}&limit=${data.limit}`, + method: 'post', data, }) } diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 5427add..9775e03 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -72,7 +72,7 @@ }, }, { - path: 'equipmentReminderDetail/:id', + path: 'equipmentReminderDetail/:type/:id', name: 'EquipmentReminderDetail', component: () => import('@/views/business/board/equipmentReminder/detail.vue'), meta: { diff --git a/src/views/business/board/equipmentReminder/components/baseInfo.vue b/src/views/business/board/equipmentReminder/components/baseInfo.vue new file mode 100644 index 0000000..b83f205 --- /dev/null +++ b/src/views/business/board/equipmentReminder/components/baseInfo.vue @@ -0,0 +1,730 @@ + + + + + + diff --git a/src/views/business/board/equipmentReminder/detail.vue b/src/views/business/board/equipmentReminder/detail.vue index 97064a2..05ef2b7 100644 --- a/src/views/business/board/equipmentReminder/detail.vue +++ b/src/views/business/board/equipmentReminder/detail.vue @@ -1,11 +1,184 @@ - - diff --git a/src/views/business/board/equipmentReminder/list.vue b/src/views/business/board/equipmentReminder/list.vue index 301487b..e0570fa 100644 --- a/src/views/business/board/equipmentReminder/list.vue +++ b/src/views/business/board/equipmentReminder/list.vue @@ -94,7 +94,19 @@ // 点击详情 const handleEdit = (row: IList) => { - $router.push(`/board/equipmentReminderDetail/${row.id}`) + // $router.push(`/board/equipmentReminderDetail/${row.id}`) + $router.push({ + // name: 'EquipmentReminderDetail', + path: `/board/equipmentReminderDetail/detail/${row.id}`, + // params: { + // type: 'detail', + // }, + query: { + title: '详情', + name: '固定资产', + id: row.id, + }, + }) } // 点击搜索 diff --git a/src/views/business/fieldTest/approve/approve-interface.ts b/src/views/business/fieldTest/approve/approve-interface.ts index aad0410..d7ec099 100644 --- a/src/views/business/fieldTest/approve/approve-interface.ts +++ b/src/views/business/fieldTest/approve/approve-interface.ts @@ -39,6 +39,7 @@ applyPerson: string // 申请人 applyPersonName: string // 申请人名称 applyTime: string // 申请时间 + directorId: string // 负责人id directorName: string // 负责人 taskSource: string // 任务来源-字典code taskSourceName: string // 任务来源-字典value diff --git a/src/views/business/fieldTest/approve/edit.vue b/src/views/business/fieldTest/approve/edit.vue index c9be5b6..04dcffe 100644 --- a/src/views/business/fieldTest/approve/edit.vue +++ b/src/views/business/fieldTest/approve/edit.vue @@ -17,7 +17,7 @@ import { SCHEDULE } from '@/utils/scheduleDict' import type { userType } from '@/views/system/user/user-interface' import SelectDeviceDialog from '@/views/device/receive/selectDeviceDialog.vue' -import { addFieldTestApproveList, failUpdateFieldTestApprove, submit, updateFieldTestApprove } from '@/api/business/fieldTest/apply' +import { addFieldTestApproveList, failUpdateFieldTestApprove, getDetail, submit, updateFieldTestApprove } from '@/api/business/fieldTest/apply' const user = useUserStore() // 用户信息 const { proxy } = getCurrentInstance() as any const $router = useRouter() // 关闭页面使用 @@ -33,6 +33,7 @@ const pageType = ref('add') // 页面类型: add, edit, detail const infoId = ref('') // 列表id const submitId = ref('') // 新建提交时所用的id +const $route = useRoute() // 路由参数 const ruleFormRef = ref() // 表单ref const form = ref({ siteExecutiveNo: '', // 现场检测编号 @@ -40,6 +41,7 @@ applyPerson: '', // 申请人 applyPersonName: '', // 申请人名称 applyTime: '', // 申请时间 + directorId: '', // 负责人id directorName: '', // 负责人 taskSource: '', // 任务来源-字典code taskSourceName: '', // 任务来源-字典value @@ -66,7 +68,7 @@ }) // 校验规则 const formRules = ref({ - directorName: [{ required: true, message: '要求负责人不能为空', trigger: ['blur', 'change'] }], + directorId: [{ required: true, message: '要求负责人不能为空', trigger: ['blur', 'change'] }], taskSource: [{ required: true, message: '要求任务来源不能为空', trigger: ['blur', 'change'] }], preCost: [{ required: true, message: '要求预计计量费用不能为空', trigger: ['blur', 'change'] }], preStartTime: [{ required: true, message: '要求预计开始时间不能为空', trigger: ['blur', 'change'] }], @@ -77,6 +79,13 @@ executiveItem: [{ required: true, message: '要求现场测试、校准或检定项目不能为空', trigger: ['blur', 'change'] }], orderCode: [{ required: true, message: '要求委托书编号不能为空', trigger: ['blur', 'change'] }], }) +// -----------------------------------------------路由参数--------------------------------- +if ($route.params && $route.params.type) { + pageType.value = $route.params.type as string + if ($route.params.id) { + infoId.value = $route.params.id as string + } +} // ---------------------------------------------负责人----------------------------------- // 选择器模糊查询 const remoteMethod = (query: string) => { @@ -153,7 +162,7 @@ const meterPersonColumns = ref([ { text: '姓名', value: 'name', width: '220' }, { text: '人员编号', value: 'staffNo', width: '160' }, - { text: '工作部门', value: 'deptId' }, + { text: '工作部门', value: 'deptName' }, { text: '计量专业', value: 'major' }, { text: '证书编号', value: 'verifierCertificateNo' }, { text: '证书有效期', value: 'certificateDate', width: '120' }, @@ -175,7 +184,10 @@ // 只添加列表里不存在的 const index = form.value.meterStaffList.findIndex((i: any) => item.staffNo === i.staffNo) if (index === -1) { - form.value.meterStaffList.push(item) + form.value.meterStaffList.push({ + ...item, + deptName: item.deptId, + }) } }) } @@ -199,7 +211,7 @@ { name: '', // 姓名 staffNo: '', // 人员编号 - deptId: '', // 工作部门 + deptName: '', // 工作部门 major: '', // 计量专业 verifierCertificateNo: '', // 证书编号 certificateDate: '', // 证书有效期 @@ -345,19 +357,25 @@ if (index !== -1) { form.value.equipmentInfoList.splice(indexEquipment, 1) } - form.value.equipmentInfoList = form.value.equipmentInfoList.map((item: { id: string }) => { + // + const equipmentInfoList = form.value.equipmentInfoList.map((item: { id: string }) => { return { id: item.id, } }) - form.value.meterStaffList = form.value.meterStaffList.map((item: { id: string }) => { + const meterStaffList = form.value.meterStaffList.map((item: { id: string }) => { return { id: item.id, } }) + const params = { + ...form.value, + meterStaffList, + equipmentInfoList, + } // 新建 if (pageType.value === 'add') { - addFieldTestApproveList(form.value).then((res) => { + addFieldTestApproveList(params).then((res) => { submitId.value = res.data.data ElMessage.success('保存成功') loading.close() @@ -368,7 +386,7 @@ // 保存 else if (pageType.value === 'edit') { if (approvalStatusName.value === '未通过-驳回') { - failUpdateFieldTestApprove(form.value).then((res) => { + failUpdateFieldTestApprove(params).then((res) => { ElMessage.success('保存成功') loading.close() close() @@ -377,7 +395,7 @@ }) } else { - updateFieldTestApprove(form.value).then((res) => { + updateFieldTestApprove(params).then((res) => { ElMessage.success('保存成功') loading.close() close() @@ -415,12 +433,39 @@ } } -onMounted(() => { - if (pageType.value !== 'detail') { - fetchUserList() // 获取用户列表 - getDict()// 字典 - } +// 获取详细信息 +const getInfo = () => { + getDetail({ id: infoId.value }).then((res) => { + form.value = res.data + form.value.meterStaffList = res.data.meterStaffList.map((item: any) => { + return { + ...item, + certificateDate: item.certificateDate ? dayjs(item.certificateDate).format('YYYY-MM-DD') : '', + } + }) // 现场测试、校准或检定人员 + form.value.equipmentInfoList = res.data.equipmentInfoList.map((item: any) => { + return { + ...item, + validDate: item.validDate ? dayjs(item.validDate).format('YYYY-MM-DD') : '', + } + }) // 携带仪器设备 + form.value.siteExecutiveName = '现场检测审批单' // 现场检测审批名字 + form.value.applyPerson = user.id// 申请人 + form.value.applyPersonName = user.name // 申请人名字 + }) +} + +const changedirectorId = (val) => { + console.log('00000', val) +} + +onMounted(async () => { + fetchUserList() // 获取用户列表 + await getDict()// 字典 + form.value.processId = $route.query.processId as string // 任务id + approvalStatusName.value = $route.query.approvalStatusName as string // 审批类型名称 if (pageType.value !== 'add') { + getInfo() // 获取详情 getApprovalRecord(form.value.processId) } form.value.siteExecutiveName = '现场检测审批单' // 现场检测审批名字 @@ -488,16 +533,18 @@ - + diff --git a/src/views/business/fieldTest/approve/list.vue b/src/views/business/fieldTest/approve/list.vue index ff359d2..e24ed44 100644 --- a/src/views/business/fieldTest/approve/list.vue +++ b/src/views/business/fieldTest/approve/list.vue @@ -36,9 +36,9 @@ const columns = ref([ { text: '现场检测编号', value: 'siteExecutiveNo', align: 'center', width: '160px' }, { text: '委托方名称', value: 'customerName', align: 'center' }, - { text: '联系人', value: 'director', align: 'center' }, - { text: '电话', value: 'phone', align: 'center' }, - { text: '委托方地址', value: 'fullAddress', align: 'center' }, + { text: '联系人', value: 'deliverer', align: 'center' }, + { text: '电话', value: 'delivererTel', align: 'center' }, + { text: '委托方地址', value: 'customerAddress', align: 'center' }, { text: '现场测试、校准或检定项目', value: 'executiveItem', align: 'center' }, { text: '负责人', value: 'directorName', align: 'center' }, { text: '申请时间', value: 'applyTime', align: 'center', width: '180px' }, @@ -201,14 +201,13 @@ approvalDialog.value.initDialog('refuse', row.taskId) } else if (val === 'detail' || val === 'edit') { // 详情和编辑 - // $router.push({ - // path: `subpackage/apply/${val}/${row.id}`, - // query: { - // formId: listQuery.value.formId, - // approvalStatusName: row.applyApprovalStatusName, // 审批状态名称 - // applyProcessId: row.applyProcessId, // 流程实例 - // }, - // }) + $router.push({ + path: `/fieldTest/approve/${val}/${row.id}`, + query: { + approvalStatusName: row.approvalStatusName, // 审批状态名称 + processId: row.processId, // 流程实例 + }, + }) } } // 审批结束回调 diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 8bae72b..b53e1c0 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -14,7 +14,7 @@ } // 详情 -export function detail(data: object) { +export function detail(data: { id: string; sampleNo?: string; sampleName?: string }) { return request({ url: '/business/outsourceProject/apply/detail', method: 'post', diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts index dba2e12..1b994e2 100644 --- a/src/api/business/subpackage/certificate.ts +++ b/src/api/business/subpackage/certificate.ts @@ -28,7 +28,6 @@ return request({ url: '/business/outsourceCertificate/add', method: 'post', - responseType: 'blob', data, }) } @@ -37,7 +36,15 @@ return request({ url: '/business/outsourceCertificate/update', method: 'post', - responseType: 'blob', + data, + }) +} + +// 样品列表 +export function getSampleListByCertificate(data: any) { + return request({ + url: `/customer/sample/listPageBySubpackageCertificate?offset=${data.offset}&limit=${data.limit}`, + method: 'post', data, }) } diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 5427add..9775e03 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -72,7 +72,7 @@ }, }, { - path: 'equipmentReminderDetail/:id', + path: 'equipmentReminderDetail/:type/:id', name: 'EquipmentReminderDetail', component: () => import('@/views/business/board/equipmentReminder/detail.vue'), meta: { diff --git a/src/views/business/board/equipmentReminder/components/baseInfo.vue b/src/views/business/board/equipmentReminder/components/baseInfo.vue new file mode 100644 index 0000000..b83f205 --- /dev/null +++ b/src/views/business/board/equipmentReminder/components/baseInfo.vue @@ -0,0 +1,730 @@ + + + + + + diff --git a/src/views/business/board/equipmentReminder/detail.vue b/src/views/business/board/equipmentReminder/detail.vue index 97064a2..05ef2b7 100644 --- a/src/views/business/board/equipmentReminder/detail.vue +++ b/src/views/business/board/equipmentReminder/detail.vue @@ -1,11 +1,184 @@ - - diff --git a/src/views/business/board/equipmentReminder/list.vue b/src/views/business/board/equipmentReminder/list.vue index 301487b..e0570fa 100644 --- a/src/views/business/board/equipmentReminder/list.vue +++ b/src/views/business/board/equipmentReminder/list.vue @@ -94,7 +94,19 @@ // 点击详情 const handleEdit = (row: IList) => { - $router.push(`/board/equipmentReminderDetail/${row.id}`) + // $router.push(`/board/equipmentReminderDetail/${row.id}`) + $router.push({ + // name: 'EquipmentReminderDetail', + path: `/board/equipmentReminderDetail/detail/${row.id}`, + // params: { + // type: 'detail', + // }, + query: { + title: '详情', + name: '固定资产', + id: row.id, + }, + }) } // 点击搜索 diff --git a/src/views/business/fieldTest/approve/approve-interface.ts b/src/views/business/fieldTest/approve/approve-interface.ts index aad0410..d7ec099 100644 --- a/src/views/business/fieldTest/approve/approve-interface.ts +++ b/src/views/business/fieldTest/approve/approve-interface.ts @@ -39,6 +39,7 @@ applyPerson: string // 申请人 applyPersonName: string // 申请人名称 applyTime: string // 申请时间 + directorId: string // 负责人id directorName: string // 负责人 taskSource: string // 任务来源-字典code taskSourceName: string // 任务来源-字典value diff --git a/src/views/business/fieldTest/approve/edit.vue b/src/views/business/fieldTest/approve/edit.vue index c9be5b6..04dcffe 100644 --- a/src/views/business/fieldTest/approve/edit.vue +++ b/src/views/business/fieldTest/approve/edit.vue @@ -17,7 +17,7 @@ import { SCHEDULE } from '@/utils/scheduleDict' import type { userType } from '@/views/system/user/user-interface' import SelectDeviceDialog from '@/views/device/receive/selectDeviceDialog.vue' -import { addFieldTestApproveList, failUpdateFieldTestApprove, submit, updateFieldTestApprove } from '@/api/business/fieldTest/apply' +import { addFieldTestApproveList, failUpdateFieldTestApprove, getDetail, submit, updateFieldTestApprove } from '@/api/business/fieldTest/apply' const user = useUserStore() // 用户信息 const { proxy } = getCurrentInstance() as any const $router = useRouter() // 关闭页面使用 @@ -33,6 +33,7 @@ const pageType = ref('add') // 页面类型: add, edit, detail const infoId = ref('') // 列表id const submitId = ref('') // 新建提交时所用的id +const $route = useRoute() // 路由参数 const ruleFormRef = ref() // 表单ref const form = ref({ siteExecutiveNo: '', // 现场检测编号 @@ -40,6 +41,7 @@ applyPerson: '', // 申请人 applyPersonName: '', // 申请人名称 applyTime: '', // 申请时间 + directorId: '', // 负责人id directorName: '', // 负责人 taskSource: '', // 任务来源-字典code taskSourceName: '', // 任务来源-字典value @@ -66,7 +68,7 @@ }) // 校验规则 const formRules = ref({ - directorName: [{ required: true, message: '要求负责人不能为空', trigger: ['blur', 'change'] }], + directorId: [{ required: true, message: '要求负责人不能为空', trigger: ['blur', 'change'] }], taskSource: [{ required: true, message: '要求任务来源不能为空', trigger: ['blur', 'change'] }], preCost: [{ required: true, message: '要求预计计量费用不能为空', trigger: ['blur', 'change'] }], preStartTime: [{ required: true, message: '要求预计开始时间不能为空', trigger: ['blur', 'change'] }], @@ -77,6 +79,13 @@ executiveItem: [{ required: true, message: '要求现场测试、校准或检定项目不能为空', trigger: ['blur', 'change'] }], orderCode: [{ required: true, message: '要求委托书编号不能为空', trigger: ['blur', 'change'] }], }) +// -----------------------------------------------路由参数--------------------------------- +if ($route.params && $route.params.type) { + pageType.value = $route.params.type as string + if ($route.params.id) { + infoId.value = $route.params.id as string + } +} // ---------------------------------------------负责人----------------------------------- // 选择器模糊查询 const remoteMethod = (query: string) => { @@ -153,7 +162,7 @@ const meterPersonColumns = ref([ { text: '姓名', value: 'name', width: '220' }, { text: '人员编号', value: 'staffNo', width: '160' }, - { text: '工作部门', value: 'deptId' }, + { text: '工作部门', value: 'deptName' }, { text: '计量专业', value: 'major' }, { text: '证书编号', value: 'verifierCertificateNo' }, { text: '证书有效期', value: 'certificateDate', width: '120' }, @@ -175,7 +184,10 @@ // 只添加列表里不存在的 const index = form.value.meterStaffList.findIndex((i: any) => item.staffNo === i.staffNo) if (index === -1) { - form.value.meterStaffList.push(item) + form.value.meterStaffList.push({ + ...item, + deptName: item.deptId, + }) } }) } @@ -199,7 +211,7 @@ { name: '', // 姓名 staffNo: '', // 人员编号 - deptId: '', // 工作部门 + deptName: '', // 工作部门 major: '', // 计量专业 verifierCertificateNo: '', // 证书编号 certificateDate: '', // 证书有效期 @@ -345,19 +357,25 @@ if (index !== -1) { form.value.equipmentInfoList.splice(indexEquipment, 1) } - form.value.equipmentInfoList = form.value.equipmentInfoList.map((item: { id: string }) => { + // + const equipmentInfoList = form.value.equipmentInfoList.map((item: { id: string }) => { return { id: item.id, } }) - form.value.meterStaffList = form.value.meterStaffList.map((item: { id: string }) => { + const meterStaffList = form.value.meterStaffList.map((item: { id: string }) => { return { id: item.id, } }) + const params = { + ...form.value, + meterStaffList, + equipmentInfoList, + } // 新建 if (pageType.value === 'add') { - addFieldTestApproveList(form.value).then((res) => { + addFieldTestApproveList(params).then((res) => { submitId.value = res.data.data ElMessage.success('保存成功') loading.close() @@ -368,7 +386,7 @@ // 保存 else if (pageType.value === 'edit') { if (approvalStatusName.value === '未通过-驳回') { - failUpdateFieldTestApprove(form.value).then((res) => { + failUpdateFieldTestApprove(params).then((res) => { ElMessage.success('保存成功') loading.close() close() @@ -377,7 +395,7 @@ }) } else { - updateFieldTestApprove(form.value).then((res) => { + updateFieldTestApprove(params).then((res) => { ElMessage.success('保存成功') loading.close() close() @@ -415,12 +433,39 @@ } } -onMounted(() => { - if (pageType.value !== 'detail') { - fetchUserList() // 获取用户列表 - getDict()// 字典 - } +// 获取详细信息 +const getInfo = () => { + getDetail({ id: infoId.value }).then((res) => { + form.value = res.data + form.value.meterStaffList = res.data.meterStaffList.map((item: any) => { + return { + ...item, + certificateDate: item.certificateDate ? dayjs(item.certificateDate).format('YYYY-MM-DD') : '', + } + }) // 现场测试、校准或检定人员 + form.value.equipmentInfoList = res.data.equipmentInfoList.map((item: any) => { + return { + ...item, + validDate: item.validDate ? dayjs(item.validDate).format('YYYY-MM-DD') : '', + } + }) // 携带仪器设备 + form.value.siteExecutiveName = '现场检测审批单' // 现场检测审批名字 + form.value.applyPerson = user.id// 申请人 + form.value.applyPersonName = user.name // 申请人名字 + }) +} + +const changedirectorId = (val) => { + console.log('00000', val) +} + +onMounted(async () => { + fetchUserList() // 获取用户列表 + await getDict()// 字典 + form.value.processId = $route.query.processId as string // 任务id + approvalStatusName.value = $route.query.approvalStatusName as string // 审批类型名称 if (pageType.value !== 'add') { + getInfo() // 获取详情 getApprovalRecord(form.value.processId) } form.value.siteExecutiveName = '现场检测审批单' // 现场检测审批名字 @@ -488,16 +533,18 @@ - + diff --git a/src/views/business/fieldTest/approve/list.vue b/src/views/business/fieldTest/approve/list.vue index ff359d2..e24ed44 100644 --- a/src/views/business/fieldTest/approve/list.vue +++ b/src/views/business/fieldTest/approve/list.vue @@ -36,9 +36,9 @@ const columns = ref([ { text: '现场检测编号', value: 'siteExecutiveNo', align: 'center', width: '160px' }, { text: '委托方名称', value: 'customerName', align: 'center' }, - { text: '联系人', value: 'director', align: 'center' }, - { text: '电话', value: 'phone', align: 'center' }, - { text: '委托方地址', value: 'fullAddress', align: 'center' }, + { text: '联系人', value: 'deliverer', align: 'center' }, + { text: '电话', value: 'delivererTel', align: 'center' }, + { text: '委托方地址', value: 'customerAddress', align: 'center' }, { text: '现场测试、校准或检定项目', value: 'executiveItem', align: 'center' }, { text: '负责人', value: 'directorName', align: 'center' }, { text: '申请时间', value: 'applyTime', align: 'center', width: '180px' }, @@ -201,14 +201,13 @@ approvalDialog.value.initDialog('refuse', row.taskId) } else if (val === 'detail' || val === 'edit') { // 详情和编辑 - // $router.push({ - // path: `subpackage/apply/${val}/${row.id}`, - // query: { - // formId: listQuery.value.formId, - // approvalStatusName: row.applyApprovalStatusName, // 审批状态名称 - // applyProcessId: row.applyProcessId, // 流程实例 - // }, - // }) + $router.push({ + path: `/fieldTest/approve/${val}/${row.id}`, + query: { + approvalStatusName: row.approvalStatusName, // 审批状态名称 + processId: row.processId, // 流程实例 + }, + }) } } // 审批结束回调 diff --git a/src/views/business/fieldTest/components/selectApproveList.vue b/src/views/business/fieldTest/components/selectApproveList.vue new file mode 100644 index 0000000..bcf7f88 --- /dev/null +++ b/src/views/business/fieldTest/components/selectApproveList.vue @@ -0,0 +1,162 @@ + + + + + + diff --git a/src/api/business/fieldTest/apply.ts b/src/api/business/fieldTest/apply.ts index a4947d1..7beef06 100644 --- a/src/api/business/fieldTest/apply.ts +++ b/src/api/business/fieldTest/apply.ts @@ -58,3 +58,12 @@ }) } +// 详情 +export function getDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/detail', + method: 'post', + data, + }) +} + diff --git a/src/api/business/fieldTest/record.ts b/src/api/business/fieldTest/record.ts index 2c10aab..5d4bd56 100644 --- a/src/api/business/fieldTest/record.ts +++ b/src/api/business/fieldTest/record.ts @@ -14,27 +14,36 @@ } // 删除 -export function delFieldTestApproveList(data: any) { - return request({ - url: '/business/siteExecutive/batchDelete', - method: 'post', - data, - }) -} +// export function delFieldTestApproveList(data: any) { +// return request({ +// url: '/business/siteExecutive/batchDelete', +// method: 'post', +// data, +// }) +// } // 新增 -export function addFieldTestApproveList(data: object) { +export function addFieldTestRecordList(data: object) { return request({ - url: '/business/siteExecutive/save', + url: '/business/siteExecutive/log/add', method: 'post', data, }) } // 编辑 -export function updateFieldTestApprove(data: object) { +export function updateFieldTestRecord(data: object) { return request({ - url: '/business/siteExecutive/draftUpdate', + url: '/business/siteExecutive/log/update', + method: 'post', + data, + }) +} + +// 详情 +export function getRecordDetail(data: { id: string }) { + return request({ + url: '/business/siteExecutive/log/detail', method: 'post', data, }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 8bae72b..b53e1c0 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -14,7 +14,7 @@ } // 详情 -export function detail(data: object) { +export function detail(data: { id: string; sampleNo?: string; sampleName?: string }) { return request({ url: '/business/outsourceProject/apply/detail', method: 'post', diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts index dba2e12..1b994e2 100644 --- a/src/api/business/subpackage/certificate.ts +++ b/src/api/business/subpackage/certificate.ts @@ -28,7 +28,6 @@ return request({ url: '/business/outsourceCertificate/add', method: 'post', - responseType: 'blob', data, }) } @@ -37,7 +36,15 @@ return request({ url: '/business/outsourceCertificate/update', method: 'post', - responseType: 'blob', + data, + }) +} + +// 样品列表 +export function getSampleListByCertificate(data: any) { + return request({ + url: `/customer/sample/listPageBySubpackageCertificate?offset=${data.offset}&limit=${data.limit}`, + method: 'post', data, }) } diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 5427add..9775e03 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -72,7 +72,7 @@ }, }, { - path: 'equipmentReminderDetail/:id', + path: 'equipmentReminderDetail/:type/:id', name: 'EquipmentReminderDetail', component: () => import('@/views/business/board/equipmentReminder/detail.vue'), meta: { diff --git a/src/views/business/board/equipmentReminder/components/baseInfo.vue b/src/views/business/board/equipmentReminder/components/baseInfo.vue new file mode 100644 index 0000000..b83f205 --- /dev/null +++ b/src/views/business/board/equipmentReminder/components/baseInfo.vue @@ -0,0 +1,730 @@ + + + + + + diff --git a/src/views/business/board/equipmentReminder/detail.vue b/src/views/business/board/equipmentReminder/detail.vue index 97064a2..05ef2b7 100644 --- a/src/views/business/board/equipmentReminder/detail.vue +++ b/src/views/business/board/equipmentReminder/detail.vue @@ -1,11 +1,184 @@ - - diff --git a/src/views/business/board/equipmentReminder/list.vue b/src/views/business/board/equipmentReminder/list.vue index 301487b..e0570fa 100644 --- a/src/views/business/board/equipmentReminder/list.vue +++ b/src/views/business/board/equipmentReminder/list.vue @@ -94,7 +94,19 @@ // 点击详情 const handleEdit = (row: IList) => { - $router.push(`/board/equipmentReminderDetail/${row.id}`) + // $router.push(`/board/equipmentReminderDetail/${row.id}`) + $router.push({ + // name: 'EquipmentReminderDetail', + path: `/board/equipmentReminderDetail/detail/${row.id}`, + // params: { + // type: 'detail', + // }, + query: { + title: '详情', + name: '固定资产', + id: row.id, + }, + }) } // 点击搜索 diff --git a/src/views/business/fieldTest/approve/approve-interface.ts b/src/views/business/fieldTest/approve/approve-interface.ts index aad0410..d7ec099 100644 --- a/src/views/business/fieldTest/approve/approve-interface.ts +++ b/src/views/business/fieldTest/approve/approve-interface.ts @@ -39,6 +39,7 @@ applyPerson: string // 申请人 applyPersonName: string // 申请人名称 applyTime: string // 申请时间 + directorId: string // 负责人id directorName: string // 负责人 taskSource: string // 任务来源-字典code taskSourceName: string // 任务来源-字典value diff --git a/src/views/business/fieldTest/approve/edit.vue b/src/views/business/fieldTest/approve/edit.vue index c9be5b6..04dcffe 100644 --- a/src/views/business/fieldTest/approve/edit.vue +++ b/src/views/business/fieldTest/approve/edit.vue @@ -17,7 +17,7 @@ import { SCHEDULE } from '@/utils/scheduleDict' import type { userType } from '@/views/system/user/user-interface' import SelectDeviceDialog from '@/views/device/receive/selectDeviceDialog.vue' -import { addFieldTestApproveList, failUpdateFieldTestApprove, submit, updateFieldTestApprove } from '@/api/business/fieldTest/apply' +import { addFieldTestApproveList, failUpdateFieldTestApprove, getDetail, submit, updateFieldTestApprove } from '@/api/business/fieldTest/apply' const user = useUserStore() // 用户信息 const { proxy } = getCurrentInstance() as any const $router = useRouter() // 关闭页面使用 @@ -33,6 +33,7 @@ const pageType = ref('add') // 页面类型: add, edit, detail const infoId = ref('') // 列表id const submitId = ref('') // 新建提交时所用的id +const $route = useRoute() // 路由参数 const ruleFormRef = ref() // 表单ref const form = ref({ siteExecutiveNo: '', // 现场检测编号 @@ -40,6 +41,7 @@ applyPerson: '', // 申请人 applyPersonName: '', // 申请人名称 applyTime: '', // 申请时间 + directorId: '', // 负责人id directorName: '', // 负责人 taskSource: '', // 任务来源-字典code taskSourceName: '', // 任务来源-字典value @@ -66,7 +68,7 @@ }) // 校验规则 const formRules = ref({ - directorName: [{ required: true, message: '要求负责人不能为空', trigger: ['blur', 'change'] }], + directorId: [{ required: true, message: '要求负责人不能为空', trigger: ['blur', 'change'] }], taskSource: [{ required: true, message: '要求任务来源不能为空', trigger: ['blur', 'change'] }], preCost: [{ required: true, message: '要求预计计量费用不能为空', trigger: ['blur', 'change'] }], preStartTime: [{ required: true, message: '要求预计开始时间不能为空', trigger: ['blur', 'change'] }], @@ -77,6 +79,13 @@ executiveItem: [{ required: true, message: '要求现场测试、校准或检定项目不能为空', trigger: ['blur', 'change'] }], orderCode: [{ required: true, message: '要求委托书编号不能为空', trigger: ['blur', 'change'] }], }) +// -----------------------------------------------路由参数--------------------------------- +if ($route.params && $route.params.type) { + pageType.value = $route.params.type as string + if ($route.params.id) { + infoId.value = $route.params.id as string + } +} // ---------------------------------------------负责人----------------------------------- // 选择器模糊查询 const remoteMethod = (query: string) => { @@ -153,7 +162,7 @@ const meterPersonColumns = ref([ { text: '姓名', value: 'name', width: '220' }, { text: '人员编号', value: 'staffNo', width: '160' }, - { text: '工作部门', value: 'deptId' }, + { text: '工作部门', value: 'deptName' }, { text: '计量专业', value: 'major' }, { text: '证书编号', value: 'verifierCertificateNo' }, { text: '证书有效期', value: 'certificateDate', width: '120' }, @@ -175,7 +184,10 @@ // 只添加列表里不存在的 const index = form.value.meterStaffList.findIndex((i: any) => item.staffNo === i.staffNo) if (index === -1) { - form.value.meterStaffList.push(item) + form.value.meterStaffList.push({ + ...item, + deptName: item.deptId, + }) } }) } @@ -199,7 +211,7 @@ { name: '', // 姓名 staffNo: '', // 人员编号 - deptId: '', // 工作部门 + deptName: '', // 工作部门 major: '', // 计量专业 verifierCertificateNo: '', // 证书编号 certificateDate: '', // 证书有效期 @@ -345,19 +357,25 @@ if (index !== -1) { form.value.equipmentInfoList.splice(indexEquipment, 1) } - form.value.equipmentInfoList = form.value.equipmentInfoList.map((item: { id: string }) => { + // + const equipmentInfoList = form.value.equipmentInfoList.map((item: { id: string }) => { return { id: item.id, } }) - form.value.meterStaffList = form.value.meterStaffList.map((item: { id: string }) => { + const meterStaffList = form.value.meterStaffList.map((item: { id: string }) => { return { id: item.id, } }) + const params = { + ...form.value, + meterStaffList, + equipmentInfoList, + } // 新建 if (pageType.value === 'add') { - addFieldTestApproveList(form.value).then((res) => { + addFieldTestApproveList(params).then((res) => { submitId.value = res.data.data ElMessage.success('保存成功') loading.close() @@ -368,7 +386,7 @@ // 保存 else if (pageType.value === 'edit') { if (approvalStatusName.value === '未通过-驳回') { - failUpdateFieldTestApprove(form.value).then((res) => { + failUpdateFieldTestApprove(params).then((res) => { ElMessage.success('保存成功') loading.close() close() @@ -377,7 +395,7 @@ }) } else { - updateFieldTestApprove(form.value).then((res) => { + updateFieldTestApprove(params).then((res) => { ElMessage.success('保存成功') loading.close() close() @@ -415,12 +433,39 @@ } } -onMounted(() => { - if (pageType.value !== 'detail') { - fetchUserList() // 获取用户列表 - getDict()// 字典 - } +// 获取详细信息 +const getInfo = () => { + getDetail({ id: infoId.value }).then((res) => { + form.value = res.data + form.value.meterStaffList = res.data.meterStaffList.map((item: any) => { + return { + ...item, + certificateDate: item.certificateDate ? dayjs(item.certificateDate).format('YYYY-MM-DD') : '', + } + }) // 现场测试、校准或检定人员 + form.value.equipmentInfoList = res.data.equipmentInfoList.map((item: any) => { + return { + ...item, + validDate: item.validDate ? dayjs(item.validDate).format('YYYY-MM-DD') : '', + } + }) // 携带仪器设备 + form.value.siteExecutiveName = '现场检测审批单' // 现场检测审批名字 + form.value.applyPerson = user.id// 申请人 + form.value.applyPersonName = user.name // 申请人名字 + }) +} + +const changedirectorId = (val) => { + console.log('00000', val) +} + +onMounted(async () => { + fetchUserList() // 获取用户列表 + await getDict()// 字典 + form.value.processId = $route.query.processId as string // 任务id + approvalStatusName.value = $route.query.approvalStatusName as string // 审批类型名称 if (pageType.value !== 'add') { + getInfo() // 获取详情 getApprovalRecord(form.value.processId) } form.value.siteExecutiveName = '现场检测审批单' // 现场检测审批名字 @@ -488,16 +533,18 @@ - + diff --git a/src/views/business/fieldTest/approve/list.vue b/src/views/business/fieldTest/approve/list.vue index ff359d2..e24ed44 100644 --- a/src/views/business/fieldTest/approve/list.vue +++ b/src/views/business/fieldTest/approve/list.vue @@ -36,9 +36,9 @@ const columns = ref([ { text: '现场检测编号', value: 'siteExecutiveNo', align: 'center', width: '160px' }, { text: '委托方名称', value: 'customerName', align: 'center' }, - { text: '联系人', value: 'director', align: 'center' }, - { text: '电话', value: 'phone', align: 'center' }, - { text: '委托方地址', value: 'fullAddress', align: 'center' }, + { text: '联系人', value: 'deliverer', align: 'center' }, + { text: '电话', value: 'delivererTel', align: 'center' }, + { text: '委托方地址', value: 'customerAddress', align: 'center' }, { text: '现场测试、校准或检定项目', value: 'executiveItem', align: 'center' }, { text: '负责人', value: 'directorName', align: 'center' }, { text: '申请时间', value: 'applyTime', align: 'center', width: '180px' }, @@ -201,14 +201,13 @@ approvalDialog.value.initDialog('refuse', row.taskId) } else if (val === 'detail' || val === 'edit') { // 详情和编辑 - // $router.push({ - // path: `subpackage/apply/${val}/${row.id}`, - // query: { - // formId: listQuery.value.formId, - // approvalStatusName: row.applyApprovalStatusName, // 审批状态名称 - // applyProcessId: row.applyProcessId, // 流程实例 - // }, - // }) + $router.push({ + path: `/fieldTest/approve/${val}/${row.id}`, + query: { + approvalStatusName: row.approvalStatusName, // 审批状态名称 + processId: row.processId, // 流程实例 + }, + }) } } // 审批结束回调 diff --git a/src/views/business/fieldTest/components/selectApproveList.vue b/src/views/business/fieldTest/components/selectApproveList.vue new file mode 100644 index 0000000..bcf7f88 --- /dev/null +++ b/src/views/business/fieldTest/components/selectApproveList.vue @@ -0,0 +1,162 @@ + + + + + + diff --git a/src/views/business/fieldTest/record/edit.vue b/src/views/business/fieldTest/record/edit.vue index 438dbfa..da49a12 100644 --- a/src/views/business/fieldTest/record/edit.vue +++ b/src/views/business/fieldTest/record/edit.vue @@ -2,8 +2,12 @@