前端对接仓库配货 / 打包

打包页待补 / 早班 / 设箱

货架待补状态徽标、早班红底、设箱不符角标的渲染配色与三 tab 筛选映射,含早班跨午夜判断函数

端
打包小程序
后端服务
supplier
更新
2026-08-19
接口数
1

Markdown 原文(给 AI 用):https://doc.xfun.fun/shelf-restock-api.md

供应商端 · 打包师傅页面

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

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

三种视觉状态一览

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

状态驱动字段视觉
普通货架restockStatus 为 0 / 2默认卡片
待补restockStatus === 1卡片正上方居中「待补」橙色徽标
早班earlyShiftFlag === true(交货时间 ≥22:00 或 ≤01:00)整卡红底
设箱不符boxMismatchFlag === 1右上角「不符」红徽标
叠加以上任意组合早班红底 + 待补徽标 + 不符徽标可同时出现
说明

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

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

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

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

响应新增字段(ShelfPackageStatusVo)

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

请求新增筛选参数(ShelfPackageStatusPageQo)

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

早班口径 —— 后端已算好

说明

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

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

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

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

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

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

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

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

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

接口 POST /package/shelf/page · 供应商端 · 测试分支 supplier/test。字段口径以后端返回为准;earlyShiftFlag/ restockStatus 均已由服务端算好,前端直接取用。