feat: 盘点合并列表 — 服务端JOIN+DB分页,消除99999全量加载

## stock.py
- 新增 GET /draft/merged-list: UNION ALL三表+LEFT JOIN draft
  数据库级 LIMIT/OFFSET 分页,不再加载全量到Python内存
- 参数: session_id, keyword, status_filter, page, pageSize
- 返回: list, total, total_scanned (已扫去重数)

## stock.ts
- 新增 getDraftMergedList() API函数

## stocktake/index.vue
- fetchInventoryList: 改用merged-list单次调用替代99999全量+find()
- resumeSession: limit 99999→1 先检查存在,再limit 500加载
This commit is contained in:
yueli
2026-07-16 13:08:29 +08:00
parent e313f575bf
commit 8c10bb0903
3 changed files with 168 additions and 68 deletions

View File

@ -73,6 +73,21 @@ export function getBom(parentId: number) {
})
}
// 盘点物资合并列表(服务端 JOIN draft + stock,替代前端全量加载+find)
export function getDraftMergedList(params: {
session_id: string
keyword?: string
status_filter?: string
page?: number
pageSize?: number
}) {
return request({
url: '/v1/inbound/stock/draft/merged-list',
method: 'get',
params
})
}
// 获取应盘物资清单(盘点基数)
export function getAllStocktakeItems(params?: { keyword?: string; session_id?: string }) {
return request({