167 Commits

Author SHA1 Message Date
0ffd89e9b5 feat: 接入快递运费对账明细镜像 2026-09-08 15:43:08 +08:00
5a34782dcd Merge remote-tracking branch 'origin/main' into feature/sumu-bill-offset
# Conflicts:
#	tests/Feature/Business/PagesTest.php
2026-09-08 13:19:38 +08:00
b5d87eae35 feat: add bill offset mirror page and export 2026-09-08 13:09:23 +08:00
9ad1b1c6bb feat: 接入快递运费对账业务镜像 (#118) 2026-09-08 12:26:04 +08:00
e94d556125 用户管理布局与管理员身份权限设置 (#119) 2026-09-08 12:02:22 +08:00
8dc9f3bc6f feat: 店铺账号密码页显示真实绑定手机号
- 「绑定手机号」字段取消 secret 遮蔽,页面与导出均显示镜像中的真实手机号
- 更新 StoreAccountMirrorRepositoryTest 与 PrototypePageTest 覆盖新行为
- 密码配置状态列已由 #116 完成,本提交不重复改动
2026-09-08 11:41:59 +08:00
0b988a4b99 未配置权限的钉钉用户默认显示完整业务页面 (#117) 2026-09-08 11:29:32 +08:00
b2b5c33d47 管理员按需查看与复制店铺密码 (#116) 2026-09-08 07:02:25 +08:00
0743f298a3 财务花名册准入与钉钉授权自动开户 (#114) 2026-09-08 06:14:45 +08:00
a2b3db3afa fix: show vip marketing promotion flow 2026-09-07 18:03:07 +08:00
d66f0cf119 fix: align vip tab with tax declaration data 2026-09-07 17:02:03 +08:00
6796d68012 fix: 中台推广数据接入生产受限隧道 (#110) 2026-09-07 14:59:27 +08:00
050ad0ab97 feat: 整合淘系支付宝账单共享业务镜像 (#109) 2026-09-07 14:41:37 +08:00
a989734b33 fix: query only the active promotion platform (#108) 2026-09-07 14:22:18 +08:00
a7d02993c8 test: isolate mirror connections during feature tests (#107) 2026-09-07 14:10:16 +08:00
a1c0e245d6 Merge remote-tracking branch 'origin/main' 2026-09-07 12:28:52 +08:00
d46ed01a81 feat: merge promotion bills into marketing account bills 2026-09-07 12:27:46 +08:00
be670ad988 feat: stage tiered business data storage (#104) 2026-09-07 11:55:37 +08:00
d48cb7d639 feat: 店铺维度报表条件查询与主体归属字段接入
实际修改:
- 店铺维度报表新增真实数据库条件查询:店铺字段走共享镜像 SQL
  WHERE,主体/能否变更/生效/失效走生命周期行级过滤(左闭右开)
- 店铺负责人/部门负责人/利润中心改为店铺账号 PostgreSQL 镜像值,
  按店铺名称关联,未匹配时回退经营分析副本库原值
- 能否变更按主表 platform 判定(唯品会MP/淘工厂=否,其余=是),
  筛选改为 是/否 下拉;默认生效时间 2026-07-01,失效未记录显示存续中
- 主体维度经营报表接入生命周期收入窗口与注册地址解析市字段
- 同步更新视图测试并重写 StoreReportRepositoryTest 匹配 SQLite 实现

验证:容器内 tests/Feature/Business + tests/Unit/EcommerceFinance +
tests/Unit/Business 共 324 passed / 4 skipped;真实数据端到端验证
(无筛选 1935 行、负责人/利润中心/失效区间筛选抽样全对)。
无新增数据库迁移,不涉及生产数据写入。
2026-09-06 19:27:51 +08:00
0584aa3742 feat: enforce closed DingTalk account access 2026-09-04 23:38:56 +08:00
6c574294f7 同步主体维度经营报表页面 (#103)
任务名称:同步主体维度经营报表页面
实际开发者:yueyang
目标结果:让主体维度经营报表接入团队共享业务镜像,显示分页、主体销量汇总及明确的数据来源提示。
实际修改:
- 注册 company-management/subject-operating-report 到只读页面映射并复用 StoreReportRepository。
- 页面标识改为共享镜像;有数据时显示共享镜像提示。
- 新增页面读取共享报表服务的回归测试。
修改文件:app/Business/TableRegistry.php;config/business_navigation.php;resources/views/business/pages/partials/directory-table.blade.php;tests/Feature/Business/PrototypePageTest.php
验证:容器内临时加载当前测试文件后执行相关套件,9 tests、53 assertions 全部通过;git diff --check 通过;实际页面首页共 2073 条,第 2 页及第 42/42 页可读。
风险:不涉及数据库迁移、生产配置或业务数据写入;未提交凭据、.env 或真实数据。
2026-09-04 17:40:44 +08:00
ca131731f6 fix: keep agreement signing page readable for legacy payloads 2026-09-04 16:14:30 +08:00
4ef1208b2f 聚水潭小额打款工单页面 (#102)
## 任务占用与边界

- 任务名称:聚水潭聚工单-协同工单-打款工单-小额打款页面
- 实际开发者:yueyang
- 任务来源/团队分工:退款数据子页面接入
- 目标结果:在“退款”下新增小额打款子页面,读取共享业务镜像,支持分页、筛选、汇总、导出和同步状态提示。
- 预计修改路径:Pages Controller、business_navigation、upstream_mirrors、镜像 Repository、Blade 页面、admin 路由、测试、镜像清单文档。
- 将写入的公共契约:页面 slug、管理路由、镜像数据集注册(jiansun 两张表)、Mirror Repository。
- 仅复用、明确不修改的公共契约:现有共享镜像连接、同步框架、权限校验、导航结构和通用分页/导出模式。
- 数据源、表/视图和字段:jiansun.dbo.jst_workOrderInfo、jiansun.dbo.jst_small_payment_order_map;固定小额打款工单类型 82D94F5C54544EE3833CD8A3AB8B9F73。
- 上游 source_key / scope:source_key=jiansun;沿用团队共享连接 scope。
- 明确不修改的范围:不执行共享数据库迁移、不执行首次全量同步、不修改 .env/APP_KEY、不配置 operations_replica。

## 开工碰撞检查

- [x] 已执行团队预检并核对 origin/main 与远程任务分支
- [x] 已搜索主线既有页面、接口、Repository 和数据查询
- [x] 已区分将写入与仅复用的公共契约
- [x] 未发现实际写入重叠

## 实际改动

- 新增退款“小额打款”页面及导航入口。
- 新增 SmallPaymentWorkOrderMirrorRepository:共享镜像分页、稳定排序、筛选、金额汇总、导出行和状态判断。
- 注册 jst_workOrderInfo 与 jst_small_payment_order_map 镜像数据集,并补充真实 businessFieldList 解析字段。
- 增加页面、Repository、导航和同步器相关测试。

## 验证证据

- 相关测试:19 项通过,143 个断言通过。
- Blade 缓存、PHP 语法检查、git diff --check 通过。
- 实际本地页面已打开,导航显示“小额打款”;首次同步未执行时页面明确显示“业务镜像尚未建立”。
- route:cache 受项目已有重复 livewire.update 路由影响失败,与本次改动无关;普通路由列表和视图缓存正常。

## 风险检查

- [x] 未提交 .env、密码、Token、私钥、真实财务数据、生产日志或构建产物
- [x] 不涉及共享数据库迁移或生产数据写入
- [x] 前端复用现有 VIP 黑金设计令牌和共享页面结构

## 合并前复查

- [ ] PR 不再是 WIP,需在完成最终自审和测试后移除 WIP 前缀。
- [ ] Codex 已用 origin/main...任务分支复核完整 diff。

Reviewed-on: http://git.1080p.hk/WuYongJie/CaiWuXiTong/pulls/102
2026-09-04 13:54:17 +08:00
b5a53f061b fix: use canonical url after DingTalk callback 2026-09-03 18:44:30 +08:00
qiuxiang
d7c564d900 feat: add jingxi refund data headers 2026-09-03 17:53:53 +08:00
qiuxiang
6a4868b196 fix: match vipshop reconciliation headers to taobao 2026-09-03 17:08:56 +08:00
qiuxiang
4396f139ad feat: add vipshop tab to zhongcai reconciliation 2026-09-03 17:08:56 +08:00
e59b0531bf 移除售后费用页聚水潭工单区块 (#101) 2026-09-03 17:06:33 +08:00
658470f099 test: cover store account directory entry 2026-09-03 16:58:06 +08:00
0cc7492d45 feat: 财务经营报表接入聚水潭退货退款 (#100) 2026-09-03 16:18:13 +08:00
6995ad31c5 feat: add DingTalk account login 2026-09-03 15:42:46 +08:00
cb02ca8a36 feat: show Jushuitan work orders on after-sales pages 2026-09-03 14:28:26 +08:00
7e64d24458 feat: complete courier e-sign workflow and PDF rendering 2026-09-03 13:54:00 +08:00
88526b9619 附加费类型字典自维护(含进仓费) (#98)
## 任务占用与边界
- 任务名称:附加费类型字典自维护
- 实际开发者:zhoushengchen
- 目标结果:在快递附加费报价维护页支持附加费类型的新增、启用/停用;新增报价仅可选择启用类型,历史报价保留原类型。
- 预计修改路径:附加费类型 Repository、Model、Controller、报价 Repository/Controller、页面、管理路由、类型表迁移和专项测试。
- 将写入的公共契约:business.courier-surcharge.types.store、business.courier-surcharge.types.status、business_courier_surcharge_types。
- 仅复用、不修改的公共契约:business.pages.show、business.courier-surcharge.store。
- 明确不修改的范围:上游数据库、业务镜像、七牛、生产配置和无关页面。

## 开工碰撞检查
- [x] 已检查最新 main 和所有远程任务分支
- [x] 已运行 scripts/codex-task-preflight.ps1
- [x] 未发现与其他远程任务的实际写入重叠

## 实际改动
- 新增附加费类型字典及公司范围隔离。
- 新增类型管理弹窗、创建接口、启用/停用接口。
- 报价表单和后端校验动态读取启用类型;筛选仍可查看全部类型。
- 默认初始化原有 11 种类型,并增加“进仓费”。
- 增加幂等增量迁移,补齐已执行建表迁移环境中的“进仓费”。

## 验证证据
- tests/Feature/Business/CourierSurchargePageTest.php:6 个用例、60 个断言通过。
- 相关 PHP 文件语法检查通过。
- business.courier-surcharge 路由共 5 条,路由检查通过。
- git diff --check 通过。
- 本地共享系统库现状:类型表已存在,当前公司有 11 个旧类型;增量迁移待执行。

## 风险检查
- 未提交 .env、密码、Token、私钥、真实财务数据、生产日志或构建产物。
- 前端遵循 DESIGN.md 的 VIP 黑金令牌。
- 数据库影响:仅新增类型表(若环境尚未建表)或幂等补充“进仓费”,不删除、不覆盖已有类型。
- 回滚:类型字典不做物理删除;迁移 down 保持空操作以保护业务引用。
- 已获得本次“合并 PR 并执行类型表迁移”的明确授权;迁移目标为本机当前连接的团队系统数据库,不涉及生产部署。

## 合并前复查
- [x] 已重新 fetch 远程引用并再次运行碰撞检查
- [x] 已逐文件审核 origin/main...任务分支完整 diff
- [ ] PR 创建后移除 WIP 并执行 Squash merge
- [ ] 合并后验证 main、执行迁移并验证页面

Reviewed-on: http://git.1080p.hk/WuYongJie/CaiWuXiTong/pulls/98
2026-09-02 18:22:17 +08:00
2a756edac7 快递附加费报价正式维护模块 (#97)
## 任务目标
将“快递附加费报价维护”从前端演示改为正式可持久化维护模块,新增、编辑、启停后刷新仍保留。

## 开工范围
- 将写入:`business_courier_surcharge_quotes` 数据表及迁移;`business.courier-surcharge.*` 保存、更新、状态接口;报价维护页的数据读取和维护交互;对应 Feature 测试。
- 预计路径:
  - `app/Business/CourierSurchargeQuoteRepository.php`
  - `app/Http/Controllers/Business/CourierSurchargeQuotes.php`
  - `app/Http/Controllers/Business/Pages.php`
  - `app/Models/Business/CourierSurchargeQuote.php`
  - `database/migrations/2026_09_02_000000_create_courier_surcharge_quotes_table.php`
  - `resources/views/business/pages/courier-payables/courier-surcharge.blade.php`
  - `routes/admin.php`
  - `tests/Feature/Business/CourierSurchargePageTest.php`
- 页面与路由:`courier-payables/courier-surcharge`;新增、编辑、启停使用 POST/PATCH 正式接口。
- 数据源与字段:当前公司报价规则表;快递名称、快递归属、对账人、可多选附加费类型、结算方式、计价标准、生效条件、生效日期、状态、备注。
- 权限与公共契约:复用现有 `business.page:courier-payables,courier-surcharge` 和 `business.pages.show`,不修改全局权限或共享组件。
- 明确不修改:上游数据库、业务镜像、生产配置、七牛、其他业务页面和部署脚本。

## 验证
- `docker exec -u www-data jiangling_app php artisan test tests/Feature/Business/CourierSurchargePageTest.php`
- 3 passed,41 assertions。
- PHP 语法检查及路由检查通过。
- 本地共享模式页面已实际刷新验收;由于迁移尚未在共享系统数据库执行,页面明确显示“数据表尚未就绪”并禁用维护操作。

## 风险与后续
- 新迁移尚未执行。共享系统数据库迁移属于管理员/发布授权范围,普通开发者不得直接执行;管理员完成迁移后页面即可启用正式维护。
- 不自动把旧的六条演示规则写入正式表,待产品决定是否由管理员录入或增加一次性初始化迁移。

Reviewed-on: http://git.1080p.hk/WuYongJie/CaiWuXiTong/pulls/97
2026-09-02 16:53:42 +08:00
59a984d32a feat: add callback-free eSign status polling 2026-09-02 16:07:16 +08:00
1b9e6ed2b3 feat: add installation details export (#94)
创建日期筛选文案;新增保留筛选条件的 CSV 导出;补充页面与导出回归测试。
2026-09-01 16:10:07 +08:00
3980f3f6b9 test: 补充店铺收款账户整合回归 2026-09-01 15:40:33 +08:00
43345e5d57 Merge remote-tracking branch 'origin/feature/qiuxiang-zhongcai-platform-tabs' into feature/WuYongJie-integrate-remote-20260901 2026-09-01 15:31:46 +08:00
qiuxiang
5b776bcbb5 feat: align taobao reconciliation headers 2026-09-01 14:59:36 +08:00
36d0dc688b feat: 接入聚水潭仓内未发工单镜像 2026-09-01 14:34:37 +08:00
qiuxiang
bfb1487adb feat: align pdd reconciliation headers 2026-09-01 14:27:55 +08:00
qiuxiang
6ce4fbe6a7 fix: remove duplicate douyin order header 2026-09-01 14:14:43 +08:00
qiuxiang
056f78a4a0 feat: align tmall reconciliation headers 2026-09-01 13:57:16 +08:00
qiuxiang
61a91d6300 feat: align jd reconciliation headers 2026-09-01 13:41:15 +08:00
qiuxiang
a58c606939 feat: align douyin reconciliation headers 2026-09-01 13:26:49 +08:00
qiuxiang
ea682327ab feat: add more zhongcai platform tabs 2026-09-01 13:11:09 +08:00
qiuxiang
5ecb3598c4 Merge remote-tracking branch 'origin/main' into feature/qiuxiang-zhongcai-platform-tabs 2026-09-01 13:08:45 +08:00
d95dc675a2 fix: materialize daily store report totals 2026-09-01 12:59:03 +08:00
qiuxiang
ad893594ae Merge remote-tracking branch 'origin/main' into feature/qiuxiang-zhongcai-platform-tabs 2026-09-01 11:56:16 +08:00