feat(scrap): 前端报废申请 / 报废审批页 + API(对齐出库版式)
- api/scrap.ts 新增 submitScrapRequest/checkScrapApproval/getScrapApprovals/approveScrapRequest/executeScrapByRequest - apply: 选库存(带 source_table+stock_id)/报废数量/原因/按需审批人提交 - approval: 顶部审批状态筛选+刷新、展开明细、列名对齐出库、分页含 sizes、按单执行弹窗 - 路由挂载 /scrap/apply、/scrap/approval
This commit is contained in:
@ -26,3 +26,78 @@ export function getScrapRecords(params: any) {
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
// ==========================================
|
||||
// 报废申请/审批/执行(新流程,镜像出/借库)
|
||||
// ==========================================
|
||||
|
||||
// 4. 提交报废申请
|
||||
export function submitScrapRequest(data: {
|
||||
items: Array<{
|
||||
source_table: string
|
||||
stock_id: number
|
||||
scrap_qty: number
|
||||
name?: string
|
||||
spec_model?: string
|
||||
sku?: string
|
||||
location?: string
|
||||
batch_number?: string
|
||||
}>
|
||||
remark?: string
|
||||
approver_id?: number | null
|
||||
allowed_approvers?: Array<{ type: string; value: any }>
|
||||
}) {
|
||||
return request({
|
||||
url: '/v1/scrap/request',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 5. 提交前预检:所选物料是否需要审批
|
||||
export function checkScrapApproval(data: { items: Array<{ name?: string; spec_model?: string; base_id?: number }> }) {
|
||||
return request({
|
||||
url: '/v1/scrap/request/check-approval',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 6. 报废申请列表(scope: mine | pending | executable | all)
|
||||
export function getScrapApprovals(params: {
|
||||
scope?: 'mine' | 'pending' | 'executable' | 'all'
|
||||
status?: number | ''
|
||||
page?: number
|
||||
limit?: number
|
||||
}) {
|
||||
return request({
|
||||
url: '/v1/scrap/request',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
// 7. 报废申请详情
|
||||
export function getScrapApprovalDetail(id: number) {
|
||||
return request({
|
||||
url: `/v1/scrap/request/${id}`,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 8. 审批(通过/驳回)
|
||||
export function approveScrapRequest(id: number, data: { action: 'approve' | 'reject'; reject_reason?: string }) {
|
||||
return request({
|
||||
url: `/v1/scrap/request/${id}/approve`,
|
||||
method: 'patch',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 9. 按单报废执行(扣减库存)
|
||||
export function executeScrapByRequest(id: number) {
|
||||
return request({
|
||||
url: `/v1/scrap/request/${id}/execute`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user