供应商端 · 质检配货页
配货列表接口改为轻表分页(全部分区由 7-8s 降至毫秒级),并新增早班货位、待补货位标记与对应筛选。本页覆盖接口的分页方式、新增字段与渲染规则。
请求需传 pageNo(从 1 开始)、pageSize(默认 20);响应新增 total(当前筛选条件下的货位总数)。shelfSnList 现在只返回当前页,翻页请自行按 total 计算页数。
不传 pageNo/pageSize 时后端按第 1 页、每页 20 条兜底 —— 老前端不改会只看到前 20 个货位,务必接入分页。
need / prepared 语义由「扎数」改为「货位数」need = 当前筛选条件下可配货货位数(status=0),prepared = 配货完成货位数(status=1)。用于两个 tab 的角标计数。若原来按扎数展示汇总,需改按货位数。
列表一行一个货位号(不再拆子货位)。同一张卡片可叠加多种状态,配色与打包页统一,前端直接取用。
待补徽标:底色 #FF6A00,字体 #FFFFFF,卡片正上方居中,restockStatus === 1 时显示。
早班背景:整卡背景 #FF000F 透明度 70%(rgba(255,0,15,.7)),earlyShiftFlag === true 时染红。
子货位徽标:hasSubShelf === 1 时右上角展示「子」标;点货位进详情看子货位(见第 05 节)。
顶层计数 + 当前页货位列表。
| 字段 | 类型 | 说明 |
|---|---|---|
total新增 | long | 当前筛选条件下货位总数,用于分页。 |
need语义变 | int | 可配货货位数(status=0)。原为扎数。 |
prepared语义变 | int | 配货完成货位数(status=1)。原为扎数。 |
shelfSnList | array | 当前页货位列表,元素为 ShelfSnStatus(下表)。 |
列表元素 ShelfSnStatus(一行一货位):
| 字段 | 类型 | 说明 |
|---|---|---|
shelfSn | int | 货位号,卡片主标题。 |
status | int | 配货完成状态:0 可配货 · 1 配货完成(货位级:所有子货位都配完才为 1)。 |
restockStatus新增 | int | 待补状态:0 无待补 · 1 存在待补货(→「待补」徽标)· 2 补货已完成。徽标仅 === 1 显示。 |
earlyShiftFlag新增 | boolean | 是否早班。后端已按口径算好,true 直接染红,前端无需自行判断时间(口径见第 04 节)。 |
hasSubShelf新增 | int | 是否有子货位:0 无 · 1 有(→「子」徽标)。 |
subShelfSn | string | 列表层恒为空串 ""(列表是货位级)。子货位明细走详情接口,见第 05 节。 |
total / prepared / notRestock / progress | int / decimal | 该货位进度:应配 / 已配 / 退缺 / 进度(0~1,封顶 1)。跨子货位汇总。 |
zone / zoneShelf / segmentName | string | 分区 / 区-货架 / 分段。既有字段。 |
deliveryType | int | 配送方式 1 物流 · 2 自提。既有字段。 |
limitDistribution / wareType / wareId | int | 限制配货标识 / 仓库类型 / 仓库 id。既有字段。 |
| 参数 | 类型 | 说明 |
|---|---|---|
date * | string | 场次日期,如 2026-08-17。必填。 |
type | int | tab:0 可配货 · 1 配货完成 · -1 全部。默认 0。 |
pageNo新增 | int | 页码,从 1 开始。默认 1。 |
pageSize新增 | int | 每页条数。默认 20。 |
onlyRestock新增 | boolean | 只看待补。true 仅展示 restockStatus=1 的货位;null/false 不限。 |
onlyEarlyShift新增 | boolean | 只看早班。true 仅展示早班货位;null/false 不限。 |
deliveryType | int | 配送方式筛选:1 物流 · 2 自提。既有参数(自提 tab/筛选)。 |
zone / zoneShelf | string | 分区 / 货架号筛选。既有参数。全部分区即不传 zone。 |
segmentNameList | array | 分段筛选,传分段时必须同时传 zone。既有参数。 |
cityFlag | int | 是否城配区。既有参数。 |
列表一行一个货位号;一个货位有多个子货位时,只出一张卡片并打「子」标(hasSubShelf === 1)。点货位进详情看子货位,走既有详情接口:
earlyShiftFlag,不用自己算时间后端口径:deliveryTime >= 22:00 或 deliveryTime <= 01:00(跨零点)即早班。此口径与打包页一致,且已在服务端算入 earlyShiftFlag,前端直接取布尔值染红即可。
「只看早班」onlyEarlyShift 用的是同一口径,与卡片染红天然一致。
// 渲染时(字段均由后端返回,前端不再自行判断时间): // 早班背景 -> row.earlyShiftFlag === true 背景 rgba(255,0,15,.7) // 待补徽标 -> row.restockStatus === 1 底 #FF6A00 / 字 #FFFFFF // 子货位标 -> row.hasSubShelf === 1 右上角「子」
| Tab | type | 只看待补 | 只看早班 | 自提 |
|---|---|---|---|---|
| 可配货 | 0 | onlyRestock | onlyEarlyShift | deliveryType=2 |
| 配货完成 | 1 | onlyRestock | onlyEarlyShift | deliveryType=2 |