714 Commits

Author SHA1 Message Date
23cbf8c05b 发布脚本:头条放心购原始账单镜像每天 09:30 定点刷新
- /etc/cron.d/caiwu-jiansun-snapshots 生成内容新增 09:30 一行,串行使用既有的上游同步锁
- 目的:保证店铺收款账户账单「抖音账户」当日/前一日资金流水在上班前已进系统,不依赖每分钟轮转的慢速推进
2026-10-06 15:42:47 +08:00
985281c100 店铺收款账户账单新增「总账备注」列,按平台+账单项目匹配映射表
- 新增 ec_account_ledger_remarks 表与 account-ledger-remarks:import 导入命令(平台/账单项目/总账备注)
- 新增 AccountLedgerRemarkMap:按店铺名前缀识别平台(天猫/淘宝/阿里巴巴/抖音/得物/京东/京喜/拼多多/唯品会),无前缀用页签默认平台
- 全部账户页签在「店铺/店铺名称」右侧新增「总账备注」列(含淘系支付宝自有列定义),页面、列设置、导出共用同一份列定义
- 控制器在读取分页与导出流时补齐 payload.ledger_remark,不改动上游账单与镜像数据
- 用例:新增 AccountLedgerRemarkMapTest;修正唯品会 JX/MP 的列清单断言
2026-10-06 15:41:10 +08:00
6af12c030e 财务经营报表:新增账单明细页(多选筛选/日历选择/四项汇总/按列导出与进度/收款明细同款分页),科目映射表字段改名财务备注与财务类型
- 账单明细:7 个平台账单分支下推查询,按 active_generation 取当前版本(修正抖音重复计数),跨月大数据量由 73s 降到 1-2s

- 筛选:平台/店铺/账单项目/财务类型多选下拉(打字模糊搜索+滚动),日期改日历选择

- 导出:全部筛选结果 CSV 流式下载并按显示列最小取数,带进度轮询;列设置按账号存本机

- 分页:每页 10/20/50,首页/上下页/末页,第 X-Y 条/共 N 条

- 科目映射表:字段改名财务备注/财务类型(导入兼容旧名)
2026-10-06 15:35:16 +08:00
chenxi
a77d369d15 修复滚动月份代发仓判定丢失导致原始数量异常:按仓库简称兜底识别代发仓 2026-09-30 18:09:31 +08:00
chenxi
c0938893c7 更改价格分支补全:变价生效时间大于本月取变价前价格;均未匹配时留空并置“待人工核查” 2026-09-30 18:00:17 +08:00
chenxi
b49332e5d9 Merge remote-tracking branch 'origin/main' 2026-09-30 17:56:10 +08:00
chenxi
8ab825ed9e 采购数量/入库金额改为入库明细按大写条码+仓库简称汇总,采购单价=入库金额/采购数量 2026-09-30 17:56:06 +08:00
8132f83713 Merge branch 'fix/qiuxiang-jst-order-labels-count-cache' 2026-09-30 17:48:54 +08:00
c46a439d73 聚水潭订单标签明细分页总数改为缓存
无筛选时 COUNT(*) 在 233 万行上要 2 秒(冷缓存更久);改为缓存总数(30 分钟,导入时预热)并手工构造分页器,翻页不再重复统计。
2026-09-30 17:48:35 +08:00
625763176d Merge branch 'feature/qiuxiang-planting-data-section' 2026-09-30 17:44:23 +08:00
b2647fa26d 新增种菜数据汇总一级菜单并把两个明细页移入
账单流水数据下移出「种菜明细表」「聚水潭订单标签明细」,新增并列一级菜单「种菜数据汇总」(图标 grass)承载这两个页面;导出路由改到 workspace/planting-data/... 并同步路由名、页面中间件与导出链接;更新导航/页面用例(账单流水数据页签列表恢复原样)。
2026-09-30 17:44:06 +08:00
5bcd6b6c52 Merge branch 'fix/qiuxiang-jst-order-labels-options-cache' 2026-09-30 17:12:41 +08:00
77ac3c58fa 聚水潭订单标签明细筛选选项改为缓存并预热
233 万行上做 distinct 扫描要几秒;新增 JstOrderLabelOptions(按公司缓存 24 小时),页面读取缓存,导入命令结束时失效并预热,避免每次打开页面都等待。
2026-09-30 17:12:27 +08:00
chenxi
cf07ad499f 入库明细新增“总计”列(=金额+预估金额),页面与导出一致 2026-09-30 17:04:44 +08:00
chenxi
5ee0813490 入库明细数据:加仓库/条码筛选与导出接口,样式对齐进销存总表筛选栏 2026-09-30 16:55:13 +08:00
chenxi
f43ab57c49 入库明细表头完全按源表 21 列顺序展示(含重复的创建时间列) 2026-09-30 16:50:34 +08:00
chenxi
ebe4d006e5 入库明细表标记 data-finance-table-native,避免共享表脚本按单行表头隐藏全部列 2026-09-30 16:48:26 +08:00
chenxi
7cc9f13eac 进销存报表新增第三个页签“入库明细数据”(只读列表+月份切换+分页,先看数据) 2026-09-30 16:46:36 +08:00
chenxi
1c679f0215 入库明细仓库简称匹配规则:仓库名匹配,含代发仓字样的按仓储方匹配 2026-09-30 16:43:19 +08:00
chenxi
fdb7f77173 Merge remote-tracking branch 'origin/main' 2026-09-30 16:39:12 +08:00
fc6b83aee0 Merge branch 'feature/qiuxiang-jst-order-labels-page' 2026-09-30 16:40:37 +08:00
e5d6c76f27 账单流水数据新增聚水潭订单标签明细页
新增「账单流水数据 › 聚水潭订单标签明细」(紧邻种菜明细表):四列(线上订单号/店铺名称/下单时间/标签),按标签拆行(一个标签一行)、订单不去重、标签不汇总,无标签订单记为「(无标签)」。新增 jst_order_labels 表(含公司/时间/标签/店铺索引)、JstOrderLabel 模型、JstOrderLabelImporter(从镜像 ops_jst_orders 按区间拆行导入,--replace 只清同区间)与 jst-order-labels:import 命令、导出路由与用例。页面筛选:下单时间区间(点整块开日历、可单独清除)、店铺、标签、线上订单号。
2026-09-30 16:40:16 +08:00
chenxi
793c160f12 入库明细仓库简称匹配:仓库名唯一匹配不到时回退按仓储方唯一匹配 2026-09-30 16:39:09 +08:00
chenxi
5d4d2ef4df Merge remote-tracking branch 'origin/main' 2026-09-30 16:36:26 +08:00
chenxi
9ca01b5d65 进销存报表入库明细数据:新增镜像表与导入命令(原样导入不去重,仓库简称按仓库名唯一匹配) 2026-09-30 16:36:24 +08:00
149d7ef74f 修复终版其他子页面的导入弹窗不弹出
上一版按脚本内容去重,只有整页加载的那个子页面弹窗绑上了事件;切换页签后换进来的
新弹窗因为脚本内容相同被跳过,所以“其他子页面点导入没反应”。

改为给弹窗脚本加 data-caiwu-replay 标记:局部替换导航后每次都重新执行,
脚本自身按目标元素 data-ready 去重,重复插入不会重复绑定。
2026-09-30 15:58:24 +08:00
chenxi
6947aafc79 Merge remote-tracking branch 'origin/main' 2026-09-30 14:48:54 +08:00
chenxi
64a82cf135 条码+仓库统一为商品编码+仓库简称(镜像并入行同步修正),并重算7/8月 2026-09-30 14:48:49 +08:00
960d418c8e 发布构建支持指定 Composer 下载源
国内网络访问 GitHub 受限时,composer install 会因 GitHub dist 拉取失败而中断
(api.github.com / codeload.github.com SSL_ERROR_SYSCALL)。

- deploy/Dockerfile 新增可选构建参数 COMPOSER_REPO_PACKAGIST,留空仍用官方源
- macOS 发布脚本默认传腾讯云镜像,可用 CAIWU_COMPOSER_REPO_PACKAGIST 覆盖
2026-09-30 14:07:55 +08:00
a8f3178ab1 新增本机保存发布密码的小工具
- scripts/store-deploy-password.sh:交互输入一次服务器密码,写入 runtime/private/deploy-password
  (权限 600、已被 Git 忽略),避免依赖系统钥匙串授权窗口
- deploy-from-mac.sh 在该文件存在时自动使用,无需额外参数
2026-09-30 11:37:34 +08:00
ff3f3424c5 mac 发布脚本:登录信息只读一次,避免反复弹钥匙串
- 启动时只读取一次密码(钥匙串/密码文件/环境变量/交互输入),写入仅本人可读的临时
  askpass 脚本供 ssh 使用,避免每条 SSH 连接都触发钥匙串授权
- 新增 --password-file,写入钥匙串时用 -T /usr/bin/security 授予读取权限
2026-09-30 11:36:30 +08:00
Codex Yueyang
37d37b0844 科目映射表:加宽平台/大类/借贷科目列,避免唯品会JX、待处理财产损益被截断 2026-09-30 10:48:57 +08:00
Codex Yueyang
bb5b03ad80 科目映射表:大类新增「税费」(支出基准) 2026-09-30 10:40:59 +08:00
Codex Yueyang
126ef735a7 科目映射表:大类筛选只列出表里真的用到的大类,去掉空的和已清空的 2026-09-30 10:34:40 +08:00
cfde842d51 Merge branch 'fix/qiuxiang-planting-details-date-filter' 2026-09-30 10:28:17 +08:00
ff23b285db 种菜明细表时间筛选改为可用日期区间控件
原来的两个原生 date 输入只像一个按钮:新增点击整块输入框即打开日历(showPicker)、选完日期立即按当前条件查询、开始/结束日期各自可一键清除,并补充近7天/本月/上月/全部日期快捷区间;补用例断言这些控件存在。
2026-09-30 10:28:02 +08:00
f3ebfb942e 修复终版页签切换后导入/编辑按钮无反应
供应商应付工作区用局部替换方式切换页签,被替换进来的页面自己追加在 body_end
的行内脚本不会执行,导入/编辑弹窗因此没有绑定事件(原「供应商应付」下同样使用
行内弹窗的板材扣款页也受影响)。

现在导航完成后补执行一次新出现的行内脚本,并按源码内容去重,避免重复绑定。
2026-09-30 10:17:12 +08:00
Codex Yueyang
0c994d2465 科目映射表:筛选改为可多选(账单项目/平台/大类/方向基准),去掉账单项目搜索按钮 2026-09-30 10:05:05 +08:00
8613fa21c7 Merge branch 'fix/qiuxiang-planting-details-export-link' 2026-09-30 10:00:02 +08:00
d27f8d0299 种菜明细表导出链接显式带上 company_id
视图里的导出链接改为 array_merge(['company_id' => company_id()], request()->query()),在没有 URL 默认参数时也能生成正确链接。
2026-09-30 09:59:53 +08:00
494b60de54 Merge branch 'fix/qiuxiang-planting-details-id-column' 2026-09-30 09:56:04 +08:00
304bb3dc8e 种菜明细表:ID 列放宽为 text 支持多行 ID
源表「ID」列存在一个单元格多行放多个 ID 的行(导入时报 Data too long for column external_id)。新增迁移把 external_id 放宽为 text,导入器按 500 字符保留原文,并补用例覆盖多行 ID。
2026-09-30 09:55:51 +08:00
b106569905 Merge branch 'feature/qiuxiang-planting-details-page' 2026-09-30 09:51:10 +08:00
28b9271b3c 账单流水数据新增种菜明细表页面与导入
新增「账单流水数据 › 种菜明细表」页面:汇总卡(笔数/财务打款金额/财务售价/扣款/京喜差价)+ 筛选(日期区间/店铺/负责人/类型/标签/关键词)+ 分页 + 按筛选全量导出,样式沿用 upstream-data 黑金令牌。新增 planting_details 表(20 列与源表一一对应,金额保留 4 位小数)、PlantingDetail 模型、PlantingDetailImporter(xlsx/xls/csv,兼容 Excel 序列号日期与千分位金额)与 planting-details:import 命令。补 PlantingDetailsPageTest 覆盖导入、序列号日期、页面渲染、筛选与导出。
2026-09-30 09:50:50 +08:00
yueyang
d5a8209664 科目映射表:账单项目改成可点选+打字过滤的候选列表,并加搜索按钮 2026-09-30 09:34:22 +08:00
chenxi
aafbfb20c7 原始数量只取仓库名称含主仓的期初数量(南昌樵舍仓仍取三方-南昌樵舍仓主仓) 2026-09-29 20:26:55 +08:00
chenxi
e54b7f8d25 南昌樵舍仓:江西仓送货的采购单据条码一并纳入行维度,采购数量合计与江西仓送货一致 2026-09-29 20:21:02 +08:00
chenxi
27c351f0c5 商品编码统一大写:表1期初基数、进销存聚合、南昌樵舍仓/江西仓送货映射的编码索引全部大写后再匹配 2026-09-29 19:54:28 +08:00
chenxi
69225ef529 Merge remote-tracking branch 'origin/main' 2026-09-29 19:28:34 +08:00
chenxi
379ba0eb99 南昌樵舍仓期初数量改取三方-南昌樵舍仓主仓对应商品的期初数量 2026-09-29 19:28:32 +08:00