diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 2cb0803..015814f 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -117,10 +117,10 @@ }, { path: 'task/:role/:id?', - name: 'taskDetail', + name: 'TaskDetail', component: () => import('@/views/business/schedule/task/taskEdit.vue'), meta: { - title: '样品详情', + title: '任务分发详情', icon: 'ep:key', sidebar: false, breadcrumb: true, @@ -253,7 +253,7 @@ { path: '/subpackage', component: Layout, - redirect: '/subpackage/apply', // 子路由 + redirect: '/subpackage/itemApply', // 子路由 name: 'Subpackage', meta: { title: '分包管理', @@ -262,43 +262,43 @@ }, children: [ { - path: 'apply', - name: 'Apply', + path: 'itemApply', + name: 'ItemApply', component: () => import('@/views/business/subpackage/apply/list.vue'), meta: { title: '分包项目申请', icon: 'ep:key', - auth: '/subpackage/apply', + auth: '/subpackage/itemApply', }, }, { - path: 'check', - name: 'Check', + path: 'itemCheck', + name: 'ItemCheck', component: () => import('@/views/business/subpackage/check/list.vue'), meta: { title: '分包项目验收', icon: 'ep:key', - auth: '/subpackage/check', + auth: '/subpackage/itemCheck', }, }, { - path: 'record', - name: 'Record', + path: 'archives', + name: 'Archives', component: () => import('@/views/business/subpackage/record/list.vue'), meta: { title: '分包方档案', icon: 'ep:key', - auth: '/subpackage/record', + auth: '/subpackage/archives', }, }, { - path: 'approve', - name: 'Approve', + path: 'qualificationApprove', + name: 'QualificationApprove', component: () => import('@/views/business/subpackage/approve/list.vue'), meta: { title: '分包方资格审批', icon: 'ep:key', - auth: '/subpackage/approve', + auth: '/subpackage/qualificationApprove', }, }, { diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 2cb0803..015814f 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -117,10 +117,10 @@ }, { path: 'task/:role/:id?', - name: 'taskDetail', + name: 'TaskDetail', component: () => import('@/views/business/schedule/task/taskEdit.vue'), meta: { - title: '样品详情', + title: '任务分发详情', icon: 'ep:key', sidebar: false, breadcrumb: true, @@ -253,7 +253,7 @@ { path: '/subpackage', component: Layout, - redirect: '/subpackage/apply', // 子路由 + redirect: '/subpackage/itemApply', // 子路由 name: 'Subpackage', meta: { title: '分包管理', @@ -262,43 +262,43 @@ }, children: [ { - path: 'apply', - name: 'Apply', + path: 'itemApply', + name: 'ItemApply', component: () => import('@/views/business/subpackage/apply/list.vue'), meta: { title: '分包项目申请', icon: 'ep:key', - auth: '/subpackage/apply', + auth: '/subpackage/itemApply', }, }, { - path: 'check', - name: 'Check', + path: 'itemCheck', + name: 'ItemCheck', component: () => import('@/views/business/subpackage/check/list.vue'), meta: { title: '分包项目验收', icon: 'ep:key', - auth: '/subpackage/check', + auth: '/subpackage/itemCheck', }, }, { - path: 'record', - name: 'Record', + path: 'archives', + name: 'Archives', component: () => import('@/views/business/subpackage/record/list.vue'), meta: { title: '分包方档案', icon: 'ep:key', - auth: '/subpackage/record', + auth: '/subpackage/archives', }, }, { - path: 'approve', - name: 'Approve', + path: 'qualificationApprove', + name: 'QualificationApprove', component: () => import('@/views/business/subpackage/approve/list.vue'), meta: { title: '分包方资格审批', icon: 'ep:key', - auth: '/subpackage/approve', + auth: '/subpackage/qualificationApprove', }, }, { diff --git a/src/utils/scheduleDict.ts b/src/utils/scheduleDict.ts index a579f5b..941ee89 100644 --- a/src/utils/scheduleDict.ts +++ b/src/utils/scheduleDict.ts @@ -25,4 +25,5 @@ BUSINESS_SUBPACKAGE_CHECK = 'ywglfbxmys', // 分包项目验收 BUSINESS_SUBPACKAGE_RECORD = 'ywglfbfda', // 分包方档案 BUSINESS_SUBPACKAGE_APPROVE = 'ywglfbfzgsp', // 分包方资格资格审批 + BUSINESS_SUBPACKAGE_MANAGE = 'ywglfbzsgl', // 分包方证书管理 } diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 2cb0803..015814f 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -117,10 +117,10 @@ }, { path: 'task/:role/:id?', - name: 'taskDetail', + name: 'TaskDetail', component: () => import('@/views/business/schedule/task/taskEdit.vue'), meta: { - title: '样品详情', + title: '任务分发详情', icon: 'ep:key', sidebar: false, breadcrumb: true, @@ -253,7 +253,7 @@ { path: '/subpackage', component: Layout, - redirect: '/subpackage/apply', // 子路由 + redirect: '/subpackage/itemApply', // 子路由 name: 'Subpackage', meta: { title: '分包管理', @@ -262,43 +262,43 @@ }, children: [ { - path: 'apply', - name: 'Apply', + path: 'itemApply', + name: 'ItemApply', component: () => import('@/views/business/subpackage/apply/list.vue'), meta: { title: '分包项目申请', icon: 'ep:key', - auth: '/subpackage/apply', + auth: '/subpackage/itemApply', }, }, { - path: 'check', - name: 'Check', + path: 'itemCheck', + name: 'ItemCheck', component: () => import('@/views/business/subpackage/check/list.vue'), meta: { title: '分包项目验收', icon: 'ep:key', - auth: '/subpackage/check', + auth: '/subpackage/itemCheck', }, }, { - path: 'record', - name: 'Record', + path: 'archives', + name: 'Archives', component: () => import('@/views/business/subpackage/record/list.vue'), meta: { title: '分包方档案', icon: 'ep:key', - auth: '/subpackage/record', + auth: '/subpackage/archives', }, }, { - path: 'approve', - name: 'Approve', + path: 'qualificationApprove', + name: 'QualificationApprove', component: () => import('@/views/business/subpackage/approve/list.vue'), meta: { title: '分包方资格审批', icon: 'ep:key', - auth: '/subpackage/approve', + auth: '/subpackage/qualificationApprove', }, }, { diff --git a/src/utils/scheduleDict.ts b/src/utils/scheduleDict.ts index a579f5b..941ee89 100644 --- a/src/utils/scheduleDict.ts +++ b/src/utils/scheduleDict.ts @@ -25,4 +25,5 @@ BUSINESS_SUBPACKAGE_CHECK = 'ywglfbxmys', // 分包项目验收 BUSINESS_SUBPACKAGE_RECORD = 'ywglfbfda', // 分包方档案 BUSINESS_SUBPACKAGE_APPROVE = 'ywglfbfzgsp', // 分包方资格资格审批 + BUSINESS_SUBPACKAGE_MANAGE = 'ywglfbzsgl', // 分包方证书管理 } diff --git a/src/views/business/schedule/certPrint/cert-interface.ts b/src/views/business/schedule/certPrint/cert-interface.ts index 3442fb8..be9379d 100644 --- a/src/views/business/schedule/certPrint/cert-interface.ts +++ b/src/views/business/schedule/certPrint/cert-interface.ts @@ -147,6 +147,21 @@ status?: string // 状态变更(无需检测状态7,收入状态2,归还6,回退状态2.5.1,终止5) } +// 证书打印 +export interface ICerPrint { + approvalStatus: string | undefined + certificateClass: string + certificateNo: string + createUserId: string | number + customerName: string + formId: string + ids?: [] | null + orderNo: string + printStatus: string | number + sampleName: string + sampleNo: string +} + // 证书同意/拒绝 export interface ICertApprove { comments: string diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 2cb0803..015814f 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -117,10 +117,10 @@ }, { path: 'task/:role/:id?', - name: 'taskDetail', + name: 'TaskDetail', component: () => import('@/views/business/schedule/task/taskEdit.vue'), meta: { - title: '样品详情', + title: '任务分发详情', icon: 'ep:key', sidebar: false, breadcrumb: true, @@ -253,7 +253,7 @@ { path: '/subpackage', component: Layout, - redirect: '/subpackage/apply', // 子路由 + redirect: '/subpackage/itemApply', // 子路由 name: 'Subpackage', meta: { title: '分包管理', @@ -262,43 +262,43 @@ }, children: [ { - path: 'apply', - name: 'Apply', + path: 'itemApply', + name: 'ItemApply', component: () => import('@/views/business/subpackage/apply/list.vue'), meta: { title: '分包项目申请', icon: 'ep:key', - auth: '/subpackage/apply', + auth: '/subpackage/itemApply', }, }, { - path: 'check', - name: 'Check', + path: 'itemCheck', + name: 'ItemCheck', component: () => import('@/views/business/subpackage/check/list.vue'), meta: { title: '分包项目验收', icon: 'ep:key', - auth: '/subpackage/check', + auth: '/subpackage/itemCheck', }, }, { - path: 'record', - name: 'Record', + path: 'archives', + name: 'Archives', component: () => import('@/views/business/subpackage/record/list.vue'), meta: { title: '分包方档案', icon: 'ep:key', - auth: '/subpackage/record', + auth: '/subpackage/archives', }, }, { - path: 'approve', - name: 'Approve', + path: 'qualificationApprove', + name: 'QualificationApprove', component: () => import('@/views/business/subpackage/approve/list.vue'), meta: { title: '分包方资格审批', icon: 'ep:key', - auth: '/subpackage/approve', + auth: '/subpackage/qualificationApprove', }, }, { diff --git a/src/utils/scheduleDict.ts b/src/utils/scheduleDict.ts index a579f5b..941ee89 100644 --- a/src/utils/scheduleDict.ts +++ b/src/utils/scheduleDict.ts @@ -25,4 +25,5 @@ BUSINESS_SUBPACKAGE_CHECK = 'ywglfbxmys', // 分包项目验收 BUSINESS_SUBPACKAGE_RECORD = 'ywglfbfda', // 分包方档案 BUSINESS_SUBPACKAGE_APPROVE = 'ywglfbfzgsp', // 分包方资格资格审批 + BUSINESS_SUBPACKAGE_MANAGE = 'ywglfbzsgl', // 分包方证书管理 } diff --git a/src/views/business/schedule/certPrint/cert-interface.ts b/src/views/business/schedule/certPrint/cert-interface.ts index 3442fb8..be9379d 100644 --- a/src/views/business/schedule/certPrint/cert-interface.ts +++ b/src/views/business/schedule/certPrint/cert-interface.ts @@ -147,6 +147,21 @@ status?: string // 状态变更(无需检测状态7,收入状态2,归还6,回退状态2.5.1,终止5) } +// 证书打印 +export interface ICerPrint { + approvalStatus: string | undefined + certificateClass: string + certificateNo: string + createUserId: string | number + customerName: string + formId: string + ids?: [] | null + orderNo: string + printStatus: string | number + sampleName: string + sampleNo: string +} + // 证书同意/拒绝 export interface ICertApprove { comments: string diff --git a/src/views/business/schedule/certPrint/certList.vue b/src/views/business/schedule/certPrint/certList.vue index 173b7ea..2788a08 100644 --- a/src/views/business/schedule/certPrint/certList.vue +++ b/src/views/business/schedule/certPrint/certList.vue @@ -247,8 +247,13 @@ type: 'warning', }, ).then(() => { - exportCert({ orderId: row.orderId, reason: row.reason, sampleId: row.sampleId, status: row.status }).then((res) => { - console.log(res) + const params = { + ...listQuery.value, + ids: [row.id], + } + exportCert(params).then((res) => { + const blob = new Blob([res.data]) + exportFile(blob, '证书打印列表.xlsx') }) }) } diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 2cb0803..015814f 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -117,10 +117,10 @@ }, { path: 'task/:role/:id?', - name: 'taskDetail', + name: 'TaskDetail', component: () => import('@/views/business/schedule/task/taskEdit.vue'), meta: { - title: '样品详情', + title: '任务分发详情', icon: 'ep:key', sidebar: false, breadcrumb: true, @@ -253,7 +253,7 @@ { path: '/subpackage', component: Layout, - redirect: '/subpackage/apply', // 子路由 + redirect: '/subpackage/itemApply', // 子路由 name: 'Subpackage', meta: { title: '分包管理', @@ -262,43 +262,43 @@ }, children: [ { - path: 'apply', - name: 'Apply', + path: 'itemApply', + name: 'ItemApply', component: () => import('@/views/business/subpackage/apply/list.vue'), meta: { title: '分包项目申请', icon: 'ep:key', - auth: '/subpackage/apply', + auth: '/subpackage/itemApply', }, }, { - path: 'check', - name: 'Check', + path: 'itemCheck', + name: 'ItemCheck', component: () => import('@/views/business/subpackage/check/list.vue'), meta: { title: '分包项目验收', icon: 'ep:key', - auth: '/subpackage/check', + auth: '/subpackage/itemCheck', }, }, { - path: 'record', - name: 'Record', + path: 'archives', + name: 'Archives', component: () => import('@/views/business/subpackage/record/list.vue'), meta: { title: '分包方档案', icon: 'ep:key', - auth: '/subpackage/record', + auth: '/subpackage/archives', }, }, { - path: 'approve', - name: 'Approve', + path: 'qualificationApprove', + name: 'QualificationApprove', component: () => import('@/views/business/subpackage/approve/list.vue'), meta: { title: '分包方资格审批', icon: 'ep:key', - auth: '/subpackage/approve', + auth: '/subpackage/qualificationApprove', }, }, { diff --git a/src/utils/scheduleDict.ts b/src/utils/scheduleDict.ts index a579f5b..941ee89 100644 --- a/src/utils/scheduleDict.ts +++ b/src/utils/scheduleDict.ts @@ -25,4 +25,5 @@ BUSINESS_SUBPACKAGE_CHECK = 'ywglfbxmys', // 分包项目验收 BUSINESS_SUBPACKAGE_RECORD = 'ywglfbfda', // 分包方档案 BUSINESS_SUBPACKAGE_APPROVE = 'ywglfbfzgsp', // 分包方资格资格审批 + BUSINESS_SUBPACKAGE_MANAGE = 'ywglfbzsgl', // 分包方证书管理 } diff --git a/src/views/business/schedule/certPrint/cert-interface.ts b/src/views/business/schedule/certPrint/cert-interface.ts index 3442fb8..be9379d 100644 --- a/src/views/business/schedule/certPrint/cert-interface.ts +++ b/src/views/business/schedule/certPrint/cert-interface.ts @@ -147,6 +147,21 @@ status?: string // 状态变更(无需检测状态7,收入状态2,归还6,回退状态2.5.1,终止5) } +// 证书打印 +export interface ICerPrint { + approvalStatus: string | undefined + certificateClass: string + certificateNo: string + createUserId: string | number + customerName: string + formId: string + ids?: [] | null + orderNo: string + printStatus: string | number + sampleName: string + sampleNo: string +} + // 证书同意/拒绝 export interface ICertApprove { comments: string diff --git a/src/views/business/schedule/certPrint/certList.vue b/src/views/business/schedule/certPrint/certList.vue index 173b7ea..2788a08 100644 --- a/src/views/business/schedule/certPrint/certList.vue +++ b/src/views/business/schedule/certPrint/certList.vue @@ -247,8 +247,13 @@ type: 'warning', }, ).then(() => { - exportCert({ orderId: row.orderId, reason: row.reason, sampleId: row.sampleId, status: row.status }).then((res) => { - console.log(res) + const params = { + ...listQuery.value, + ids: [row.id], + } + exportCert(params).then((res) => { + const blob = new Blob([res.data]) + exportFile(blob, '证书打印列表.xlsx') }) }) } diff --git a/src/views/business/schedule/task/taskList.vue b/src/views/business/schedule/task/taskList.vue index 0717e93..64473c3 100644 --- a/src/views/business/schedule/task/taskList.vue +++ b/src/views/business/schedule/task/taskList.vue @@ -138,6 +138,8 @@ } // 点击详情 const handleDetail = (row: ITaskList) => { + console.log('跳转任务分发详情') + $router.push(`/schedule/task/distribute/${row.sampleId}?order=${row.orderId}`) } diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 2cb0803..015814f 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -117,10 +117,10 @@ }, { path: 'task/:role/:id?', - name: 'taskDetail', + name: 'TaskDetail', component: () => import('@/views/business/schedule/task/taskEdit.vue'), meta: { - title: '样品详情', + title: '任务分发详情', icon: 'ep:key', sidebar: false, breadcrumb: true, @@ -253,7 +253,7 @@ { path: '/subpackage', component: Layout, - redirect: '/subpackage/apply', // 子路由 + redirect: '/subpackage/itemApply', // 子路由 name: 'Subpackage', meta: { title: '分包管理', @@ -262,43 +262,43 @@ }, children: [ { - path: 'apply', - name: 'Apply', + path: 'itemApply', + name: 'ItemApply', component: () => import('@/views/business/subpackage/apply/list.vue'), meta: { title: '分包项目申请', icon: 'ep:key', - auth: '/subpackage/apply', + auth: '/subpackage/itemApply', }, }, { - path: 'check', - name: 'Check', + path: 'itemCheck', + name: 'ItemCheck', component: () => import('@/views/business/subpackage/check/list.vue'), meta: { title: '分包项目验收', icon: 'ep:key', - auth: '/subpackage/check', + auth: '/subpackage/itemCheck', }, }, { - path: 'record', - name: 'Record', + path: 'archives', + name: 'Archives', component: () => import('@/views/business/subpackage/record/list.vue'), meta: { title: '分包方档案', icon: 'ep:key', - auth: '/subpackage/record', + auth: '/subpackage/archives', }, }, { - path: 'approve', - name: 'Approve', + path: 'qualificationApprove', + name: 'QualificationApprove', component: () => import('@/views/business/subpackage/approve/list.vue'), meta: { title: '分包方资格审批', icon: 'ep:key', - auth: '/subpackage/approve', + auth: '/subpackage/qualificationApprove', }, }, { diff --git a/src/utils/scheduleDict.ts b/src/utils/scheduleDict.ts index a579f5b..941ee89 100644 --- a/src/utils/scheduleDict.ts +++ b/src/utils/scheduleDict.ts @@ -25,4 +25,5 @@ BUSINESS_SUBPACKAGE_CHECK = 'ywglfbxmys', // 分包项目验收 BUSINESS_SUBPACKAGE_RECORD = 'ywglfbfda', // 分包方档案 BUSINESS_SUBPACKAGE_APPROVE = 'ywglfbfzgsp', // 分包方资格资格审批 + BUSINESS_SUBPACKAGE_MANAGE = 'ywglfbzsgl', // 分包方证书管理 } diff --git a/src/views/business/schedule/certPrint/cert-interface.ts b/src/views/business/schedule/certPrint/cert-interface.ts index 3442fb8..be9379d 100644 --- a/src/views/business/schedule/certPrint/cert-interface.ts +++ b/src/views/business/schedule/certPrint/cert-interface.ts @@ -147,6 +147,21 @@ status?: string // 状态变更(无需检测状态7,收入状态2,归还6,回退状态2.5.1,终止5) } +// 证书打印 +export interface ICerPrint { + approvalStatus: string | undefined + certificateClass: string + certificateNo: string + createUserId: string | number + customerName: string + formId: string + ids?: [] | null + orderNo: string + printStatus: string | number + sampleName: string + sampleNo: string +} + // 证书同意/拒绝 export interface ICertApprove { comments: string diff --git a/src/views/business/schedule/certPrint/certList.vue b/src/views/business/schedule/certPrint/certList.vue index 173b7ea..2788a08 100644 --- a/src/views/business/schedule/certPrint/certList.vue +++ b/src/views/business/schedule/certPrint/certList.vue @@ -247,8 +247,13 @@ type: 'warning', }, ).then(() => { - exportCert({ orderId: row.orderId, reason: row.reason, sampleId: row.sampleId, status: row.status }).then((res) => { - console.log(res) + const params = { + ...listQuery.value, + ids: [row.id], + } + exportCert(params).then((res) => { + const blob = new Blob([res.data]) + exportFile(blob, '证书打印列表.xlsx') }) }) } diff --git a/src/views/business/schedule/task/taskList.vue b/src/views/business/schedule/task/taskList.vue index 0717e93..64473c3 100644 --- a/src/views/business/schedule/task/taskList.vue +++ b/src/views/business/schedule/task/taskList.vue @@ -138,6 +138,8 @@ } // 点击详情 const handleDetail = (row: ITaskList) => { + console.log('跳转任务分发详情') + $router.push(`/schedule/task/distribute/${row.sampleId}?order=${row.orderId}`) } diff --git a/src/views/business/subpackage/apply/list.vue b/src/views/business/subpackage/apply/list.vue index 6c8c903..8fc0173 100644 --- a/src/views/business/subpackage/apply/list.vue +++ b/src/views/business/subpackage/apply/list.vue @@ -11,7 +11,7 @@ import type { dictType } from '@/views/device/receive/receive' import type { IMenu } from '@/components/buttonBox/buttonBox' import ButtonBox from '@/components/buttonBox/buttonBox.vue' -import { getListPage } from '@/api/business/subpackage/apply' +import { detail, getListPage } from '@/api/business/subpackage/apply' import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any @@ -59,6 +59,21 @@ } }) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + total.value = parseInt(response.data.total) + loadingTable.value = false + }) +} // 清除条件 const clearList = () => { listQuery.value = { @@ -76,29 +91,6 @@ timeRange.value = ['', ''] fetchData() } - -// 数据查询 -function fetchData(isNowPage = false) { - loadingTable.value = true - if (!isNowPage) { - // 是否显示当前页,否则跳转第一页 - listQuery.value.offset = 1 - } - // 模拟数据 - loadingTable.value = false - getListPage(listQuery.value).then((response) => { - list.value = response.data.rows - let interfaceStr = '' - for (const key in response.data.rows[0]) { - const item = response.data.rows[0][key] - interfaceStr += `${key}:${typeof (item)}\n` - } - console.log(interfaceStr) - total.value = parseInt(response.data.total) - loadingTable.value = false - }) -} - // 搜索 const searchList = () => { fetchData(true) @@ -126,7 +118,11 @@ } // 详情或者编辑 const handleEdit = (row: IApplyList, status: string) => { - + if (status !== 'edit') { + detail({ id: row.id }).then((res) => { + console.log(res) + }) + } } // 取消 const handleCancle = (row: IApplyList) => { @@ -226,9 +222,6 @@ 详情 - - 取消 - diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 2cb0803..015814f 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -117,10 +117,10 @@ }, { path: 'task/:role/:id?', - name: 'taskDetail', + name: 'TaskDetail', component: () => import('@/views/business/schedule/task/taskEdit.vue'), meta: { - title: '样品详情', + title: '任务分发详情', icon: 'ep:key', sidebar: false, breadcrumb: true, @@ -253,7 +253,7 @@ { path: '/subpackage', component: Layout, - redirect: '/subpackage/apply', // 子路由 + redirect: '/subpackage/itemApply', // 子路由 name: 'Subpackage', meta: { title: '分包管理', @@ -262,43 +262,43 @@ }, children: [ { - path: 'apply', - name: 'Apply', + path: 'itemApply', + name: 'ItemApply', component: () => import('@/views/business/subpackage/apply/list.vue'), meta: { title: '分包项目申请', icon: 'ep:key', - auth: '/subpackage/apply', + auth: '/subpackage/itemApply', }, }, { - path: 'check', - name: 'Check', + path: 'itemCheck', + name: 'ItemCheck', component: () => import('@/views/business/subpackage/check/list.vue'), meta: { title: '分包项目验收', icon: 'ep:key', - auth: '/subpackage/check', + auth: '/subpackage/itemCheck', }, }, { - path: 'record', - name: 'Record', + path: 'archives', + name: 'Archives', component: () => import('@/views/business/subpackage/record/list.vue'), meta: { title: '分包方档案', icon: 'ep:key', - auth: '/subpackage/record', + auth: '/subpackage/archives', }, }, { - path: 'approve', - name: 'Approve', + path: 'qualificationApprove', + name: 'QualificationApprove', component: () => import('@/views/business/subpackage/approve/list.vue'), meta: { title: '分包方资格审批', icon: 'ep:key', - auth: '/subpackage/approve', + auth: '/subpackage/qualificationApprove', }, }, { diff --git a/src/utils/scheduleDict.ts b/src/utils/scheduleDict.ts index a579f5b..941ee89 100644 --- a/src/utils/scheduleDict.ts +++ b/src/utils/scheduleDict.ts @@ -25,4 +25,5 @@ BUSINESS_SUBPACKAGE_CHECK = 'ywglfbxmys', // 分包项目验收 BUSINESS_SUBPACKAGE_RECORD = 'ywglfbfda', // 分包方档案 BUSINESS_SUBPACKAGE_APPROVE = 'ywglfbfzgsp', // 分包方资格资格审批 + BUSINESS_SUBPACKAGE_MANAGE = 'ywglfbzsgl', // 分包方证书管理 } diff --git a/src/views/business/schedule/certPrint/cert-interface.ts b/src/views/business/schedule/certPrint/cert-interface.ts index 3442fb8..be9379d 100644 --- a/src/views/business/schedule/certPrint/cert-interface.ts +++ b/src/views/business/schedule/certPrint/cert-interface.ts @@ -147,6 +147,21 @@ status?: string // 状态变更(无需检测状态7,收入状态2,归还6,回退状态2.5.1,终止5) } +// 证书打印 +export interface ICerPrint { + approvalStatus: string | undefined + certificateClass: string + certificateNo: string + createUserId: string | number + customerName: string + formId: string + ids?: [] | null + orderNo: string + printStatus: string | number + sampleName: string + sampleNo: string +} + // 证书同意/拒绝 export interface ICertApprove { comments: string diff --git a/src/views/business/schedule/certPrint/certList.vue b/src/views/business/schedule/certPrint/certList.vue index 173b7ea..2788a08 100644 --- a/src/views/business/schedule/certPrint/certList.vue +++ b/src/views/business/schedule/certPrint/certList.vue @@ -247,8 +247,13 @@ type: 'warning', }, ).then(() => { - exportCert({ orderId: row.orderId, reason: row.reason, sampleId: row.sampleId, status: row.status }).then((res) => { - console.log(res) + const params = { + ...listQuery.value, + ids: [row.id], + } + exportCert(params).then((res) => { + const blob = new Blob([res.data]) + exportFile(blob, '证书打印列表.xlsx') }) }) } diff --git a/src/views/business/schedule/task/taskList.vue b/src/views/business/schedule/task/taskList.vue index 0717e93..64473c3 100644 --- a/src/views/business/schedule/task/taskList.vue +++ b/src/views/business/schedule/task/taskList.vue @@ -138,6 +138,8 @@ } // 点击详情 const handleDetail = (row: ITaskList) => { + console.log('跳转任务分发详情') + $router.push(`/schedule/task/distribute/${row.sampleId}?order=${row.orderId}`) } diff --git a/src/views/business/subpackage/apply/list.vue b/src/views/business/subpackage/apply/list.vue index 6c8c903..8fc0173 100644 --- a/src/views/business/subpackage/apply/list.vue +++ b/src/views/business/subpackage/apply/list.vue @@ -11,7 +11,7 @@ import type { dictType } from '@/views/device/receive/receive' import type { IMenu } from '@/components/buttonBox/buttonBox' import ButtonBox from '@/components/buttonBox/buttonBox.vue' -import { getListPage } from '@/api/business/subpackage/apply' +import { detail, getListPage } from '@/api/business/subpackage/apply' import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any @@ -59,6 +59,21 @@ } }) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + total.value = parseInt(response.data.total) + loadingTable.value = false + }) +} // 清除条件 const clearList = () => { listQuery.value = { @@ -76,29 +91,6 @@ timeRange.value = ['', ''] fetchData() } - -// 数据查询 -function fetchData(isNowPage = false) { - loadingTable.value = true - if (!isNowPage) { - // 是否显示当前页,否则跳转第一页 - listQuery.value.offset = 1 - } - // 模拟数据 - loadingTable.value = false - getListPage(listQuery.value).then((response) => { - list.value = response.data.rows - let interfaceStr = '' - for (const key in response.data.rows[0]) { - const item = response.data.rows[0][key] - interfaceStr += `${key}:${typeof (item)}\n` - } - console.log(interfaceStr) - total.value = parseInt(response.data.total) - loadingTable.value = false - }) -} - // 搜索 const searchList = () => { fetchData(true) @@ -126,7 +118,11 @@ } // 详情或者编辑 const handleEdit = (row: IApplyList, status: string) => { - + if (status !== 'edit') { + detail({ id: row.id }).then((res) => { + console.log(res) + }) + } } // 取消 const handleCancle = (row: IApplyList) => { @@ -226,9 +222,6 @@ 详情 - - 取消 - diff --git a/src/views/business/subpackage/approve/list.vue b/src/views/business/subpackage/approve/list.vue index ece8355..6755ede 100644 --- a/src/views/business/subpackage/approve/list.vue +++ b/src/views/business/subpackage/approve/list.vue @@ -3,7 +3,7 @@ import type { Ref } from 'vue' import { ElLoading, ElMessage } from 'element-plus' import type { DateModelType } from 'element-plus' -import type { IListQueryApprove } from '../subpackage-interface' +import type { IApproveList, IListQueryApprove } from '../subpackage-interface' import { printJSON } from '@/utils/printUtils' import { exportFile } from '@/utils/exportUtils' import type { TableColumn } from '@/components/NormalTable/table_interface' @@ -11,16 +11,22 @@ import type { dictType } from '@/views/device/receive/receive' import type { IMenu } from '@/components/buttonBox/buttonBox' import ButtonBox from '@/components/buttonBox/buttonBox.vue' +import { detail, getListPage } from '@/api/business/subpackage/approval' +import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any const TabActiveButton = 'SubpackageApproveActive' +const loadingTable = ref(false) +const menu = ref([]) // 审批状态按钮组合 +const active = ref('') +const timeRange = ref<[DateModelType, DateModelType]>(['', '']) // 查询条件 const listQuery: Ref = ref({ applicantEndTime: '', // 开始时间 applicantName: '', // 申请人名称 applicantStartTime: '', // 结束时间 - approvalStatus: '', // 申请状态 - formId: '', // 表单id + approvalStatus: active.value, // 申请状态, // 申请状态 + formId: SCHEDULE.BUSINESS_SUBPACKAGE_APPROVE, // 表单id outsourcerName: '', // 分包方名称 projectName: '', // 分包项目名称 projectNo: '', // 分包项目编号 @@ -31,28 +37,55 @@ offset: 1, limit: 20, }) -const total = ref(0) -const loadingTable = ref(false) -const menu = ref([]) // 审批状态按钮组合 -const active = ref('') + // 表头 const columns = ref([ - { text: '分包项目编号', value: 'interchangeCode', align: 'center', width: '160px' }, - { text: '公司名称', value: 'customerNo', align: 'center', width: '160px' }, - { text: '公司规模', value: 'customerName', align: 'center', width: '160px' }, + { text: '分包项目编号', value: 'outsourcerNo', align: 'center', width: '160px' }, + { text: '公司名称', value: 'outsourcerName', align: 'center', width: '160px' }, + { text: '公司规模', value: 'outsourcerSize', align: 'center', width: '160px' }, { text: '业务规模', value: 'reciever', align: 'center', width: '180px' }, - { text: '履约评级', value: 'deliverer', align: 'center', width: '180px' }, - { text: '整体评价', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '履约评级', value: 'grade', align: 'center', width: '180px' }, + { text: '整体评价', value: 'businessSizeName', align: 'center', width: '180px' }, { text: '业务内容', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '公司地址', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '创建时间', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '审批状态', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '公司地址', value: 'fullAddress', align: 'center', width: '180px' }, + { text: '创建时间', value: 'createTime', align: 'center', width: '180px' }, + { text: '审批状态', value: 'approvalStatusName', align: 'center', width: '180px' }, ]) const list = ref([]) +const total = ref(0) -// 搜索 -const searchList = () => { +// 时间变更 +watch(timeRange, (val) => { + if (val) { + listQuery.value.applicantStartTime = `${val[0]}` + listQuery.value.applicantEndTime = `${val[1]}` + } + else { + listQuery.value.applicantStartTime = '' + listQuery.value.applicantEndTime = '' + } +}) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + // let interfaceStr = '' + // for (const key in response.data.rows[0]) { + // const item = response.data.rows[0][key] + // interfaceStr += `${key}:${typeof (item)}\n` + // } + // console.log(interfaceStr) + total.value = parseInt(response.data.total) + loadingTable.value = false + }) } // 清除条件 @@ -61,8 +94,8 @@ applicantEndTime: '', // 开始时间 applicantName: '', // 申请人名称 applicantStartTime: '', // 结束时间 - approvalStatus: '', // 申请状态 - formId: '', // 表单id + approvalStatus: active.value, // 申请状态, // 申请状态 + formId: SCHEDULE.BUSINESS_SUBPACKAGE_APPROVE, // 表单id outsourcerName: '', // 分包方名称 projectName: '', // 分包项目名称 projectNo: '', // 分包项目编号 @@ -73,6 +106,13 @@ offset: 1, limit: 20, } + timeRange.value = ['', ''] + fetchData() +} + +// 搜索 +const searchList = () => { + fetchData(true) } // 新建 const add = () => { @@ -95,13 +135,14 @@ } // 详情或者编辑 -const handleEdit = (row, status) => { - +const handleEdit = (row: IApproveList, status: string) => { + // if (status !== 'edit') { + // detail({ id: row.id }).then((res) => { + // console.log(res) + // }) + // } } -// 取消 -const handleCancle = (row) => { -} // 获取字典值 const getDict = async () => { // 审批状态 @@ -128,7 +169,7 @@ onMounted(async () => { await getDict() - if (window.sessionStorage.getItem(TabActiveButton) !== 'undefined' && window.sessionStorage.getItem(TabActiveButton) !== '' && window.sessionStorage.getItem(TabActiveButton) !== null) { + if (window.sessionStorage.getItem(TabActiveButton)) { active.value = window.sessionStorage.getItem(TabActiveButton)! } else { @@ -160,18 +201,9 @@ 详情 - - 取消 - diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 2cb0803..015814f 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -117,10 +117,10 @@ }, { path: 'task/:role/:id?', - name: 'taskDetail', + name: 'TaskDetail', component: () => import('@/views/business/schedule/task/taskEdit.vue'), meta: { - title: '样品详情', + title: '任务分发详情', icon: 'ep:key', sidebar: false, breadcrumb: true, @@ -253,7 +253,7 @@ { path: '/subpackage', component: Layout, - redirect: '/subpackage/apply', // 子路由 + redirect: '/subpackage/itemApply', // 子路由 name: 'Subpackage', meta: { title: '分包管理', @@ -262,43 +262,43 @@ }, children: [ { - path: 'apply', - name: 'Apply', + path: 'itemApply', + name: 'ItemApply', component: () => import('@/views/business/subpackage/apply/list.vue'), meta: { title: '分包项目申请', icon: 'ep:key', - auth: '/subpackage/apply', + auth: '/subpackage/itemApply', }, }, { - path: 'check', - name: 'Check', + path: 'itemCheck', + name: 'ItemCheck', component: () => import('@/views/business/subpackage/check/list.vue'), meta: { title: '分包项目验收', icon: 'ep:key', - auth: '/subpackage/check', + auth: '/subpackage/itemCheck', }, }, { - path: 'record', - name: 'Record', + path: 'archives', + name: 'Archives', component: () => import('@/views/business/subpackage/record/list.vue'), meta: { title: '分包方档案', icon: 'ep:key', - auth: '/subpackage/record', + auth: '/subpackage/archives', }, }, { - path: 'approve', - name: 'Approve', + path: 'qualificationApprove', + name: 'QualificationApprove', component: () => import('@/views/business/subpackage/approve/list.vue'), meta: { title: '分包方资格审批', icon: 'ep:key', - auth: '/subpackage/approve', + auth: '/subpackage/qualificationApprove', }, }, { diff --git a/src/utils/scheduleDict.ts b/src/utils/scheduleDict.ts index a579f5b..941ee89 100644 --- a/src/utils/scheduleDict.ts +++ b/src/utils/scheduleDict.ts @@ -25,4 +25,5 @@ BUSINESS_SUBPACKAGE_CHECK = 'ywglfbxmys', // 分包项目验收 BUSINESS_SUBPACKAGE_RECORD = 'ywglfbfda', // 分包方档案 BUSINESS_SUBPACKAGE_APPROVE = 'ywglfbfzgsp', // 分包方资格资格审批 + BUSINESS_SUBPACKAGE_MANAGE = 'ywglfbzsgl', // 分包方证书管理 } diff --git a/src/views/business/schedule/certPrint/cert-interface.ts b/src/views/business/schedule/certPrint/cert-interface.ts index 3442fb8..be9379d 100644 --- a/src/views/business/schedule/certPrint/cert-interface.ts +++ b/src/views/business/schedule/certPrint/cert-interface.ts @@ -147,6 +147,21 @@ status?: string // 状态变更(无需检测状态7,收入状态2,归还6,回退状态2.5.1,终止5) } +// 证书打印 +export interface ICerPrint { + approvalStatus: string | undefined + certificateClass: string + certificateNo: string + createUserId: string | number + customerName: string + formId: string + ids?: [] | null + orderNo: string + printStatus: string | number + sampleName: string + sampleNo: string +} + // 证书同意/拒绝 export interface ICertApprove { comments: string diff --git a/src/views/business/schedule/certPrint/certList.vue b/src/views/business/schedule/certPrint/certList.vue index 173b7ea..2788a08 100644 --- a/src/views/business/schedule/certPrint/certList.vue +++ b/src/views/business/schedule/certPrint/certList.vue @@ -247,8 +247,13 @@ type: 'warning', }, ).then(() => { - exportCert({ orderId: row.orderId, reason: row.reason, sampleId: row.sampleId, status: row.status }).then((res) => { - console.log(res) + const params = { + ...listQuery.value, + ids: [row.id], + } + exportCert(params).then((res) => { + const blob = new Blob([res.data]) + exportFile(blob, '证书打印列表.xlsx') }) }) } diff --git a/src/views/business/schedule/task/taskList.vue b/src/views/business/schedule/task/taskList.vue index 0717e93..64473c3 100644 --- a/src/views/business/schedule/task/taskList.vue +++ b/src/views/business/schedule/task/taskList.vue @@ -138,6 +138,8 @@ } // 点击详情 const handleDetail = (row: ITaskList) => { + console.log('跳转任务分发详情') + $router.push(`/schedule/task/distribute/${row.sampleId}?order=${row.orderId}`) } diff --git a/src/views/business/subpackage/apply/list.vue b/src/views/business/subpackage/apply/list.vue index 6c8c903..8fc0173 100644 --- a/src/views/business/subpackage/apply/list.vue +++ b/src/views/business/subpackage/apply/list.vue @@ -11,7 +11,7 @@ import type { dictType } from '@/views/device/receive/receive' import type { IMenu } from '@/components/buttonBox/buttonBox' import ButtonBox from '@/components/buttonBox/buttonBox.vue' -import { getListPage } from '@/api/business/subpackage/apply' +import { detail, getListPage } from '@/api/business/subpackage/apply' import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any @@ -59,6 +59,21 @@ } }) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + total.value = parseInt(response.data.total) + loadingTable.value = false + }) +} // 清除条件 const clearList = () => { listQuery.value = { @@ -76,29 +91,6 @@ timeRange.value = ['', ''] fetchData() } - -// 数据查询 -function fetchData(isNowPage = false) { - loadingTable.value = true - if (!isNowPage) { - // 是否显示当前页,否则跳转第一页 - listQuery.value.offset = 1 - } - // 模拟数据 - loadingTable.value = false - getListPage(listQuery.value).then((response) => { - list.value = response.data.rows - let interfaceStr = '' - for (const key in response.data.rows[0]) { - const item = response.data.rows[0][key] - interfaceStr += `${key}:${typeof (item)}\n` - } - console.log(interfaceStr) - total.value = parseInt(response.data.total) - loadingTable.value = false - }) -} - // 搜索 const searchList = () => { fetchData(true) @@ -126,7 +118,11 @@ } // 详情或者编辑 const handleEdit = (row: IApplyList, status: string) => { - + if (status !== 'edit') { + detail({ id: row.id }).then((res) => { + console.log(res) + }) + } } // 取消 const handleCancle = (row: IApplyList) => { @@ -226,9 +222,6 @@ 详情 - - 取消 - diff --git a/src/views/business/subpackage/approve/list.vue b/src/views/business/subpackage/approve/list.vue index ece8355..6755ede 100644 --- a/src/views/business/subpackage/approve/list.vue +++ b/src/views/business/subpackage/approve/list.vue @@ -3,7 +3,7 @@ import type { Ref } from 'vue' import { ElLoading, ElMessage } from 'element-plus' import type { DateModelType } from 'element-plus' -import type { IListQueryApprove } from '../subpackage-interface' +import type { IApproveList, IListQueryApprove } from '../subpackage-interface' import { printJSON } from '@/utils/printUtils' import { exportFile } from '@/utils/exportUtils' import type { TableColumn } from '@/components/NormalTable/table_interface' @@ -11,16 +11,22 @@ import type { dictType } from '@/views/device/receive/receive' import type { IMenu } from '@/components/buttonBox/buttonBox' import ButtonBox from '@/components/buttonBox/buttonBox.vue' +import { detail, getListPage } from '@/api/business/subpackage/approval' +import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any const TabActiveButton = 'SubpackageApproveActive' +const loadingTable = ref(false) +const menu = ref([]) // 审批状态按钮组合 +const active = ref('') +const timeRange = ref<[DateModelType, DateModelType]>(['', '']) // 查询条件 const listQuery: Ref = ref({ applicantEndTime: '', // 开始时间 applicantName: '', // 申请人名称 applicantStartTime: '', // 结束时间 - approvalStatus: '', // 申请状态 - formId: '', // 表单id + approvalStatus: active.value, // 申请状态, // 申请状态 + formId: SCHEDULE.BUSINESS_SUBPACKAGE_APPROVE, // 表单id outsourcerName: '', // 分包方名称 projectName: '', // 分包项目名称 projectNo: '', // 分包项目编号 @@ -31,28 +37,55 @@ offset: 1, limit: 20, }) -const total = ref(0) -const loadingTable = ref(false) -const menu = ref([]) // 审批状态按钮组合 -const active = ref('') + // 表头 const columns = ref([ - { text: '分包项目编号', value: 'interchangeCode', align: 'center', width: '160px' }, - { text: '公司名称', value: 'customerNo', align: 'center', width: '160px' }, - { text: '公司规模', value: 'customerName', align: 'center', width: '160px' }, + { text: '分包项目编号', value: 'outsourcerNo', align: 'center', width: '160px' }, + { text: '公司名称', value: 'outsourcerName', align: 'center', width: '160px' }, + { text: '公司规模', value: 'outsourcerSize', align: 'center', width: '160px' }, { text: '业务规模', value: 'reciever', align: 'center', width: '180px' }, - { text: '履约评级', value: 'deliverer', align: 'center', width: '180px' }, - { text: '整体评价', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '履约评级', value: 'grade', align: 'center', width: '180px' }, + { text: '整体评价', value: 'businessSizeName', align: 'center', width: '180px' }, { text: '业务内容', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '公司地址', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '创建时间', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '审批状态', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '公司地址', value: 'fullAddress', align: 'center', width: '180px' }, + { text: '创建时间', value: 'createTime', align: 'center', width: '180px' }, + { text: '审批状态', value: 'approvalStatusName', align: 'center', width: '180px' }, ]) const list = ref([]) +const total = ref(0) -// 搜索 -const searchList = () => { +// 时间变更 +watch(timeRange, (val) => { + if (val) { + listQuery.value.applicantStartTime = `${val[0]}` + listQuery.value.applicantEndTime = `${val[1]}` + } + else { + listQuery.value.applicantStartTime = '' + listQuery.value.applicantEndTime = '' + } +}) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + // let interfaceStr = '' + // for (const key in response.data.rows[0]) { + // const item = response.data.rows[0][key] + // interfaceStr += `${key}:${typeof (item)}\n` + // } + // console.log(interfaceStr) + total.value = parseInt(response.data.total) + loadingTable.value = false + }) } // 清除条件 @@ -61,8 +94,8 @@ applicantEndTime: '', // 开始时间 applicantName: '', // 申请人名称 applicantStartTime: '', // 结束时间 - approvalStatus: '', // 申请状态 - formId: '', // 表单id + approvalStatus: active.value, // 申请状态, // 申请状态 + formId: SCHEDULE.BUSINESS_SUBPACKAGE_APPROVE, // 表单id outsourcerName: '', // 分包方名称 projectName: '', // 分包项目名称 projectNo: '', // 分包项目编号 @@ -73,6 +106,13 @@ offset: 1, limit: 20, } + timeRange.value = ['', ''] + fetchData() +} + +// 搜索 +const searchList = () => { + fetchData(true) } // 新建 const add = () => { @@ -95,13 +135,14 @@ } // 详情或者编辑 -const handleEdit = (row, status) => { - +const handleEdit = (row: IApproveList, status: string) => { + // if (status !== 'edit') { + // detail({ id: row.id }).then((res) => { + // console.log(res) + // }) + // } } -// 取消 -const handleCancle = (row) => { -} // 获取字典值 const getDict = async () => { // 审批状态 @@ -128,7 +169,7 @@ onMounted(async () => { await getDict() - if (window.sessionStorage.getItem(TabActiveButton) !== 'undefined' && window.sessionStorage.getItem(TabActiveButton) !== '' && window.sessionStorage.getItem(TabActiveButton) !== null) { + if (window.sessionStorage.getItem(TabActiveButton)) { active.value = window.sessionStorage.getItem(TabActiveButton)! } else { @@ -160,18 +201,9 @@ 详情 - - 取消 - diff --git a/src/views/business/subpackage/certificate/list.vue b/src/views/business/subpackage/certificate/list.vue index 7097ea2..ada0f7b 100644 --- a/src/views/business/subpackage/certificate/list.vue +++ b/src/views/business/subpackage/certificate/list.vue @@ -1,11 +1,169 @@ diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 2cb0803..015814f 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -117,10 +117,10 @@ }, { path: 'task/:role/:id?', - name: 'taskDetail', + name: 'TaskDetail', component: () => import('@/views/business/schedule/task/taskEdit.vue'), meta: { - title: '样品详情', + title: '任务分发详情', icon: 'ep:key', sidebar: false, breadcrumb: true, @@ -253,7 +253,7 @@ { path: '/subpackage', component: Layout, - redirect: '/subpackage/apply', // 子路由 + redirect: '/subpackage/itemApply', // 子路由 name: 'Subpackage', meta: { title: '分包管理', @@ -262,43 +262,43 @@ }, children: [ { - path: 'apply', - name: 'Apply', + path: 'itemApply', + name: 'ItemApply', component: () => import('@/views/business/subpackage/apply/list.vue'), meta: { title: '分包项目申请', icon: 'ep:key', - auth: '/subpackage/apply', + auth: '/subpackage/itemApply', }, }, { - path: 'check', - name: 'Check', + path: 'itemCheck', + name: 'ItemCheck', component: () => import('@/views/business/subpackage/check/list.vue'), meta: { title: '分包项目验收', icon: 'ep:key', - auth: '/subpackage/check', + auth: '/subpackage/itemCheck', }, }, { - path: 'record', - name: 'Record', + path: 'archives', + name: 'Archives', component: () => import('@/views/business/subpackage/record/list.vue'), meta: { title: '分包方档案', icon: 'ep:key', - auth: '/subpackage/record', + auth: '/subpackage/archives', }, }, { - path: 'approve', - name: 'Approve', + path: 'qualificationApprove', + name: 'QualificationApprove', component: () => import('@/views/business/subpackage/approve/list.vue'), meta: { title: '分包方资格审批', icon: 'ep:key', - auth: '/subpackage/approve', + auth: '/subpackage/qualificationApprove', }, }, { diff --git a/src/utils/scheduleDict.ts b/src/utils/scheduleDict.ts index a579f5b..941ee89 100644 --- a/src/utils/scheduleDict.ts +++ b/src/utils/scheduleDict.ts @@ -25,4 +25,5 @@ BUSINESS_SUBPACKAGE_CHECK = 'ywglfbxmys', // 分包项目验收 BUSINESS_SUBPACKAGE_RECORD = 'ywglfbfda', // 分包方档案 BUSINESS_SUBPACKAGE_APPROVE = 'ywglfbfzgsp', // 分包方资格资格审批 + BUSINESS_SUBPACKAGE_MANAGE = 'ywglfbzsgl', // 分包方证书管理 } diff --git a/src/views/business/schedule/certPrint/cert-interface.ts b/src/views/business/schedule/certPrint/cert-interface.ts index 3442fb8..be9379d 100644 --- a/src/views/business/schedule/certPrint/cert-interface.ts +++ b/src/views/business/schedule/certPrint/cert-interface.ts @@ -147,6 +147,21 @@ status?: string // 状态变更(无需检测状态7,收入状态2,归还6,回退状态2.5.1,终止5) } +// 证书打印 +export interface ICerPrint { + approvalStatus: string | undefined + certificateClass: string + certificateNo: string + createUserId: string | number + customerName: string + formId: string + ids?: [] | null + orderNo: string + printStatus: string | number + sampleName: string + sampleNo: string +} + // 证书同意/拒绝 export interface ICertApprove { comments: string diff --git a/src/views/business/schedule/certPrint/certList.vue b/src/views/business/schedule/certPrint/certList.vue index 173b7ea..2788a08 100644 --- a/src/views/business/schedule/certPrint/certList.vue +++ b/src/views/business/schedule/certPrint/certList.vue @@ -247,8 +247,13 @@ type: 'warning', }, ).then(() => { - exportCert({ orderId: row.orderId, reason: row.reason, sampleId: row.sampleId, status: row.status }).then((res) => { - console.log(res) + const params = { + ...listQuery.value, + ids: [row.id], + } + exportCert(params).then((res) => { + const blob = new Blob([res.data]) + exportFile(blob, '证书打印列表.xlsx') }) }) } diff --git a/src/views/business/schedule/task/taskList.vue b/src/views/business/schedule/task/taskList.vue index 0717e93..64473c3 100644 --- a/src/views/business/schedule/task/taskList.vue +++ b/src/views/business/schedule/task/taskList.vue @@ -138,6 +138,8 @@ } // 点击详情 const handleDetail = (row: ITaskList) => { + console.log('跳转任务分发详情') + $router.push(`/schedule/task/distribute/${row.sampleId}?order=${row.orderId}`) } diff --git a/src/views/business/subpackage/apply/list.vue b/src/views/business/subpackage/apply/list.vue index 6c8c903..8fc0173 100644 --- a/src/views/business/subpackage/apply/list.vue +++ b/src/views/business/subpackage/apply/list.vue @@ -11,7 +11,7 @@ import type { dictType } from '@/views/device/receive/receive' import type { IMenu } from '@/components/buttonBox/buttonBox' import ButtonBox from '@/components/buttonBox/buttonBox.vue' -import { getListPage } from '@/api/business/subpackage/apply' +import { detail, getListPage } from '@/api/business/subpackage/apply' import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any @@ -59,6 +59,21 @@ } }) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + total.value = parseInt(response.data.total) + loadingTable.value = false + }) +} // 清除条件 const clearList = () => { listQuery.value = { @@ -76,29 +91,6 @@ timeRange.value = ['', ''] fetchData() } - -// 数据查询 -function fetchData(isNowPage = false) { - loadingTable.value = true - if (!isNowPage) { - // 是否显示当前页,否则跳转第一页 - listQuery.value.offset = 1 - } - // 模拟数据 - loadingTable.value = false - getListPage(listQuery.value).then((response) => { - list.value = response.data.rows - let interfaceStr = '' - for (const key in response.data.rows[0]) { - const item = response.data.rows[0][key] - interfaceStr += `${key}:${typeof (item)}\n` - } - console.log(interfaceStr) - total.value = parseInt(response.data.total) - loadingTable.value = false - }) -} - // 搜索 const searchList = () => { fetchData(true) @@ -126,7 +118,11 @@ } // 详情或者编辑 const handleEdit = (row: IApplyList, status: string) => { - + if (status !== 'edit') { + detail({ id: row.id }).then((res) => { + console.log(res) + }) + } } // 取消 const handleCancle = (row: IApplyList) => { @@ -226,9 +222,6 @@ 详情 - - 取消 - diff --git a/src/views/business/subpackage/approve/list.vue b/src/views/business/subpackage/approve/list.vue index ece8355..6755ede 100644 --- a/src/views/business/subpackage/approve/list.vue +++ b/src/views/business/subpackage/approve/list.vue @@ -3,7 +3,7 @@ import type { Ref } from 'vue' import { ElLoading, ElMessage } from 'element-plus' import type { DateModelType } from 'element-plus' -import type { IListQueryApprove } from '../subpackage-interface' +import type { IApproveList, IListQueryApprove } from '../subpackage-interface' import { printJSON } from '@/utils/printUtils' import { exportFile } from '@/utils/exportUtils' import type { TableColumn } from '@/components/NormalTable/table_interface' @@ -11,16 +11,22 @@ import type { dictType } from '@/views/device/receive/receive' import type { IMenu } from '@/components/buttonBox/buttonBox' import ButtonBox from '@/components/buttonBox/buttonBox.vue' +import { detail, getListPage } from '@/api/business/subpackage/approval' +import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any const TabActiveButton = 'SubpackageApproveActive' +const loadingTable = ref(false) +const menu = ref([]) // 审批状态按钮组合 +const active = ref('') +const timeRange = ref<[DateModelType, DateModelType]>(['', '']) // 查询条件 const listQuery: Ref = ref({ applicantEndTime: '', // 开始时间 applicantName: '', // 申请人名称 applicantStartTime: '', // 结束时间 - approvalStatus: '', // 申请状态 - formId: '', // 表单id + approvalStatus: active.value, // 申请状态, // 申请状态 + formId: SCHEDULE.BUSINESS_SUBPACKAGE_APPROVE, // 表单id outsourcerName: '', // 分包方名称 projectName: '', // 分包项目名称 projectNo: '', // 分包项目编号 @@ -31,28 +37,55 @@ offset: 1, limit: 20, }) -const total = ref(0) -const loadingTable = ref(false) -const menu = ref([]) // 审批状态按钮组合 -const active = ref('') + // 表头 const columns = ref([ - { text: '分包项目编号', value: 'interchangeCode', align: 'center', width: '160px' }, - { text: '公司名称', value: 'customerNo', align: 'center', width: '160px' }, - { text: '公司规模', value: 'customerName', align: 'center', width: '160px' }, + { text: '分包项目编号', value: 'outsourcerNo', align: 'center', width: '160px' }, + { text: '公司名称', value: 'outsourcerName', align: 'center', width: '160px' }, + { text: '公司规模', value: 'outsourcerSize', align: 'center', width: '160px' }, { text: '业务规模', value: 'reciever', align: 'center', width: '180px' }, - { text: '履约评级', value: 'deliverer', align: 'center', width: '180px' }, - { text: '整体评价', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '履约评级', value: 'grade', align: 'center', width: '180px' }, + { text: '整体评价', value: 'businessSizeName', align: 'center', width: '180px' }, { text: '业务内容', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '公司地址', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '创建时间', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '审批状态', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '公司地址', value: 'fullAddress', align: 'center', width: '180px' }, + { text: '创建时间', value: 'createTime', align: 'center', width: '180px' }, + { text: '审批状态', value: 'approvalStatusName', align: 'center', width: '180px' }, ]) const list = ref([]) +const total = ref(0) -// 搜索 -const searchList = () => { +// 时间变更 +watch(timeRange, (val) => { + if (val) { + listQuery.value.applicantStartTime = `${val[0]}` + listQuery.value.applicantEndTime = `${val[1]}` + } + else { + listQuery.value.applicantStartTime = '' + listQuery.value.applicantEndTime = '' + } +}) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + // let interfaceStr = '' + // for (const key in response.data.rows[0]) { + // const item = response.data.rows[0][key] + // interfaceStr += `${key}:${typeof (item)}\n` + // } + // console.log(interfaceStr) + total.value = parseInt(response.data.total) + loadingTable.value = false + }) } // 清除条件 @@ -61,8 +94,8 @@ applicantEndTime: '', // 开始时间 applicantName: '', // 申请人名称 applicantStartTime: '', // 结束时间 - approvalStatus: '', // 申请状态 - formId: '', // 表单id + approvalStatus: active.value, // 申请状态, // 申请状态 + formId: SCHEDULE.BUSINESS_SUBPACKAGE_APPROVE, // 表单id outsourcerName: '', // 分包方名称 projectName: '', // 分包项目名称 projectNo: '', // 分包项目编号 @@ -73,6 +106,13 @@ offset: 1, limit: 20, } + timeRange.value = ['', ''] + fetchData() +} + +// 搜索 +const searchList = () => { + fetchData(true) } // 新建 const add = () => { @@ -95,13 +135,14 @@ } // 详情或者编辑 -const handleEdit = (row, status) => { - +const handleEdit = (row: IApproveList, status: string) => { + // if (status !== 'edit') { + // detail({ id: row.id }).then((res) => { + // console.log(res) + // }) + // } } -// 取消 -const handleCancle = (row) => { -} // 获取字典值 const getDict = async () => { // 审批状态 @@ -128,7 +169,7 @@ onMounted(async () => { await getDict() - if (window.sessionStorage.getItem(TabActiveButton) !== 'undefined' && window.sessionStorage.getItem(TabActiveButton) !== '' && window.sessionStorage.getItem(TabActiveButton) !== null) { + if (window.sessionStorage.getItem(TabActiveButton)) { active.value = window.sessionStorage.getItem(TabActiveButton)! } else { @@ -160,18 +201,9 @@ 详情 - - 取消 - diff --git a/src/views/business/subpackage/certificate/list.vue b/src/views/business/subpackage/certificate/list.vue index 7097ea2..ada0f7b 100644 --- a/src/views/business/subpackage/certificate/list.vue +++ b/src/views/business/subpackage/certificate/list.vue @@ -1,11 +1,169 @@ diff --git a/src/views/business/subpackage/check/list.vue b/src/views/business/subpackage/check/list.vue index d74662a..16c1f13 100644 --- a/src/views/business/subpackage/check/list.vue +++ b/src/views/business/subpackage/check/list.vue @@ -12,7 +12,7 @@ import type { IMenu } from '@/components/buttonBox/buttonBox' import { SCHEDULE } from '@/utils/scheduleDict' import ButtonBox from '@/components/buttonBox/buttonBox.vue' -import { getListPage } from '@/api/business/subpackage/check' +import { detail, getListPage } from '@/api/business/subpackage/check' const $router = useRouter() const { proxy } = getCurrentInstance() as any @@ -37,13 +37,13 @@ // 表头 const columns = ref([ - { text: '分包项目编号', value: 'interchangeCode', align: 'center', width: '160px' }, - { text: '分包项目名称', value: 'customerNo', align: 'center', width: '160px' }, - { text: '验收人', value: 'customerName', align: 'center', width: '160px' }, - { text: '分包方名称', value: 'reciever', align: 'center' }, - { text: '验收结论', value: 'deliverer', align: 'center' }, - { text: '验收时间', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '审批状态', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '分包项目编号', value: 'projectNo', align: 'center', width: '160px' }, + { text: '分包项目名称', value: 'projectName', align: 'center', width: '160px' }, + { text: '验收人', value: 'checkerName', align: 'center', width: '160px' }, + { text: '分包方名称', value: 'outsourcerName', align: 'center', width: '160px' }, + { text: '验收结论', value: 'checkerName', align: 'center', width: '160px' }, + { text: '验收时间', value: 'checkTime', align: 'center', width: '180px' }, + { text: '审批状态', value: 'applyApprovalStatusName', align: 'center', width: '180px' }, ]) const list = ref([]) const total = ref(0) @@ -126,7 +126,11 @@ } // 详情或者编辑 const handleEdit = (row: IApplyList, status: string) => { - + if (status !== 'edit') { + detail({ id: row.id }).then((res) => { + console.log(res) + }) + } } // 取消 const handleCancle = (row: IApplyList) => { @@ -158,13 +162,12 @@ onMounted(async () => { await getDict() - if (window.sessionStorage.getItem(TabActiveButton) !== 'undefined' && window.sessionStorage.getItem(TabActiveButton) !== '' && window.sessionStorage.getItem(TabActiveButton) !== null) { + if (window.sessionStorage.getItem(TabActiveButton)) { active.value = window.sessionStorage.getItem(TabActiveButton)! } else { active.value = menu.value.find(item => item.name === '全部')!.id as string // 全部 } - fetchData() }) @@ -227,9 +230,6 @@ 详情 - - 取消 - diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 2cb0803..015814f 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -117,10 +117,10 @@ }, { path: 'task/:role/:id?', - name: 'taskDetail', + name: 'TaskDetail', component: () => import('@/views/business/schedule/task/taskEdit.vue'), meta: { - title: '样品详情', + title: '任务分发详情', icon: 'ep:key', sidebar: false, breadcrumb: true, @@ -253,7 +253,7 @@ { path: '/subpackage', component: Layout, - redirect: '/subpackage/apply', // 子路由 + redirect: '/subpackage/itemApply', // 子路由 name: 'Subpackage', meta: { title: '分包管理', @@ -262,43 +262,43 @@ }, children: [ { - path: 'apply', - name: 'Apply', + path: 'itemApply', + name: 'ItemApply', component: () => import('@/views/business/subpackage/apply/list.vue'), meta: { title: '分包项目申请', icon: 'ep:key', - auth: '/subpackage/apply', + auth: '/subpackage/itemApply', }, }, { - path: 'check', - name: 'Check', + path: 'itemCheck', + name: 'ItemCheck', component: () => import('@/views/business/subpackage/check/list.vue'), meta: { title: '分包项目验收', icon: 'ep:key', - auth: '/subpackage/check', + auth: '/subpackage/itemCheck', }, }, { - path: 'record', - name: 'Record', + path: 'archives', + name: 'Archives', component: () => import('@/views/business/subpackage/record/list.vue'), meta: { title: '分包方档案', icon: 'ep:key', - auth: '/subpackage/record', + auth: '/subpackage/archives', }, }, { - path: 'approve', - name: 'Approve', + path: 'qualificationApprove', + name: 'QualificationApprove', component: () => import('@/views/business/subpackage/approve/list.vue'), meta: { title: '分包方资格审批', icon: 'ep:key', - auth: '/subpackage/approve', + auth: '/subpackage/qualificationApprove', }, }, { diff --git a/src/utils/scheduleDict.ts b/src/utils/scheduleDict.ts index a579f5b..941ee89 100644 --- a/src/utils/scheduleDict.ts +++ b/src/utils/scheduleDict.ts @@ -25,4 +25,5 @@ BUSINESS_SUBPACKAGE_CHECK = 'ywglfbxmys', // 分包项目验收 BUSINESS_SUBPACKAGE_RECORD = 'ywglfbfda', // 分包方档案 BUSINESS_SUBPACKAGE_APPROVE = 'ywglfbfzgsp', // 分包方资格资格审批 + BUSINESS_SUBPACKAGE_MANAGE = 'ywglfbzsgl', // 分包方证书管理 } diff --git a/src/views/business/schedule/certPrint/cert-interface.ts b/src/views/business/schedule/certPrint/cert-interface.ts index 3442fb8..be9379d 100644 --- a/src/views/business/schedule/certPrint/cert-interface.ts +++ b/src/views/business/schedule/certPrint/cert-interface.ts @@ -147,6 +147,21 @@ status?: string // 状态变更(无需检测状态7,收入状态2,归还6,回退状态2.5.1,终止5) } +// 证书打印 +export interface ICerPrint { + approvalStatus: string | undefined + certificateClass: string + certificateNo: string + createUserId: string | number + customerName: string + formId: string + ids?: [] | null + orderNo: string + printStatus: string | number + sampleName: string + sampleNo: string +} + // 证书同意/拒绝 export interface ICertApprove { comments: string diff --git a/src/views/business/schedule/certPrint/certList.vue b/src/views/business/schedule/certPrint/certList.vue index 173b7ea..2788a08 100644 --- a/src/views/business/schedule/certPrint/certList.vue +++ b/src/views/business/schedule/certPrint/certList.vue @@ -247,8 +247,13 @@ type: 'warning', }, ).then(() => { - exportCert({ orderId: row.orderId, reason: row.reason, sampleId: row.sampleId, status: row.status }).then((res) => { - console.log(res) + const params = { + ...listQuery.value, + ids: [row.id], + } + exportCert(params).then((res) => { + const blob = new Blob([res.data]) + exportFile(blob, '证书打印列表.xlsx') }) }) } diff --git a/src/views/business/schedule/task/taskList.vue b/src/views/business/schedule/task/taskList.vue index 0717e93..64473c3 100644 --- a/src/views/business/schedule/task/taskList.vue +++ b/src/views/business/schedule/task/taskList.vue @@ -138,6 +138,8 @@ } // 点击详情 const handleDetail = (row: ITaskList) => { + console.log('跳转任务分发详情') + $router.push(`/schedule/task/distribute/${row.sampleId}?order=${row.orderId}`) } diff --git a/src/views/business/subpackage/apply/list.vue b/src/views/business/subpackage/apply/list.vue index 6c8c903..8fc0173 100644 --- a/src/views/business/subpackage/apply/list.vue +++ b/src/views/business/subpackage/apply/list.vue @@ -11,7 +11,7 @@ import type { dictType } from '@/views/device/receive/receive' import type { IMenu } from '@/components/buttonBox/buttonBox' import ButtonBox from '@/components/buttonBox/buttonBox.vue' -import { getListPage } from '@/api/business/subpackage/apply' +import { detail, getListPage } from '@/api/business/subpackage/apply' import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any @@ -59,6 +59,21 @@ } }) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + total.value = parseInt(response.data.total) + loadingTable.value = false + }) +} // 清除条件 const clearList = () => { listQuery.value = { @@ -76,29 +91,6 @@ timeRange.value = ['', ''] fetchData() } - -// 数据查询 -function fetchData(isNowPage = false) { - loadingTable.value = true - if (!isNowPage) { - // 是否显示当前页,否则跳转第一页 - listQuery.value.offset = 1 - } - // 模拟数据 - loadingTable.value = false - getListPage(listQuery.value).then((response) => { - list.value = response.data.rows - let interfaceStr = '' - for (const key in response.data.rows[0]) { - const item = response.data.rows[0][key] - interfaceStr += `${key}:${typeof (item)}\n` - } - console.log(interfaceStr) - total.value = parseInt(response.data.total) - loadingTable.value = false - }) -} - // 搜索 const searchList = () => { fetchData(true) @@ -126,7 +118,11 @@ } // 详情或者编辑 const handleEdit = (row: IApplyList, status: string) => { - + if (status !== 'edit') { + detail({ id: row.id }).then((res) => { + console.log(res) + }) + } } // 取消 const handleCancle = (row: IApplyList) => { @@ -226,9 +222,6 @@ 详情 - - 取消 - diff --git a/src/views/business/subpackage/approve/list.vue b/src/views/business/subpackage/approve/list.vue index ece8355..6755ede 100644 --- a/src/views/business/subpackage/approve/list.vue +++ b/src/views/business/subpackage/approve/list.vue @@ -3,7 +3,7 @@ import type { Ref } from 'vue' import { ElLoading, ElMessage } from 'element-plus' import type { DateModelType } from 'element-plus' -import type { IListQueryApprove } from '../subpackage-interface' +import type { IApproveList, IListQueryApprove } from '../subpackage-interface' import { printJSON } from '@/utils/printUtils' import { exportFile } from '@/utils/exportUtils' import type { TableColumn } from '@/components/NormalTable/table_interface' @@ -11,16 +11,22 @@ import type { dictType } from '@/views/device/receive/receive' import type { IMenu } from '@/components/buttonBox/buttonBox' import ButtonBox from '@/components/buttonBox/buttonBox.vue' +import { detail, getListPage } from '@/api/business/subpackage/approval' +import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any const TabActiveButton = 'SubpackageApproveActive' +const loadingTable = ref(false) +const menu = ref([]) // 审批状态按钮组合 +const active = ref('') +const timeRange = ref<[DateModelType, DateModelType]>(['', '']) // 查询条件 const listQuery: Ref = ref({ applicantEndTime: '', // 开始时间 applicantName: '', // 申请人名称 applicantStartTime: '', // 结束时间 - approvalStatus: '', // 申请状态 - formId: '', // 表单id + approvalStatus: active.value, // 申请状态, // 申请状态 + formId: SCHEDULE.BUSINESS_SUBPACKAGE_APPROVE, // 表单id outsourcerName: '', // 分包方名称 projectName: '', // 分包项目名称 projectNo: '', // 分包项目编号 @@ -31,28 +37,55 @@ offset: 1, limit: 20, }) -const total = ref(0) -const loadingTable = ref(false) -const menu = ref([]) // 审批状态按钮组合 -const active = ref('') + // 表头 const columns = ref([ - { text: '分包项目编号', value: 'interchangeCode', align: 'center', width: '160px' }, - { text: '公司名称', value: 'customerNo', align: 'center', width: '160px' }, - { text: '公司规模', value: 'customerName', align: 'center', width: '160px' }, + { text: '分包项目编号', value: 'outsourcerNo', align: 'center', width: '160px' }, + { text: '公司名称', value: 'outsourcerName', align: 'center', width: '160px' }, + { text: '公司规模', value: 'outsourcerSize', align: 'center', width: '160px' }, { text: '业务规模', value: 'reciever', align: 'center', width: '180px' }, - { text: '履约评级', value: 'deliverer', align: 'center', width: '180px' }, - { text: '整体评价', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '履约评级', value: 'grade', align: 'center', width: '180px' }, + { text: '整体评价', value: 'businessSizeName', align: 'center', width: '180px' }, { text: '业务内容', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '公司地址', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '创建时间', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '审批状态', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '公司地址', value: 'fullAddress', align: 'center', width: '180px' }, + { text: '创建时间', value: 'createTime', align: 'center', width: '180px' }, + { text: '审批状态', value: 'approvalStatusName', align: 'center', width: '180px' }, ]) const list = ref([]) +const total = ref(0) -// 搜索 -const searchList = () => { +// 时间变更 +watch(timeRange, (val) => { + if (val) { + listQuery.value.applicantStartTime = `${val[0]}` + listQuery.value.applicantEndTime = `${val[1]}` + } + else { + listQuery.value.applicantStartTime = '' + listQuery.value.applicantEndTime = '' + } +}) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + // let interfaceStr = '' + // for (const key in response.data.rows[0]) { + // const item = response.data.rows[0][key] + // interfaceStr += `${key}:${typeof (item)}\n` + // } + // console.log(interfaceStr) + total.value = parseInt(response.data.total) + loadingTable.value = false + }) } // 清除条件 @@ -61,8 +94,8 @@ applicantEndTime: '', // 开始时间 applicantName: '', // 申请人名称 applicantStartTime: '', // 结束时间 - approvalStatus: '', // 申请状态 - formId: '', // 表单id + approvalStatus: active.value, // 申请状态, // 申请状态 + formId: SCHEDULE.BUSINESS_SUBPACKAGE_APPROVE, // 表单id outsourcerName: '', // 分包方名称 projectName: '', // 分包项目名称 projectNo: '', // 分包项目编号 @@ -73,6 +106,13 @@ offset: 1, limit: 20, } + timeRange.value = ['', ''] + fetchData() +} + +// 搜索 +const searchList = () => { + fetchData(true) } // 新建 const add = () => { @@ -95,13 +135,14 @@ } // 详情或者编辑 -const handleEdit = (row, status) => { - +const handleEdit = (row: IApproveList, status: string) => { + // if (status !== 'edit') { + // detail({ id: row.id }).then((res) => { + // console.log(res) + // }) + // } } -// 取消 -const handleCancle = (row) => { -} // 获取字典值 const getDict = async () => { // 审批状态 @@ -128,7 +169,7 @@ onMounted(async () => { await getDict() - if (window.sessionStorage.getItem(TabActiveButton) !== 'undefined' && window.sessionStorage.getItem(TabActiveButton) !== '' && window.sessionStorage.getItem(TabActiveButton) !== null) { + if (window.sessionStorage.getItem(TabActiveButton)) { active.value = window.sessionStorage.getItem(TabActiveButton)! } else { @@ -160,18 +201,9 @@ 详情 - - 取消 - diff --git a/src/views/business/subpackage/certificate/list.vue b/src/views/business/subpackage/certificate/list.vue index 7097ea2..ada0f7b 100644 --- a/src/views/business/subpackage/certificate/list.vue +++ b/src/views/business/subpackage/certificate/list.vue @@ -1,11 +1,169 @@ diff --git a/src/views/business/subpackage/check/list.vue b/src/views/business/subpackage/check/list.vue index d74662a..16c1f13 100644 --- a/src/views/business/subpackage/check/list.vue +++ b/src/views/business/subpackage/check/list.vue @@ -12,7 +12,7 @@ import type { IMenu } from '@/components/buttonBox/buttonBox' import { SCHEDULE } from '@/utils/scheduleDict' import ButtonBox from '@/components/buttonBox/buttonBox.vue' -import { getListPage } from '@/api/business/subpackage/check' +import { detail, getListPage } from '@/api/business/subpackage/check' const $router = useRouter() const { proxy } = getCurrentInstance() as any @@ -37,13 +37,13 @@ // 表头 const columns = ref([ - { text: '分包项目编号', value: 'interchangeCode', align: 'center', width: '160px' }, - { text: '分包项目名称', value: 'customerNo', align: 'center', width: '160px' }, - { text: '验收人', value: 'customerName', align: 'center', width: '160px' }, - { text: '分包方名称', value: 'reciever', align: 'center' }, - { text: '验收结论', value: 'deliverer', align: 'center' }, - { text: '验收时间', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '审批状态', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '分包项目编号', value: 'projectNo', align: 'center', width: '160px' }, + { text: '分包项目名称', value: 'projectName', align: 'center', width: '160px' }, + { text: '验收人', value: 'checkerName', align: 'center', width: '160px' }, + { text: '分包方名称', value: 'outsourcerName', align: 'center', width: '160px' }, + { text: '验收结论', value: 'checkerName', align: 'center', width: '160px' }, + { text: '验收时间', value: 'checkTime', align: 'center', width: '180px' }, + { text: '审批状态', value: 'applyApprovalStatusName', align: 'center', width: '180px' }, ]) const list = ref([]) const total = ref(0) @@ -126,7 +126,11 @@ } // 详情或者编辑 const handleEdit = (row: IApplyList, status: string) => { - + if (status !== 'edit') { + detail({ id: row.id }).then((res) => { + console.log(res) + }) + } } // 取消 const handleCancle = (row: IApplyList) => { @@ -158,13 +162,12 @@ onMounted(async () => { await getDict() - if (window.sessionStorage.getItem(TabActiveButton) !== 'undefined' && window.sessionStorage.getItem(TabActiveButton) !== '' && window.sessionStorage.getItem(TabActiveButton) !== null) { + if (window.sessionStorage.getItem(TabActiveButton)) { active.value = window.sessionStorage.getItem(TabActiveButton)! } else { active.value = menu.value.find(item => item.name === '全部')!.id as string // 全部 } - fetchData() }) @@ -227,9 +230,6 @@ 详情 - - 取消 - diff --git a/src/views/business/subpackage/record/list.vue b/src/views/business/subpackage/record/list.vue index e190697..209a440 100644 --- a/src/views/business/subpackage/record/list.vue +++ b/src/views/business/subpackage/record/list.vue @@ -7,12 +7,14 @@ import { printJSON } from '@/utils/printUtils' import { exportFile } from '@/utils/exportUtils' import type { TableColumn } from '@/components/NormalTable/table_interface' +import { getListPage } from '@/api/business/subpackage/record' +import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any // 查询条件 const listQuery: Ref = ref({ businessSize: '', // 业务规模-字典code - formId: '', + formId: SCHEDULE.BUSINESS_SUBPACKAGE_RECORD, // 表单id grade: '', // 履约评级-字典code ids: [], outsourcerName: '', // 分包方公司名字 @@ -20,7 +22,6 @@ offset: 1, limit: 20, }) -const total = ref(0) const loadingTable = ref(false) // 表头 const columns = ref([ @@ -36,10 +37,32 @@ { text: '备注', value: 'deliverTime', align: 'center', width: '180px' }, ]) const list = ref([]) +const total = ref(0) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + let interfaceStr = '' + for (const key in response.data.rows[0]) { + const item = response.data.rows[0][key] + interfaceStr += `${key}:${typeof (item)}\n` + } + console.log(interfaceStr) + total.value = parseInt(response.data.total) + loadingTable.value = false + }) +} // 搜索 const searchList = () => { - + fetchData(true) } // 清除条件 @@ -54,6 +77,7 @@ offset: 1, limit: 20, } + fetchData() } // 导出 const exportAll = () => { @@ -77,6 +101,7 @@ } onMounted(async () => { + fetchData() }) diff --git a/src/api/business/subpackage/apply.ts b/src/api/business/subpackage/apply.ts index 612cdc5..6e2ae82 100644 --- a/src/api/business/subpackage/apply.ts +++ b/src/api/business/subpackage/apply.ts @@ -12,3 +12,67 @@ data, }) } + +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/apply/detail', + method: 'post', + data, + }) +} + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function applyDel(data: object) { + return request({ + url: '/business/outsourceProject/apply/delete', + method: 'post', + data, + }) +} + +// 编辑 + +export function applyEdit(data: object) { + return request({ + url: '/business/outsourceProject/apply/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/apply/failUpdate', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourceProject/apply/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/apply/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/approval.ts b/src/api/business/subpackage/approval.ts index 541b476..74d177b 100644 --- a/src/api/business/subpackage/approval.ts +++ b/src/api/business/subpackage/approval.ts @@ -2,13 +2,50 @@ * 分包方资格审批接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryApprove } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryApprove) { return request({ url: `/business/outsourcer/approval/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 审批详情 +// export function detail(data: object) { +// return request({ +// url: '/business/outsourcer/approval/operate/delete', +// method: 'post', +// data, +// }) +// } + +// 审批删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourcer/approval/operate/delete', + method: 'post', + data, + }) +} + +// 保存 +export function save(data: object) { + return request({ + url: '/business/outsourcer/save', + method: 'post', + data, + }) +} + +// 提交 +export function submit(data: object) { + return request({ + url: '/business/outsourcer/submit', + method: 'post', + data, + }) +} + diff --git a/src/api/business/subpackage/certificate.ts b/src/api/business/subpackage/certificate.ts new file mode 100644 index 0000000..44d7b3a --- /dev/null +++ b/src/api/business/subpackage/certificate.ts @@ -0,0 +1,4 @@ +/** + * 分包方证书管理 + */ +// import request from '../../index' diff --git a/src/api/business/subpackage/check.ts b/src/api/business/subpackage/check.ts index a80c98c..b13c622 100644 --- a/src/api/business/subpackage/check.ts +++ b/src/api/business/subpackage/check.ts @@ -12,3 +12,66 @@ data, }) } +// 详情 +export function detail(data: object) { + return request({ + url: '/business/outsourceProject/check/detail', + method: 'post', + data, + }) +} + +// 删除 +export function approvalDel(data: object) { + return request({ + url: '/business/outsourceProject/check/approval/operate/delete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function checkdelete(data: object) { + return request({ + url: '/business/outsourceProject/check/delete', + method: 'post', + data, + }) +} + +// 编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/draftUpdate', + method: 'post', + data, + }) +} + +// 驳回后编辑 + +export function failUpdate(data: object) { + return request({ + url: '/business/outsourceProject/check/failUpdate', + method: 'post', + data, + }) +} +// 保存 + +export function save(data: object) { + return request({ + url: '/business/outsourceProject/check/save', + method: 'post', + data, + }) +} +// 提交 + +export function submit(data: object) { + return request({ + url: '/business/outsourceProject/check/submit', + method: 'post', + data, + }) +} diff --git a/src/api/business/subpackage/record.ts b/src/api/business/subpackage/record.ts index c3bbf1a..9420480 100644 --- a/src/api/business/subpackage/record.ts +++ b/src/api/business/subpackage/record.ts @@ -2,13 +2,77 @@ * 分包方档案接口 */ import request from '../../index' -import type { IListQuery } from '@/views/business/subpackage/subpackage-interface' +import type { IListQueryRecord } from '@/views/business/subpackage/subpackage-interface' // 列表查询 -export function getListPage(data: IListQuery) { +export function getListPage(data: IListQueryRecord) { return request({ url: `/business/outsourcer/listPage?offset=${data.offset}&limit=${data.limit}`, method: 'post', data, }) } + +// 批量删除 +export function batchDel(data: object) { + return request({ + url: '/business/outsourcer/batchDelete', + method: 'post', + data, + }) +} + +// 草稿箱删除 +export function outsourcerDel(data: object) { + return request({ + url: '/business/outsourcer/delete', + method: 'post', + data, + }) +} + +// 档案详情 +export function detail(data: object) { + return request({ + url: '/business/outsourcer/detail', + method: 'post', + data, + }) +} + +// 档案编辑 +export function draftUpdate(data: object) { + return request({ + url: '/business/outsourcer/draftUpdate', + method: 'post', + data, + }) +} + +// 档案编辑驳回后编辑 +export function failUpdate(data: object) { + return request({ + url: '/business/outsourcer/failUpdate', + method: 'post', + data, + }) +} + +// 列表详情 +export function rowDetail(data: object) { + return request({ + url: '/business/outsourcer/list', + method: 'post', + data, + }) +} + +// 档案导出 +export function listExport(data: object) { + return request({ + url: '/business/outsourcer/listExport', + method: 'post', + data, + }) +} + diff --git a/src/router/modules/business.ts b/src/router/modules/business.ts index 2cb0803..015814f 100644 --- a/src/router/modules/business.ts +++ b/src/router/modules/business.ts @@ -117,10 +117,10 @@ }, { path: 'task/:role/:id?', - name: 'taskDetail', + name: 'TaskDetail', component: () => import('@/views/business/schedule/task/taskEdit.vue'), meta: { - title: '样品详情', + title: '任务分发详情', icon: 'ep:key', sidebar: false, breadcrumb: true, @@ -253,7 +253,7 @@ { path: '/subpackage', component: Layout, - redirect: '/subpackage/apply', // 子路由 + redirect: '/subpackage/itemApply', // 子路由 name: 'Subpackage', meta: { title: '分包管理', @@ -262,43 +262,43 @@ }, children: [ { - path: 'apply', - name: 'Apply', + path: 'itemApply', + name: 'ItemApply', component: () => import('@/views/business/subpackage/apply/list.vue'), meta: { title: '分包项目申请', icon: 'ep:key', - auth: '/subpackage/apply', + auth: '/subpackage/itemApply', }, }, { - path: 'check', - name: 'Check', + path: 'itemCheck', + name: 'ItemCheck', component: () => import('@/views/business/subpackage/check/list.vue'), meta: { title: '分包项目验收', icon: 'ep:key', - auth: '/subpackage/check', + auth: '/subpackage/itemCheck', }, }, { - path: 'record', - name: 'Record', + path: 'archives', + name: 'Archives', component: () => import('@/views/business/subpackage/record/list.vue'), meta: { title: '分包方档案', icon: 'ep:key', - auth: '/subpackage/record', + auth: '/subpackage/archives', }, }, { - path: 'approve', - name: 'Approve', + path: 'qualificationApprove', + name: 'QualificationApprove', component: () => import('@/views/business/subpackage/approve/list.vue'), meta: { title: '分包方资格审批', icon: 'ep:key', - auth: '/subpackage/approve', + auth: '/subpackage/qualificationApprove', }, }, { diff --git a/src/utils/scheduleDict.ts b/src/utils/scheduleDict.ts index a579f5b..941ee89 100644 --- a/src/utils/scheduleDict.ts +++ b/src/utils/scheduleDict.ts @@ -25,4 +25,5 @@ BUSINESS_SUBPACKAGE_CHECK = 'ywglfbxmys', // 分包项目验收 BUSINESS_SUBPACKAGE_RECORD = 'ywglfbfda', // 分包方档案 BUSINESS_SUBPACKAGE_APPROVE = 'ywglfbfzgsp', // 分包方资格资格审批 + BUSINESS_SUBPACKAGE_MANAGE = 'ywglfbzsgl', // 分包方证书管理 } diff --git a/src/views/business/schedule/certPrint/cert-interface.ts b/src/views/business/schedule/certPrint/cert-interface.ts index 3442fb8..be9379d 100644 --- a/src/views/business/schedule/certPrint/cert-interface.ts +++ b/src/views/business/schedule/certPrint/cert-interface.ts @@ -147,6 +147,21 @@ status?: string // 状态变更(无需检测状态7,收入状态2,归还6,回退状态2.5.1,终止5) } +// 证书打印 +export interface ICerPrint { + approvalStatus: string | undefined + certificateClass: string + certificateNo: string + createUserId: string | number + customerName: string + formId: string + ids?: [] | null + orderNo: string + printStatus: string | number + sampleName: string + sampleNo: string +} + // 证书同意/拒绝 export interface ICertApprove { comments: string diff --git a/src/views/business/schedule/certPrint/certList.vue b/src/views/business/schedule/certPrint/certList.vue index 173b7ea..2788a08 100644 --- a/src/views/business/schedule/certPrint/certList.vue +++ b/src/views/business/schedule/certPrint/certList.vue @@ -247,8 +247,13 @@ type: 'warning', }, ).then(() => { - exportCert({ orderId: row.orderId, reason: row.reason, sampleId: row.sampleId, status: row.status }).then((res) => { - console.log(res) + const params = { + ...listQuery.value, + ids: [row.id], + } + exportCert(params).then((res) => { + const blob = new Blob([res.data]) + exportFile(blob, '证书打印列表.xlsx') }) }) } diff --git a/src/views/business/schedule/task/taskList.vue b/src/views/business/schedule/task/taskList.vue index 0717e93..64473c3 100644 --- a/src/views/business/schedule/task/taskList.vue +++ b/src/views/business/schedule/task/taskList.vue @@ -138,6 +138,8 @@ } // 点击详情 const handleDetail = (row: ITaskList) => { + console.log('跳转任务分发详情') + $router.push(`/schedule/task/distribute/${row.sampleId}?order=${row.orderId}`) } diff --git a/src/views/business/subpackage/apply/list.vue b/src/views/business/subpackage/apply/list.vue index 6c8c903..8fc0173 100644 --- a/src/views/business/subpackage/apply/list.vue +++ b/src/views/business/subpackage/apply/list.vue @@ -11,7 +11,7 @@ import type { dictType } from '@/views/device/receive/receive' import type { IMenu } from '@/components/buttonBox/buttonBox' import ButtonBox from '@/components/buttonBox/buttonBox.vue' -import { getListPage } from '@/api/business/subpackage/apply' +import { detail, getListPage } from '@/api/business/subpackage/apply' import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any @@ -59,6 +59,21 @@ } }) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + total.value = parseInt(response.data.total) + loadingTable.value = false + }) +} // 清除条件 const clearList = () => { listQuery.value = { @@ -76,29 +91,6 @@ timeRange.value = ['', ''] fetchData() } - -// 数据查询 -function fetchData(isNowPage = false) { - loadingTable.value = true - if (!isNowPage) { - // 是否显示当前页,否则跳转第一页 - listQuery.value.offset = 1 - } - // 模拟数据 - loadingTable.value = false - getListPage(listQuery.value).then((response) => { - list.value = response.data.rows - let interfaceStr = '' - for (const key in response.data.rows[0]) { - const item = response.data.rows[0][key] - interfaceStr += `${key}:${typeof (item)}\n` - } - console.log(interfaceStr) - total.value = parseInt(response.data.total) - loadingTable.value = false - }) -} - // 搜索 const searchList = () => { fetchData(true) @@ -126,7 +118,11 @@ } // 详情或者编辑 const handleEdit = (row: IApplyList, status: string) => { - + if (status !== 'edit') { + detail({ id: row.id }).then((res) => { + console.log(res) + }) + } } // 取消 const handleCancle = (row: IApplyList) => { @@ -226,9 +222,6 @@ 详情 - - 取消 - diff --git a/src/views/business/subpackage/approve/list.vue b/src/views/business/subpackage/approve/list.vue index ece8355..6755ede 100644 --- a/src/views/business/subpackage/approve/list.vue +++ b/src/views/business/subpackage/approve/list.vue @@ -3,7 +3,7 @@ import type { Ref } from 'vue' import { ElLoading, ElMessage } from 'element-plus' import type { DateModelType } from 'element-plus' -import type { IListQueryApprove } from '../subpackage-interface' +import type { IApproveList, IListQueryApprove } from '../subpackage-interface' import { printJSON } from '@/utils/printUtils' import { exportFile } from '@/utils/exportUtils' import type { TableColumn } from '@/components/NormalTable/table_interface' @@ -11,16 +11,22 @@ import type { dictType } from '@/views/device/receive/receive' import type { IMenu } from '@/components/buttonBox/buttonBox' import ButtonBox from '@/components/buttonBox/buttonBox.vue' +import { detail, getListPage } from '@/api/business/subpackage/approval' +import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any const TabActiveButton = 'SubpackageApproveActive' +const loadingTable = ref(false) +const menu = ref([]) // 审批状态按钮组合 +const active = ref('') +const timeRange = ref<[DateModelType, DateModelType]>(['', '']) // 查询条件 const listQuery: Ref = ref({ applicantEndTime: '', // 开始时间 applicantName: '', // 申请人名称 applicantStartTime: '', // 结束时间 - approvalStatus: '', // 申请状态 - formId: '', // 表单id + approvalStatus: active.value, // 申请状态, // 申请状态 + formId: SCHEDULE.BUSINESS_SUBPACKAGE_APPROVE, // 表单id outsourcerName: '', // 分包方名称 projectName: '', // 分包项目名称 projectNo: '', // 分包项目编号 @@ -31,28 +37,55 @@ offset: 1, limit: 20, }) -const total = ref(0) -const loadingTable = ref(false) -const menu = ref([]) // 审批状态按钮组合 -const active = ref('') + // 表头 const columns = ref([ - { text: '分包项目编号', value: 'interchangeCode', align: 'center', width: '160px' }, - { text: '公司名称', value: 'customerNo', align: 'center', width: '160px' }, - { text: '公司规模', value: 'customerName', align: 'center', width: '160px' }, + { text: '分包项目编号', value: 'outsourcerNo', align: 'center', width: '160px' }, + { text: '公司名称', value: 'outsourcerName', align: 'center', width: '160px' }, + { text: '公司规模', value: 'outsourcerSize', align: 'center', width: '160px' }, { text: '业务规模', value: 'reciever', align: 'center', width: '180px' }, - { text: '履约评级', value: 'deliverer', align: 'center', width: '180px' }, - { text: '整体评价', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '履约评级', value: 'grade', align: 'center', width: '180px' }, + { text: '整体评价', value: 'businessSizeName', align: 'center', width: '180px' }, { text: '业务内容', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '公司地址', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '创建时间', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '审批状态', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '公司地址', value: 'fullAddress', align: 'center', width: '180px' }, + { text: '创建时间', value: 'createTime', align: 'center', width: '180px' }, + { text: '审批状态', value: 'approvalStatusName', align: 'center', width: '180px' }, ]) const list = ref([]) +const total = ref(0) -// 搜索 -const searchList = () => { +// 时间变更 +watch(timeRange, (val) => { + if (val) { + listQuery.value.applicantStartTime = `${val[0]}` + listQuery.value.applicantEndTime = `${val[1]}` + } + else { + listQuery.value.applicantStartTime = '' + listQuery.value.applicantEndTime = '' + } +}) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + // let interfaceStr = '' + // for (const key in response.data.rows[0]) { + // const item = response.data.rows[0][key] + // interfaceStr += `${key}:${typeof (item)}\n` + // } + // console.log(interfaceStr) + total.value = parseInt(response.data.total) + loadingTable.value = false + }) } // 清除条件 @@ -61,8 +94,8 @@ applicantEndTime: '', // 开始时间 applicantName: '', // 申请人名称 applicantStartTime: '', // 结束时间 - approvalStatus: '', // 申请状态 - formId: '', // 表单id + approvalStatus: active.value, // 申请状态, // 申请状态 + formId: SCHEDULE.BUSINESS_SUBPACKAGE_APPROVE, // 表单id outsourcerName: '', // 分包方名称 projectName: '', // 分包项目名称 projectNo: '', // 分包项目编号 @@ -73,6 +106,13 @@ offset: 1, limit: 20, } + timeRange.value = ['', ''] + fetchData() +} + +// 搜索 +const searchList = () => { + fetchData(true) } // 新建 const add = () => { @@ -95,13 +135,14 @@ } // 详情或者编辑 -const handleEdit = (row, status) => { - +const handleEdit = (row: IApproveList, status: string) => { + // if (status !== 'edit') { + // detail({ id: row.id }).then((res) => { + // console.log(res) + // }) + // } } -// 取消 -const handleCancle = (row) => { -} // 获取字典值 const getDict = async () => { // 审批状态 @@ -128,7 +169,7 @@ onMounted(async () => { await getDict() - if (window.sessionStorage.getItem(TabActiveButton) !== 'undefined' && window.sessionStorage.getItem(TabActiveButton) !== '' && window.sessionStorage.getItem(TabActiveButton) !== null) { + if (window.sessionStorage.getItem(TabActiveButton)) { active.value = window.sessionStorage.getItem(TabActiveButton)! } else { @@ -160,18 +201,9 @@ 详情 - - 取消 - diff --git a/src/views/business/subpackage/certificate/list.vue b/src/views/business/subpackage/certificate/list.vue index 7097ea2..ada0f7b 100644 --- a/src/views/business/subpackage/certificate/list.vue +++ b/src/views/business/subpackage/certificate/list.vue @@ -1,11 +1,169 @@ diff --git a/src/views/business/subpackage/check/list.vue b/src/views/business/subpackage/check/list.vue index d74662a..16c1f13 100644 --- a/src/views/business/subpackage/check/list.vue +++ b/src/views/business/subpackage/check/list.vue @@ -12,7 +12,7 @@ import type { IMenu } from '@/components/buttonBox/buttonBox' import { SCHEDULE } from '@/utils/scheduleDict' import ButtonBox from '@/components/buttonBox/buttonBox.vue' -import { getListPage } from '@/api/business/subpackage/check' +import { detail, getListPage } from '@/api/business/subpackage/check' const $router = useRouter() const { proxy } = getCurrentInstance() as any @@ -37,13 +37,13 @@ // 表头 const columns = ref([ - { text: '分包项目编号', value: 'interchangeCode', align: 'center', width: '160px' }, - { text: '分包项目名称', value: 'customerNo', align: 'center', width: '160px' }, - { text: '验收人', value: 'customerName', align: 'center', width: '160px' }, - { text: '分包方名称', value: 'reciever', align: 'center' }, - { text: '验收结论', value: 'deliverer', align: 'center' }, - { text: '验收时间', value: 'deliverTime', align: 'center', width: '180px' }, - { text: '审批状态', value: 'deliverTime', align: 'center', width: '180px' }, + { text: '分包项目编号', value: 'projectNo', align: 'center', width: '160px' }, + { text: '分包项目名称', value: 'projectName', align: 'center', width: '160px' }, + { text: '验收人', value: 'checkerName', align: 'center', width: '160px' }, + { text: '分包方名称', value: 'outsourcerName', align: 'center', width: '160px' }, + { text: '验收结论', value: 'checkerName', align: 'center', width: '160px' }, + { text: '验收时间', value: 'checkTime', align: 'center', width: '180px' }, + { text: '审批状态', value: 'applyApprovalStatusName', align: 'center', width: '180px' }, ]) const list = ref([]) const total = ref(0) @@ -126,7 +126,11 @@ } // 详情或者编辑 const handleEdit = (row: IApplyList, status: string) => { - + if (status !== 'edit') { + detail({ id: row.id }).then((res) => { + console.log(res) + }) + } } // 取消 const handleCancle = (row: IApplyList) => { @@ -158,13 +162,12 @@ onMounted(async () => { await getDict() - if (window.sessionStorage.getItem(TabActiveButton) !== 'undefined' && window.sessionStorage.getItem(TabActiveButton) !== '' && window.sessionStorage.getItem(TabActiveButton) !== null) { + if (window.sessionStorage.getItem(TabActiveButton)) { active.value = window.sessionStorage.getItem(TabActiveButton)! } else { active.value = menu.value.find(item => item.name === '全部')!.id as string // 全部 } - fetchData() }) @@ -227,9 +230,6 @@ 详情 - - 取消 - diff --git a/src/views/business/subpackage/record/list.vue b/src/views/business/subpackage/record/list.vue index e190697..209a440 100644 --- a/src/views/business/subpackage/record/list.vue +++ b/src/views/business/subpackage/record/list.vue @@ -7,12 +7,14 @@ import { printJSON } from '@/utils/printUtils' import { exportFile } from '@/utils/exportUtils' import type { TableColumn } from '@/components/NormalTable/table_interface' +import { getListPage } from '@/api/business/subpackage/record' +import { SCHEDULE } from '@/utils/scheduleDict' const $router = useRouter() const { proxy } = getCurrentInstance() as any // 查询条件 const listQuery: Ref = ref({ businessSize: '', // 业务规模-字典code - formId: '', + formId: SCHEDULE.BUSINESS_SUBPACKAGE_RECORD, // 表单id grade: '', // 履约评级-字典code ids: [], outsourcerName: '', // 分包方公司名字 @@ -20,7 +22,6 @@ offset: 1, limit: 20, }) -const total = ref(0) const loadingTable = ref(false) // 表头 const columns = ref([ @@ -36,10 +37,32 @@ { text: '备注', value: 'deliverTime', align: 'center', width: '180px' }, ]) const list = ref([]) +const total = ref(0) +// 数据查询 +function fetchData(isNowPage = false) { + loadingTable.value = true + if (!isNowPage) { + // 是否显示当前页,否则跳转第一页 + listQuery.value.offset = 1 + } + // 模拟数据 + loadingTable.value = false + getListPage(listQuery.value).then((response) => { + list.value = response.data.rows + let interfaceStr = '' + for (const key in response.data.rows[0]) { + const item = response.data.rows[0][key] + interfaceStr += `${key}:${typeof (item)}\n` + } + console.log(interfaceStr) + total.value = parseInt(response.data.total) + loadingTable.value = false + }) +} // 搜索 const searchList = () => { - + fetchData(true) } // 清除条件 @@ -54,6 +77,7 @@ offset: 1, limit: 20, } + fetchData() } // 导出 const exportAll = () => { @@ -77,6 +101,7 @@ } onMounted(async () => { + fetchData() }) diff --git a/src/views/business/subpackage/subpackage-interface.ts b/src/views/business/subpackage/subpackage-interface.ts index 763f9dc..366c571 100644 --- a/src/views/business/subpackage/subpackage-interface.ts +++ b/src/views/business/subpackage/subpackage-interface.ts @@ -51,6 +51,31 @@ limit: number } +export interface IApproveList { + addressAreaName: string // 公司地址-区 + addressCityName: string // 公司地址-市 + addressCountryName: string // 公司地址-国家 + addressProvinceName: string // 公司地址-省 + approvalStatus: string // 审批状态类型-字典code + approvalStatusName: string // 审批状态类型-字典value + businessContent: string // 业务内容 + businessSize: string // 业务规模-字典code + businessSizeName: string // 业务规模-字典value + createTime: string // 创建时间 + decisionItem: string | number // 可选决策项(1同意驳回拒绝 2同意驳回 3同意拒绝,用于待审批列表同意/驳回/拒绝按钮展示) + evaluation: string // 整体评价-字典code + evaluationName: string // 整体评价-字典value + fullAddress: string // 公司地址-详细地址 + grade: string // 履约评级-字典code + gradeName: string // 履约评级-字典value + id: string | number // 主键id + outsourcerName: string // 分包方公司名字 + outsourcerNo: string // 分包方编号 + outsourcerSize: string // 分包方公司规模 + processId: string // 流程实例id + taskId: string // 任务id(同意、驳回等操作使用) +} + // 分包方档案查询参数 export interface IListQueryRecord { businessSize: string // 业务规模-字典code