快递协议签署界面 #51

Merged
limeng merged 5 commits from feature/limeng-courier-agreement-signing into main 2026-08-15 17:43:00 +08:00
Collaborator

开工时标题使用 WIP: <任务名称> 并先填写“任务占用与边界”。Codex 完成独立合并前自审后补齐其余内容并移除 WIP:。

任务占用与边界

  • 任务名称:快递协议签署界面
  • 实际开发者:limeng
  • 任务来源/团队分工:为快递应付模块补齐供应商协议签署工作台,独立前端页面。
  • 目标结果:保留签署任务和模板管理入口;按参考图把“新建发起”重做为左侧一页式签章表单、右侧实时协议预览;明确 E 签宝沙箱未配置时不可发送。
  • 预计修改路径:
    • resources/views/business/pages/courier-payables/agreement-signing.blade.php
    • tests/Feature/Business/AgreementSigningPageTest.php
  • 将写入的公共契约(路由、Controller 方法、Repository、表/视图、source_key、scope、权限名、菜单键或共享组件):页面内部一页式签章表单 DOM 契约和实时预览 DOM 契约;不新增公共后端契约
  • 仅复用、明确不修改的公共契约:菜单键 courier-payables/agreement-signing;通用页面路由 business.pages.show;Business\Pages@show;read-admin-panel 和现有权限过滤;全局 --vip-* 设计令牌;E签宝沙箱配置状态。
  • 数据源、表/视图和字段:本阶段无业务数据写入;页面使用空任务状态、固定快递公司选项和固定模板元数据。
  • 上游 source_key / scope:不适用。
  • 权限名、菜单键或共享组件:复用 read-admin-panel 及侧边栏权限过滤;新增菜单键见上。
  • 明确不修改的范围:不修改 E 签宝接口、Controller、Repository、数据库迁移、报价变更页面或生产配置。

开工碰撞检查

  • Codex 已执行 scripts/codex-task-preflight.ps1
  • 已检查最新 main 和所有远程任务分支
  • 已搜索主线既有页面、接口、Repository 和数据查询
  • 已把“将写入”和“仅复用、不修改”的公共契约分开;仅复用项不作为单独阻断条件
  • 未发现实际写入重叠;或已在下方写明相关分支、具体重叠项和协调结论
    相关分支、重叠项与协调结论:与 origin/feature/limeng-courier-quote-change-workflow 仅复用通用页面路由和导航过滤,无实际写入重叠。

实际改动

  • 完成内容:将四步向导重做为参考图的一页式签章表单;左侧集中填写快递公司、文件类型、签署主体、截止日期、模板变量和归档方式,右侧实时生成可滚动协议预览;E签宝沙箱未配置时推送按钮保持禁用。
  • Codex 实际修改的文件:resources/views/business/pages/courier-payables/agreement-signing.blade.php;tests/Feature/Business/AgreementSigningPageTest.php。
  • 新增或变更的公共契约:页面内部 data-signing-request-form、data-agreement-preview、模板和预览字段 DOM 契约;无新增后端公共契约。
  • 与原计划的差异:按负责人参考图移除原四步向导;任务列表、模板管理、路由、权限和菜单保持不变。

验证证据

  • 正常流程:文件类型切换会更新协议标题和模板编号;公司、日期、开户名称、开户银行、银行账号、备注会实时同步到预览;取消、刷新预览和三个局部标签切换已实测。
  • 空数据/错误输入/无权限场景:必填字段保留原生约���;无页面���限返回 404;未配置沙箱时推送按钮禁用。
  • 受影响旧功能:签署任务空状态和模板管理清单保留并完成浏览器切换验证。
  • 自动测试及结果:AgreementSigningPageTest 4 passed;SidebarNavigationDesignTest 3 passed;共 77 assertions;Blade 实际渲染通过。
  • 实际页面、接口或只读业务查询结果:桌面页面无重叠;390px 窄屏无横向溢出、字段单列、预览下移;浏览器控制台无 error/warning。未提交表单、未调用外部签署接口。

风险检查

  • 不涉及金额、权限、审批、数据库迁移、生产配置或数据修复
  • 如涉及上述高风险内容,已在下方写明影响、回滚和所需授权
  • 未提交 .env、密码、Token、私钥、真实财务数据、生产日志或构建产物
  • 前端改动符合 DESIGN.md;无前端改动则写“不适用”
    高风险影响、回滚和授权状态:不适用。

合并前复查

  • 已重新拉取远程引用,并把 origin/main 合并到协议任务分支;合并提交为 ce5d77763590ee902aba049e91a035b05b3461dd。
  • PR 已移除 WIP:,目标为最新 main。
  • Codex 已从 origin/main...任务分支 复核完整 diff:仅包含 config/business_navigation.php、协议签署页面和对应测试。
  • 正常流程、无权限场景、空状态和侧边栏设计测试已通过;未执行数据库迁移、生产部署或外部 E 签宝发送。
  • 合并后将验证远程 main 并清理已合并任务分支。
> 开工时标题使用 `WIP: <任务名称>` 并先填写“任务占用与边界”。Codex 完成独立合并前自审后补齐其余内容并移除 `WIP:`。 ## 任务占用与边界 - 任务名称:快递协议签署界面 - 实际开发者:limeng - 任务来源/团队分工:为快递应付模块补齐供应商协议签署工作台,独立前端页面。 - 目标结果:保留签署任务和模板管理入口;按参考图把“新建发起”重做为左侧一页式签章表单、右侧实时协议预览;明确 E 签宝沙箱未配置时不可发送。 - 预计修改路径: - resources/views/business/pages/courier-payables/agreement-signing.blade.php - tests/Feature/Business/AgreementSigningPageTest.php - 将写入的公共契约(路由、Controller 方法、Repository、表/视图、`source_key`、`scope`、权限名、菜单键或共享组件):页面内部一页式签章表单 DOM 契约和实时预览 DOM 契约;不新增公共后端契约 - 仅复用、明确不修改的公共契约:菜单键 `courier-payables/agreement-signing`;通用页面路由 `business.pages.show`;`Business\Pages@show`;`read-admin-panel` 和现有权限过滤;全局 `--vip-*` 设计令牌;E签宝沙箱配置状态。 - 数据源、表/视图和字段:本阶段无业务数据写入;页面使用空任务状态、固定快递公司选项和固定模板元数据。 - 上游 `source_key` / `scope`:不适用。 - 权限名、菜单键或共享组件:复用 `read-admin-panel` 及侧边栏权限过滤;新增菜单键见上。 - 明确不修改的范围:不修改 E 签宝接口、Controller、Repository、数据库迁移、报价变更页面或生产配置。 ## 开工碰撞检查 - [x] Codex 已执行 `scripts/codex-task-preflight.ps1` - [x] 已检查最新 `main` 和所有远程任务分支 - [x] 已搜索主线既有页面、接口、Repository 和数据查询 - [x] 已把“将写入”和“仅复用、不修改”的公共契约分开;仅复用项不作为单独阻断条件 - [x] 未发现实际写入重叠;或已在下方写明相关分支、具体重叠项和协调结论 相关分支、重叠项与协调结论:与 `origin/feature/limeng-courier-quote-change-workflow` 仅复用通用页面路由和导航过滤,无实际写入重叠。 ## 实际改动 - 完成内容:将四步向导重做为参考图的一页式签章表单;左侧集中填写快递公司、文件类型、签署主体、截止日期、模板变量和归档方式,右侧实时生成可滚动协议预览;E签宝沙箱未配置时推送按钮保持禁用。 - Codex 实际修改的文件:`resources/views/business/pages/courier-payables/agreement-signing.blade.php`;`tests/Feature/Business/AgreementSigningPageTest.php`。 - 新增或变更的公共契约:页面内部 `data-signing-request-form`、`data-agreement-preview`、模板和预览字段 DOM 契约;无新增后端公共契约。 - 与原计划的差异:按负责人参考图移除原四步向导;任务列表、模板管理、路由、权限和菜单保持不变。 ## 验证证据 - 正常流程:文件类型切换会更新协议标题和模板编号;公司、日期、开户名称、开户银行、银行账号、备注会实时同步到预览;取消、刷新预览和三个局部标签切换已实测。 - 空数据/错误输入/无权限场景:必填字段保留原生约���;无页面���限返回 404;未配置沙箱时推送按钮禁用。 - 受影响旧功能:签署任务空状态和模板管理清单保留并完成浏览器切换验证。 - 自动测试及结果:`AgreementSigningPageTest` 4 passed;`SidebarNavigationDesignTest` 3 passed;共 77 assertions;Blade 实际渲染通过。 - 实际页面、接口或只读业务查询结果:桌面页面无重叠;390px 窄屏无横向溢出、字段单列、预览下移;浏览器控制台无 error/warning。未提交表单、未调用外部签署接口。 ## 风险检查 - [x] 不涉及金额、权限、审批、数据库迁移、生产配置或数据修复 - [ ] 如涉及上述高风险内容,已在下方写明影响、回滚和所需授权 - [x] 未提交 `.env`、密码、Token、私钥、真实财务数据、生产日志或构建产物 - [x] 前端改动符合 `DESIGN.md`;无前端改动则写“不适用” 高风险影响、回滚和授权状态:不适用。 ## 合并前复查 - [x] 已重新拉取远程引用,并把 `origin/main` 合并到协议任务分支;合并提交为 `ce5d77763590ee902aba049e91a035b05b3461dd`。 - [x] PR 已移除 `WIP:`,目标为最新 `main`。 - [x] Codex 已从 `origin/main...任务分支` 复核完整 diff:仅包含 `config/business_navigation.php`、协议签署页面和对应测试。 - [x] 正常流程、无权限场景、空状态和侧边栏设计测试已通过;未执行数据库迁移、生产部署或外部 E 签宝发送。 - [x] 合并后将验证远程 `main` 并清理已合并任务分支。
limeng added 1 commit 2026-08-14 14:28:33 +08:00
limeng added 1 commit 2026-08-14 14:53:16 +08:00
Author
Collaborator

当前实现与验证结果

实际改动

  • 新增侧边栏菜单键 courier-payables/agreement-signing。
  • 新增独立页面视图 business.pages.courier-payables.agreement-signing。
  • 页面包含“签署任务 / 新建发起 / 模板管理”三个局部标签、四步发起流程、五份模板清单和明确的空状态。
  • E签宝未配置时发送按钮保持禁用,不创建任务、不发送消息。
  • 新增权限与页面渲染功能测试。
  • 实际文件与开工计划一致,无范围差异。

验证证据

  • AgreementSigningPageTest:3 passed,22 assertions。
  • QuoteManagementPageTest:3 passed。
  • PagesTest:9 passed,1 个既有退款路由断言失败;unknown-refund-page 期望 404、实际 302,与本 PR 的三个修改路径无重叠。基于仓库测试失败不得合并的规则,PR 继续保留 WIP。
  • 浏览器正常流程:完成业务场景选择、资料填写、签署方设置和复核;复核信息正确,E签宝发送按钮不可用。
  • 空数据/错误输入/无权限:任务空状态正常;未选模板显示校验错误;无侧边栏权限返回 404。
  • 响应式:桌面布局无重叠;390px 页面无整体横向溢出,任务表格仅在自身容器横向滚动。
  • 本地环境:deploy/local-init.sh 构建并启动成功,app/mysql 健康;使用共享系统数据库,未执行数据库迁移。
  • 碰撞检查:重新执行预检通过,与其它远程任务分支无实际写入重叠。

风险与边界

  • 不涉及金额计算、数据库迁移、生产配置或数据修复。
  • 签署完成不会自动启用新收款账户;账户变更仍要求独立财务复核和原档案电话核验。
  • 前端遵循 DESIGN.md 的 VIP 黑金令牌与局部切换规范。
## 当前实现与验证结果 ### 实际改动 - 新增侧边栏菜单键 `courier-payables/agreement-signing`。 - 新增独立页面视图 `business.pages.courier-payables.agreement-signing`。 - 页面包含“签署任务 / 新建发起 / 模板管理”三个局部标签、四步发起流程、五份模板清单和明确的空状态。 - E签宝未配置时发送按钮保持禁用,不创建任务、不发送消息。 - 新增权限与页面渲染功能测试。 - 实际文件与开工计划一致,无范围差异。 ### 验证证据 - `AgreementSigningPageTest`:3 passed,22 assertions。 - `QuoteManagementPageTest`:3 passed。 - `PagesTest`:9 passed,1 个既有退款路由断言失败;`unknown-refund-page` 期望 404、实际 302,与本 PR 的三个修改路径无重叠。基于仓库测试失败不得合并的规则,PR 继续保留 WIP。 - 浏览器正常流程:完成业务场景选择、资料填写、签署方设置和复核;复核信息正确,E签宝发送按钮不可用。 - 空数据/错误输入/无权限:任务空状态正常;未选模板显示校验错误;无侧边栏权限返回 404。 - 响应式:桌面布局无重叠;390px 页面无整体横向溢出,任务表格仅在自身容器横向滚动。 - 本地环境:`deploy/local-init.sh` 构建并启动成功,app/mysql 健康;使用共享系统数据库,未执行数据库迁移。 - 碰撞检查:重新执行预检通过,与其它远程任务分支无实际写入重叠。 ### 风险与边界 - 不涉及金额计算、数据库迁移、生产配置或数据修复。 - 签署完成不会自动启用新收款账户;账户变更仍要求独立财务复核和原档案电话核验。 - 前端遵循 `DESIGN.md` 的 VIP 黑金令牌与局部切换规范。
limeng added 1 commit 2026-08-14 15:24:08 +08:00
limeng added 1 commit 2026-08-14 16:41:32 +08:00
limeng added 1 commit 2026-08-15 17:31:36 +08:00
limeng changed title from WIP: 快递协议签署界面 to 快递协议签署界面 2026-08-15 17:37:42 +08:00
limeng merged commit 2f4e5387ec into main 2026-08-15 17:43:00 +08:00
limeng deleted branch feature/limeng-courier-agreement-signing 2026-08-15 17:43:01 +08:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WuYongJie/CaiWuXiTong#51
No description provided.