|
|
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 |
|
|
|
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 |
|
|
|
3be1639fb2
|
feat: 推广费营销账户明细汇总
新增推广费(营销账户)页签、平台与原始店铺汇总、备注筛选和明细弹窗。
|
2026-10-27 19:27:41 +08:00 |
|
|
|
450a9e42f9
|
feat: 完善经营报表汇总与基础资料状态标签
经营报表保留原表头并补齐本表汇总;基础资料只增加表内分色标签。
|
2026-10-26 16:13:27 +08:00 |
|
|
|
b25ae15a4b
|
新增公司税务类型与工商类型字段 (#597)
公司基础信息和主体维度报表增加税务类型、工商类型字段,并复用 fin_companies 已完成核对的数据。
|
2026-10-26 15:04:42 +08:00 |
|
|
|
acafcf1abb
|
修正安装费汇总:保留独立安装明细页并按客服审核时间归集 (#589)
|
2026-10-26 14:13:18 +08:00 |
|
|
|
d2e20bd441
|
将安装费金额并入业绩明细 (#587)
|
2026-10-26 13:47:02 +08:00 |
|
|
|
3cff23c595
|
新增财务系统化待办与完成截图
新增财务系统化待办与完成截图
|
2026-10-25 16:23:08 +08:00 |
|
|
|
1d9b57898f
|
修正业绩明细订单核对金额展示 (#520)
核对口径命中时,订单金额展示实际参与比对的金额 (#520)
|
2026-10-24 19:58:11 +08:00 |
|
|
|
37090291b1
|
业绩明细:增加跨月对平备注并拆分费用明细 (#504)
|
2026-10-24 17:27:29 +08:00 |
|
|
|
7ce3ea340c
|
fix: 移除业绩明细商品金额展示 (#490)
Removed product amount from performance details summary, table and export.
|
2026-10-24 14:10:48 +08:00 |
|
|
|
4ffd853e7a
|
fix: 调整业绩明细标签列位置 (#484)
将标签列移动到匹配原因之后
|
2026-10-24 10:33:53 +08:00 |
|
|
|
127287a289
|
fix: 拆分违约赔付与普通冲减金额 (#481)
|
2026-10-23 21:42:36 +08:00 |
|
|
|
f7197b4976
|
财务分析新增开票/不开票费用,并补齐违约赔付预览 (#480)
## 任务占用与边界
- 任务名称:财务分析开票费用与业绩明细违约赔付预览
- 实际开发者:yueyang
- 任务来源/团队分工:负责人直接指定
- 目标结果:财务经营分析表按科目映射表拆分开票费用/不开票费用;业绩明细增加违约赔付(冲减收入)列并按指定顺序展示。
- 预计修改路径:业务 Pages Controller、财务分析视图、账单明细数据服务、业绩明细配置与相关测试。
- 将写入的公共契约:财务分析费用聚合、默认补偿预览命令、业绩明细列配置。
- 仅复用、明确不修改的公共契约:store_receipt_order_match_rows、ec_account_mapping_rules。
- 数据源、表/视图和字段:店铺收款账单镜像、store_receipt_order_match_rows、store_receipt_product_cost_rows、ec_account_mapping_rules。
- 明确不修改的范围:账单抓取与上游同步链路。
## 开工碰撞检查
- [x] Codex 已执行 scripts/codex-task-preflight.ps1
- [x] 已检查最新 main 和远程任务分支
- [x] 已搜索主线既有页面、接口和数据服务
- [x] 已将写入和复用契约分开
- [x] 预检列出的残留分支均无开放 PR;当前 2 个开放 PR 与本任务无关,确认无活跃写入冲突
## 实际改动
- 财务经营分析表增加“开票费用”“不开票费用”及合计;财务类型=费用,票据口径 0.06/0.09 归入开票,不开票归入不开票,金额按支出减收入净额。
- 费用聚合并入现有月度缓存,缓存键包含科目映射哈希,映射变化后自动失效。
- 业绩明细增加违约赔付(冲减收入)列,放在冲减金额后。
- CSV 导出列同步更新。
## 验证证据
- 正常流程:2026-07/08/09 实库数据计算成功;2026-09 开票费用 3,896,538.65,不开票费用 81,377.62。
- 实际页面:2026-09 财务经营分析表 438 行,两列与合计正常展示。
- 性能:单月费用聚合 7.0–13.6 秒,PHP 峰值约 65.5 MB;页面结果缓存 5 分钟。
- 自动测试:NavigationTest 目标 2 条通过(35 assertions),StoreReceiptMappingPreviewOverrideTest 2 条通过(5 assertions)。
## 风险检查
- [x] 不涉及数据库迁移或生产数据写入
- [x] 涉及金额口径,已用实库页面和固定总额核对
- [x] 未提交 .env、密码、Token、真实数据或构建产物
- [x] 前端符合 DESIGN.md 黑金表格样式
## 合并前复查
- [x] 已基于最新 main 53bd1dc4 变基
- [x] 完整 diff 自审,无冲突标记
- [x] 目标测试通过
- [x] 负责人已授权 Squash merge 和发布
Reviewed-on: #480
|
2026-10-23 19:05:35 +08:00 |
|
|
|
f1ecd4a978
|
feat: 业绩明细种菜报销与未报销合并为标签 (#478)
合并业绩明细种菜标签字段变更
|
2026-10-23 17:31:58 +08:00 |
|
|
|
cfb56c98a7
|
fix: 业绩明细复用既有精确差额备注 (#465)
|
2026-10-23 10:51:42 +08:00 |
|
|
|
9ab4e1e261
|
feat(财务台账): 移入经营报表快捷分组 (#446)
|
2026-10-21 20:50:24 +08:00 |
|
|
|
a57a8116bf
|
feat(财务台账): 移入财务经营报表并兼容旧链接
财务台账移入财务经营报表,兼容旧地址和旧权限键。
|
2026-10-21 11:39:31 +08:00 |
|
|
|
ffa4bbf15f
|
业绩明细新增种菜未报销列
|
2026-10-20 10:55:41 +08:00 |
|
|
|
4511f6c71a
|
业绩明细新增种菜报销列
|
2026-10-20 10:36:24 +08:00 |
|
|
|
cdabffb3a6
|
业绩明细删除费用项列及相关归集逻辑
|
2026-10-20 10:20:55 +08:00 |
|
|
|
366dcc1da7
|
业绩明细新增费用项并按科目映射费用备注归集
|
2026-10-20 10:00:53 +08:00 |
|
aaron
|
02d21ce9ac
|
feat(财务台账): 新增财务台账模块与 rpt 取数
|
2026-10-19 16:06:55 +08:00 |
|
|
|
424311a441
|
财务经营风险管控:「流程统计」页面及菜单改名为「店铺流程」
|
2026-10-19 15:18:28 +08:00 |
|
|
|
ea479733ab
|
feat(种菜数据汇总): 接入聚工单种菜报销,新增种菜损耗扣款页面
- 种菜报销:复用已登记镜像 jiansun.dbo.jst_workOrderInfo,工单类型“种菜报销”、状态已完成,
按完成时间归属报销月份(M 月 = [M-02 00:00, M+1-02 00:00)),自 2026-09-02 起;同一工单只取最新一版
- 种菜损耗:当月种菜报销的线上订单号匹配上月+本月发货数据(jst_oms_shipping)交易单号;
任务备注/卖家备注含“拍A发B/拍A发A”的不扣款(单独导出发运营),只发信誉订单虚拟条码/透明挂钩的不扣款,
其余按发货条码在普通商品资料(ops_jst_sku)的成本价 × 数量 × 1.2 扣款,成本价缺失单独提示
- 两页均支持筛选、列设置、CSV 导出;按月缓存 10 分钟
- 测试:窗口口径、免扣字样、虚拟条码/挂钩、成本价取数与缺失、页面筛选和导出
涉及:金额计算展示(只读);不涉及数据库迁移、权限模型和上游写入。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VANWYsNUbu2piMtCKymoyd
|
2026-10-19 14:37:09 +08:00 |
|
|
|
a3b36b1fb6
|
店铺维度报表销量改为收入+优惠+冲减+退款合计 (#389)
|
2026-10-19 10:47:29 +08:00 |
|
|
|
68b16a95c0
|
业绩明细备注:京喜「直营补贴款」覆盖扩至全部京喜自营工厂店(按实付≈商品金额/供货价特征自动识别,10 家已核验店沿用名单;待核实负差消除)
|
2026-10-19 09:34:57 +08:00 |
|
|
|
ed58e8ef43
|
供应商应付:新增厂家记账,接入聚工单记账工单(2026-09-01 起)
- 复用已登记镜像 jiansun.dbo.jst_workOrderInfo,不新增上游链路
- 口径与聚工单「记账」视图一致:工单类型“记账”,状态待审核/已拒绝/待处理/处理中/已完成,
记账原因为厂家记账 12 项 + 仓库记账 5 项二级原因,发起时间 >= 2026-09-01;同一工单只取最新一版
- 新页面 供应商应付 → 厂家记账:筛选、记账金额合计、列设置、CSV 导出;首次同步未完成时明确提示
- 镜像索引迁移 (woTypeId, created, Id)
涉及:金额展示(只读)、镜像索引迁移;不涉及权限模型和上游写入。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N5KQeRJaLrbJY9iKNC5veV
|
2026-10-18 22:27:16 +08:00 |
|
|
|
077701d24a
|
供应商应付:新增新河北仓、曹县仓配件运费扣除明细 (#381)
|
2026-10-17 20:54:13 +08:00 |
|
|
|
87eaf48c2c
|
供应商对账:应付款项下新增对账页面(财务端数据 / 厂家端数据) (#364)
新增供应商对账目录:财务端实时上传情况与行级差异(条码+单价匹配,四类口径),厂家端严格按模板上传(表头不一致/必填缺失/非数字/串厂一律失败);复用终版存储与流式读取。
|
2026-10-17 08:49:17 +08:00 |
|
|
|
82c79dadc3
|
feat: 店铺维度报表销量改取业绩明细的订单实付/实收金额 (#363)
|
2026-10-17 00:19:09 +08:00 |
|
|
|
b4eaa1e102
|
快递应付:新增配件补发扣款匹配界面 (#353)
|
2026-10-16 21:36:03 +08:00 |
|
|
|
c50244544d
|
业绩明细备注:京喜「直营补贴款」两条规则扩到 10 家店(出类拔萃 + 胜思创博家具/久伴吾家具/悦家/蓄势待发/日进斗金/上彩/美栖家/荣屹/亿家达京喜自营,均已逐店在结算单核实)
|
2026-10-16 17:18:42 +08:00 |
|
|
|
706b07b4ad
|
业绩明细:淘系支付宝/微信新增「订单实付含已退款部分」核实(差额/收款缺口/整单全退对上聚水潭已确认退款,与抖音同口径,EXISTS+HAVING 提速);店铺名优先展示线上真实店铺(修复「支付宝-公司」壳名);字段说明同步
|
2026-10-16 16:18:23 +08:00 |
|
|
|
6c76a373a3
|
业绩明细:合单发货取数优先取原单行(merge_so_id 为空),修复 878 行误取合并汇总金额(7/8月实付合计修正 -11.17 万);商品金额/实付/实收/应付统一三档优先级;字段结构说明同步新取数与口径兜底/待核实顺序
|
2026-10-16 12:00:42 +08:00 |
|
|
|
e064492a95
|
业绩明细备注:撤销「订单实付未减退款」(价保扣款类回归通用档「订单实付未减冲减」,该档 = 订单实付=收入+优惠 → 差额=冲减金额)
|
2026-10-16 10:02:57 +08:00 |
|
|
|
01abeb4124
|
业绩明细备注:京东价保扣款负差额(差额=账单「价保扣款」合计)新增标注「订单实付未减退款」(含索菲亚智能店 3587456013325741 等 20 单)
|
2026-10-15 17:58:11 +08:00 |
|
|
|
1706131d9c
|
业绩明细备注:索菲亚功能店并入「商家承担优惠」备注组(8 单已用营销对账逐单核实);索菲亚智能店负差为价保扣款、不属本类未纳入
|
2026-10-15 17:35:21 +08:00 |
|
|
|
f4a0014690
|
业绩明细备注:京东五店负差额按单拆分——含国补(聚水潭应付−账单收入>0)标注「订单实付包含商家承担优惠和以旧换新国补」,其余标注「订单实付包含商家承担优惠」
|
2026-10-15 17:19:26 +08:00 |
|
|
|
60163f6c32
|
业绩明细备注:京东索菲亚书房/亿家达全屋/朴美家居店负差额标注「订单实付包含商家承担优惠和以旧换新国补」(营销对账逐单核实)
|
2026-10-15 16:54:07 +08:00 |
|
|
|
6518995e45
|
业绩明细备注:京东索菲亚客厅/办公店负差额标注「订单实付包含商家承担优惠和以旧换新国补」
|
2026-10-15 15:40:54 +08:00 |
|
|
|
a4952dfa42
|
Revert "业绩明细:新增备注「订单退款未参与差额」;字段结构说明同步(差额待核实/匹配原因/三档新备注)"
This reverts commit 0d215fe20c22e2e2ba3dbe82411d760aa0d7bac2.
|
2026-10-15 14:27:47 +08:00 |
|
|
|
0d215fe20c
|
业绩明细:新增备注「订单退款未参与差额」;字段结构说明同步(差额待核实/匹配原因/三档新备注)
|
2026-10-15 14:23:10 +08:00 |
|
|
|
c314209705
|
业绩明细备注:京喜出类拔萃店负差额标注直营补贴款(待开票结算/订单退款已冲回)
|
2026-10-15 12:04:41 +08:00 |
|
|
|
c0aab60862
|
业绩明细:订单侧双口径核对(买家实付/卖家实收)+ 差额待核实 + 列名与筛选改名
- 同步:账单能对上卖家实收时按实收核对(差额归零、订单实付/实收列显示实收值),并写入标识「订单实付按卖家实收核对」
- 页面:新增兜底备注「差额待核实」(可筛选);该标识在「匹配原因」列展示并纳入筛选与联动计数
- 列名:「订单实付金额」→「订单实付/实收金额」;「未匹配原因」→「匹配原因」
- 新增 scripts/docker-fix-start.ps1(Docker 因僵尸 socket 起不来时一键清理并启动)
|
2026-10-14 17:54:56 +08:00 |
|
|
|
71652c5a64
|
feat(快递入驻): 快递扫码填写入驻资料 + 两级审核 + 首版报价 + 签署开通
快递应付 → 快递报价 下新增「快递入驻」页:生成入驻二维码发给快递方,
对方免登录在手机上填写主体、联系人、e签宝签署人、结算账户、报价并上传资质,
内部对接人初审、管理员财务复审后生成首版报价,并自动生成报价确认单 PDF
推送到快递填写的 e签宝账号,签署归档后开通。
- 新增三张表 business_courier_onboardings / _files / _events(纯新增,不改旧表)
- 免登录填报页 /onboarding/courier/{token}:40 位随机 token,可暂存、提交、退回后补件,
链接有效期可延长、可作废;银行账号加密存储;附件存 uploads 盘
- 新增 COURIER_ONBOARDING_PUBLIC_URL 配置二维码里的站点地址(留空用当前访问地址)
- 内置纯 PHP 二维码生成(App\Support\QrCode,SVG 输出,无新增依赖)
- 生成二维码时必须定好系统快递名称(唯一,快递方不可见);财务复审沿用该名称,快递所填报价写成报价管理的 CourierQuoteVersion,
复用 CourierQuoteSignatureService 生成报价确认单并推送 e签宝(失败可重推/同步状态);初审人默认不能复审(COURIER_ONBOARDING_ALLOW_SAME_REVIEWER=true 可在测试环境放开)
- 支持公司 / 个人两种入驻:个人填姓名+身份证号(加密)、传身份证和银行卡,报价确认单按个人身份在 e签宝签署
- 扫码先选入驻方式;证件改为 营业执照 / 法人身份证正反面 / 银行卡正反面 各一张(个人营业执照选填),手机端上传前自动压缩,超限回到填报页提示
- 报价支持 4 种计费方式(面单+费率 / 首重+续重 / 按重量段一口价 / 小重量一口价+超出另算,费率可分段)+「其他」上传报价表;附加规则:计泡、起算重量、取整、每票加收(CourierQuoteStructure)
- 不再要求上传盖章报价单,至少填写一行在线报价
- 开通:报价确认单签署归档、或匹配到已签署协议、或填写线下签署说明
- 生成二维码前必填「快递公司代码」(自动大写、不可重复),入驻信息按代码对齐快递资料
- 公司入驻对公(营业执照主体)+ 对私(法定代表人)两个打款账户必填并自动核对;个人入驻对私必填、对公选填
- 变价:报价管理里后台改价 → 审核 → 自动推送快递 e签宝 → 回签;回签单导出 xlsx/zip;误发版本可作废
- 短期(临时)变价:变价单/报价版本加选填「结束日期」(end_date);按日期取价,期间用临时价,到期次日自动恢复原长期报价,
不用重签;报价管理显示 生效中(临时)/ 暂停中 / 已到期,确认单写明执行期间和到期后恢复的版本,审核提醒期间重叠
- 快递资料分四类:快递资料 / 网点 / 打款信息 / 操作日志,支持查询、导出、重置、编辑;
财务系统入驻的快递直接作为快递资料行,合同起止取协议签署里已签署的合作合同;
点开一行在下方看该快递的网点 / 打款信息(完整账号)/ 操作日志
- 编辑存财务系统覆盖值(business_courier_profiles,不回写工作平台),改动记操作日志(business_courier_profile_events)
- 打款信息新增 / 变更(business_courier_payment_accounts,账号加密)保存后跳到协议签署,自动预填收款账户证明 / 收款账户变更,
按签署状态显示 待推送协议 / 签署中 / 已生效;入口在快递资料明细和「打款信息」页签(表格每个账户可直接「变更」)
- ERP 开通:入驻开通后标「待 ERP 开通」,可手动补录(钉钉「新建快递」流程同步待接入)
- 新增 CourierOnboardingWorkflowTest(8 个用例),更新快递报价目录顺序断言
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019gzfsnV3fJ89CoUy1D9V9g
|
2026-10-14 13:47:00 +08:00 |
|
|
|
ea80148dfc
|
店铺违规预警:级别/责任人/处理截止/超时/推送状态 + 处理状态四档 + 群推送接口 + 预览统计页 (#332)
|
2026-10-13 19:54:01 +08:00 |
|
|
|
8a67c7d768
|
业绩明细:1688采销专用收款单独成档(未匹配原因新增两档)
- 同步逻辑:「支付宝-1688采销专用」账户的未匹配行写「账单无单号(采销收款)」「1688采销收款(非销售单)」,不再混进「订单表无此单」
- 页面筛选:未匹配原因下拉补上两档
- 字段结构说明同步更新
|
2026-10-13 17:46:18 +08:00 |
|