供应商端 · 打包师傅页面

货架待补状态 · 早班 · 设箱 —— 前端对接说明

质检补货与打包师傅页面展示优化(需求第 2、3、4 点)。本页覆盖打包货架列表接口的新增字段、渲染规则与筛选项。

POST /package/shelf/page 货架打包状态分页

状态:已上测试环境(supplier/test)。改动仅新增字段与筛选,原有字段与行为不变。

01三种视觉状态一览

同一张货架卡片可叠加多种状态。下面是实际配色的样例,颜色/透明度已按需求锁定,前端直接取用。

1503-1
0/1
普通货架
restockStatus 0/2
待补
1501-1
0/1
待补
restockStatus === 1
1501-2
0/1
早班
≥22:00 或 ≤01:00
不符
1503-2
0/1
设箱不符
boxMismatchFlag === 1
待补
不符
1506-1
0/1
叠加
早班 + 待补 + 不符

颜色值(需求锁定,请勿改)

待补徽标:底色 #FF6A00,字体 #FFFFFF,位于卡片正上方居中。

早班背景:整卡背景 #FF000F 透明度 70%(即 rgba(255,0,15,.7))。

设箱不符:沿用现有「不符」红徽标(右上角),由 boxMismatchFlag 驱动,本次未改。

02响应新增字段(ShelfPackageStatusVo)

字段类型说明
restockStatus新增 int 待补状态0 无待补 · 1 存在待补货(→ 展示「待补」徽标)· 2 补货已完成。徽标只在 === 1 时显示。
earlyShiftFlag新增 boolean 是否早班。后端已按口径算好(deliveryTime >= 22:00<= 01:00),true 直接给整卡染红,前端无需自行判断时间,见第 04 节。
deliveryTime string
HH:mm:ss
交货时间(HH:mm:ss,已含提前 30 分钟)。仅展示用,早班判断请直接取 earlyShiftFlag
boxMismatchFlag int 货位下是否存在设箱不符包裹。0 否 · 1 是(→「不符」徽标)。既有字段。
shelfSn / zoneShelf int / string 货架号 / 区-货架,卡片主标题。既有字段。
selfPickup int 是否自提 1/0。自提货架单独 tab。既有字段。
preparedInfo object 配货进度 { total, prepared, progress }。既有字段。

03请求新增筛选参数(ShelfPackageStatusPageQo)

参数类型说明
restockFilter新增 int 只看待补null/0 不限 · 1 只看待补(后端等价 restockStatus = 1)。
onlyEarlyShift新增 boolean 只看早班true 只看早班(deliveryTime >= 22:00<= 01:00);null/false 不限。
boxMatchFilter int 设箱筛选。null/0 全部 · 1 设箱合规 · 2 设箱不符。既有参数。
date * string 场次日期,如 2026-08-14。必填。
status * int tab 状态:0 可打包/未打包 · 1 打包完成 · 2 出库完成 · 3 自提。必填。
userId / userName * long / string 操作人。current / size 分页。必填。

04早班口径 —— 后端已算好

前端直接用 earlyShiftFlag,不用自己算时间

后端口径:deliveryTime >= 22:00deliveryTime <= 01:00(跨零点,含边界)即早班,已在服务端算入 earlyShiftFlag,前端直接取布尔值染红即可。与配货页 /zone/info/newearlyShiftFlag 是同一口径。

「只看早班」onlyEarlyShift 用的也是同一口径,与卡片染红天然一致;前端不要再按 deliveryTime 自行判断,避免阈值分叉。

// 渲染时:
// 早班背景  -> row.earlyShiftFlag === true          背景 rgba(255,0,15,.7)
// 待补徽标  -> row.restockStatus === 1             底 #FF6A00 / 字 #FFFFFF
// 不符徽标  -> row.boxMismatchFlag === 1

05三个 Tab 的筛选项映射(需求第 4 点)

Tabstatus只看待补只看早班设箱合规/不符
可打包0 restockFilter=1 onlyEarlyShift
打包完成1 restockFilter=1 onlyEarlyShift boxMatchFilter=1/2
自提货架3 restockFilter=1 boxMatchFilter=1/2

各筛选项可自由组合,后端按 AND 叠加。「只看待补」在所有 tab 都有;「只看早班」仅可打包 / 打包完成两个 tab;「设箱」仅打包完成 / 自提两个 tab(沿用既有 boxMatchFilter)。

06关于「退货已补货显示绿色」(需求第 1 点)

需求第 1 点(标记退货的已补货花材显示为绿色)属于质检配货页面的花材级展示,不在本打包货架接口范围内,其所需字段由该页面自身接口返回,本次不涉及。本页只覆盖打包页面的第 2、3、4 点。