WIP: 快递运费对账按演示表头接入 #121

Closed
renshen wants to merge 4 commits from feature/renshen-courier-reconciliation-details into main
Collaborator

任务目标

按 快递应付-运费对账-子功能页面开发.xlsx 的 12 行演示数据,把运费对账页面切换为共享业务镜像驱动,匹配有演示值的物流、订单、地区、商品、店铺、仓库、尺寸和运费字段;没有演示值的收件人隐私、费率、公式、成品和结算字段暂不实现。

实际修改

  • config/upstream_mirrors.php:登记 JianSun 的三张受控字段镜像数据集:jst_order_express_details、Jst_SendData_View_extension、jst_salesOutboundInfo。
  • config/business_data.php:为三套镜像补充共享业务库放置策略。
  • modules/EcommerceFinance/Repositories/CourierFreightReconciliationMirrorRepository.php:从共享镜像联表读取,固定按扩展表 Id 和出库表 Id 取最新关联行,避免一对多重复运费汇总。
  • resources/views/business/pages/courier-payables/freight-reconciliation.blade.php:展示附件中有演示值的 23 个字段和运费汇总。
  • tests/Unit/EcommerceFinance/CourierFreightReconciliationMirrorRepositoryTest.php:覆盖未就绪、字段关联、可选明细缺失和运费去重。
  • tests/Feature/Business/PagesTest.php:覆盖通用 business.pages.show 页面契约和新表头。
  • tests/Unit/EcommerceFinance/BusinessDataPlacementTest.php、docs/上游业务镜像清单.md:补齐数据集登记校验和镜像目录。

数据与安全边界

  • 页面只读 caiwu_business_mirror,不在 HTTP 请求直连上游。
  • 上游只读访问仍由现有固定参数化查询/镜像同步框架负责;不执行写入、存储过程、多语句或用户输入 SQL。
  • 不输出真实业务行、密码、APP_KEY、完整 DSN;不修改 routes、Controller、权限、共享连接记录或生产环境。
  • 本 PR 不执行共享数据库迁移或首次全量同步;新增数据集首次同步需按项目授权在合并后由刷新节点断点执行。

验证

  • PHP lint:Repository、config/upstream_mirrors.php、config/business_data.php 通过。
  • 隔离测试容器:CourierFreightReconciliationMirrorRepositoryTest 3 项通过;PagesTest 2 项通过,共 65 个断言;BusinessDataPlacementTest 数据集与存储策略校验通过。
  • 已用固定上游只读查询核对附件 12 个快递单号全部存在;物流表返回 12 个唯一快递单号,发货扩展关联 14 条,出库运费字段 10 条有值。真实业务内容未写入聊天或日志。

合并前状态

  • 分支:feature/renshen-courier-reconciliation-details
  • 基线:最新 origin/main(当前 a213870)
  • 任务分支已推送;请按团队规则进行独立自审和 Squash merge。

2026-09-09 上线核验:与主线试合并无 Git 冲突,相关 7 tests / 44 assertions 通过。负责人已授权备份、建表和首次同步。生产三套目标镜像尚未建立;JianSun 只读连接经独立客户端确认返回 SQL Server 18470(登录账号被禁用),首次同步因此阻塞。等待上游管理员恢复既有只读账号后继续,当前生产保留旧页面。

## 任务目标 按 `快递应付-运费对账-子功能页面开发.xlsx` 的 12 行演示数据,把运费对账页面切换为共享业务镜像驱动,匹配有演示值的物流、订单、地区、商品、店铺、仓库、尺寸和运费字段;没有演示值的收件人隐私、费率、公式、成品和结算字段暂不实现。 ## 实际修改 - `config/upstream_mirrors.php`:登记 JianSun 的三张受控字段镜像数据集:`jst_order_express_details`、`Jst_SendData_View_extension`、`jst_salesOutboundInfo`。 - `config/business_data.php`:为三套镜像补充共享业务库放置策略。 - `modules/EcommerceFinance/Repositories/CourierFreightReconciliationMirrorRepository.php`:从共享镜像联表读取,固定按扩展表 `Id` 和出库表 `Id` 取最新关联行,避免一对多重复运费汇总。 - `resources/views/business/pages/courier-payables/freight-reconciliation.blade.php`:展示附件中有演示值的 23 个字段和运费汇总。 - `tests/Unit/EcommerceFinance/CourierFreightReconciliationMirrorRepositoryTest.php`:覆盖未就绪、字段关联、可选明细缺失和运费去重。 - `tests/Feature/Business/PagesTest.php`:覆盖通用 `business.pages.show` 页面契约和新表头。 - `tests/Unit/EcommerceFinance/BusinessDataPlacementTest.php`、`docs/上游业务镜像清单.md`:补齐数据集登记校验和镜像目录。 ## 数据与安全边界 - 页面只读 `caiwu_business_mirror`,不在 HTTP 请求直连上游。 - 上游只读访问仍由现有固定参数化查询/镜像同步框架负责;不执行写入、存储过程、多语句或用户输入 SQL。 - 不输出真实业务行、密码、APP_KEY、完整 DSN;不修改 routes、Controller、权限、共享连接记录或生产环境。 - 本 PR 不执行共享数据库迁移或首次全量同步;新增数据集首次同步需按项目授权在合并后由刷新节点断点执行。 ## 验证 - PHP lint:Repository、`config/upstream_mirrors.php`、`config/business_data.php` 通过。 - 隔离测试容器:`CourierFreightReconciliationMirrorRepositoryTest` 3 项通过;`PagesTest` 2 项通过,共 65 个断言;`BusinessDataPlacementTest` 数据集与存储策略校验通过。 - 已用固定上游只读查询核对附件 12 个快递单号全部存在;物流表返回 12 个唯一快递单号,发货扩展关联 14 条,出库运费字段 10 条有值。真实业务内容未写入聊天或日志。 ## 合并前状态 - 分支:`feature/renshen-courier-reconciliation-details` - 基线:最新 `origin/main`(当前 `a213870`) - 任务分支已推送;请按团队规则进行独立自审和 Squash merge。 2026-09-09 上线核验:与主线试合并无 Git 冲突,相关 7 tests / 44 assertions 通过。负责人已授权备份、建表和首次同步。生产三套目标镜像尚未建立;JianSun 只读连接经独立客户端确认返回 SQL Server 18470(登录账号被禁用),首次同步因此阻塞。等待上游管理员恢复既有只读账号后继续,当前生产保留旧页面。
renshen added 1 commit 2026-09-08 15:43:18 +08:00
renshen added 1 commit 2026-09-08 15:49:16 +08:00
renshen added 1 commit 2026-09-08 16:53:19 +08:00
renshen added 1 commit 2026-09-08 16:57:38 +08:00
WuYongJie closed this pull request 2026-09-09 15:02:12 +08:00

Pull request closed

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#121
No description provided.