65 Commits

Author SHA1 Message Date
4e702bfa45 修复:保留生产构建基础依赖缓存 2026-08-26 13:24:59 +08:00
ac708cb7a9 排除普通商品历史残留记录 (#78) 2026-08-25 15:34:39 +08:00
5f666681f7 普通商品数据来源列与筛选结果导出 (#76) 2026-08-24 14:48:33 +08:00
8bfd82aa29 店铺营销账户账单各平台导出 (#77)
为淘系、阿里巴巴和京东专用账单补齐按当前筛选条件导出,并保留拼多多及通用平台既有导出能力。导出统一优先读取共享业务镜像。
2026-08-24 14:29:46 +08:00
c941dd98f0 修复非京喜退款数据页面固定空状态 (#75)
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-08-21 18:26:04 +08:00
d87ca96593 普通商品增加1688代发采购单价来源 (#74)
保留并标注普通商品采购价,接入已完成1688代发采购单价的只读共享业务镜像。
2026-08-21 14:49:16 +08:00
346fef1864 修复:恢复拼多多营销账户账单筛选导出 (#66) 2026-08-17 23:11:55 +08:00
1993996a96 普通商品与聚水潭同步一致性 (#64) 2026-08-15 19:10:52 +08:00
b51f52b87e 商品及库存普通商品资料 (#63)
共享业务镜像普通商品资料页面、稳定分页筛选、同步状态和数据集查询索引。
2026-08-15 18:21:38 +08:00
eb76dc4754 报价变更与 E 签宝签署闭环 (#47) 2026-08-15 16:48:12 +08:00
809bca2e5c 修复业务镜像增量分页超时 (#61) 2026-08-15 05:03:19 +08:00
fbd05380f3 提高首次业务镜像批次效率 (#60) 2026-08-15 03:49:49 +08:00
955ddb5e26 修复业务镜像日期格式 (#59) 2026-08-15 03:16:16 +08:00
9c179f6170 修复业务镜像宽表行大小限制 (#58) 2026-08-14 21:02:58 +08:00
bb9937a0cf 修复旧业务数据字符导致镜像同步中断 (#57) 2026-08-14 20:44:59 +08:00
3885802877 修复业务镜像增量同步与营销账单导出 (#56) 2026-08-14 20:15:34 +08:00
43445fde4b feat: read marketing bills from business mirror
首次全量完成后,营销账户账单、余额、汇总、选项及分页优先读取 caiwu_business_mirror;未就绪时保留旧快照链路。
2026-08-14 17:48:23 +08:00
bb9a18eddb 公司店铺商标页面切换共享业务镜像 (#54) 2026-08-14 16:50:34 +08:00
6b2b486ce1 建立全项目上游业务镜像框架 (#53)
## 任务占用与边界

- 任务名称:全项目上游业务镜像目录与通用同步框架
- 实际开发者:WuYongJie
- 目标结果:登记当前代码实际使用的上游原表,提供低压、可断点的首次全量、增量重叠和全量校准框架。
- 实际修改:13 个文件;新增通用数据集目录、动态镜像建表、同步状态、同步命令、生产低压轮询、测试和团队清单。
- 将写入的公共契约:`business_mirror_table_states`、`business-mirror:sync-tables`、`BusinessMirrorDatasetRegistry`、`BusinessMirrorSchemaManager`。
- 仅复用、明确不修改:`UpstreamReadOnlyQueryFactory`、`upstream_schema_columns`、既有 `product_price_mirror_rows`。
- 明确不包含:本 PR 不切换其余业务页面 Repository,不执行生产迁移或首次全量,不提交真实业务数据或凭据。

## 合并前自审

- [x] 已重新拉取最新 `origin/main`,分支仅领先 1 个提交
- [x] `git merge-tree --write-tree origin/main HEAD` 无冲突
- [x] 完整 diff 共 13 个文件,未发现越界文件或敏感内容
- [x] 生产共享数据字典核对 38 个数据集,缺失对象/字段为 0
- [x] 临时 MariaDB 空库迁移实测成功,验证库已删除
- [x] 上游异常空结果不会清空已有镜像
- [x] 定时任务只轮转已完成首次全量的数据集,不会自动扫描未初始化大表

## 测试

- `BusinessMirrorSynchronizerTest` 等相关测试:14 tests / 65 assertions 全通过
- 新同步器专项:5 tests / 25 assertions 全通过
- 新增 PHP 文件语法检查全部通过
- 两份生产激活脚本 `bash -n` 通过
- `git diff --check` 通过

## 风险与回滚

- 包含新增迁移,但发布脚本遇到迁移仍会要求独立高风险授权;合并本身不会执行生产迁移。
- 首次全量必须逐数据集显式执行并做数量/翻页/筛选验收,特别是约 280 万行的大表不得随发布自动全扫。
- 回滚代码可回退本合并提交;生产迁移执行前必须备份 `caiwu_system_config` 与 `caiwu_business_mirror`。

Reviewed-on: http://git.1080p.hk/WuYongJie/CaiWuXiTong/pulls/53
2026-08-14 16:38:33 +08:00
e08cfca1e9 feat: add shared product price business mirror 2026-08-14 15:21:49 +08:00
8d49b979c2 修复经营分析副本库 ANSI 会话设置 (#50) 2026-08-14 13:51:17 +08:00
63b278e149 修复:商品价格切换经营分析副本库
商品价格读取经营分析副本库固定只读视图,并迁移生产快照刷新映射。
2026-08-14 13:33:53 +08:00
7a3857e10f 修复商品价格读取实时价格日志
商品价格改为读取当前价格调整日志表,并补充查询映射与回归测试。
2026-08-14 10:10:34 +08:00
a454367845 修复共享快照处理中状态反馈 (#46) 2026-08-13 15:41:56 +08:00
359b4b7391 切换团队系统数据库公网端口到 8444 (#44) 2026-08-13 14:18:33 +08:00
5511dfb221 恢复店铺营销账户余额页面 (#40)
恢复淘系与拼多多营销账户月度余额汇总、筛选、分页和导出。
2026-08-13 11:41:42 +08:00
31ce9abd33 店铺收款账户账单淘系支付宝附件数据 (#36) 2026-08-13 00:42:08 +08:00
82ce1e52da 隐藏退款子菜单三角标识 (#33)
退款模块二级菜单不再显示活动三角标识,保留活动背景和一级展开箭头。
2026-08-12 10:58:17 +08:00
09d593dd2d 订单数据接入聚水潭上游只读数据 (#27)
## 任务背景
订单数据页面已完成附件表头,本任务由 renshen 接入聚水潭上游真实只读数据。

## 任务目标
- 订单售后费用明细:按附件字段展示订单、商品、SKU 成本及售后关联数据。
- 商品推广费用明细:按商品/款式汇总推广费用。
- 不硬编码附件演示值;缺失字段保持空值或零。

## 预计修改路径
- modules/EcommerceFinance/Repositories/OrderDataRepository.php
- modules/EcommerceFinance/View/Composers/OrderDataPageComposer.php
- modules/EcommerceFinance/Providers/Main.php
- resources/views/business/pages/order-data/*.blade.php
- tests/Unit/EcommerceFinance/OrderDataRepositoryTest.php
- tests/Feature/Business/OrderDataPagesUpstreamTest.php

## 页面和路由
复用 order-data/after-sales-expenses、order-data/promotion-expenses 和 business.pages.show;不新增或修改 routes。

## Controller / Repository
新增 OrderDataRepository 和专用 View Composer;不修改 app/Http/Controllers/Business/Pages.php。

## 数据源、表和字段
source_key=operations_replica,数据库 JSReportReplica,schema=rpt。固定参数化只读查询使用 jst_Orders、jst_OrderItem、jst_sku、jst_skumap、jst_returnAndRefundInfo、jst_returnAndRefundItem、jst_warehouseInfo、ads_itemid_sales_cost_ratio_v2_di。字段限于订单/商品标识、时间、店铺、SKU 元数据、金额、售后数量金额及 push_fee。

## scope
- order-data.after-sales.list
- order-data.promotion.list

## 权限、菜单和公共组件
复用现有页面权限、菜单、UpstreamReadOnlyQueryFactory 和 UpstreamQueryCacheFactory;不修改权限和导航。

## 明确不修改
不修改 routes、Pages Controller、数据库迁移、上游连接配置、权限、菜单、京东钱包功能、共享数据库结构或任何上游数据。

## 范围补充:后台快照刷新
- modules/EcommerceFinance/Services/OperationsReplicaSnapshotRefresher.php
- tests/Unit/EcommerceFinance/OperationsReplicaSnapshotRefresherTest.php

刷新器仅为 order-data.after-sales.list 和 order-data.promotion.list 分派同一 OrderDataRepository 固定查询;其他 scope 继续复用现有 UpstreamBusinessInformation。

Reviewed-on: http://git.1080p.hk/WuYongJie/CaiWuXiTong/pulls/27
2026-08-11 14:50:56 +08:00
28a62434d2 整合并修正京东钱包账单 (#26)
接入京东充值与消耗账单,修复快照冷启动、刷新依赖、日期边界与标签局部切换。
2026-08-11 12:22:41 +08:00
f3ed0a1086 ?????????????? (#21) 2026-08-07 17:17:58 +08:00
4ea2c03beb 修正订单数据二级菜单同级视觉 (#20) 2026-08-07 14:37:38 +08:00
433c8ab762 修复供应商赔偿明细数据来源 (#11)
接手 sumu 本地任务,复用既有只读 Repository 契约,将赔偿明细切换到 dbo.fys_supplierPaymentSummary,并按附件保留五列表头。
2026-08-06 16:26:51 +08:00
a9fd2cfb37 接入 1688 营销账户账单 (#12)
根据 Alibaba.xlsx 字段接入 JianSun.dbo.alibaba_bill,提供筛选、汇总、分页、快照刷新和错误状态。
2026-08-06 16:07:31 +08:00
87c1ea80bf 修复本地经营信息直读分页参数丢失 (#10)
## 任务占用与边界

- 任务名称:修复本地经营信息直读分页参数丢失
- 实际开发者:WuYongJie
- 目标结果:公司、店铺、商标信息页面在本地直读模式下不再因分页参数丢失返回 500。
- 实际修改路径:\`app/Business/UpstreamBusinessInformation.php\`;\`tests/Unit/EcommerceFinance/UpstreamBusinessInformationTest.php\`
- 上游 \`source_key\` / \`scope\`:\`operations_replica\`;\`company-information.read\`、\`store-information.read\`、\`trademark-information.read\`
- 明确不修改:上游连接资料、查询范围、共享快照刷新器、数据库迁移、生产配置、页面视觉和部署。

## 开工与合并前碰撞检查

- [x] 已在开工和合并前分别执行 \`scripts/codex-task-preflight.ps1\`
- [x] 已检查最新 \`origin/main\` 与全部远程任务分支
- [x] 无目标路径或公共契约重叠;历史共享库验证分支仅涉及其他测试文件

## 实际改动

- 将三个本地页面 resolver 中只写在 \`compact()\` 字符串里的分页变量,改为显式数组参数,使 PHP 箭头函数正确捕获 \`$page\`、\`$perPage\`。
- 新增回归测试:实际执行三个页面的 resolver,并断言固定快照收到正确分页参数。
- 无新增 scope、接口、权限、表结构、查询字段或缓存策略。

## 验证证据

- [x] PHP 语法检查:两个改动文件通过。
- [x] 相关单元测试:19 passed,57 assertions。
- [x] 受影响管理页面功能测试:4 passed,270 assertions。
- [x] 对比 \`origin/main...任务分支\` 已逐文件复查:仅 2 个目标文件,+88 / -3;无敏感文件或无关改动。
- [x] 同类扫描:三个错误 resolver 已全部改为显式参数;保留的 \`compact('page', 'perPage')\` 位于普通闭包中,变量已通过 \`use\` 正确捕获。

## 风险与回滚

- [x] 不涉及金额、权限、审批、数据库迁移、生产配置、数据修复或部署。
- [x] 未提交 \`.env\`、密码、Token、私钥、真实财务数据、生产日志或构建产物。
- [x] 无前端改动,\`DESIGN.md\` 不适用。
- 回滚方式:回退本次 Squash 合并提交即可;不会影响生产共享快照路径,因为生产不启用本地直读模式。

## 合并前复查

- [x] PR 已移除 \`WIP:\`,测试与自审已补齐。
- [x] 当前任务 Codex 已按完整 diff 自审,通过后执行 Squash merge、核验远程 \`main\` 并清理任务分支。

Reviewed-on: http://git.1080p.hk/WuYongJie/CaiWuXiTong/pulls/10
2026-08-04 19:22:48 +08:00
3fd41dfb69 修复 operations_replica 生产驱动崩溃 (#9)
## 任务占用与边界

- 任务名称:修复 operations_replica 生产驱动崩溃
- 实际开发者:WuYongJie
- 任务来源/团队分工:生产快照恢复
- 目标结果:生产 Linux 容器不再通过会崩溃的 PDO_ODBC 访问 FreeTDS;保留固定只读查询、共享系统数据库凭据来源和私有隧道。
- 预计修改路径:deploy/Dockerfile;modules/EcommerceFinance/Services/UpstreamOdbcConnection.php;tests/Unit/EcommerceFinance/UpstreamOdbcConnectionTest.php
- 预计页面或路由:公司、店铺、商标信息页的共享快照读取
- 预计 Controller / Repository:UpstreamOdbcConnection;UpstreamReadOnlyQuery
- 数据源、表/视图和字段:operations_replica 固定只读查询;不新增上游写入、全表同步或业务字段。
- 上游 source_key / scope:operations_replica;company-information.read、store-information.read、trademark-information.read
- 权限名、菜单键或共享组件:不变
- 明确不修改的范围:上游账号、密码、权限、表结构、业务数据、Windows/本地 ODBC 行为

## 开工碰撞检查

- [x] Codex 已执行 scripts/codex-task-preflight.ps1
- [x] 已检查最新 main 和所有远程任务分支
- [x] 已搜索主线既有页面、接口、Repository 和数据查询
- [x] 未发现重叠

## 实际改动

- 完成内容:开发中
- Codex 实际修改的文件:待补充
- 新增或变更的公共契约:仅 Linux 容器内的 FreeTDS PDO 传输选择;不新增外部配置项
- 与原计划的差异:无

## 验证证据

- 正常流程:同一共享配置和私有隧道下,FreeTDS 命令行 SELECT 1 已成功;PDO_ODBC 独立进程退出码 139。
- 空数据/错误输入/无权限场景:待补充自动测试。
- 受影响旧功能:Windows/本地仍使用既有 ODBC。
- 自动测试及结果:待补充。
- 实际页面、接口或只读业务查询结果:待合并和获准发布后生成三份首份快照。

## 风险检查

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

高风险影响、回滚和授权状态:需要构建新的应用镜像并经生产最小只读查询验证;不迁移、不改上游数据。若验证失败,发布脚本自动保留上一个可回滚镜像。

## 合并前复查

- [ ] 已重新拉取远程引用并用实际修改范围再次运行碰撞检查
- [ ] PR 不再是 WIP:,所有测试结果已经补齐
- [ ] Codex 已重新读取原始需求和验收标准,并逐文件审核 origin/main...任务分支 的完整 diff
- [ ] Codex 自审确认无越界修改、重复实现、敏感内容、未处理冲突和未验证结果
- [ ] 合并顺序不会覆盖其他未合并任务
- [x] 已授权当前任务的 Codex 执行 Squash merge、验证 main 并清理任务分支
- [ ] 如涉及生产迁移、数据修复、删除、覆盖配置或部署,已另行取得对应高风险授权

Reviewed-on: http://git.1080p.hk/WuYongJie/CaiWuXiTong/pulls/9
2026-08-04 17:09:14 +08:00
79e25e90fc fix: refresh operations replica snapshots (#7) 2026-08-04 15:41:49 +08:00
e144a3562c 修复上游业务页面快照完整性 (#2)
## 任务占用与边界

- 任务名称:修复上游业务页面快照完整性
- 实际开发者:WuYongJie
- 任务来源/团队分工:项目负责人反馈生产业务页面空数据、503 与首份快照长期未生成
- 目标结果:所有已接入上游的页面能够公平生成列表、汇总和筛选项快照;未放行范围明确列出并走生产授权
- 预计修改路径:modules/EcommerceFinance/Services/UpstreamQueryCache.php;tests/Unit/EcommerceFinance/JianSunQueryCacheTest.php
- 预计页面或路由:所有使用 upstream snapshots 的业务页面与 workspace-data 接口
- 预计 Controller / Repository:不修改业务 Repository;修复共享 UpstreamQueryCache 调度
- 数据源、表/视图和字段:jiansun 已有固定只读 Repository;不新增表、不改字段
- 上游 source_key / scope:jiansun;goods.*、invoice-deductions.*、taobao-alipay-bills.* 及既有快照范围
- 权限名、菜单键或共享组件:不修改
- 明确不修改的范围:不写生产数据库、不迁移、不部署、不修改上游 SQL 与业务金额逻辑

## 开工碰撞检查

- [x] Codex 已执行 scripts/codex-task-preflight.ps1
- [x] 已检查最新 main 和所有远程任务分支
- [x] 已搜索主线既有页面、接口、Repository 和数据查询
- [x] 未发现当前计划文件重叠

相关分支、重叠项与协调结论:两个历史本地共享数据库分支涉及 Pages.php 等文件;本任务缩小为 UpstreamQueryCache 与对应单测,不与其重叠。

## 实际改动

- 完成内容:WIP
- Codex 实际修改的文件:WIP
- 新增或变更的公共契约:WIP
- 与原计划的差异:WIP

## 验证证据

- 正常流程:WIP
- 空数据/错误输入/无权限场景:WIP
- 受影响旧功能:WIP
- 自动测试及结果:WIP
- 实际页面、接口或只读业务查询结果:WIP

## 风险检查

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

高风险影响、回滚和授权状态:代码修复本身不写生产数据;生产 allowed_scopes 调整、快照生成和部署必须另行取得明确授权。

## 合并前复查

- [ ] 已重新拉取远程引用并用实际修改范围再次运行碰撞检查
- [ ] PR 不再是 WIP:,所有测试结果已经补齐
- [ ] Codex 已重新读取原始需求和验收标准,并逐文件审核完整 diff
- [ ] Codex 自审确认无越界修改、重复实现、敏感内容、未处理冲突和未验证结果
- [ ] 合并顺序不会覆盖其他未合并任务
- [ ] 已授权当前任务的 Codex执行 Squash merge、验证 main 并清理任务分支
- [ ] 如涉及生产迁移、数据修复、删除、覆盖配置或部署,已另行取得对应高风险授权

Reviewed-on: http://git.1080p.hk/WuYongJie/CaiWuXiTong/pulls/2
2026-08-03 18:22:46 +08:00
6f945d2a79 Merge remote-tracking branch 'origin/main' into fix/sumu-product-prices
# Conflicts:
#	app/Http/Controllers/Business/Pages.php
#	modules/EcommerceFinance/Services/JianSunSnapshotRefresher.php
#	tests/Unit/EcommerceFinance/JianSunSnapshotRefresherTest.php
2026-07-30 18:07:38 +08:00
1950733844 功能:接入供应商应付数据与快照 2026-07-30 18:01:57 +08:00
85f3db56ce 合并:本地共享数据库验证与原材料数据页面 2026-07-30 16:11:38 +08:00
8a8ea93c63 功能:合并淘系支付宝上游账单 2026-07-30 10:22:37 +08:00
b5097cd2df fix: 合并本地静态资源性能修复 2026-07-27 15:53:35 +08:00
58528c16b9 fix: 分离程序资源与七牛业务文件存储 2026-07-27 13:39:15 +08:00
8234ed3510 fix: 保持七牛静态资源桶私有 2026-07-27 10:56:43 +08:00
222eca0e2d feat: 静态资源统一使用七牛存储桶 2026-07-27 10:45:49 +08:00
59da42ec7d 修复:完成新人双上游直连验收 2026-07-24 23:33:16 +08:00
53537bb9ee 修复:全新环境切换共享系统数据库 2026-07-24 22:30:14 +08:00
614dfeb9b0 修复:本地开发自动直读上游数据库 2026-07-24 22:13:00 +08:00
e36deb4c09 修复:兼容上游重复字段目录 2026-07-24 21:51:49 +08:00