61 KiB
Admin 海外仓样式核对记录
范围与依据
本轮用户确认继续“海外仓”模块。范围以 adminNavigation.ts 的 overseas-inventory 分组为准,按当前公开菜单、对应独立详情和实际调用的作业弹框逐项核对;当前分组包含11个菜单,废弃单和海外库位管理均单独登记。客户服务、海外业务、隐藏产品库和旧箱号页面不在范围内。
视觉采用 Admin 高密度界面规范,保留当前路由、字段、权限、服务端状态资格及操作承载方式。原型入口为 悦/货代SAAS平台后台/prototype-src/modules/03-overseas-warehouse.html;入库、出库、换标、托盘详情分别见 706、714、720、726 行,尾程列表/详情见 894/927 行,库存详情/流水见 974/1022 行。当前真实业务契约优先于历史原型占位。
修改前逐操作矩阵
页面文件均相对 apps/admin-web/src/modules/overseas-warehouse/。原型未覆盖的新操作保留现有承载方式,不新增业务流程。
| 菜单/入口 | 操作及源码证据 | 当前承载与尺寸 | 本轮结论 |
|---|---|---|---|
| 尾程订单 | LastMileOrdersView 查询、导出、查看、更多;LastMileOrderDetailView |
独立详情;基本/货物/计划/费用/日志页签 | 纯文字行内按钮、彩色页签、连续信息表、同行返回 |
| 尾程订单 | transferOpen、inboundPlanOpen |
转仓默认宽度、入库计划 720px 居中框 | 保留确认、候选、版本,接入弹框密度 |
| 尾程订单 | containerConvertOpen、containerDetailOpen、receivingWarehouseOpen |
预览 1240px、柜详情 1120px、接柜仓 600px | 保留逐柜预览/阻断及当前隐藏入口,不恢复隐藏菜单 |
| 尾程订单 | holdOpen、manualNodesOpen |
暂扣 620px、节点 700px | 保留原因、计费、节点原子提交,紧凑表单 |
| 尾程订单 | WarehouseTransferReviewDialog |
转运审核 920px | 保留审核/驳回、货物与打托实测、按钮资格 |
| 尾程详情 | feeDialogOpen |
新增费用 720px | 保留金额/币种/保存流程 |
| 入库单 | InboundOrdersView 查看、编辑计划、预约;InboundOrderDetailView |
独立详情;预约 1080px;计划编辑默认框 | 保留只读费用空态、预约模式,统一按钮与描述表 |
| 入库单 | SmartDispatchDialog |
1800px 三栏作业框;车型选择 360px | 保留拖拽、锁定、容量、超重与预排车;只压缩普通控件 |
| 排车列表 | DispatchesView 查看、BOL、更多、取消;DispatchDetailView |
独立详情;PDF 原打印流程;取消确认框 | 保留返回目标、直接操作及危险确认 |
| 排车列表 | transferOpen、editOpen、removePallet |
转派送 1120px;编辑 900px;移除确认框 | 保留费用/箱唛/托盘事实,描边行内操作 |
| 出库单 | OutboundsView 新建、查看、取消;OutboundDetailView |
新建 1320px;独立详情;取消原因框 | 保留一件代发/退货两模式、选择表、PDA 提交 |
| 派送单列表 | DeliveryOrdersView 查看、编辑状态、标记退货 |
独立详情;状态 520px;退货 720px | 保留原出库明细可退数量与去向;统一按钮 |
| 派送详情 | DeliveryOrderDetailView 四页签 |
订单/SKU/费用/操作,内容在页签内 | 彩色页签且所有正文保持可见,去重复正文标题 |
| 派送单资料 | DeliveryDocumentsDialog 上传、替换、删除、下载、保存、重新加载确认 |
1040px;关闭放弃未保存修改 | 保留文件生命周期,正文单一滚动区 |
| 换标单 | RelabelOrdersView 新增、审核、查看 |
760px 表单;独立详情 | 保留创建与审核模式、状态候选与必填字段 |
| 换标详情 | RelabelOrderDetailView 完工证据、总 PDF、明细 PDF 上传/预览 |
连续详情、预览 900px | 保留 PDF 物理预览尺寸与绑定数据,紧凑文件行 |
| 托盘管理 | PalletsView 汇总、新增、编辑、查看;PalletDetailView |
760px 表单;独立详情 | 汇总改紧凑行;保留仓库编辑限制 |
| 库存管理 | InventoryView 汇总、查看、导出;InventoryDetailView |
独立详情,库位/托盘箱号/流水表 | 连续汇总、信息表;不改变库存口径 |
| 库存流水 | InventoryTransactionsView 导出、返回、关联数据 |
列表深链;共享关联框 1060px | 只为本轮调用显式接入共享框,保留分区域只读权限 |
| 退货库存管理 | ReturnInventoryManagementView mode=inventory |
库存/流水页签、查询、分页 | 两页签保留各自数据和查询模式 |
| 退货箱号管理 | ReturnInventoryManagementView mode=cartons 查看、箱唛打印 |
详情 1080px;现有 HTML 打印 | 统一详情按钮/信息表,不修改打印内容或尺寸 |
共享边界和验收
OverseasDetailShell、OverseasReadOnlyDetail、InboundCodeRelationshipDialog显式dense接入;默认调用保持原样。- 公共字号、间距、按钮、页签和键值表只使用公共密度变量与类;模块仅保留业务布局与作业区尺寸。
- 最终全量
pnpm test --maxWorkers=4:1,927 项通过;pnpm typecheck、pnpm build通过;索引合同 1,050 项通过。新增合同核对 10 个导航入口、两种退货模式、详情祖先样式、Teleport 接入和共享组件关闭状态。 - 尾程与派送详情的
density-contained-tabs保留所有页签正文;智能排车将原操作按钮移入固定 footer 插槽,保留预排车事件与原三栏作业区。 - 页面事件、请求和状态门禁保持原有业务逻辑;本轮没有部署或修改环境数据。复核修正托盘标题的内部 ID 回退,出库仓库名称仅采用同仓关联派送返回的名称;缺失或关联不一致时显示“—”。托盘 DTO 目前未返回库位编码,详情保留空值,不展示
locationId。 - 托盘汇总移除与页面
gap叠加的底部间距;删除已被公共按钮组接管的局部间距及空样式规则。 - 默认高并发全量回归出现分散用例的偶发失败;失败项定向复跑通过,随后在不修改断言或超时的情况下限制为 4 并发,全量通过。托盘加载/失败时不展示内部 ID、出库仓库名称匹配/缺失/不一致均有组件回归证据。
- 本地 5173 端口的 Vite 服务进程指向当前
chongchong-global/apps/admin-web工作区;这只证明服务路径,不代替页面视觉证据。 - 全部 10 个菜单及详情/弹框均 待人工截图确认,验收为 1920×1080、浏览器缩放 100%。
用户截图复核修正
用户提供尾程详情与国内订单详情截图后,确认上一轮仅接入密度变量不足以达到样板一致:尾程存在重复页头标签、缺少业务摘要、自定义绿色状态边框、页签首项贴边且选中底色缺失、基本信息被两个标题拆断。截图证据为本轮附件 f76bcf5f(尾程)与 151a1d06(国内样板)。
| 操作 | 样板及现状 | 本次修正 |
|---|---|---|
| 尾程详情页头 | 国内为返回列表、业务编号、状态;尾程额外展示页面标题和编号标签 | 共用页头排版,仅保留业务编号;复制功能缩为轻量图标 |
| 状态 | 国内使用带圆点的 StatusBadge;尾程将全部已接入状态画成绿色 | 使用同一状态徽标,待分配按待办语义展示 |
| 概览 | 国内摘要位于标题和页签之间;尾程没有 | 展示客户、海外仓、箱数、托数、体积和最近更新,均取当前订单事实 |
| 页签 | 原生与 Element 两套样式存在实际差异 | 共用选中底色、字号、内边距、下划线,保留 Element 键盘切换及五页签正文 |
| 基本信息 | 国内连续键值表;尾程两个标题与两个表 | 保留全部字段顺序,合并为连续表;长备注按两组字段宽度展示 |
上述截图证明原版本存在差异,不作为修正后视觉通过的证据。
- 按本轮补充要求复核操作按钮:尾程订单、排车按当前行权限和状态统计实际显示操作,3 个及以下全部直显,超过 3 个才出现“更多”;直接操作优先保留查看、编辑/计划、打印。其余海外仓菜单操作列最多 3 个,继续直接显示。
本次截图修正的验证结果
- 新增尾程详情组件回归:单一业务标题、待分配状态语义、紧凑复制、实际摘要(含零箱数)、19 个基本字段、长备注、返回路由与 5 个页签可达。
- 新增尾程/排车权限组合回归:1—3 个操作直接显示,4—5 个操作才显示“更多”,并保留高频操作。公共样式合同校验国内原生与海外 Element 页签共用同一组外观规则。
- 全量执行 251 个测试文件、1,940 项:1,938 项首轮通过;另两项是旧的 230px 列宽及单一标题类名断言,按新规则更新后,其所属两个测试文件定向复跑全部通过。类型检查、生产构建及差异空白检查通过。
- 修正后仍待人工页面截图核对;本次代码与组件验证不作为浏览器视觉验收通过的依据。
折叠按钮文字修正
- 用户截图 f21098e6 确认折叠入口只展示省略号图标。尾程订单、排车列表移除可见“更多”文字,保留悬停提示和无障碍名称;超过 3 个操作才折叠的判断保持不变。
- 本次折叠按钮修正:全量 1,940 项测试、类型检查与生产构建通过。
新建出库单搜索、批量选择与分页(2026-09-15)
依据用户截图 codex-clipboard-6a1295e8-ae69-44de-86bd-a0dd22446396.png,仅调整 OutboundsView 的新建弹窗:
| 操作 | 截图现状 | 修正 |
|---|---|---|
| 仓库选择 | 下拉框的搜索能力不明显 | 保留可搜索下拉,提示输入名称/编码;选项同时展示名称与编码,可清空重选 |
| 订单搜索 | 已有关键词查询 | 保留订单号、入库单号、客户、托盘号、SKU、品名查询,增加搜索图标和无障碍名称;输入后查询或回车生效 |
| 批量选择 | 只有逐行复选框 | 表头全选本页;取消本页仅影响本页,翻页保留选择。按用户后续截图要求移除独立“全选筛选结果/清空选择”按钮行,已选总数并入分页左侧 |
| 客户/仓库限制 | 提示仅提及同一仓库,但接口还要求单一客户 | 保留同一客户、同一仓库提交限制;跨客户勾选后明确提示,用户可取消勾选并按客户查询 |
| 分页 | 每页条数文字不可见;内容过长时分页靠近弹窗底部 | 收窄表单全宽选择器范围,分页条数下拉固定 128px;增加每页 50 条、当前/总页数、跳页;条数变化回到第一页 |
| 长列表 | 增加每页条数会拉长整个弹窗 | 候选表格内部滚动,最大高度 360px;分页可换行,退货分支的分页条数宽度同步修正 |
后续截图 codex-clipboard-1adadeb3-9d55-4c41-81c1-d6dafba87293.png 确认搜索与批量按钮占行过多:海外仓搜索(280px)和一件代发订单搜索及查询/重置(640px)同排,移除独立批量按钮行,已选数并入分页左侧。普通说明收为单行文字,跨客户警告仍保留,备注默认一行并按输入自动增高至三行。
已增加真实组件回归覆盖分页选择、筛选后跨页勾选、半选状态、每页条数切换、仓库变更清空选择、提交明细数量以及多客户提交门禁。仅使用测试 Mock 验证提交,无真实出库单创建或 PDA 推送。修正后视觉仍待 1920×1080、100% 截图确认。
统一弹窗整理:尾程订单主窗口(2026-10-20)
依据当前统一弹窗样板、浅色背景、无左侧色条和连续编辑表;当前入口为尾程订单列表、独立详情及列表调用的WarehouseTransferReviewDialog。截图编号唯一维护在跨模块清单,本组为279—309。最近指引与旧样式矩阵中的转运审核尺寸不一致时,按当前实际420px简短确认保留,只提交APPROVE,不恢复旧详细审核或新增驳回功能。
| 操作 / 状态 | 当前承载与尺寸 | 本组处理 | 保留边界 |
|---|---|---|---|
| 转仓 | AppDialog,默认560px | 票数标题、连续FBA/备注、全屏 | 公共ACTIVE FBA仓、空态/错误、原选择与转仓请求 |
| 按柜生成与恢复资源 | AppDialog,1240px | 连续选择、浅绿服务端汇总、浅蓝分组、结果表、全屏 | 托数/阻断/快照及原请求重试、完整结果和原确认门禁 |
| 单票入库计划 | AppDialog,720px | 冻结资料文字、浅黄连续登记、全屏 | 原托数约束、一件代发固定托数、开关/备注、版本与幂等键 |
| 暂扣 / 解除 | AppDialog,620px | 单号标题、连续状态/计费/原因、全屏 | 原开放状态、原因、0版本和原请求 |
| 人工节点 | AppDialog,700px | 单号标题、八行连续时间表、全屏 | 全部8项、0版本、原警告及完整提交 |
| 换标退回重做 | AppDialog,620px | 换标号标题、连续单号/原因、全屏 | 原应用候选、复核任务版本、原因及幂等键 |
| 仓储转运审核 | AppDialog,420px,align-center | 单号标题、浅蓝客户和确认后果 | 原返回/通过、无详情请求、原客户范围及提交锁定 |
| 详情新增费用 | AppDialog,720px | 单号标题、连续费用登记、全屏 | 原应收/应付、USD/CNY、供应商、期间、数量与完整载荷 |
| 合托、废弃/退货/贴标审核及换标确认 | 原ElMessageBox | 业务单号/勾选票数标题 | 原通过/驳回/取消/关闭分支、原因校验、权限与请求 |
原隐藏柜子详情及接柜仓修改窗口保留,不恢复隐藏页签;旧隐藏工作台样式未借本轮扩大处理。原单票/按柜命令与服务端事实、版本、幂等、未知结果及资源恢复逻辑不变。普通来源说明改为InlineHelp;清关后不可更改、固定托数、人工节点覆盖、阻断与资源未确认等提示保留可见。节点表和按柜分组取消内部纵向限高,正文承担主要滚动;横向业务列宽保留。全部写入只以本地Mock验证,不执行真实计划、库存、节点、审核或费用写入。
详情内WarehouseTransferFulfillmentPanel库存分配、WarehouseTransferReceiptPanel签收箱号/增加预报/箱内清点三个子窗口在下节接续;其余海外仓正式菜单尚待整理,本组不视为整个海外仓完成。
自动检查:12个文件、211项定向检查通过;类型检查与构建通过;全量432个文件、3796项测试通过。均通过统一local-check入口串行执行,沿用用户本轮授权的Node 6GB堆上限。冻结的30项源码、测试、共享组件、声明和构建输入前后哈希一致;生成声明与依赖/构建配置未改变,git diff --check通过。主清单1—309号连续且无重复。回归修正了费用标题误传订单对象和计费单位显式disabled覆盖表单保存锁定的问题;原费用载荷不变。
仅完成本地实现与自动检查,未提交、推送、部署或写入测试业务数据;279—309号视觉待人工1920×1080、100%缩放截图确认。
统一弹窗整理:转运分配与签收子窗口(2026-10-20)
沿尾程独立详情的实际import进入WarehouseTransferFulfillmentPanel和WarehouseTransferReceiptPanel;同票出库/目标仓实收仍由WarehouseTransferMovementPanel原页面内操作承担,本批不改变承载方式。截图编号310—321唯一维护在跨模块清单。
| 操作 / 状态 | 当前承载与尺寸 | 本组处理 | 保留边界 |
|---|---|---|---|
| 库存来源分配 | AppDialog,1320px | 转运号标题、浅绿数量核对、浅蓝完整候选表、全屏 | 原客户/库存权限、可分配箱数、选择总量、来源阻断、冻结原请求与明确拒绝后重新选择 |
| 签收箱号明细 | AppDialog,1120px | 转运号标题、已清点箱汇总、连续箱号表、全屏 | 只统计COUNTED箱,原托盘/箱唛/SKU/尺寸/重量/体积和箱内入口 |
| 增加预报箱数 | AppDialog,520px | 原箱数与增加后核对、浅黄连续表单、固定底栏、全屏、失败诊断与输入保留 | 原客户/单号、开窗箱数快照、expectedPackageCount及最终packageCount;正整数与既有5000箱上限同时约束按钮和提交入口 |
| 箱内清点明细 | AppDialog,820px | 箱唛标题、只读箱唛/清点时间、浅蓝多SKU实收、直接展示差异原因、全屏 | 原混箱SKU、件数与品名;子窗口关闭后保留箱号父窗口和其全屏状态 |
三个弹窗内DataTable显式以空max-height取消其默认纵向限高,由弹窗正文承担主滚动;长字段仍复用DataTable的默认单行省略与悬停完整文本,横向列宽不变。未将预报箱视为实收,也未改动SKU件数、测量汇总、打印入口或后台请求格式。增加预报的普通说明收进InlineHelp,失败原因及requestId等诊断保留可见。保存时锁定表单、底栏和关闭;切换客户或来源单号时关闭旧窗口,迟到响应不更新新票或展示旧错误;取消后重开恢复新增1箱。
自动检查:12个文件、204项定向检查、类型检查与构建均通过;全量432个文件、3808项测试通过。均经统一local-check入口串行执行,沿用用户本轮授权的Node 6GB堆上限。31项冻结源码、测试、共享组件、声明与构建输入前后哈希一致;业务API文件、生成声明、依赖和构建配置未改变;git diff --check通过。主截图清单1—321号连续且无重复。原库存分配脚本仅增加公共样式导入,分配、原请求重试和明确拒绝后的重新选择逻辑保持原样。
本批只以本地Mock验证分配、重试和增加预报,未执行真实库存/箱唛/预报写入,也未生成真实打印资料;未提交、推送或部署。310—321号视觉待人工1920×1080、100%缩放截图确认。海外入库单的预约、计划编辑和托盘移库弹窗在下节接续,其余海外仓正式菜单仍待整理。
统一弹窗整理:海外入库单预约计划编辑与托盘移库(2026-10-20)
实际入口为InboundOrdersView两个AppDialog、显式continuous的FbaAppointmentFields,以及InboundOrderDetailView的移库AppDialog。编号322—336唯一维护在跨模块截图清单。列表及独立详情、智能排车入口、同接仓点/同FBA选择与多批预约跳转保持原样;本批不代表智能排车及其子窗口已整理完成。
| 操作 / 状态 | 原承载与尺寸 | 本组处理 | 保留边界 |
|---|---|---|---|
| 预约 / 编辑 / 只读预约 | AppDialog,1080px | 数量/FBA浅绿核对、系统约号/时区文字、浅黄连续登记、业务号标题和全屏 | 原PENDING/SUCCESS/FAILED/CANCELLED、外部约号、计划与确认起止时间、补充时段、重叠时差清空、必填原因和原完整请求 |
| 原批次已替代或只读权限 | 同预约窗口 | 原替代预约号直接警示、真实表单禁用 | 原列表只读、取消/替代批次不可写;原预约状态和替代关系不变 |
| 预约结果未确认 | 同预约窗口 | 弹窗内诊断、原请求重试和字段冻结 | 原pendingAppointment载荷、版本、幂等键与关闭/路由守卫;明确拒绝后可重新填写的原分支不变 |
| 编辑入库单 | 默认560px AppDialog | 单号/版本文字、连续目的仓选择、全屏、读取/保存锁定和错误诊断 | 原平台候选、客户范围、目的仓ID/编码/名称与版本0完整提交;候选失败仍关闭窗口并保留列表错误 |
| 托盘移库 | AppDialog,560px | 来源单/托盘文字、浅黄连续目标/原因、全屏、候选空态/错误/重试、保存锁定与诊断 | 原仓库范围、普通/A0过滤、当前托盘版本、业务码及移库载荷;原服务端canMove阻断仍留窗,不作为成功刷新 |
共享FbaAppointmentFields只为本列表的continuous调用新增布局,预约工作台等已有消费者保留默认结构;全部原模型字段均保留。本地调整不改变预约确认口径、时区/DST解析、API路径或服务端载荷。移库原先用真假值禁用了合法版本0,现区分版本0和未返回版本;缺失版本或托盘号不可操作。移库保存增加重复提交门禁并锁定原输入,候选读取失败与服务端错误在窗口内保留诊断;每次移库调用原有幂等键生成方式保持不变,本批不另行设计移库命令恢复协议。
自动检查:16个文件、181项定向检查、类型检查与构建通过;全量433个文件、3825项测试通过。均经统一local-check入口串行执行,沿用本轮授权的Node 6GB堆上限。38项冻结源码、共享字段直接消费者、测试、声明与构建输入前后哈希一致;预约/计划/库位API、appointmentForm载荷转换、生成声明、依赖及构建配置未改变;git diff --check通过。连续分支与原字段集合对比为10项且无差异;实际5个预约工作台消费者均保留默认布局并完成定向回归。主截图清单1—336号连续、无重复。
仅进行本地Mock验证,未创建真实预约、修改计划、移动库存、提交、推送或部署。322—336号视觉待人工1920×1080、100%缩放截图确认。入库单实际引用的SmartDispatchDialog新建排车作业窗口及资源字段在下节接续;其余海外仓和Admin模块仍待整理。
统一弹窗整理:新建排车与资源登记(2026-10-20)
从入库单及排车列表实际引用的SmartDispatchDialog进入,直接复用的DispatchResourceFields另有DispatchWorkflowDialog消费者;本批仅对新建排车显式启用连续资源登记,不改变后者默认布局。当前1800px AppDialog、先选货/先建空单、候选与装车组双栏、原版本化草稿命令及真实排车核对均保留。
| 当前操作 / 承载 | 本批整理目标 | 保留边界 |
|---|---|---|
| 建单方式、起运仓、分组时间与备注 | 浅黄连续表单、原生标题与全屏、装车组上下文 | 原同仓、按组独立settings、空单与整车分支 |
| 车辆/司机档案及本趟临时资源 | 显式连续资源表、完整字段与禁用反馈 | 档案权限/搜索、实际容量、证照/任务结束、本趟资料不建档案 |
| 草稿恢复、新建/释放、装车组增删 | 浅绿草稿汇总与连续分组 | 原token、版本、容量15/30、来源锁定及未知结果恢复 |
| 货物查询、仓库分类和来源明细 | 浅蓝候选、长文本省略、完整来源组展开、正文主滚动 | 原查询条件、完整候选、整组资格、全部真实来源与加入/移除 |
| 提交/未知结果/明确拒绝/读取失败 | 原固定底栏、可见阻断与诊断、原请求重试 | 原会话内请求、幂等键、响应身份/版本和整车核对,不重造协议 |
实施结果:新建排车启用原生全屏,设置与车辆司机分成浅黄连续表,草稿管理和装车组采用浅绿分区,候选采用浅蓝分区。保留1800px和候选/分组双栏;移除候选表420px纵向限高,由弹窗正文承担主要滚动,明细列宽及横向滚动保留。普通长列使用原生溢出提示,业务引用和托盘号使用LineClampText;完整来源组可展开查看全部来源,选取资格和整组请求不变。外配仅本趟、空单不可核平/装车/发车、未知结果冻结和明确拒绝后的重新核对仍直接显示。
共享DispatchResourceFields新增显式continuous分支,默认消费者DispatchWorkflowDialog布局保持不变;档案和外配的全部原绑定、档案权限、实际容量、任务结束与证照字段保留,未生成假档案或按计划托位推算车辆容量。初次生成组配置时,原逻辑直接返回赋值表达式的原始对象,资源切换后可能出现界面仍有车牌、实际配置已为空的情况。现先存入响应式settings再返回其代理对象;真实组件回归验证车牌、容量、司机及分组切换后的完整载荷,保留原版本、幂等、转换和恢复协议。未选择装车组时,先选货模式的车辆/司机/时间/备注保持禁用,建单方式及起运仓仍可设置;空单模式不受装车组前置限制,避免资料落入未提交的占位组配置。
自动检查:16个文件、242项定向检查、类型检查与构建通过;全量434个文件、3839项测试通过。均经统一local-check入口串行执行,沿用用户授权的Node 6GB堆上限。42项冻结源码、直接消费者、测试、共享组件、API/模型/恢复输入、声明与构建输入前后哈希一致。除已说明的组配置初始化修复及样式导入/显式属性外,两组件脚本与本批修改前一致;资源连续分支包含全部14项原绑定。原有API、模型和恢复协议的工作区修改均保留,本批未改动;生成声明、依赖及构建配置未产生改动。git diff --check通过,主截图清单1—351号连续且无重复。
截图337—351唯一维护在跨模块清单,视觉待人工1920×1080、100%缩放截图确认。本地Mock覆盖先建空单、档案/临时资源、组配置保留、整组来源展开、未知结果原请求、明确拒绝重选及已证明转换后的详情重读;未真实创建或转换草稿、排车、档案及业务数据,未提交、推送或部署。下一批接续排车详情的维护/审核/移货/卸货顺序等动作窗口及附件预览,其余Admin模块仍待整理。
统一弹窗整理:排车详情操作与取证附件(2026-10-20)
实际操作承载为DispatchWorkflowDialog,直接引用DispatchResourceFields、DispatchArrangeFields和DispatchEvidenceFiles;后者也供DispatchDetailView只读取证使用。保留560/760/1120px动作尺寸及900px图片预览,不改变详情路由、服务器Gate、版本化命令、费用覆盖、文件鉴权或恢复协议。
| 操作 / 原承载 | 本组整理目标 | 保留边界 |
|---|---|---|
| 维护车辆、司机、时间及备注 | 业务号标题、浅黄连续登记、共享资源显式接入、全屏 | 原资源档案/外配、证据引用、完整EDIT载荷 |
| 调度/理货审核及简单确认 | 浅蓝事实、浅黄结果/原因或备注、可见业务警示 | 原两级审核、驳回必填、取消/回退/发车及服务端资格 |
| 添加/移除货物、卸货顺序 | 浅蓝完整明细、来源展开、原生长文本提示、正文主滚动 | 真实来源组、逐项移货Gate、已扫码限制、既有全部站点及调整原因 |
| 装车完成与依据 | 实测连续表、逐托证据表、全屏 | PDA核平、真实实测与参考区分、manifest及卸货顺序 |
| 整车分组派送 | 各组连续安排、完整货物/外接报价/原费覆盖及新增费用 | 原客户/目的地归属、覆盖哈希、未覆盖正数费用及买约卖家必填 |
| 本趟附件与图片预览 | 操作在前的紧凑附件表、只读/上传资格、全屏图片框 | 原字符串文件ID、上传/替换/移除引用、鉴权Blob/PDF、迟到响应及URL释放 |
| 上传、未确认结果与错误 | 固定底栏与关闭锁定、原错误和原请求重试 | 原证据busy、未知结果冻结、明确拒绝后重新核对 |
实施结果:动作窗口标题携带原排车业务号,车辆/司机与计划时间、操作原因、分组派送均采用浅黄连续表;原审核资料、完整货物来源、逐托测量依据及附件采用浅蓝分区,无左色条。1120/760px窗口开放原生全屏,560px简单确认保留紧凑尺寸,底栏与关闭在提交和上传期间锁定。移除货物420px、添加候选380px、派送分组货物240px的表内纵向限高取消,由弹窗正文承担主滚动;列宽与横向滚动保留。原生长列溢出提示和LineClampText承载完整文本;完整来源组可展开全部来源,实测与参考依据直接区分。
DispatchArrangeFields脚本及费用覆盖算法保持原样,派送、原费用、外接报价与新增费用的全部原绑定和业务字段保留;两级审核、真实dispatchItemId、全部既有卸货点、合法版本0及长版本、manifest、费用哈希和原命令恢复协议不变。原服务器资格与前端权限同时决定表单禁用,提交校验继续保留。本地回归发现失败操作关闭重开后,重新读取会用服务端旧资料覆盖当前实例已提交的输入,而重试仍使用原请求;现仅按当前实例记录的幂等键和原业务号保留该请求对应的表单与诊断。新实例恢复仍读取当前事实,明确拒绝后重新核对仍先清除被拒请求再读取,不新增存储或恢复协议。
DispatchEvidenceFiles保留原本车/附件类型鉴权、字符串引用、上传校验、Blob/PDF读取、迟到响应隔离及URL释放;附件表将操作放前,失败诊断可重新读取,原上传与主单引用保存提示直接显示。图片预览保留900px与图片72vh适配上限并增加全屏;此上限只控制图片适配,不建立嵌套滚动。DispatchDetailView只读取证直接消费者一并回归,未添加上传资格。
自动检查:17个文件、251项定向检查、类型检查与构建通过;全量435个文件、3855项测试通过。均经统一local-check入口串行执行,沿用用户授权的Node 6GB堆上限。52项冻结源码、直接消费者、API/模型/恢复输入、测试、共享组件、生成声明与构建输入前后哈希一致;生成声明、依赖与构建配置未改变,git diff --check通过。三个组件脚本扣除已列明的样式/显示组件导入和当前实例请求标记后,与本批修改前哈希一致;派送组件13项原模型绑定无缺失。原有选货分组/API/模型工作区修改保持原样,本批未改动。主截图清单1—375号连续且无重复。
截图352—375唯一维护在跨模块清单,视觉待人工1920×1080、100%缩放截图确认。本批仅使用本地Mock,未真实审核、移货、发车、创建派送/费用、上传业务附件或写入测试数据;未提交、推送或部署。其他海外仓及Admin模块仍待继续整理。
统一弹窗整理:新建出库三种模式(2026-10-20)
当前实际入口为OutboundsView的1760px上限AppDialog,保留独立出库详情及列表/详情原取消原因提示框;本批不改动派送列表、资料窗口和详情路由。
| 操作 / 当前承载 | 本组目标 | 保留边界 |
|---|---|---|
| 一件代发出库 | 浅黄连续类型/仓库/查询、浅蓝完整候选、正文主滚动、原全屏 | inventoryPositionId+SKU跨页选择、本页全选、同客户同仓、实际可出箱数和三项测量 |
| 退货出库 | 浅黄连续客户/收件/仓库/退货单、浅蓝SKU与实物箱双栏、原分页 | 原整包裹/整箱/整托、原箱内SKU与数量、原退货来源,不引入部分SKU直接出库 |
| 仓储转运目的地绑定 | 浅蓝真实转运单、浅黄FBA/私人仓连续信息 | 按客户+转运单合并托盘、无目的地资格、全部真实绑定对象及原目的地载荷 |
| 候选/资源读取、保存、失败与重开 | 锁定读取/提交期间的编辑和关闭、错误诊断与重读、保留失败输入 | 原读取接口、客户范围、原写请求与幂等键生成方式;新会话重新初始化 |
| 取消出库关联核对 | 保留原ElMessageBox承载与admin-density-confirm | 原取消原因、费用处理警示、关联排车释放及权限,不将取消视为库存自动回滚 |
实施结果:保留当前1760px上限、原生全屏、固定底栏及三种真实模式;类型、仓库与订单查询、收件/退货来源、FBA/私人仓目的地、备注采用浅黄连续表。原一件代发候选及转运单采用浅蓝分区,退货SKU与实物箱保留双栏和各自分页,全部原候选列及18项模型绑定保留。取消360/380/400px表内纵向限高和旧候选列表300px限高,由弹窗正文承担主滚动;保留横向滚动、每页条数128px及原窄屏规则。长客户/品名、业务号、箱内SKU和托盘继续使用原生溢出提示;无客户名称的转运单显示“客户名称待补充”,不回退内部ID。
读取/保存期间,表单、选择框、分页、提交和关闭均锁定;提交方法独立检查当前开窗、权限、读取/保存状态及候选失败,防止重复调用或在来源读取失败时继续提交。基础资料及候选读取失败在弹窗内保留ApiErrorMeta诊断,可按原范围重读;创建失败保留当前输入与选择,由原提交入口重试。重新新建清空上一单备注、收件信息、退货来源和箱托方式,默认一件代发;失败留窗、切换全屏不清空当前输入。一件代发候选重读保留仍有对应键的选择;退货候选重读仍沿用原加载逻辑重新核对整箱选择。
原创建校验与请求正文逐字核对保持一致:按库存位置+SKU出全部可用箱数,同客户同海外仓;退货仍按原物理包裹/箱号或托盘,不引入部分SKU载荷;转运仍按客户+转运单聚合并绑定目的地,不直接创建出库。原接口路径、客户作用域、幂等键生成方式与取消处理协议未改变,本批不新增未知结果恢复协议。列表及详情取消确认仅关联核对,保留原承载、费用警示、原排车释放和权限逻辑。
自动检查:10个文件、135项定向检查、类型检查与最终构建通过;全量436个文件、3865项测试通过。均经统一local-check入口串行执行,沿用用户授权的Node 6GB堆上限。32项冻结源码、测试、共享组件、原API与模型、生成声明及构建输入前后哈希一致;原出库/退货API、独立出库详情、取消确认、依赖与生成声明未改变,git diff --check通过。布局合同改为核对实际消费的公共全宽控件规则,原取消、权限、数量、跨页选择与实际请求断言均保留。主截图清单1—391号连续且无重复。
截图376—391唯一维护在跨模块清单,视觉待人工1920×1080、100%缩放截图确认;本批仅本地Mock验证,未创建真实出库/退货、绑定目的地、推送PDA、取消业务单据或部署。下一组接续派送状态、标记退货和资料管理,其他Admin模块仍待整理。
统一弹窗整理:派送状态退货与资料(2026-10-20)
| 操作 / 当前承载 | 本组目标 | 保留边界 |
|---|---|---|
| 编辑派送状态,520px AppDialog | 业务号标题、浅蓝只读事实、浅黄连续状态/备注、读取/保存锁定 | 最新版本0、服务端allowedActions、冲突重读、原取消须经出库提示 |
| 标记退货,720px AppDialog | 业务号标题、连续原因/去向/物流、来源表操作在前、全屏 | 原尾程主单、原出库明细与可退上限、原退货箱整箱、真实来源标识与原幂等请求 |
| 派送资料,1040px AppDialog | 业务号标题、浅绿摘要、连续BOL、三类浅蓝附件表、全屏 | 原只读/管理资格、每类20份/50MiB、上传/替换/删除草稿、保存版本/幂等、签收文件完成派送 |
| 资料重新加载确认 | 保留ElMessageBox与admin-density-confirm | 原未保存资料放弃确认、关闭丢弃草稿、重开读取真实快照 |
实施结果:520px状态窗口保留紧凑承载,标题携带派送业务号,当前状态/关联出库采用浅蓝普通文字,允许状态及备注采用浅黄连续表。读取/保存时锁定表单及关闭;版本冲突保留备注、禁用提交,原重读只保留最新仍允许的状态;最新已无可选状态时直接提示。720px退货窗口增加原生全屏,主单、原因、去向、物流采用连续表;原出库明细改为操作在前的来源/上限/箱数表,LineClampText承载完整业务来源,原箱固定1箱与整箱警示保留。读取失败可在原派送号/客户范围重新读取;提交失败仍由原入口重试同一载荷和幂等键。
1040px资料窗口增加原生全屏、浅绿资料摘要、连续BOL登记与三类浅蓝附件表;文件动作放前,长文件名使用LineClampText,上传时间、已保存/待保存状态仍完整显示。未保存文件继续不可下载,上传/替换/删除仍只改草稿,完整保存后生效;只读BOL采用普通文字,保留已保存文件下载。读取和上传/保存锁定关闭,读取失败摘要显示“资料未返回”,避免误示仍在读取。版本冲突保留草稿,重新加载继续使用原放弃未保存资料确认;关闭/重开继续读取服务端原三类快照。
两个组件的业务脚本扣除长文本显示组件导入后均与修改前逐字一致,原14项和2项模型绑定无缺失;状态版本0、allowedActions、尾程/来源归属、整数可退上限、原箱来源、每类20份/50MiB、文件上传/下载作用域、版本及幂等协议保持原样。原权限/数量/错误/请求断言保留,既有测试仅将弹窗选择器改为匹配携带业务号的标题前缀;未修改服务端契约、API路径或写入载荷。列表及独立详情承载保持原样。
自动检查:12个文件、160项定向检查、类型检查与最终构建通过;全量437个文件、3876项测试通过。均经统一local-check入口串行执行,沿用用户授权的Node 6GB堆上限。37项冻结源码、直接消费者、原API/来源模型、测试、共享组件、生成声明及构建输入前后哈希一致;原API、独立派送详情、依赖与生成声明未改变,git diff --check通过。主截图清单1—409号连续且无重复。
截图392—409唯一维护在跨模块清单,视觉待人工1920×1080、100%缩放截图确认;本批仅本地Mock验证,未真实修改状态、生成异常退货、上传业务文件、保存资料、提交、推送或部署。下一组接续换标单及实际引用的作业窗口,其他Admin模块仍待整理。
统一弹窗整理:换标新增审核与PDF(2026-10-20)
| 操作 / 当前承载 | 本组目标 | 保留边界 |
|---|---|---|
| 新增换标单,760px AppDialog | 连续基础/作业表、公共候选、全屏、处理中与失败反馈 | 客户及公共收货仓独立读取、必填、箱数/金额、原幂等键及创建载荷 |
| 审核换标单,同一760px窗口 | 原完整多SKU/数量普通文字、连续动作与备注、业务号标题 | 原审核资格、尾程审核分流、驳回原因及状态请求 |
| 作废、完工确认、退回重新贴标 | 保留ElMessageBox密度确认 | 原权限、状态、复核版本与PDA退回原因 |
| 总/明细PDF预览,900px AppDialog | 业务号、全屏、加载/错误重试、关闭释放URL | 原TOTAL/ITEM及明细标识、鉴权下载、原iframe72vh/760px适配 |
| PDF上传与箱唛映射 | 原PDF入口、权限禁用、操作在前、缺失仓码不显示内部ID | Controller上传使用relabel-order:create,下载使用list;原类型/50MB及请求保持 |
| 贴标文件共享下载表 | 仅将原下载操作列放前 | RelabelOrderDetailView与LastMileOrderDetailView两个直接消费者,原两列及文件分类/归属/下载不变 |
实施结果:新增/审核保留760px并增加原生全屏,新增采用自动编号文字、浅黄连续基础/作业/备注表;审核将原多SKU、新SKU逐项数量、箱数、关联订单、品名、货件号、要求及费用完整显示为浅蓝普通文字,只保留原动作和备注可编辑。19项原模型绑定无缺失,创建与审核的原验证/请求正文逐字一致。客户与公共收货仓继续独立读取,候选失败各自显示诊断与重读;新建/审核在读取或保存期间锁定编辑和关闭,失败留窗保留原字段与原创建幂等键。审核详情读取失败仍按原规则关闭并提示;合箱入口仍跳转原库存来源选择,不恢复旧本地合箱表单或把箱数当SKU数量。
原作废、完工确认和退回重新贴标继续使用密度ElMessageBox,提示携带业务号,真实确认/原因输入仍触发原业务请求;完工确认和退回动作增加互相禁用与处理门禁,避免等待结果时并发发起另一动作,原退回复核版本0及原因保留。详情PDF预览增加原生全屏、业务号/文件名标题、读取中与错误重读;保留900px、iframe的72vh/760px尺寸和PDF内部查看方式。关闭/切换业务号/卸载释放URL并忽略迟到预览响应;TOTAL/ITEM和明细标识保持原样。PDA完工照片仍沿原鉴权读取、浏览器页签及60秒URL释放流程,不改变承载。
上传入口和提交方法按现行Controller的relabel-order:create权限约束,预览下载保留list只读访问;原PDF校验、50MiB及上传接口保持不变,上传处理中防重复,失败在详情保留诊断,旧请求结果不覆盖另一业务号。箱唛映射表将原明细PDF动作放前,长文件名使用LineClampText;缺失FBA仓码显示“—”,不再回退内部仓ID。共享RelabelDocumentsPanel只重排原两列,脚本逐字未变;换标详情及尾程详情两个直接消费者均纳入回归,不增加原来省略的文件名字段或修改分类/下载规则。
自动检查:14个文件、147项定向检查、类型检查、最终构建通过;全量438个文件、3889项测试通过。均经统一local-check入口串行执行,沿用用户授权的Node 6GB堆上限。39项冻结源码、直接消费者、API、权限依据、测试、共享组件、生成声明及构建输入前后哈希一致;服务端Controller、API、依赖与生成声明未修改,git diff --check通过。
截图410—430唯一维护在跨模块清单,视觉待人工1920×1080、100%缩放截图确认。本批仅本地Mock验证,未创建/审核/作废真实换标、推进完工、退回PDA、上传业务文件、写入测试数据、提交、推送或部署。下一组接续海外仓托盘管理,其他Admin模块仍待整理。
统一弹窗整理:海外仓托盘新增与编辑(2026-10-20)
| 操作 / 当前承载 | 本组目标 | 保留边界 |
|---|---|---|
| 新增托盘,760px AppDialog | 一张浅黄连续资料表、横排标签、原生全屏 | 原8项字段、默认值、五种类型、三种状态、容积/价格精度、必填校验及创建载荷 |
| 编辑托盘,同一760px窗口 | 托盘编码标题、仓库普通文字、读取/保存锁定 | 原固定仓库、当前服务端版本含0、更新载荷及权限 |
| 编辑详情读取 / 失败 | 留在业务号窗口、诊断与同范围重读 | 原仓库与托盘字符串标识,失败不显示上次编辑资料、不允许提交 |
| 候选读取 / 失败 | 原候选来源、弹窗内错误与重读期间门禁 | 原公共收货仓和ACTIVE FBA仓;不按客户缩小候选、不新增候选协议 |
| 保存 / 失败 / 取消 | 防重复、失败保留、关闭重开默认值 | 原验证、完整请求、更新版本及关闭丢弃规则 |
| 单张打印与独立详情 | 沿用现有PDF下载和只读路由 | 不创建打印预览弹窗、不改模板、原仓库/托盘标识及下载URL释放 |
实施结果:760px弹窗增加原生全屏,原顶部标签/双列栅格改为横排120px标签与连续资料表;只使用共享浅黄录入背景,不增加左侧强调线和嵌套汇总。编码、类型、容积、采购价格、海外仓、FBA仓、状态、备注共8项模型绑定保留;编辑仓库直接展示名称和仓码,其余资料继续可编辑。原容积四位/价格两位、必填规则、备注500字上限保持;备注使用两行并显示字数。
编辑窗口先显示托盘业务号与读取状态,读取成功后才显示表单;失败保留本次对象并提供诊断和原仓库/托盘范围重读。候选来源与读取逻辑保持原样,原上下文失败同时出现在弹窗并阻止保存,重新读取时锁定关闭。读取、保存和候选重读过程中锁定编辑、关闭及再次打开;创建/编辑入口和保存方法核对原独立权限。保存失败留窗保留原输入,版本冲突不静默覆盖或改写旧请求版本。
原8项绑定、必填验证、payload构造与创建/更新请求、候选/列表读取、标签打印函数经修改前后逐字比对均保持;不修改API、权限码、模型、独立只读详情或服务端模板。单张打印继续使用现有鉴权PDF下载,不新增预览承载。
自动检查:8个文件、109项定向检查、类型检查、最终构建通过;全量439个文件、3898项测试通过。均经统一local-check入口串行执行,沿用用户授权的Node 6GB堆上限;29项冻结源码、直接依赖、原API/模型/权限、测试、生成声明及构建输入前后哈希一致,git diff --check通过。主截图清单1—440号连续、无重复。
截图431—440唯一维护在跨模块清单,视觉待人工1920×1080、100%缩放截图确认。本批只使用本地Mock,未创建或修改真实托盘、下载业务标签、写入测试数据、提交、推送或部署。下一组接续海外库位管理,其他Admin模块仍待整理。
统一弹窗整理:海外库位维护(2026-10-20)
| 操作 / 当前承载 | 本组目标 | 保留边界 |
|---|---|---|
| 新增 / 编辑,560px AppDialog | 连续录入、横排标签、原生全屏、固定仓库普通文字 | 公共收货仓、普通库位、原仓库及库位标识、原创建/更新接口 |
| 候选加载 / 保存 / 失败 | 明确加载和诊断、防重复、失败保留原输入 | 原候选与查询、关闭规则、原权限;不新增服务端接口 |
| 启用 / 停用,ElMessageBox | 原业务编码确认、统一密度与操作锁定 | 原NORMAL资格、A0/共享溢出与虚拟库位保护、原状态请求 |
| 删除,ElMessageBox | 停用且无托盘的普通库位确认、处理中和失败反馈 | 服务端禁止A0/虚拟库位和绑定托盘删除,前端不扩大为其他类型 |
实现前契约核对:现行LocationRequests.SaveRequest只接收locationCode、locationType、maxLoadKg、status、remark,没有库位名称;最大承重必须大于0。WarehouseResourceService的状态包含INACTIVE,不包含DISABLED,且禁止删除虚拟库位。原页面存在无保存字段的名称输入、INACTIVE编辑默认成ACTIVE及删除入口只判断DISABLED的问题;本组在弹窗收敛时按现行契约修正,不增加名称接口或修改服务端。托盘全量检查通过并核对冻结输入后才写入库位改动。
实施结果:560px新增/编辑增加原生全屏,统一浅黄连续单列表与110px横排标签,不再使用顶部标签及本地editor-grid外观。海外仓、库位编码、承重及备注4项实际可保存资料保留;移除没有保存接口的库位名称输入。编辑固定海外仓采用名称和仓码普通文字;标题携带原库位编码。取消后新建恢复原默认仓库、空编码/承重与备注,全屏不清空输入。
编辑INACTIVE库位保留停用状态,已停用筛选直接提交INACTIVE;最大承重增加有限正数校验、最小0.001,保留三位精度及kg单位。删除资格收敛为NORMAL、INACTIVE且无托盘,保留A0编码、共享溢出类型/标记和虚拟库位保护。启用/停用与删除仍采用原ElMessageBox,统一密度、业务编码及危险语义,原创建/更新/状态/删除API、完整业务载荷与原版本参数保持;不宣称服务端额外校验未实现的版本参数。
候选和列表错误采用原读取范围重试并显示诊断;候选失败在弹窗同时明确阻断保存。读取/保存锁定编辑及关闭,操作确认与命令执行期间锁定其他维护动作;失败保留表单或列表上下文、显示诊断,取消不发写请求。保存方法再次核对独立权限。页面不复制公共外观、无新增本地CSS,不改API、DTO、权限码、数据库或服务端。
自动检查:7个文件、113项定向检查、类型检查、最终构建通过;全量440个文件、3911项测试通过。均经统一local-check入口串行执行,沿用用户授权的Node 6GB堆上限。36项冻结源码、直接依赖、原API/模型/权限、测试、生成声明、构建输入及只读服务端契约依据前后哈希一致,git diff --check通过。主截图清单1—453号连续、无重复。
截图441—453唯一维护在跨模块清单,视觉待人工1920×1080、100%缩放截图确认。本批只使用本地Mock,未新增/编辑/启停/删除真实库位、写入测试数据、提交、推送或部署。下一组接续已注册的废弃单详情与审核窗口,其他Admin模块仍待整理。
统一弹窗整理:废弃单详情与审核(2026-10-20)
| 操作 / 当前承载 | 本组目标 | 保留边界 |
|---|---|---|
| 废弃单详情,920px AppDialog | 业务号标题、普通文字摘要、完整明细、原生全屏 | 原6项详情摘要、5列废弃明细及实际箱唛、只读资格 |
| 审核并推送PDA,ElMessageBox | 业务编码、统一密度、危险提示与处理中锁定 | 原PENDING_REVIEW与discardApprove权限、APPROVE请求及客户范围,不增加驳回/取消入口 |
| 现场照片缩略图 / 大图 | 原150px图片与原生大图查看、逐图加载/失败重试 | 原鉴权文件与客户范围、关闭/切换/卸载释放URL、迟到响应隔离 |
| 详情读取 / 失败 | 先显示本次业务号、明确加载和原范围重读 | 原详情接口及客户参数,失败不显示上次单据资料 |
| 客户候选 / 列表读取 | 候选及列表独立错误、原范围重读 | 原ACTIVE客户第1页200条与原筛选/分页请求,不新增候选协议 |
实现前已核对CargoDiscardController:照片下载要求discard:list及显式customerId,审核由服务端核对审批权限。详情cartonMarks来自各来源的真实所选箱唛;缺失时不得据此推断“全部库存”。本组保留原审核及PDA流程、API和原生图片查看,不新增业务动作或改库存扣减。
实施结果:原920px只读详情增加原生全屏与废弃单号标题,6项原摘要采用浅绿普通文字表,原5列废弃明细采用浅蓝分区;入仓码、SKU、品名和箱唛通过LineClampText单行省略并保留完整悬停及键盘内容。缺失箱唛显示“—”,不再推断全部库存;原状态流转记录以时间、状态、备注连续表承载,顺序及原展示内容保留,空照片和空流转分别明确提示。页面只维护摘要列宽、照片排列与150px业务图片面积,不复制公共外观或添加左侧强调条。
详情先显示本次业务号与读取状态,失败保留本次单据及客户范围重试,不复用上次资料。图片仍经原鉴权接口读取Blob、原生ElImage大图查看,保留源照片顺序、当前索引及150px缩略图;逐图失败显示诊断和同文件重试,缺少客户范围直接阻断,不向接口传undefined字符串。关闭/切换/卸载释放URL、清除状态并隔离迟到详情及照片响应;图片读取期间仍允许正常关闭,不新增独立图片弹窗。
审核仍使用原ElMessageBox和原APPROVE请求,原权限及PENDING_REVIEW双重资格在入口及确认后核对,确认正文包含废弃单号与推送PDA后果。确认和请求期间锁定其他操作及重复提交;失败保留列表并显示诊断,取消/关闭不发写请求。原6项摘要、列表请求构造和审批调用逐字核对保持;不增加驳回/取消业务动作、审批载荷、API、权限码或服务端变更。
客户候选和列表各自加载、错误诊断及原范围重读,客户读取失败不阻断其他列表条件;候选仍为原ACTIVE第1页200条。查询采用原字段/分页参数,旧查询响应不会覆盖新结果。列表操作显式采用公共文字操作样式,操作列保留首列固定并扩为180px容纳原两项动作;状态缺失显示“—”。
自动检查:8个文件、121项定向检查、类型检查、最终构建通过;全量441个文件、3925项测试通过。均经统一local-check入口串行执行,沿用用户授权的Node 6GB堆上限。45项冻结源码、直接依赖、原API/模型/权限、测试、生成声明、构建输入及只读服务端契约依据前后哈希一致,git diff --check通过。主截图清单1—469号连续、无重复。
截图454—469唯一维护在跨模块清单,视觉待人工1920×1080、100%缩放截图确认。本批只使用本地Mock,未审核真实废弃申请、推送PDA作业、下载真实业务照片、扣减库存、写入测试数据、提交、推送或部署。下一组接续退货库存/箱号及原合箱作业窗口,其他Admin模块仍待整理。
统一弹窗整理:退货库存合箱与箱号(2026-10-20)
| 操作 / 当前承载 | 本组目标 | 保留边界 |
|---|---|---|
| 创建合箱计划,1380px AppDialog | 连续基础/来源/备注表、原生全屏、正文单一滚动 | BOX整箱和SKU部分两模式、原物理箱唛+SKU数量绑定、原来源分页/过滤/上限与创建请求 |
| 合箱计划详情,1400px AppDialog | 普通文字摘要、来源/流向/完成时快照、原生全屏 | 仍读取原本页计划快照,不新增详情接口;原预计取出/剩余和实际完成数量、当前箱唛打印资格 |
| 退货箱号详情,1080px AppDialog | 业务箱唛标题、只读资料与合箱流水、全屏及读取失败重试 | 原11项箱号资料、换标实际/占用数量、箱内SKU、来源/目标和流向 |
| 计划审核 / 取消 | 原直接审核与ElMessageBox取消确认、处理中互锁 | 原状态资格、原请求与释放库存语义;不新增业务确认步骤 |
| 箱唛打印 | 保留现有浏览器HTML打印入口 | 原鉴权标签、opener隔离、服务端printableHtml及打印内容/尺寸,不生成第二套模板 |
实现前已核对PlatformReturnPackingPlanController和PlatformReturnInventoryController:创建/审核/取消要求退货库存列表权限和lastleg:inventory:manage;来源选择另要求退货箱号列表权限;箱号详情/标签要求退货箱号列表权限。本组补齐对应前端资格与只读状态,不改变服务端权限或库存流程。退货客户候选原有全分页、公共收货仓、来源分页与旧查询隔离继续保留。
实施结果:原1380px创建、1400px计划详情、1080px箱号详情均增加原生全屏,保留两个详情原无底栏承载。创建采用110px横排标签、浅黄基础/备注和浅蓝来源连续表,8项原模型绑定集合无缺失;BOX与SKU来源分别采用原选择方式,保留箱唛、来源退货单、载体、完整混箱SKU和逐物理箱+SKU数量。移除原260px内部纵向滚动与窗口resize覆盖,来源表头继续粘性定位,正文使用AppDialog单一滚动。两行备注保留1000字上限及原锁源/新箱/PDA箱规说明。
原来源分页、去重筛选、BOX包含任一SKU、SKU精确匹配、模式切换清空及数量归集函数逐字保持;增加正整数/可用上限校验和整数控件,不改原提交计算及API。原幂等键生成从每次提交移至本次打开或深链打开,失败重试保留原键和输入,关闭/成功后结束本次键;不新增HTTP协议或恢复流程。读取失败显示同范围诊断/重读,候选失败不误示空库存;客户与仓库仍由原allSettled入口加载,客户全分页和公共仓来源保留。来源关闭/切换/卸载隔离迟到结果并停止继续分页;提交期间锁定编辑与关闭,阻止重复提交。
计划详情保留原本页快照,不新增服务端详情接口。6项摘要改为浅绿普通文字,来源、流向和完成/计划明细采用同级连续分区;原计划来源/取出/剩余与完成箱计算函数逐字保持,完成时快照和当前可打印箱资格分开显示,原说明及箱规/重量/时间/操作员保留。打印当前箱唛操作列前置,已MERGED或清空的当前箱仍不可打印;无箱号列表权限时隐藏打印操作列。
箱号详情保留11项原资料、换标实际完成/占用数量、箱内SKU和合箱流水;摘要改为普通文字,业务号/中文品名使用LineClampText保留完整悬停与键盘内容,缺失合箱计划号显示“—”,不推断现场或历史流程。读取先显示本次箱唛,失败在原范围重试,不显示上次资料;关闭/卸载隔离迟到响应。原标签读取及popup.opener=null、原服务端HTML写入、focus/print正文逐字保持,不改变打印尺寸或模板;增加重复打印门禁和失败诊断。
原直接审核不增加确认步骤;取消仍使用原密度ElMessageBox,确认中携带计划号与释放来源库存后果。创建/审核/取消/来源/箱号及标签分别按当前Controller权限核对,管理动作互锁,失败保留表单或列表,取消不发写请求。四种主列表仍采用原查询/分页和独立偏好键,补充错误诊断及原范围重读,旧查询响应不覆盖新结果。原14项列表/业务测试全部保留,只为明确授权场景补入权限Mock,并将一处点到表格隐藏测量行的详情选择器改为真实箱唛行,增加业务箱唛请求断言。
自动检查:8个文件、127项最终定向检查、类型检查、最终构建通过;全量442个文件、3939项测试通过。均经统一local-check入口串行执行,沿用用户授权的Node 6GB堆上限。56项冻结源码、直接依赖、原API/模型/权限、测试、生成声明、构建输入及只读服务端契约依据前后哈希一致,git diff --check通过。主截图清单1—496号连续、无重复;另已只读核对ReturnInventoryService对同幂等键请求内容的hash校验,本组不改服务端协议。
截图470—496唯一维护在跨模块清单,视觉待人工1920×1080、100%缩放截图确认。本批只使用本地Mock,未创建/审核/取消真实合箱计划、打印真实箱唛、占用/释放库存、写入测试数据、提交、推送或部署。下一组补齐库存流水与国内入库共用的入仓码关联数据窗口,其他Admin模块仍待整理。
统一弹窗整理:库存与入库关联数据(2026-10-20)
| 操作 / 当前承载 | 本组目标 | 保留边界 |
|---|---|---|
| 国内入库单 / 海外库存流水 → 入仓码关联数据,1060px AppDialog | 两个实际入口显式dense、原生全屏、只读分区与长文本 | 原三个独立权限、原三个读取API与业务号,默认非dense样式保持 |
| 订单基础 / 装柜PDA / 海外库存 | 公共背景、连续普通文字、完整业务标识及库存数 | 原6项基础、6项装柜、客户/仓库、尾程单/计划/托盘和SKU库存,不显示内部ID |
| 空码 / 无权限 / 未找到 / 局部失败 | 原警示、局部空态与各分区诊断/重读 | 仍只查当前允许的读模型,原重试重读全部允许分区,不新增接口或权限 |
| 关闭 / 切换 / 卸载 | 原可在读取中关闭、迟到响应隔离、清理读取状态 | 不改readonly承载及请求作用域,修正空码/无权限提前返回时旧loading未清理的问题 |
实际直接调用方仅InboundOrdersView与InventoryTransactionsView,另有共享组件合同测试;不会把原关联框重新引入统一订单或InboundTaskList。dense外观通过现有显式参数启用,默认模式不启用新背景或全屏;原API、显示字段、合法业务编号回退和权限过滤保持。
实施结果:原1060px框架通过现有dense参数增加原生全屏,国内入库单实际入口同步显式启用dense,海外库存流水入口继续保持显式启用。基础/装柜采用公共只读来源背景,海外入仓与库存采用汇总背景;标题与状态仍同行,保留无底栏、destroy-on-close和读取中可关闭的原承载。旧边框、背景、15px标题、正文高度/内边距仅限制在默认非dense模式,删除原dense零边框/零内边距及通用字体覆盖,避免抵消公共背景;新模式只配置两列、宽行、表头及内容约束。
原6项基础、6项装柜、海外客户与仓库、完整尾程单/入库计划/托盘、SKU/产品和库存箱数全部保留。dense长值使用LineClampText,尾程单/计划/托盘采用同一连续资料表的宽行及两行省略;原状态组合文本、顺序及柜号/柜次业务号回退保持,数量0仍显示。非dense保留原标题属性、旧列表和布局,不启用新背景/全屏/长文本组件。真实未找到与已找到但无SKU库存分别提示;原仓库未分配和名称未返回语义不变。
三个权限过滤和API任务段经前后逐字对比未改,继续只读当前允许的服务端读模型,各分区错误保留诊断及原重试读取全部允许分区规则。修正空码/无权限提前返回及关闭时旧loading未复位;卸载增加serial失效,切码/关闭/权限变化后的迟到结果不覆盖当前数据。不改请求路径/参数/访问域或后端契约,不新增业务动作。
自动检查:10个文件、139项最终定向检查、类型检查、最终构建通过;全量443个文件、3951项测试通过。包含共享默认/密度两模式、真实Element过渡关闭、国内直接页面及海外真实API Mock挂载,均经统一local-check入口串行执行,沿用用户授权的Node 6GB堆上限。66项冻结源码、直接调用方及其测试、原API/模型/权限、共享组件、生成声明与构建输入前后哈希一致,git diff --check通过。主截图清单1—510号连续、无重复。
截图497—510唯一维护在跨模块清单,视觉待人工1920×1080、100%缩放截图确认。本批仅本地Mock,未读取真实关联数据、写入测试环境、提交、推送或部署。下一组接续预约管理当前日历入口的新增FBA与计划到仓窗口,其余原业务办理分支继续逐操作整理。