← 返回入口

需求变更记录

销售配送仓储模块 · 按发布批次记录:每次发布生成一条记录,标题里的时间是这次变更的截止时间,只写这次改了什么。

共 2 次发布 最新:截至 2026-11-11 18:15 · 第 2 次发布 固定地址 lulin-demo.pages.dev

内容源 _doc/变更记录/*.md(一条记录一个文件)· 本页生成于 2026-11-11 18:18

第 2 次发布

截至 2026-11-11 18:15

本次 6 项变更
本记录只列这次发布改了什么。上次发布(17:26)到这次之间的变更:入库/出库列表按类型筛选、PC 出库类型收敛为 4 项、状态列只留状态、入库存货明细去掉贝类标签;调拨状态收敛成两态、调拨卡片信息重排、修复从调拨进子单后返回落错页面。

一、入库 / 出库类型筛选与状态列精简

1. 入库 / 出库类型统一,列表可按类型筛

需求:手机端「待入库 / 已入库」里再做一层筛选:采购入库、生产入库、调拨入库、退料入库、销售退货入库;出库列表同样加筛选:生产出库、销售出库、采购退货出库、调拨出库。PC 出库管理的出库类型筛选项也要按这套改。

实现(手机端 · 仓储作业)

  • 入库列表搜索框右侧新增「全部类型」按钮(漏斗图标):点开底部选择面板 按入库类型筛选,标题下写明「待入库 · 共 11 张单据」,选项为 全部类型 / 采购入库 / 生产入库 / 调拨入库 / 退料入库 / 销售退货入库,每项右侧是该类型在当前页签下的单据数,当前项带蓝色勾选
  • 出库列表同样位置是「全部类型」按钮,面板选项为 全部类型 / 生产出库 / 销售出库 / 采购退货出库 / 调拨出库
  • 选中后按钮直接显示类型名并变蓝(如「退料入库」),再点可换或选「全部类型」清除;不占列表高度,只有一行搜索条
  • 与搜索框、页签叠加生效;切换待入库/已入库时面板里的数量实时重算;空结果提示「没有『退料入库』的单据」
  • 补齐演示单据:退料入库 RK-20261020-006、销售退货入库 RK-20261020-008、生产出库 CK-20261020-092、采购退货出库 CK-20261020-088(老缓存自动补,不重复)

实现(PC 出库管理)

  • 出库类型下拉改为:生产出库 / 销售出库 / 采购退货出库 / 调拨出库(列表筛选与「新建出库单」共用同一份选项)
  • 原「生产领料出库」统一改叫生产出库;「样品出库」取消;原「贝类出池」演示单并入销售出库(去向与备注仍写养殖位出池)
  • 新建出库单按类型联动:生产出库=领料车间、不显示送货方式与运输信息;采购退货出库=退货供应商,来源单据走采购售后退货单

验收:手机端入库点搜索框右侧「全部类型」→ 选「退料入库」→ 按钮变「退料入库」且列表只剩 RK-20261020-006;切「已入库」提示没有该类型单据。PC 出库类型选「生产出库」只剩 CK-20260923-002。

2. 状态列只留状态,去掉「当前节点」

需求:列表上的状态字段就是状态,去掉当前节点,表里的节点信息也去掉。

实现

  • 出库管理表头「状态 / 当前节点」→ 状态,单元格只剩状态徽标
  • 入库管理「流转状态」列同样只留状态徽标,不再显示「流程已结束 / 扫码出库」这类节点小字
  • 流程节点仍在「查看详情」弹窗里可查,列表不占位

3. 入库存货明细去掉「贝类」标签

需求:存货明细后面跟着的贝类标签不要。

实现:入库管理「存货明细」列只留存货名称 + 「共 N 条明细」,去掉 贝类 标签;是否暂养仍看仓库/养殖位与批次。

二、仓库调拨(手机端)

4. 调拨状态只保留「待调拨 / 已完成」

需求:手机上的调拨状态只有两个——待调拨、已完成(不要「在途」)。

实现

  • trStatus() 只返回 待调拨(橙) / 已完成(绿);原「在途」取消
  • 状态口径:调拨入库单确认过 → 已完成;其余(含"已出库、还没确认入库")→ 待调拨
  • syncTransferFromDocs() 同步改为两态:出库单没出库 → 待调拨;出库完成但入库未确认 → 待调拨;入库确认 → 已完成
  • 「调拨入库」页签改为按"调拨出库单是否已出库"判断(不再用状态),出库完成才出现在该页签,角标数量跟着变
  • 关联单据的挂起判断也改为看出库单状态,避免「已出库待入库」被当成"还没出库"而卡住
  • 老缓存里存的「在途」会在打开页面时自动归一成两态

验收:调拨列表只出现「待调拨 / 已完成」两个标签;DB-20261019-002(出库已完成、入库待确认)显示「待调拨」并出现在调拨入库页签。

5. 调拨卡片信息重排

需求:调拨卡片上数据太多,去掉关联单;单号降为次要信息;存货名称 + 规格作为主要信息放上面。

实现(卡片现在的层次)

  • 主信息:存货名称 + 状态标签;下一行灰色小字 规格 · 批次
  • 中间:调出库位 → 调入库位、调拨数量(kg / 箱)
  • 底部次要行:调拨单号 · 创建时间 + 「查看详情 ›」
  • 去掉「关联单:出库 CK-… · 入库 RK-…」整行(关联单据仍在详情弹窗里)
  • 老缓存里的调拨单没有规格字段,打开时按批次从库存回填

验收:卡片首行是「冷冻带鱼 200/300g + 待调拨」,第二行「9.5kg/件 · 批次 B20260912-01」,底部「DB-20261019-002 · 2026-10-19 16:40」。

6. 修 Bug:从调拨详情进关联单后,返回落错页面

问题:仓库调拨 → 调拨入库页签 → 打开一张已出库的调拨单详情 → 点「调拨出库单」→ 点「已完成 · 返回列表」,会跳回出库管理列表,而不是调拨列表;点「调拨入库单」后返回同样落进入库管理。

原因:出库/入库详情的返回按钮写死了各自模块的列表(renderOutboundList / renderList),没有记录"是从调拨进来的"。

修复

  • 详情页记住来源:openOutboundDetail(id, "transfer") / openDetail(id, "transfer"),分别存到 state.outFrom / state.inFrom
  • 返回(含「已完成 · 返回列表」)按来源回跳:从调拨来 → 调拨列表;否则回原模块列表
  • 顺手:从调拨详情做的「确认出库 / 确认入库」完成后也回调拨列表(原来会把人扔进出库/入库管理),并把提示文案里的"已到在途"改成"已出库,去调拨「调拨入库」确认"

验收:调拨 → 调拨入库 → 详情 → 调拨出库单 → 已完成 · 返回列表 → 回到仓库调拨列表;出库单详情从出库管理正常进入时,返回仍回出库管理。

第 1 次发布

截至 2026-11-11 17:26

本次 14 项变更
本记录只列这次发布改了什么。上次发布到这次之间的变更:销售批量发货按客户带出常用车辆、销售明细与存货选择显示税率、入库区分大宗/零星并把零星与生产入库改成「只核对」、所有入库类型补齐验收标准与合格证明、单位统一「上 kg 下箱」、仓库调拨改为同仓内库位调拨并联动上下游单据。

一、销售模块(PC 后台)

1. 批量发货按客户带出常用车辆

需求:PC 批量发货要和手机端一致——选客户、选车型后自动带出该客户的常用司机与车牌,也可换其他车辆或手填。

实现

  • 批量发货弹窗新增「首车车牌」;车牌/司机/电话三项在勾选订单后自动带出
  • 顶部提示条:「已带出『三江购物』的常用车辆:浙B·6F2K1 · 钱师傅 · 13566778899」
  • 右侧按钮:换其他车辆(清空手填)/ 用回常用车辆(恢复常用)
  • 切换客户或车型会重新带出;手动改过则不再覆盖
  • 手填的车牌司机提交后写回该客户常用车辆档案,下次自动带出
  • 与销售手机端共用同一份数据(localStorage key:lulin-sales-customer-fleet-v1),两端互通
  • 确认发货后车牌写入车次第 1 辆车的 plateNumber 与运单 plateNumber

验收:勾选三江购物 → 自动出现 浙B·6F2K1/钱师傅/13566778899;改选盒马鲜生 → 变为 浙B·8H5L3/李师傅;换其他车辆后手填并提交 → 再次选该客户时带出新手填的车牌。

2. 销售订单详情 · 存货明细显示税率

需求:销售明细里要能看到该存货的税率。

实现

  • 明细表新增「税率」列(位于销售单价与销售金额之间),标签样式:9% / 13% 蓝色,0% 灰色
  • 取值:明细 taxRate,缺省 13%
  • 金额口径不变(含税);鼠标悬停销售金额显示对应不含税金额
  • 销售单价、销售金额列含义不变

验收:XS-20261111-001 两条明细分别显示 9%。

3. 新建订单 · 存货选择列表显示税率

需求:新建订单选存货时也要显示税率。

实现

  • 选择存货弹窗列表新增「税率」列(含税单价之后)
  • 选中后带入订单明细行,明细行本就有税率下拉(0/9/13%)可逐行调整

验收:选择存货弹窗中,冷冻金鲳鱼 9%、三文鱼切片 13%。

二、仓储模块 · 入库(手机端 + PC)

4. 入库单区分「大宗采购 / 零星采购」

需求:入库单上要能区分零星和大宗。

实现(手机端)

  • 卡片状态标签右侧新增采购方式标签:大宗(蓝)/ 零星(橙);只有「采购入库」显示该标签,生产/调拨/退料/退货入库不显示
  • 单号行不再重复采购方式

实现(PC 端)

  • 列表单号副行显示:大宗 · 采购预约 PO-… / 零星 · 采购预约 PO-…

验收:手机端零星单显示 [待核对] [零星];PC 列表能看到大宗/零星字样。

5. 零星采购入库:仓储只核对

需求:零星采购在采购阶段就已知垛码、箱数、验收标准、合格证明,仓储入库只做核对。

实现

  • 零星单详情改为核对视图:
    • 采购 · 原始数据:采购总重量、采购数、每件规格(标注“采购端已验收”)
    • 验收记录 · 按垛核对:每垛显示存货名称、垛位码、筐数、总重、平均筐重、库位
    • 验收标准 / 合格证明:验收标准原文 + 附件列表(可查看),显示「已上传 N 份」
  • 底部只有一句提示 + 核对无误,确认入库,不重建垛规、不重新录入
  • 有差异走异常上报(后续可补入口)

验收:RK-20261020-901 南汇蔬菜合作社(生菜 800kg/40 箱),3 垛逐垛核对后一键入库。

6. 生产入库:无大宗概念,同样只核对

需求:生产入库没有大宗/零星概念;生产人员在终端已称重并生成垛码,仓储只核对。

实现

  • 生产入库不显示采购方式标签,状态直接为「待核对」
  • 详情复用核对视图,文案改为「生产 · 原始数据 / 生产终端已完成称重」,「生产交接人」
  • 底部提示:「生产终端已完成称重与垛码绑定,仓储只核对数量与重量」

验收:RK-20261019-003 第一生产车间(小酥肉成品 720),详情为只核对视图,无「设垛规」。

7. 核对类单据不再显示「设垛规」

需求:既然上游已给垛规/垛码,仓储不该再设置。

实现:零星采购、生产入库卡片上原「设垛规 ‹ 未设垛规」替换为灰底提示「数量/垛码由上游给定」。大宗采购不受影响。

8. 所有入库类型都要有「验收标准 / 合格证明」

需求:不管哪种入库,都要有地方查看验收标准和合格证明。

实现:统一区块,覆盖采购(大宗/零星)、生产、调拨、退料、销售退货、贝类入池:

  • 标题右侧显示「已上传 N 份」;无附件显示红色「缺少合格证明」
  • 每条附件:类型标识(PDF/IMG)+ 文件名 + 「查看」
  • 各类型有默认验收标准文案与默认附件(如冻品中心温度 ≤-18℃;活鲜成活率 ≥95%)
  • 零星/生产单优先取上游传入的验收标准与附件

验收:贝类入池页在养殖位明细下方、确认入池按钮上方出现该区块(已上传 3 份)。

9. 数量单位统一:上 kg、下箱

需求:一会儿 kg 一会儿件很乱;统一为上面 kg、下面箱(箱 = 周转筐或纸箱)。手机端所有「件」改为「箱」。

实现

  • 入库卡片:主数字为重量 kg,下方小字为箱数
  • 重量按品类箱规换算:冻虾仁 10、黑鱼片 10、冷冻带鱼段 10、三文鱼净肉/烟熏切片 10、鱿鱼圈原料 10、小酥肉 12、去骨鸡腿肉 15,其它兜底 20 kg/箱
  • 贝类副标题由「待入池 · 500 kg」改为「待入池 · 25 箱」;垛规文案「40 件/垛」→「40 箱/垛」
  • 零星详情:采购件数→采购数,单位 件→箱;生产件数→生产数

验收:冻虾仁 900 箱显示 9,000 kg / 900 箱;生菜显示 800 kg / 40 箱。

三、仓储模块 · PC 后台

10. 入库管理:去掉「出池」按钮

需求:PC 端只做展示,出池在手机端操作。

实现:操作列只保留「查看详情」,移除「出池」。

11. 筛选栏调整

  • 去掉「采购方式」筛选下拉(区分信息已在单号副行体现)
  • 「存货类型」→ 存货分类;原「存货分类」→ 存货二级分类
  • 其它页面同名筛选项同步改名(出库、库存等共 5 处)

验收:入库管理筛选栏为:入库类型 | 存货分类 | 存货二级分类 | 流转状态。

四、仓储模块 · 仓库调拨(手机端)

12. 仓库调拨改为「同仓内库位调拨」

需求:调出仓 = 调入仓,库位必须不同;跨仓不做。

实现

  • 新增调拨单:选调出仓库 → 调出库位 → 点垛(或扫垛码/库位码)→ 选同一仓库的另一个库位
  • 调入仓库锁定为调出仓库,页面写明「同仓调拨 · 只换库位」;调入库位下拉自动排除调出库位
  • 提交时校验:调入仓 ≠ 调出仓、调入库位 ≠ 调出库位、数量 > 0
  • 列表副标题改「同仓内库位调拨,扫码即调」;筛选由「全部调出仓」改为「全部调出库位」,与「全部调入库位」配对
  • 调拨单号改用 DB-20261020-001 形式(原 OUT-… 与出库单号混淆)
  • 卡片显示「关联单:出库 CK-… · 入库 RK-…」,一眼看到两张下游单据

验收:任意新建调拨单,卡片路由为 原料大仓 · A-02 → A-03,调出/调入仓库一致、库位不同。

13. 一张调拨单同步生成调拨出库单 + 调拨入库单

需求:调拨出口 → 出库管理(类型 调拨出库);调拨入库 → 入库管理(类型 调拨入库);两单以调拨单号关联,任一端完成则调拨单状态更新。

实现

  • 建单时同时生成:
    • 调拨出库单(出库管理):客户位显示为「调入库位:原料大仓 · A-03」,按箱/垛扫码出库,详情带「调拨单号 / 调入库位」
    • 调拨入库单(入库管理):标题「调出 原料大仓 · A-02」,详情带「调拨单号 / 调出库位 / 调入库位」,复用调拨入库的验收标准与合格证明(调拨单.pdf、随车温度记录.pdf)
  • 状态联动:待调拨 → 出库完成 → 在途 → 入库完成 → 已完成
    • 出库单未出库时,入库单标签为「待调拨出库」,「确认入库」置灰并提示「调拨出库单还没出库」
    • 出库完成提示:「调拨单 DB-… 已到在途,去入库管理确认 RK-…」;入库完成提示:「调拨单 DB-… 已完成」
  • 调拨详情新增「关联单据」区块 + 调拨出库单 / 调拨入库单 两个跳转按钮
  • 新增的调拨单写入 localStorage(lulin-mobile-transfer-v1),刷新后不丢,也不会出现「有单无父」

验收:新建调拨单 → 出库管理出现待出库的调拨出库单 → 扫码 + 确认出库 → 入库管理调拨入库单解禁 → 确认入库 → 调拨列表显示已完成。

14. 存量演示数据补建单据

需求:现有 4 条调拨出库 / 3 条调拨入库要有对应单据,列表里能看到、能操作。

实现

  • 种子调拨单 4 张(1 待调拨 / 1 在途 / 2 已完成)→ 生成 4 张调拨出库单(CK-20261020-091、CK-20261019-011、CK-20261008-001、CK-20260901-001)
  • 其中已出库的 3 张 → 生成 3 张调拨入库单(RK-20261019-010、RK-20261008-001、RK-20260901-001);待调拨那张按历史口径暂无入库单
  • 老浏览器缓存里缺这些单据时,初始化会自动补进去,不重复

验收:出库管理待出库能看到 CK-20261020-091(调拨出库);入库管理能看到 3 张调拨入库单,其中 RK-20261019-010 可直接确认入库。

销售配送仓储模块 · 需求变更记录 · 固定地址 lulin-demo.pages.dev · 返回入口