优化
This commit is contained in:
@@ -51,6 +51,7 @@
|
|||||||
| 平台收货仓 | `docs/订单与客户/订单与客户头程订单闭环设计.md` | Admin `modules/warehouses/`;Client `modules/first-leg/`;Backend `warehouse/` |
|
| 平台收货仓 | `docs/订单与客户/订单与客户头程订单闭环设计.md` | Admin `modules/warehouses/`;Client `modules/first-leg/`;Backend `warehouse/` |
|
||||||
| 头程订单、批量审核预览与入仓码关系 | `docs/订单与客户/README.md`、头程订单闭环设计 | Admin `modules/first-leg-orders/`、`modules/unified-orders/`;Client `modules/first-leg/api/inboundCodeAssociations.ts`、`modules/first-leg/`;Backend `order/` 的 `InboundCodeAssociationService`、`UnifiedOrderQueryService`、`BatchOrderReviewPreviewService` 与 `firstleg/`。Order 为 `SUBMITTED` 时,即使 Firstleg 已存在准备中入库投影,统一列表仍固定显示 `PENDING_REVIEW` 并提供审核动作;批量审核弹框只调用 `/orders/first-leg/batch-review-preview` 一次获取按请求顺序返回的快照,不逐票查询详情,主要展示入仓码而非内部订单 ID |
|
| 头程订单、批量审核预览与入仓码关系 | `docs/订单与客户/README.md`、头程订单闭环设计 | Admin `modules/first-leg-orders/`、`modules/unified-orders/`;Client `modules/first-leg/api/inboundCodeAssociations.ts`、`modules/first-leg/`;Backend `order/` 的 `InboundCodeAssociationService`、`UnifiedOrderQueryService`、`BatchOrderReviewPreviewService` 与 `firstleg/`。Order 为 `SUBMITTED` 时,即使 Firstleg 已存在准备中入库投影,统一列表仍固定显示 `PENDING_REVIEW` 并提供审核动作;批量审核弹框只调用 `/orders/first-leg/batch-review-preview` 一次获取按请求顺序返回的快照,不逐票查询详情,主要展示入仓码而非内部订单 ID |
|
||||||
| 客户头程订单批量导入 | 当前 Order 契约 | Client `modules/first-leg/views/FirstLegOrdersView.vue`、`api/firstLeg.ts`;Backend `order/` 的 `MerchantBatchImportService`、`MerchantWarehouseCatalogClient`、`MerchantPricingCatalogClient` 与 `order-v1.yaml`。中文 XLSX 模板按当前客户动态生成地址、全部有效仓库和渠道下拉;导入时重新校验动态选项与客户归属,最多 50 行,只创建草稿,支持部分成功或整批原子模式 |
|
| 客户头程订单批量导入 | 当前 Order 契约 | Client `modules/first-leg/views/FirstLegOrdersView.vue`、`api/firstLeg.ts`;Backend `order/` 的 `MerchantBatchImportService`、`MerchantWarehouseCatalogClient`、`MerchantPricingCatalogClient` 与 `order-v1.yaml`。中文 XLSX 模板按当前客户动态生成地址、全部有效仓库和渠道下拉;导入时重新校验动态选项与客户归属,最多 50 行,只创建草稿,支持部分成功或整批原子模式 |
|
||||||
|
| 平台旧系统订单导入 | 当前 Order 契约 | Admin `modules/unified-orders/pages/UnifiedOrdersView.vue`、`api/unifiedOrders.ts`;Backend `order/` 的 `PlatformLegacyOrderImportService` 与 `/api/platform/v1/orders/first-leg/legacy-import`。固定归属启用客户“IT测试公司”,保留旧入仓码,按当前公共仓库和客户价格簿逐行校验,成功行进入待审核 |
|
||||||
| 平台修改客户原始申报与履约渠道 | 当前 Order/Firstleg 契约 | Admin `modules/unified-orders/components/OrderDeclarationEditorDialog.vue`、`api/unifiedOrders.ts`;Backend `order/` 的 `OrderDeclarationUpdateService` 与 `order-v1.yaml`,通过 `ORDER_DECLARATION_UPDATED_V1` 同步 `firstleg/` 的 `OrderDeclarationSyncService`。只修改申报快照,不覆盖仓库/PDA 实测、测量审核、箱码或已确认费用;渠道变化额外校验分柜、同柜、装柜可逆性与重新计价,国内收货仓或中转仓变化必须重新下单 |
|
| 平台修改客户原始申报与履约渠道 | 当前 Order/Firstleg 契约 | Admin `modules/unified-orders/components/OrderDeclarationEditorDialog.vue`、`api/unifiedOrders.ts`;Backend `order/` 的 `OrderDeclarationUpdateService` 与 `order-v1.yaml`,通过 `ORDER_DECLARATION_UPDATED_V1` 同步 `firstleg/` 的 `OrderDeclarationSyncService`。只修改申报快照,不覆盖仓库/PDA 实测、测量审核、箱码或已确认费用;渠道变化额外校验分柜、同柜、装柜可逆性与重新计价,国内收货仓或中转仓变化必须重新下单 |
|
||||||
| 脚本管理、全量验证与测试造数 | `baiyue-firstleg/scripts/AGENTS.md`、`baiyue-firstleg/scripts/README.md` | Backend `scripts/` 为仓库级入口,`scripts/admin-test-env-modules/` 为 Admin HTTP 内部模块;服务局部脚本留在 `<service>/scripts/`,不得散落到 `src/test/scripts/`;真实 HTTP、部署或环境写入仍须当前轮明确授权 |
|
| 脚本管理、全量验证与测试造数 | `baiyue-firstleg/scripts/AGENTS.md`、`baiyue-firstleg/scripts/README.md` | Backend `scripts/` 为仓库级入口,`scripts/admin-test-env-modules/` 为 Admin HTTP 内部模块;服务局部脚本留在 `<service>/scripts/`,不得散落到 `src/test/scripts/`;真实 HTTP、部署或环境写入仍须当前轮明确授权 |
|
||||||
| 平台/企业 RBAC | 订单与客户契约;公共语义见 `docs/平台客户层级与权限契约.md` | Admin `modules/iam/`、`core/access/`;Client `modules/tenant-management/`;Backend `iam/`、`auth/` |
|
| 平台/企业 RBAC | 订单与客户契约;公共语义见 `docs/平台客户层级与权限契约.md` | Admin `modules/iam/`、`core/access/`;Client `modules/tenant-management/`;Backend `iam/`、`auth/` |
|
||||||
|
|||||||
@@ -4,12 +4,15 @@
|
|||||||
|
|
||||||
当前逐项改版,已确认项以各类型详细记录为准。样张中的文字、填写说明和示例值属于参考资料,不能直接视为已确认的系统规则;样张中的地址、业务编号和客户资料不复制为源码常量。
|
当前逐项改版,已确认项以各类型详细记录为准。样张中的文字、填写说明和示例值属于参考资料,不能直接视为已确认的系统规则;样张中的地址、业务编号和客户资料不复制为源码常量。
|
||||||
|
|
||||||
|
2026-09-20 已确认纸张总规则:只有箱唛使用 `100×100 mm`;托盘标及其他现场打印标识均使用 A4。方向按参考样张执行:一件代发国内托盘标为 A4 纵向,亚马逊、私人仓、海外仓仓储、退货与 HOLD 为 A4 横向。纸张确认不等于字段来源已确认,仍按类型逐项接入权威业务事实。
|
||||||
|
|
||||||
## 文档入口
|
## 文档入口
|
||||||
|
|
||||||
- [头程箱唛 SKU 展示修正](头程箱唛-SKU展示修正.md):普通及一件代发头程箱唛均不显示 SKU,一件代发 A4 保留 SKU 明细。
|
- [头程箱唛 SKU 展示修正](头程箱唛-SKU展示修正.md):普通及一件代发头程箱唛均不显示 SKU,一件代发 A4 保留 SKU 明细。
|
||||||
|
|
||||||
- [现有打印清单与改版台账](现有打印清单与改版台账.md):现有能力、8 份目标样张、差异、建议顺序及逐项确认记录。
|
- [现有打印清单与改版台账](现有打印清单与改版台账.md):现有能力、8 份目标样张、差异、建议顺序及逐项确认记录。
|
||||||
- [T01 亚马逊托盘标](T01-亚马逊托盘标.md):顶部 FBA 仓码、完整托盘内部编号、国内/海外统一横向 A4 打印口径及实现范围。
|
- [T01 亚马逊托盘标](T01-亚马逊托盘标.md):顶部 FBA 仓码、完整托盘内部编号、国内/海外统一横向 A4 打印口径及实现范围。
|
||||||
|
- [T04 一件代发国内托盘标](T04-一件代发国内托盘标.md):A4 纵向、整票/单托打印及明细超量自动分页口径。
|
||||||
|
|
||||||
## 原始样张
|
## 原始样张
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,31 @@
|
|||||||
|
# T04 一件代发国内托盘标
|
||||||
|
|
||||||
|
## 已确认口径
|
||||||
|
|
||||||
|
2026-09-20 用户确认:除箱唛使用 `100×100 mm` 外,托盘标均使用 A4;一件代发国内托盘标按参考样张使用 A4 纵向。
|
||||||
|
|
||||||
|
参考原稿:[一件代发国内托盘标.pdf](一件代发国内托盘标.pdf)。
|
||||||
|
|
||||||
|
| 项目 | 实现口径 |
|
||||||
|
| --- | --- |
|
||||||
|
| 纸张 | 210×297 mm,A4 纵向,黑白 |
|
||||||
|
| 打印对象 | 一件代发已预生成的真实托盘;不临时生成或改写托盘码 |
|
||||||
|
| 托盘身份 | 完整托盘码同时作为 Code 128 内容和可见文字 |
|
||||||
|
| 明细 | 展示当前托盘关联的入仓码、客户、箱数、件数及 SKU 汇总 |
|
||||||
|
| 打印入口 | Admin 入库单托盘打印页签支持整票打印;单托支持补打 |
|
||||||
|
| 多页规则 | 单托超过 10 行入仓码或 34 行 SKU 时自动续页;每页重复完整托盘码、条码和目的仓,不因明细超量阻断打印 |
|
||||||
|
| 箱唛边界 | 一件代发箱唛仍使用独立 `100×100 mm` 箱唛模板,且不展示 SKU;不得复用托盘 A4 模板 |
|
||||||
|
|
||||||
|
## 实现范围
|
||||||
|
|
||||||
|
- Firstleg 按真实托盘归属组装 `DROPSHIP_PALLET_A4_V2` 数据;整票打印输出一个多页 PDF。
|
||||||
|
- Print 保持每个文档一张 A4;Firstleg 在调用前按模板容量拆页,避免超过单页容量时整次打印失败。
|
||||||
|
- 续页保留入仓码上下文。若 SKU 页数多于入仓码页数,续页重复首批入仓码摘要,确保 Print 契约要求的入仓信息不为空。
|
||||||
|
- Print 请求体大小保护覆盖一件代发托盘 A4 内部接口。
|
||||||
|
- 当前客户列沿用系统客户昵称。参考样张中的“客户编号”尚未确认权威字段,不使用数据库 ID 回填。
|
||||||
|
|
||||||
|
## 验证与部署
|
||||||
|
|
||||||
|
- Firstleg `InboundCartonLabelPrintServiceTest` 9 项通过,覆盖单托、整票和 35 行 SKU 自动拆成两页。
|
||||||
|
- Print `InternalPdfControllerTest`、`PrintRequestSizeFilterTest`、`DropshipPalletA4PdfServiceGenerationTest` 共 19 项通过,覆盖 A4 尺寸、PDF 响应和请求大小门禁。
|
||||||
|
- 待发布 `firstleg-service` 与 `print-service` 后,从真实 Admin 页面分别验证整票打印和单托补打;实际 A4 打印比例与条码扫描仍待人工确认。
|
||||||
@@ -4,6 +4,8 @@
|
|||||||
|
|
||||||
2026-09-20 修正:[头程箱唛 SKU 展示修正](头程箱唛-SKU展示修正.md)。所有头程箱唛均不显示 SKU,一件代发 A4 保留 SKU;下文盘点基线中关于箱唛展示 SKU 的描述已被该结论取代。
|
2026-09-20 修正:[头程箱唛 SKU 展示修正](头程箱唛-SKU展示修正.md)。所有头程箱唛均不显示 SKU,一件代发 A4 保留 SKU;下文盘点基线中关于箱唛展示 SKU 的描述已被该结论取代。
|
||||||
|
|
||||||
|
2026-09-20 纸张规则确认:只有箱唛使用 `100×100 mm`,其余托盘标和现场打印标识全部使用 A4;一件代发国内托盘标按样张使用 A4 纵向,其余 PDF 托盘标和 HOLD 按样张使用 A4 横向。各类型字段、标题和数据来源仍需逐项确认,不能因纸张统一而共用错误模板。
|
||||||
|
|
||||||
后续变更:T01 已确认顶部 SCK8、托盘号保留 141 等内部业务编号、国内/海外统一打印,详见 [T01 亚马逊托盘标](T01-亚马逊托盘标.md)。下文“当前已有”及差异表保留改版前盘点基线;实施结论以该详细记录为准。
|
后续变更:T01 已确认顶部 SCK8、托盘号保留 141 等内部业务编号、国内/海外统一打印,详见 [T01 亚马逊托盘标](T01-亚马逊托盘标.md)。下文“当前已有”及差异表保留改版前盘点基线;实施结论以该详细记录为准。
|
||||||
|
|
||||||
证据范围:当前工作区代码、同目录 6 份 PDF 样张及 2 份 XLSX 样张。PDF 已提取尺寸与文字并渲染核对;XLSX 已读取工作表字段及打印设置,尚未核验 Excel 实际分页。本文记录代码现状与样张差异,不代表真实环境打印验收通过。
|
证据范围:当前工作区代码、同目录 6 份 PDF 样张及 2 份 XLSX 样张。PDF 已提取尺寸与文字并渲染核对;XLSX 已读取工作表字段及打印设置,尚未核验 Excel 实际分页。本文记录代码现状与样张差异,不代表真实环境打印验收通过。
|
||||||
@@ -49,7 +51,7 @@ Print 当前是无状态 PDF 渲染服务,业务服务组装数据后调用,
|
|||||||
| T01 | [亚马逊托盘标](亚马逊托盘标.pdf) | 约 A4 横向;目的仓编号、大幅一维条码、托盘号 | 优先核对 C02/C04 的 FBA 托盘场景。确认国内和海外是否使用同一版式;“目的仓编号”取 FBA 仓码还是主档内部业务编号;条码是否只编码托盘号 |
|
| T01 | [亚马逊托盘标](亚马逊托盘标.pdf) | 约 A4 横向;目的仓编号、大幅一维条码、托盘号 | 优先核对 C02/C04 的 FBA 托盘场景。确认国内和海外是否使用同一版式;“目的仓编号”取 FBA 仓码还是主档内部业务编号;条码是否只编码托盘号 |
|
||||||
| T02 | [私人仓托盘标](私人仓托盘标.pdf) | 约 A4 横向;`Private warehouse`、客户编号、一维条码、托盘号 | 当前 C04 为通用标签,未确认已有私人仓专用模板。确认打印对象、私人仓识别条件、客户编号来源及混客托盘处理 |
|
| T02 | [私人仓托盘标](私人仓托盘标.pdf) | 约 A4 横向;`Private warehouse`、客户编号、一维条码、托盘号 | 当前 C04 为通用标签,未确认已有私人仓专用模板。确认打印对象、私人仓识别条件、客户编号来源及混客托盘处理 |
|
||||||
| T03 | [海外仓仓储托盘标](海外仓-仓储托盘标.pdf) | 约 A4 横向;`warehouse-c`、客户编号、一维条码、托盘号 | 需确认“仓储”与 FBA/私人仓/一件代发业务的边界;`warehouse-c` 是固定文案、业务类别还是动态仓名;客户字段及混客规则待确认 |
|
| T03 | [海外仓仓储托盘标](海外仓-仓储托盘标.pdf) | 约 A4 横向;`warehouse-c`、客户编号、一维条码、托盘号 | 需确认“仓储”与 FBA/私人仓/一件代发业务的边界;`warehouse-c` 是固定文案、业务类别还是动态仓名;客户字段及混客规则待确认 |
|
||||||
| T04 | [一件代发国内托盘标](一件代发国内托盘标.pdf) | A4 纵向;托盘条码/号、“一件代发仓”、入仓码/客户编号/总箱数/总件数及 SKU 明细 | 对应 C03。现有客户列为“客户昵称”,样张为“客户编号”;标题、字段来源、行数、超长与溢出规则需逐项对齐 |
|
| T04 | [一件代发国内托盘标](一件代发国内托盘标.pdf) | A4 纵向;托盘条码/号、“一件代发仓”、入仓码/客户编号/总箱数/总件数及 SKU 明细 | 对应 C03;A4 纵向和明细超量自动分页已确认并实现,详见 [T04 一件代发国内托盘标](T04-一件代发国内托盘标.md)。客户列当前仍使用客户昵称,后续若改为客户编号需另行确认正式业务字段 |
|
||||||
| T05 | [退货托盘标](退货托盘标.pdf) | A4 横向;客户昵称、总件数、SKU/箱数/件数、托盘条码/号、入仓时间 | 不能直接对应 C05,C05 是退货箱唛。需核对退货库存到托盘的真实归属、按托汇总口径、入仓时间取值及打印入口 |
|
| T05 | [退货托盘标](退货托盘标.pdf) | A4 横向;客户昵称、总件数、SKU/箱数/件数、托盘条码/号、入仓时间 | 不能直接对应 C05,C05 是退货箱唛。需核对退货库存到托盘的真实归属、按托汇总口径、入仓时间取值及打印入口 |
|
||||||
| T06 | [暂扣 HOLD](暂扣HOLD.pdf) | 约 A4 横向;页面只有大字 `HOLD`,没有业务编号或条码 | 当前盘点未确认独立 HOLD 打印入口。需确认国内/海外适用范围、是否通用空白标识、扣货后是否提示打印、解除后如何处理现场标识 |
|
| T06 | [暂扣 HOLD](暂扣HOLD.pdf) | 约 A4 横向;页面只有大字 `HOLD`,没有业务编号或条码 | 当前盘点未确认独立 HOLD 打印入口。需确认国内/海外适用范围、是否通用空白标识、扣货后是否提示打印、解除后如何处理现场标识 |
|
||||||
| T07 | [FBA 仓 BOL](FBA仓-BOL.xlsx) | 发货方、承运商、收货方、参考信息、柜号/托盘号/FBA 仓编号/入仓码/FBA 货件编号/跟踪编号/箱数及合计 | 对应 C08 的 FBA 场景。样张备注要求随派送方式取承运商,部分字段留空;这些是待确认的填表规则,不能直接覆盖现有实现 |
|
| T07 | [FBA 仓 BOL](FBA仓-BOL.xlsx) | 发货方、承运商、收货方、参考信息、柜号/托盘号/FBA 仓编号/入仓码/FBA 货件编号/跟踪编号/箱数及合计 | 对应 C08 的 FBA 场景。样张备注要求随派送方式取承运商,部分字段留空;这些是待确认的填表规则,不能直接覆盖现有实现 |
|
||||||
|
|||||||
Reference in New Issue
Block a user