909 Commits

Author SHA1 Message Date
fa3edabaed fix: 人工费用现金及福利费按公积金基数分配 2026-10-28 17:57:42 +08:00
00d1c8b90f feat: 推广费营销账户增加收入与余额统计 (#748)
推广费(营销账户)新增收入金额、余额列和三项汇总卡,余额按收入减支出计算。
2026-10-28 17:43:36 +08:00
7048910e01 fix: 避免OA付款补查被接口额度饿死 2026-10-28 17:41:07 +08:00
dba1eb3528 fix: 系统化待办保存不再整页刷新 2026-10-28 17:28:22 +08:00
97765e6251 fix: 调整人工费用公积金基数第一档 (#745)
新公积金缴存基数第一档调整为 5025 元。
2026-10-28 17:20:01 +08:00
79e72382d6 feat: 新增售后退货退款预警子页 (#744)
feat: 新增售后退货退款预警子页 (#744)
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 17:13:55 +08:00
482825afc2 fix: 保持系统化待办操作后的浏览位置 2026-10-28 16:59:49 +08:00
79fad431df feat: 自动推送负数预警并支持处理截图 (#742)
每日自动推送未处理供应商,增加处理截止时间和截图上传。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 16:32:21 +08:00
75d63602ad feat: 展示负数预警最新账期合计 (#741)
在采购钉钉任务页展示最新账期供应商负数合计。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 16:19:00 +08:00
c64c6f5a54 feat: 供应商负数预警按采购一键分派 (#740)
一次点击按采购拆分任务,并用一条钉钉群消息发送全部采购独立处理链接。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 16:09:53 +08:00
aa3432d3ce feat: 供应商负数预警钉钉采购处理闭环 (#737)
增加采购筛选、群机器人任务发送、钉钉内逐供应商处理和结果回传。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 15:39:17 +08:00
6eae3c6da5 feat: 供应商负数预警展示采购人员 (#734)
按供应商名称批量匹配供应商管理中的采购人员,并在负数原因后展示。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 14:41:10 +08:00
780775da3d fix: 防止系统化待办日期误选 (#733) 2026-10-28 14:38:17 +08:00
a20af2e067 feat(线上代发价格): 新增实际发货商品编码与聚水潭标记|多标签两列 (#730)
## 做了什么
线上代发价格页面与 CSV 导出新增两列:
- **实际发货商品编码**:按店铺交易单号(钉钉行)/内部单号(采购单行)关联聚水潭订单(非淘系 + 淘系),列出组合装拆开后的子商品编码×数量;优先只取本行商品编码拆出的子商品,普通商品取自身,对不上时列整单;忽略被拆分/合并/作废原单,拆单合并显示
- **聚水潭标记|多标签**:订单 labels

## 修改文件
- modules/EcommerceFinance/Repositories/DingOnlineDaifaPriceMirrorRepository.php
- app/Http/Controllers/Business/Pages.php(导出加列)
- resources/views/business/pages/product-inventory/online-daifa-price.blade.php
- tests/Unit/EcommerceFinance/OnlineDaifaShipSkuLabelsTest.php(新增)、tests/Feature/Business/OnlineDaifaPricePageTest.php

## 验证
- 新增 4 个单测(组合装、混合订单、拆单、无订单)+ 原采购单单测在精简 Laravel 环境通过;Feature 测试新增断言未在完整环境运行
- 只按当前页/导出每 200 行的单号做 so_id/o_id 索引等值查询,不扫全表

## 风险
不涉及金额计算、权限、数据库结构或配置;只读镜像表。

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_012AvVQFrueqWakFKTdSyu5q

Reviewed-on: #730
2026-10-28 14:34:05 +08:00
178b046137 fix: 固定系统化待办日期选择位置 (#732) 2026-10-28 14:21:17 +08:00
c8e24f5866 fix: 冻结供应商负数预警关键列
隐藏公司主体名称并冻结供应商简称及之前的列。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 14:21:03 +08:00
32669b4bc9 fix: 调整供应商负数预警筛选公式
按供应商余额减应付余额加预估金额的公式筛选负数预警记录。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 14:12:13 +08:00
872869a83f style: 移除系统化待办辅助内容 (#728) 2026-10-28 14:04:26 +08:00
c71a608993 fix: 供应商负数预警展示完整终版字段
供应商负数预警按终版供应商应付表的完整字段与顺序展示负余额记录。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 13:59:58 +08:00
e00d7cf871 feature/qiuxiang-jst-ssdd-seller-remark (#725)
> 开工时标题使用 `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: #725
2026-10-28 13:48:37 +08:00
a934229ccc feat: 接入供应商负数预警数据
供应商负数预警读取供应商应付终版数据集,筛选供应商余额小于 0 的记录。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 13:42:28 +08:00
5e4d0fe356 feat: 冻结系统化待办类型和内容列 (#723) 2026-10-28 13:42:00 +08:00
6f453c5419 feat: 系统化待办备注合并到完成情况 2026-10-28 13:19:28 +08:00
b92913d330 feat: 系统化待办时间改为内联日期选择 2026-10-28 13:14:46 +08:00
f3f898b9dd fix: 删除待办后保持当前滚动位置 2026-10-28 13:05:41 +08:00
d71bd156b0 style: 收拢截图上传操作显示 2026-10-28 13:00:59 +08:00
e3355d8f36 style: 收拢系统化待办行内操作 2026-10-28 12:50:16 +08:00
5f7c7a3a92 feat: 系统化待办改为纯单元格直接编辑 2026-10-28 12:39:56 +08:00
df46217685 feat: 增加系统化待办类 Excel 表格编辑 2026-10-28 12:07:23 +08:00
3eba7507cb feat: 调整负数预警导航与子页面
将供应商和快递负数预警统一放到应付款项下的负数预警入口,并移除供应商对账中的旧入口。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 11:26:20 +08:00
4a4537612f feat: 将推广费页签迁移到营销账户账单 (#711)
> 开工时标题使用 `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: #711
2026-10-28 11:16:15 +08:00
8c38175318 feat: 新增供应商负数预警子页面
在供应商对账下新增供应商负数预警子页面,并将其置于子菜单第一位。
Co-authored-by: 苏木 <594326199@qq.com>
Co-committed-by: 苏木 <594326199@qq.com>
2026-10-28 10:35:49 +08:00
965b70df7e fix: 统一OA撤销状态和付款明细口径 (#709)
OA流程展示已撤销;付款待核实改用付款明细口径。
2026-10-28 10:07:29 +08:00
48b433be4d feat: 系统化待办按今日同步并优化 Excel 导入
操作记录默认从今日显示,并增强 Excel 同步的类型保护和同名分组匹配。
2026-10-28 09:37:21 +08:00
7dd2d66935 fix(发货数据): 补拉改到每晚21:28并记录日志,过滤订单商品数量0占位行,超长文本按列宽截断 (#707)
- 早上 7:28 的补拉在白天副本库高负载时频繁超时断开、未写入任何数据,改为每晚 21:28 拉最近 3 天;
  两次同步输出追加到 storage/logs/jst-sync-shipping.log,便于排查。
- 订单商品表中平台原始商品行(数量 0、金额 0)没有实际出库,聚水潭工作平台也不显示;
  包裹已有实发商品时不再写入,避免多出一个"条码"(实为平台商品编号)。
- 上游偶有超长值(如组合装商品ID 78 位)导致整批写入失败,写入前按 jst_oms_shipping 列宽截断。

> 开工时标题使用 `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: #707
2026-10-28 09:24:56 +08:00
d212de6900 fix: 更新系统化待办默认列宽
按页面当前调整结果更新系统化待办默认列宽并补充回归测试。
2026-10-27 20:22:29 +08:00
7954777212 fix: 合并系统化待办重复内容分组
统一系统化待办的换行编号与标点归一化,并补充回归测试。
2026-10-27 20:02:50 +08:00
3be1639fb2 feat: 推广费营销账户明细汇总
新增推广费(营销账户)页签、平台与原始店铺汇总、备注筛选和明细弹窗。
2026-10-27 19:27:41 +08:00
26c86df915 fix: 修正OA拒绝状态并支持打款日期范围 (#704)
审批拒绝优先于流程完成;打款时间改为开始至结算日期范围。
2026-10-27 19:23:46 +08:00
fd7078182c fix: 完善OA流程付款状态与日期筛选 (#702)
按实际数据展示OA流程付款状态,完善打款日期选择,并修复增量同步重复排序。
2026-10-27 18:32:50 +08:00
8aff2a4dce 账户异常待办增加进度与逾期预警
账户异常待办增加筛选范围内处理进度和 7 天未完成逾期预警。
2026-10-27 18:23:20 +08:00
4cd3a9e571 fix: 隔离店铺台账余额快照来源
避免店铺台账专用快照影响提现管理余额匹配。
Co-authored-by: 92451 <924518135@qq.com>
Co-committed-by: 92451 <924518135@qq.com>
2026-10-27 18:21:55 +08:00
1cb04adc7b feat: 店铺台账接入每日余额、预留标准与预警
完成店铺台账每日余额来源、日期筛选、预留标准和连续3天预警。
Co-authored-by: 92451 <924518135@qq.com>
Co-committed-by: 92451 <924518135@qq.com>
2026-10-27 18:13:00 +08:00
c33bb7308e feat: 联动系统化待办负责人和责任人 (#697)
## 实际改动

- 提醒筛选项“无提醒”改为“已完成”,保持原有已完成筛选逻辑。
- 总负责人和责任人建立双向关联:选择总负责人后只显示对应责任人,选择责任人时自动勾选对应总负责人。
- 编辑弹窗将原生联想输入改为统一的勾选面板,并使用同一套负责人关联逻辑。
- 责任人关联同时支持固定映射和现有数据推导,惠兰等未在固定清单中的人员也能从历史数据正确归属。
- DESIGN.md 与机器设计规范新增跨设备控件准则,后续页面统一复用内置字体和自绘控件。

## 验证证据

- SystemizationTodosTest 通过:23 tests,343 assertions。
- 覆盖已完成筛选标签、固定人员映射、历史数据推导和自定义责任人控件。
- 不涉及数据库迁移、金额、权限或上游数据。

## 合并前复查

- 基于最新 origin/main(da546877)开发。
- 已自审完整 diff,未包含敏感信息或无关修改。
- 提交:fa7d2608。

Reviewed-on: #697
2026-10-27 18:10:54 +08:00
c65b17d979 fix: 统一系统化待办跨设备布局 (#695)
## 实际改动

- 全站中文改用仓库内置 Web 字体,消除 macOS PingFang 与 Windows 微软雅黑造成的字宽、换行和控件尺寸差异。
- 系统化待办筛选改为固定六列桌面网格,避免不同屏幕缩放导致控件错位或日期占位符被截断。
- 下拉框、复选框和搜索框统一关闭系统原生外观并使用同一套黑金样式。
- 表格列宽改为公司级共享配置:任意电脑调整后,其他电脑重新进入页面使用同一列宽;仍保留拖动调整和恢复默认功能。

## 验证证据

- SystemizationTodosTest 通过:22 tests,333 assertions。
- laravel-mix production 构建通过。
- 覆盖共享列宽保存、页面读取和路由返回。
- 不涉及数据库迁移、权限、金额口径或上游数据。

## 合并前复查

- 基于最新 origin/main(5f248672)开发。
- 已自审完整 diff,未包含敏感信息或无关修改。
- 提交:593a8019。

Reviewed-on: #695
2026-10-27 17:31:07 +08:00
5f248672c7 fix: 统一系统化待办总负责人映射 (#694)
## 实际改动

- 系统化待办总负责人筛选统一为四类:人参、晨曦、常仪、待定。
- 苏木、李斯、周生辰归入人参;玉兔、山时、林冲、杳杳归入常仪;栎阳、秋香归入晨曦。
- 本身已是人参、晨曦、常仪、待定的数据保持不变。
- 历史非规范值在读取时归并,不批量改写现有数据;手工新增或修改时按四类保存。
- 表格显示、编辑弹窗和筛选查询使用同一套映射。

## 验证证据

- SystemizationTodosTest 通过:21 tests,327 assertions。
- 覆盖玉兔归常仪、周生辰归人参、原有总负责人保留、待定及空值、旧筛选参数兼容。
- 不涉及数据库迁移、权限、金额口径或生产配置。

## 合并前复查

- 基于最新 origin/main(4a1afd5246)开发。
- 已自审完整 diff,未包含敏感信息或无关修改。
- 提交:ba9fc15d。

Reviewed-on: #694
2026-10-27 16:59:07 +08:00
4a1afd5246 fix: 修正系统化待办人员筛选并调整查询按钮 (#693)
## 实际改动

- 系统化待办责任人筛选支持斜杠分隔,组合姓名会拆分为两个独立候选。
- 查询表单主按钮由“筛选”调整为“查询”。
- 涉及 Controller、页面 Blade、专项 Feature Test 共 3 个文件。

## 验证证据

- SystemizationTodosTest 通过:19 tests, 315 assertions。
- 新增查询按钮断言和斜杠多人责任人拆分回归测试。
- 不涉及金额口径、权限、审批、数据库迁移或生产配置。

## 合并前复查

- 已基于最新 origin/main(b3e6f859)rebase。
- 已自审完整 diff,未包含敏感信息或无关修改。
- 工作区干净,提交 01c746fd。

Reviewed-on: #693
2026-10-27 16:39:18 +08:00
b3e6f85934 流程数据导航、OA流程改名及分页选项 (#689)
把原流程明细移入流程数据分类并改名OA流程,支持每页 50/100/200 条。
2026-10-27 16:29:04 +08:00
fcf49d1264 style: 系统化待办多人姓名逐行展示 (#692)
## 改动内容

- “总负责人”和“责任人”中的多人姓名改为逐行展示。
- 去掉顿号、逗号、分号等分隔符。
- 单人姓名和空值展示保持不变。
- 原始数据、筛选、编辑和操作记录不受影响。

## 验证

- 待办专项测试:18 tests,307 assertions
- 新增多人总负责人、三人责任人逐行渲染测试
- 前端样式复用现有表格式样,不改变页面整体布局

## 风险

- 不涉及数据库迁移、金额、权限或生产配置。

Reviewed-on: #692
2026-10-27 16:25:28 +08:00
04948081b8 fix: 修正系统化待办浏览器上传识别 (#691)
## 问题与修复

浏览器上传的 Excel 落在 PHP 临时路径时没有 .xlsx 后缀,原逻辑只检查临时路径,导致合法工作簿被误判为非 Excel。

本修复增加原始上传文件名参数,优先按用户选择的文件名识别扩展名;命令行导入仍按实际文件路径识别。

## 验证

- 待办专项测试:17 tests,303 assertions
- 新增真实上传路径回归测试:临时文件无扩展名、原始文件名为 .xlsx 时可正常同步
- 新增数据同时写入操作记录

## 影响与发布

- 不新增数据库迁移
- 修复前请求未写入任何待办数据
- 合并后热修复发布,再重新导入新版工作簿

Reviewed-on: #691
2026-10-27 15:54:38 +08:00