diff --git a/inventory-web/src/api/outbound.ts b/inventory-web/src/api/outbound.ts index c20c83b..1ab1546 100644 --- a/inventory-web/src/api/outbound.ts +++ b/inventory-web/src/api/outbound.ts @@ -239,3 +239,55 @@ export function getMyRequests(params: { params }) } + +// ========================================== +// 扫码草稿(出库/借库作业中途暂停用) +// ========================================== + +export interface ScanDraftItem { + stock_id: number + source_table: string + sku?: string + quantity: number +} + +/** 读取草稿:返回该用户在这张单上已扫的内容 */ +export function getScanDraft(bizType: 'outbound' | 'borrow', requestId: number) { + return request({ + url: '/v1/scan-draft', + method: 'get', + params: { biz_type: bizType, request_id: requestId } + }) +} + +/** 保存草稿:全量覆盖(提交的 items 即当前完整清单) */ +export function saveScanDraft( + bizType: 'outbound' | 'borrow', + requestId: number, + items: ScanDraftItem[], + requestNo?: string +) { + return request({ + url: '/v1/scan-draft', + method: 'post', + data: { biz_type: bizType, request_id: requestId, request_no: requestNo || '', items } + }) +} + +/** 清除草稿:提交成功后调用 */ +export function clearScanDraft(bizType: 'outbound' | 'borrow', requestId: number) { + return request({ + url: '/v1/scan-draft', + method: 'delete', + params: { biz_type: bizType, request_id: requestId } + }) +} + +/** 草稿概览:供单据下拉显示「已扫 N 项」进度徽标 */ +export function getScanDraftOverview(bizType: 'outbound' | 'borrow') { + return request({ + url: '/v1/scan-draft/overview', + method: 'get', + params: { biz_type: bizType } + }) +} diff --git a/inventory-web/src/views/outbound/create.vue b/inventory-web/src/views/outbound/create.vue index 1509ccc..b690bdf 100644 --- a/inventory-web/src/views/outbound/create.vue +++ b/inventory-web/src/views/outbound/create.vue @@ -39,6 +39,10 @@ :label="req.request_no" > {{ req.request_no }} + + + 已扫 {{ draftProgress[req.id] }} + {{ req.applicant_name || '未知申请人' }} @@ -372,10 +376,14 @@