300 Commits

Author SHA1 Message Date
e8d4e8e345 feat: 退款当前状态改为分钟级同步 (#899) 2026-11-05 19:05:23 +08:00
9e74221e0f fix: 日志扣分从十一月四日开始并展示合计 (#887) 2026-11-05 12:11:34 +08:00
5183ab650a feat: 增加日志漏写翻倍扣分规则 (#885) 2026-11-05 11:45:16 +08:00
fe208e0e51 fix: 退款待确认使用聚水潭当前状态 (#879) 2026-11-05 10:09:59 +08:00
88d24d61bb fix: 终版导入不再阻断重复内容行 (#877)
移除终版普通导入和大文件分片导入的重复内容异常判断。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-11-05 09:20:27 +08:00
825a9a1964 feat: 接入钉钉财务日报日志统计 (#876) 2026-11-04 22:19:15 +08:00
23f2e9943c feat: 增加退款每日同步和驾驶舱预警
退款待确认改为每日06:00专属同步,异常状态显示到财务驾驶舱。
2026-11-04 17:46:57 +08:00
026733e919 fix: 修正退货确认回执北京时间 (#869)
回执和机器人最近推送时间改用平台时区,避免 UTC 导致北京时间少 8 小时。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-11-04 17:31:08 +08:00
10e20f0df7 fix(发货数据): 采购退货出库商品明细以采购退货明细为准 (#865)
发货视图对采购退货单会重复出很多行(每行都写整单数量),拼接条码还会被截断出残码,
按视图累加把数量放大(如 1190330222661 聚水潭 93 件、财务 1083 件)。
现改为商品行以 rpt.jst_purchaseoutItem 为准:视图同条码沿用名称/长宽高,数量取明细;
视图没有的条码按明细补行;视图多出的残码/重复行丢弃;明细为空时仍按视图。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014nvGZkg27YMEdhry6eiuwf

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

## 任务占用与边界

- 任务名称:
- 实际开发者:
- 任务来源/团队分工:
- 目标结果:
- 预计修改路径:
- 将写入的公共契约(路由、Controller 方法、Repository、表/视图、`source_key`、`scope`、权限名、菜单键或共享组件):
- 仅复用、明确不修改的公共契约:
- 数据源、表/视图和字段:
- 上游 `source_key` / `scope`:
- 权限名、菜单键或共享组件:
- 明确不修改的范围:

## 开工碰撞检查

- [ ] Codex 已执行 `scripts/codex-task-preflight.ps1`
- [ ] 已检查最新 `main` 和所有远程任务分支
- [ ] 已搜索主线既有页面、接口、Repository 和数据查询
- [ ] 已把“将写入”和“仅复用、不修改”的公共契约分开;仅复用项不作为单独阻断条件
- [ ] 未发现实际写入重叠;或已在下方写明相关分支、具体重叠项和协调结论

相关分支、重叠项与协调结论:

## 实际改动

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

## 验证证据

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

## 风险检查

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

高风险影响、回滚和授权状态:

## 合并前复查

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

Reviewed-on: #865
2026-11-04 16:07:35 +08:00
973433a4b7 feat: 厂家确认后退货群发送回执 (#859) 2026-11-04 14:41:48 +08:00
9e66ada22b fix: 厂家退货净扣减不计预估金额 (#856) 2026-11-04 13:50:13 +08:00
3cefc22aaa feat: 调整供应商退货字段与明细布局 (#853) 2026-11-04 12:06:32 +08:00
42cdcec9c2 feat: 厂家退货明细支持全部确认回传 (#851) 2026-11-04 11:54:01 +08:00
61ab46c708 feat: 钉钉退货推送改为表格明细链接 (#850) 2026-11-04 11:40:29 +08:00
0ed02e95f7 feat: 供应商列表分页并增加整月退货推送 (#847) 2026-11-04 10:08:50 +08:00
661fbca7d3 fix: 供应商对账日期容差调整为一周 (#846) 2026-11-04 09:31:01 +08:00
6e054e4e8a fix: 供应商对账支持日期两天容差匹配 (#845)
严格匹配未命中时,同采购单号、同商品编码且数量金额一致、日期相差不超过 2 天,按一致处理。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-11-04 09:17:18 +08:00
43390be327 feat(线上代发价格): 识别改版明细表格 + 新增报销成本核查(多报销) (#841)
1) 钉钉「线上代发业务报销」有 23 张已通过审批单的商品明细表格不叫“收款费用明细”(新版模板表格名为空、旧单叫“费用明细”),
   同步时整单只剩一行空明细。按名称找不到时改取行内含“商品ID”列的明细表格;料号兼容新版“商品编码”。上线后对该数据集全量重同步。
2) 新增报销成本核查:按聚水潭订单由本行商品编码拆出的子商品,取普通商品资料成本价×发货数量求和为系统成本,
   与代发订单金额比较,高出 0.01 元以上判“多报销”,另有“成本缺失”“无发货明细”;页面新增筛选、计数、多报销金额汇总及四列,导出同步。

涉及:金额核查展示(只读)、镜像全量重同步;不涉及迁移、权限和上游写入。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VANWYsNUbu2piMtCKymoyd
2026-11-03 17:13:56 +08:00
aac29710fe feat: 管理费用明细增加店铺与金额下钻 (#837) 2026-11-03 11:11:11 +08:00
9189d33ec5 fix(发货数据): 出库单实发明细与旧记录条码不同时以出库单为准覆盖 (#835)
- 早期同步时找不到出库单实发明细的包裹,商品用订单商品兜底(配件母件、被替换的原商品等,数量多为0但带金额);
  之后出库单明细到齐,因新明细没有金额、"金额对不上"一直保留旧记录,导致条码/件数/体积与聚水潭不符
  (10.1-10.25 约 3000 单,如配件仓记成母件 DNZ0134108N24V01,实发为 -23/-30/-31/-41 配件)。
- 新商品取自出库单实发明细(发货数据视图)且条码集合与旧记录不同:按出库单覆盖,条码相同的行沿用旧金额,
  计入 packages_items_corrected;条码完全相同或旧记录无条码时仍按原规则保留,避免丢金额。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014nvGZkg27YMEdhRy6EiUwf

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

## 任务占用与边界

- 任务名称:
- 实际开发者:
- 任务来源/团队分工:
- 目标结果:
- 预计修改路径:
- 将写入的公共契约(路由、Controller 方法、Repository、表/视图、`source_key`、`scope`、权限名、菜单键或共享组件):
- 仅复用、明确不修改的公共契约:
- 数据源、表/视图和字段:
- 上游 `source_key` / `scope`:
- 权限名、菜单键或共享组件:
- 明确不修改的范围:

## 开工碰撞检查

- [ ] Codex 已执行 `scripts/codex-task-preflight.ps1`
- [ ] 已检查最新 `main` 和所有远程任务分支
- [ ] 已搜索主线既有页面、接口、Repository 和数据查询
- [ ] 已把“将写入”和“仅复用、不修改”的公共契约分开;仅复用项不作为单独阻断条件
- [ ] 未发现实际写入重叠;或已在下方写明相关分支、具体重叠项和协调结论

相关分支、重叠项与协调结论:

## 实际改动

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

## 验证证据

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

## 风险检查

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

高风险影响、回滚和授权状态:

## 合并前复查

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

Reviewed-on: #835
2026-11-03 10:41:34 +08:00
801df996d4 feat: 增加供应商整月退货钉钉推送 (#833)
增加供应商对账整月退货推送入口,支持全部确认状态、按消息容量自动分批、不限制退货行数;补充设置字段容量迁移。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-11-02 22:02:18 +08:00
67c85678e6 feat: 接入网商银行每日动账明细 (#831)
Co-authored-by: 92451 <924518135@qq.com>
Co-committed-by: 92451 <924518135@qq.com>
2026-11-02 20:58:42 +08:00
46f62575ff perf: 优化OA流程刷新等待与并发 (#830) 2026-11-02 18:14:11 +08:00
fb5311d159 fix: 纳入有打款时间的承兑付款 (#827) 2026-11-02 17:32:15 +08:00
7f4de3fb8f fix: 增加OA流程定向快速补刷新 (#826) 2026-11-02 17:22:34 +08:00
c8a941e085 fix: 对平OA付款月份与费用明细 (#824) 2026-11-02 16:54:38 +08:00
9260549d83 fix: 管理费用按付款明细行分摊到月份 (#823)
新增付款明细行分摊镜像,跨月分笔付款按实际月份和金额统计管理费用。
2026-11-02 16:32:14 +08:00
e7eb1c9398 fix: 为无科目OA模板增加费用归类兜底 (#822)
应付申请和线上代发模板缺少科目时使用默认费用归类,保留已有具体科目优先。
2026-11-02 16:15:52 +08:00
2eacf65c22 fix: 补齐OA明细科目并自动回补历史空值 (#821)
按官方明细补齐副本缺失科目列,自动回补历史空科目,并增加其他押金映射。
2026-11-02 16:06:20 +08:00
d9d7b270d7 fix: 用钉钉官方状态纠正OA副本滞后 (#820)
审批副本仍为 RUNNING 时,以钉钉官方最终状态和最后完成节点校正镜像。
2026-11-02 15:50:52 +08:00
d45dc19261 fix(发货数据): 清理包裹里残留的订单占位商品行(数量0),件数随之更正 (#815)
- 订单里被替换的原商品、组合装原套装等(数量 0、金额 0/空、item_status=Replaced),
  聚水潭销售出库单不显示;占位过滤上线前入库的包裹,之后因"金额对不上保留旧包裹"一直保留着这些行,
  导致商品编码多出、件数(1/N)偏大,按件数加收的面单费跟着多算。
- 每次窗口同步后,包裹已有实发商品时删除这些占位行,件数改为实发行数;
  首行若是占位行,其上的重量/运费/结算等包裹级字段先挪到保留的首行。
- 同步修正单测 test_view_item_with_unmatched_synthetic_sku_retains_old_package_and_marks_items_pending 的预期:
  main 上已上线"新旧条码完全不同视为商品已更正、覆盖旧记录",原用例仍按旧行为断言 2 个保留包裹,与现行逻辑不符。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014nvGZkg27YMEdhRy6EiUwf

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

## 任务占用与边界

- 任务名称:
- 实际开发者:
- 任务来源/团队分工:
- 目标结果:
- 预计修改路径:
- 将写入的公共契约(路由、Controller 方法、Repository、表/视图、`source_key`、`scope`、权限名、菜单键或共享组件):
- 仅复用、明确不修改的公共契约:
- 数据源、表/视图和字段:
- 上游 `source_key` / `scope`:
- 权限名、菜单键或共享组件:
- 明确不修改的范围:

## 开工碰撞检查

- [ ] Codex 已执行 `scripts/codex-task-preflight.ps1`
- [ ] 已检查最新 `main` 和所有远程任务分支
- [ ] 已搜索主线既有页面、接口、Repository 和数据查询
- [ ] 已把“将写入”和“仅复用、不修改”的公共契约分开;仅复用项不作为单独阻断条件
- [ ] 未发现实际写入重叠;或已在下方写明相关分支、具体重叠项和协调结论

相关分支、重叠项与协调结论:

## 实际改动

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

## 验证证据

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

## 风险检查

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

高风险影响、回滚和授权状态:

## 合并前复查

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

Reviewed-on: #815
2026-11-02 13:19:19 +08:00
18ca6c6f11 fix: 回填钉钉表头科目到流程明细 (#812)
明细行缺少科目时使用审批表头科目回填。
2026-11-02 11:29:25 +08:00
bc4844ed36 fix: 补齐钉钉未命名费用明细表 (#810)
按金额列识别未命名费用明细表,补齐科目和金额。
2026-11-02 10:58:11 +08:00
675ed67211 fix: 负数预警发送剔除已回传处理结果
自动推送与页面发送统一按账期和供应商剔除已回传处理结果。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-11-02 10:19:21 +08:00
8132406482 fix(发货数据): 商品更正不再被旧金额挡住;信誉订单仓/礼品单只记虚拟码 (#806) 2026-11-02 08:37:08 +08:00
20b6b0ea15 fix(发货数据): 快递单号对应本包裹实发商品;虚拟单只记虚拟码;新增只读诊断命令 (#805) 2026-11-01 19:10:33 +08:00
92a720d4c4 feat: 开放财务台账动账明细编辑权限 2026-10-30 23:33:56 +08:00
7b0b132514 fix: 管理费用改按本月已审批流程统计 (#801)
管理费用默认展示本月审批已完成的数据,去掉审批单和明细行数量,并同步审批完成时间用于筛选。
2026-10-30 21:25:37 +08:00
040d0d08ae feat: 接入公司支付宝账单与台账手动编辑 (#797)
接入公司非店铺支付宝账单、受限批处理导入,并为账户总表及每日资金流水增加管理员手动编辑与审计。
Co-authored-by: 92451 <924518135@qq.com>
Co-committed-by: 92451 <924518135@qq.com>
2026-10-30 20:03:04 +08:00
0591d0d94f feat: 同步OA发起人部门 (#796)
新增发起人部门镜像字段,并在表格和导出中放到发起人之前。
2026-10-30 19:39:46 +08:00
685ff90b36 hotfix: 修复OA任务时间与页面刷新入口 (#790)
恢复钉钉北京时间显示,并将页面刷新请求接到实际控制器。
2026-10-30 15:43:09 +08:00
7b8a5e1214 feat: 增加OA进行中流程按需刷新 (#785)
页面进入时仅异步刷新当前页审批中的流程,并自动载入最新镜像。
2026-10-30 15:04:43 +08:00
7f9f13025d fix: 展示OA真实等待小时并优化同步状态 (#784)
等待时长改为实际小时,并修正无在途任务提示与同步完成时间。
2026-10-30 14:50:34 +08:00
65fbb1a179 fix/shipping-ship-time-outbound-1030122606 (#782)
> 开工时标题使用 `WIP: <任务名称>` 并先填写“任务占用与边界”。Codex 完成独立合并前自审后补齐其余内容并移除 `WIP:`。

## 任务占用与边界

- 任务名称:
- 实际开发者:
- 任务来源/团队分工:
- 目标结果:
- 预计修改路径:
- 将写入的公共契约(路由、Controller 方法、Repository、表/视图、`source_key`、`scope`、权限名、菜单键或共享组件):
- 仅复用、明确不修改的公共契约:
- 数据源、表/视图和字段:
- 上游 `source_key` / `scope`:
- 权限名、菜单键或共享组件:
- 明确不修改的范围:

## 开工碰撞检查

- [ ] Codex 已执行 `scripts/codex-task-preflight.ps1`
- [ ] 已检查最新 `main` 和所有远程任务分支
- [ ] 已搜索主线既有页面、接口、Repository 和数据查询
- [ ] 已把“将写入”和“仅复用、不修改”的公共契约分开;仅复用项不作为单独阻断条件
- [ ] 未发现实际写入重叠;或已在下方写明相关分支、具体重叠项和协调结论

相关分支、重叠项与协调结论:

## 实际改动

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

## 验证证据

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

## 风险检查

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

高风险影响、回滚和授权状态:

## 合并前复查

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

Reviewed-on: #782
2026-10-30 12:59:49 +08:00
6b8c447134 fix: 修正OA等待时间时区与镜像调度 (#781)
修正 OA 任务 UTC 时间转换、等待时长粒度和流程增量同步调度。
2026-10-30 10:18:57 +08:00
122dda9907 fix: 补全OA离职员工审批人姓名 (#779) 2026-10-29 22:59:38 +08:00
d5c55a8dbb fix: 精确隔离OA审批接口故障 (#778) 2026-10-29 22:41:53 +08:00
9ae1c05862 fix: 隔离OA审批接口单条失败 (#777) 2026-10-29 22:27:28 +08:00
4c746d488d fix: 补全OA审批中流程当前办理人 (#775) 2026-10-29 22:14:55 +08:00
8ae27c56eb fix: 显示OA出纳节点当前审批人 (#774) 2026-10-29 22:03:23 +08:00