Files
docs/打印标签维护/现有打印清单与改版台账.md
T
2026-09-16 12:02:41 +08:00

14 KiB
Raw Blame History

现有打印清单与改版台账

盘点日期:2026-09-16。

证据范围:当前工作区代码、同目录 6 份 PDF 样张及 2 份 XLSX 样张。PDF 已提取尺寸与文字并渲染核对;XLSX 已读取工作表字段及打印设置,尚未核验 Excel 实际分页。本文记录代码现状与样张差异,不代表真实环境打印验收通过。

一、当前已有的打印能力

按业务用途计,当前已确认 8 类系统生成标签或单据,另有 1 类报表页面打印。不同入口可能共用一个模板,不能用模板数量代替业务类型数量。

编号 当前类型 主要入口 当前尺寸与方式 当前内容与说明
C01 头程箱唛 Admin 订单批量打印、入库单;Client 头程订单 100×100 mm PDF 单箱身份、仓库、箱序、线路、箱码二维码;一件代发还显示 SKU。重复打印复用稳定箱码
C02 散货装柜托盘标 货柜详情、预装/装柜清单 100×100 mm PDF 托盘码、目的 FBA 仓、托盘序号、集装箱号、二维码;支持全部打印或按 FBA 仓补打
C03 一件代发托盘信息单 Admin 订单“托盘打印”页签、入库历史 A4 纵向 PDF 托盘 Code 128 条码、目的仓、入仓码/客户昵称、SKU 与箱数/件数汇总;支持整票和单托补打
C04 海外实体托盘标 海外仓托盘管理每行“打印” 100×100 mm PDF 当前托盘真实编码、FBA 仓码、海外仓名称、二维码;单张输出
C05 退货箱唛及合箱后的新箱标 Admin/Client 退货库存与箱号页面 100×150 mm HTML,浏览器打印 实物箱号、Code 128 条码、来源退货单、签收批次、箱规、SKU 与数量;这是箱级标签
C06 出口货物托运单 海运订舱列表/详情“打印单据” A4 PDF 使用当前已保存订舱资料
C07 提单确认件 海运订舱列表/详情“打印单据” A4 PDF 海运提单内容确认;与海外排车 BOL 分属不同业务
C08 海外排车 BOL 海外仓排车列表“打印 BOL” A4 PDF 发货仓、承运商、预约、车辆、目的仓与货物明细;当前按目的 FBA 仓分组分页
C09 应收款统计报表 财务应收款统计“打印” 浏览器页面打印 打印当前统计页面,没有独立 PDF 模板

另有外部文件打印需求:换标箱唛、SKU 标签、总标签及明细标签 PDF,以及客户上传的快递面单 PDF/图片。海外 PDA 换标页提供“查看 / 打印”入口;快递面单有上传及要求仓库打印的选项。文件上传、下载和查看能力不等于系统已实现相应模板生成或设备直连打印。

模板与实现关系

实现 当前消费者
INBOUND_MARK_V1 C01 头程箱唛、C02 散货装柜托盘标、C04 海外实体托盘标
DROPSHIP_PALLET_A4_V2 C03 一件代发托盘信息单
SEA_FREIGHT_SHIPPING_INSTRUCTION_A4_V1 C06 出口货物托运单
BILL_OF_LADING_CONFIRMATION_A4_V1 C07 海运提单确认件
DISPATCH_BILL_OF_LADING_A4_V2 C08 海外排车 BOL
Lastleg 生成 HTML 与 SVG 条码 C05 退货箱唛
前端 window.print() C09 应收款统计

Print 当前是无状态 PDF 渲染服务,业务服务组装数据后调用,不连接打印机。当前实际代码包含 5 个 PDF 模板编码;Print 的 AGENTS.md 职责摘要只列出 4 个,遗漏排车 BOL,后续涉及模板指引修改时应同步核对。

二、本次提供的 8 份目标样张

以下“对应关系”和“待确认项”是盘点结论及建议,尚未确认新模板编码、最终字段或实现范围。状态统一为“待逐项确认,未实施”。

编号 目标类型与参考文件 样张观察 当前对应关系及主要待确认项
T01 亚马逊托盘标 约 A4 横向;目的仓编号、大幅一维条码、托盘号 优先核对 C02/C04 的 FBA 托盘场景。确认国内和海外是否使用同一版式;“目的仓编号”取 FBA 仓码还是主档内部业务编号;条码是否只编码托盘号
T02 私人仓托盘标 约 A4 横向;Private warehouse、客户编号、一维条码、托盘号 当前 C04 为通用标签,未确认已有私人仓专用模板。确认打印对象、私人仓识别条件、客户编号来源及混客托盘处理
T03 海外仓仓储托盘标 约 A4 横向;warehouse-c、客户编号、一维条码、托盘号 需确认“仓储”与 FBA/私人仓/一件代发业务的边界;warehouse-c 是固定文案、业务类别还是动态仓名;客户字段及混客规则待确认
T04 一件代发国内托盘标 A4 纵向;托盘条码/号、“一件代发仓”、入仓码/客户编号/总箱数/总件数及 SKU 明细 对应 C03。现有客户列为“客户昵称”,样张为“客户编号”;标题、字段来源、行数、超长与溢出规则需逐项对齐
T05 退货托盘标 A4 横向;客户昵称、总件数、SKU/箱数/件数、托盘条码/号、入仓时间 不能直接对应 C05,C05 是退货箱唛。需核对退货库存到托盘的真实归属、按托汇总口径、入仓时间取值及打印入口
T06 暂扣 HOLD 约 A4 横向;页面只有大字 HOLD,没有业务编号或条码 当前盘点未确认独立 HOLD 打印入口。需确认国内/海外适用范围、是否通用空白标识、扣货后是否提示打印、解除后如何处理现场标识
T07 FBA 仓 BOL 发货方、承运商、收货方、参考信息、柜号/托盘号/FBA 仓编号/入仓码/FBA 货件编号/跟踪编号/箱数及合计 对应 C08 的 FBA 场景。样张备注要求随派送方式取承运商,部分字段留空;这些是待确认的填表规则,不能直接覆盖现有实现
T08 私人仓 BOL 与 FBA BOL 类似;收货方为私人仓地址/联系人/联系方式,多列标注留空 当前 C08 主要按 FBA 仓分组;需核对私人仓业务打印入口、收货地址来源、承运商/自提文案、派送时间与分组口径

尺寸说明:6 份 PDF 均为单页。一件代发样张约 210×297 mm;其余约 297×210 mm,部分页面存在约 0.1 mm 的导出误差。最终纸张、边距和实际打印比例仍须逐项确认。两份 XLSX 保存的纸张设置均为 Letter、纵向,未设置打印区域,不能直接宣称其目标纸张已经确认为 A4。

BOL 样张字段定位:两份工作簿均在 BOL_完整一键复制版 工作表,A2:G7 为主要抬头及列标题;E3 包含承运商和时间填写说明,A5 为收货方说明,E5 为参考字段说明。示例业务行仅用于版式参考,不作为验收数据或业务规则。

三、改版前需要明确的共用关系

  1. 业务类型与打印入口分别确认。 亚马逊托盘标可能同时用于国内预装、装柜及海外补打;同一标签不能仅因入口不同就生成不同托盘身份。
  2. 托盘标与箱唛分别处理。 当前 100×100 mm 模板同时服务箱唛和两类托盘标。不能直接把共用模板改为 A4 横向,导致头程箱唛被一起改版;具体模板拆分在 T01 确认后落地。
  3. 版式调整不自动改变编号规则。 条码制式、编码内容和展示文字分别确认,继续使用服务端真实业务编号;若业务要求改变编号,应另行明确影响范围。
  4. 客户编号、昵称与内部 ID 区分。 样张要求客户编号时,应定位正式业务编号,不能拿数据库 ID 填充;多客户同托时需明确展示规则。
  5. 退货托盘标需要托盘级事实。 退货箱级库存与合箱标签不能直接当作托盘汇总来源;缺少的关系和接口先核实,再确定是否涉及业务能力调整。
  6. HOLD 纸面标识与扣货状态分开。 打印动作本身不代表已完成扣货,解除状态也不等于现场标识已移除;具体提示和操作流程待确认。
  7. FBA BOL 与私人仓 BOL 分别确认。 共享边框和渲染能力不代表收货地址、分组、承运商与字段留空规则相同。

四、建议逐项处理顺序

此顺序为建议,尚未作为用户确认的实施排期。

顺序 项目 排序理由
1 T01 亚马逊托盘标 字段少,已有国内和海外打印链路;先确认横向纸张、一维条码、目的仓含义和跨端复用,并处理与箱唛共用模板的问题
2 T02 私人仓托盘标 沿用已确认的基础排版和条码能力,补齐私人仓识别与客户业务编号
3 T03 海外仓仓储托盘标 接着确认仓储类别、标题及客户展示,避免三种托盘标混用
4 T04 一件代发国内托盘标 已有独立 A4 模板;重点对齐客户编号、汇总字段、明细容量及分页
5 T05 退货托盘标 涉及退货库存与托盘归属、SKU 汇总和入仓时间,数据确认范围更大
6 T06 暂扣 HOLD 版式简单,但需先确定打印入口与扣货/解除业务关系;若确认只是通用静态提示纸,可提前处理
7 T07 FBA 仓 BOL 托盘展示规则稳定后,处理承运商、预约、明细分组、合计和分页
8 T08 私人仓 BOL 在 BOL 共用版式明确后,处理私人地址、自提、时间和留空规则

现有头程箱唛、退货箱唛、出口货物托运单、海运提单确认件、应收统计和上传文件打印继续保留在总盘点中。本轮没有对应的新样张或逐项结论,不自动视为取消,也不自动纳入上述 8 项的实现变更。

五、第一项:亚马逊托盘标确认单

参考:亚马逊托盘标.pdf。

确认点 当前证据 待确认结论
适用对象 当前有散货 FBA 装柜托盘与海外实体托盘打印 是否只覆盖 FBA;国内打印与海外补打是否完全一致
纸张与方向 样张约 A4 横向,当前实现为 100×100 mm 是否统一改为 A4 横向;边距与打印比例
顶部“目的仓编号” 样张未给具体值;当前系统同时存在 FBA 仓码和地址内部业务编号 应展示哪个正式业务字段
条码 样张为一维条码,当前通用模板为二维码 是否采用 Code 128;内容是否为完整托盘号;是否保留二维码
托盘号 现有服务端已冻结或保存真实托盘码 样式变更是否保持现有编号规则;不默认按样张改号
其余文字 样张仅保留目的仓编号、条码及托盘号 是否取消现有柜号、PALLET 序号、仓库名称和产地等额外文字
批量与补打 国内支持全部或按仓前 N 张;海外支持当前托盘单张 是否沿用,还是需要指定任意托盘或打印份数
验收 尚未生成新版样张 使用脱敏真实结构数据,检查长编号、不裁切、条码解码及人工实打

六、每项实施时记录的内容

每项确认后在本目录增加对应类型的详细记录,并从 README 链接。至少记录:

  • 用户确认日期、用途、适用业务和最终样张。
  • 打印入口、资格、单张/批量/补打、打印份数。
  • 字段清单、权威来源、必填与缺失处理;不能用内部 ID 回退。
  • 纸张、方向、边距、黑白效果、字体、条码制式与内容、行数及分页。
  • 新旧模板影响、调用端、业务服务、Print 或 HTML 渲染的变更范围。
  • 定向测试、PDF 尺寸/页数/字体/条码检查、脱敏输出及人工验收结果。
  • 尚未通过的检查、待部署单元和下一步;未人工打印前明确记录“待人工实打确认”。

本次仅建立盘点和建议顺序,没有修改业务代码、原始样张、接口或运行环境。

七、代码定位入口

以下路径均相对工作区根目录;进入代码前先读取目标应用/服务最近的 AGENTS.md。

范围 入口
PDF 模板与渲染 baiyue-firstleg/print/src/main/java/com/baiyue/print/renderer/、controller/InternalPdfController.java、dto/;契约 baiyue-firstleg/print/src/main/resources/openapi/print-internal-v1.yaml
箱唛与一件代发托盘数据 baiyue-firstleg/firstleg/src/main/java/com/baiyue/firstleg/service/InboundCartonLabelPrintService.java
国内散货托盘打印 同服务 service/LoadingPalletLabelService.java;前端 apps/admin-web/src/modules/loading-lists/components/PalletLabelPrintDialog.vue
一件代发托盘入口 apps/admin-web/src/modules/inbounds/core/DropshipPalletPrintPanel.vue
海外实体托盘打印 baiyue-firstleg/warehouse-overseas-service/src/main/java/com/baiyue/warehouse/service/PalletLabelPrintService.java;前端 apps/admin-web/src/modules/overseas-warehouse/pages/PalletsView.vue
海外排车 BOL baiyue-firstleg/lastleg-service/src/main/java/com/baiyue/lastleg/dispatch/service/DispatchBolPrintService.java;前端 apps/admin-web/src/modules/overseas-warehouse/pages/DispatchesView.vue
退货箱唛 HTML 同 Lastleg 服务 returnreceipt/service/ReturnInventoryService.java、ReturnCartonBarcode.java;Admin ReturnInventoryManagementView.vue、Client ReturnInventoryView.vue
海运订舱单据 baiyue-firstleg/firstleg/src/main/java/com/baiyue/firstleg/oceanbooking/service/OceanBookingPrintService.java;前端 apps/admin-web/src/modules/ocean-bookings/components/OceanBookingPrintDialog.vue
应收统计页面打印 apps/admin-web/src/modules/finance/pages/FinanceReceivableStatisticsView.vue