10 Commits

Author SHA1 Message Date
e5922dd78e 订单售后费用明细 / 商品推广费用明细:订单号和商品编码支持批量查询
两个页签的「订单号」「商品编码」改成多行输入框,可以直接粘一整列:
每行一个,或用逗号、空格、分号、顿号分隔,一次最多 50 个值,多值取并集。

- 订单号批量:先去两套来源解析候选 o_id(单表、等值 IN,走各自前缀索引),
  再按订单过滤;单个订单号仍保留「从头匹配」的模糊语义。
  线上实测 20 个真实单号解析 0.01 秒。
- 商品编码批量:每个编码在 商品/款式/店铺编码(推广页为 item_id)里匹配一组,
  多组 OR;仍受统计日期/订单日期范围约束。
- 非淘系旧查询路径同步支持批量,保持两套口径一致。
2026-10-07 13:55:02 +08:00
4b97b30a3a 商品推广费用明细:店铺筛选改成和订单售后费用明细一致的多选控件
- 把「店铺名称:可点选的多选 + 模糊搜索」抽成公共组件
  partials/order-data-shop-picker.blade.php,订单售后费用明细改为引用它,
  商品推广费用明细用同一个控件(原来是一个纯文本输入框)。
- 推广页提交 shop_name[](多个取并集),后端镜像查询和非淘系旧查询都改成
  按多个店铺 OR 匹配,仍兼容原来的单个 shop_name。
- 推广表的店铺名带下划线(天猫_卓禾家具旗舰店),和订单镜像的「天猫-…」
  不是同一套命名,所以候选单独取自 ops_item_sales_cost_ratio 当前统计日期
  出现过的店铺,按日期缓存 24 小时(单次约 0.4 秒、约 400 个店铺)。
2026-10-07 13:39:25 +08:00
af8f1403fb 修复运费对账汇总卡死与订单店铺候选查询过慢
- 运费对账全量汇总:哈希关联的 join buffer 从 16MB 提到 128MB(空间上限 384MB)。
  300 万行明细 × 400 万行最新关联表在 16MB 下会退化成磁盘多趟扫描,实测超过
  max_statement_time(300s) 也跑不完,页面「记录数/运费合计」永远停在计算中;
  调整后约 110 秒出结果并写入缓存。
- 订单售后费用明细店铺候选:改回两个来源各自 DISTINCT 后在 PHP 合并(UNION 会
  把两个上百万行结果一起物化去重排序)。同时完整候选只算一次并缓存 24 小时,
  冷缓存时先返回毫秒级的店铺目录,完整列表放到响应结束后补齐,避免页面为了
  下拉候选把工作进程占住两分钟。
2026-10-07 10:52:36 +08:00
83e5108ce6 订单售后费用明细:重置后不再自动带日期
- 点“重置”或提交空日期时,不再回填近 7 天默认区间,日期框保持为空并做不限日期查询
- 首次进入页面仍保留近 7 天默认区间;导出文件名在无日期时显示“不限日期”
- 补充过滤归一化与页面渲染用例
2026-10-07 10:00:20 +08:00
eda10bd740 订单售后费用明细:店铺筛选改为可点选的多选模糊查询
- 店铺名称由单个输入框改为可点选的多选下拉:候选里可按关键字模糊筛选、多选、全选当前结果/清空
- 提交 shop_name[],多个店铺取并集逐个模糊匹配;保留旧的单值 shop_name 兼容
- 候选来自订单镜像中真实出现过的店铺,缓存 1 小时;单次最多 50 个店铺,超出在面板内提示
- 补充仓库层与页面层用例
2026-10-07 10:00:20 +08:00
a03372c770 fix: 账单冲减复用订单售后费用口径 (#146)
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-09-09 17:42:42 +08:00
b66f223ebb 修复账单冲减取数和工单加载,整合快递页面上线 (#141) 2026-09-09 14:04:43 +08:00
cb02ca8a36 feat: show Jushuitan work orders on after-sales pages 2026-09-03 14:28:26 +08:00
d62ad27d0f fix: centralize shared business data and remove local sqlite path 2026-09-01 11:34:37 +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