Commit Graph

150 Commits

Author SHA1 Message Date
weicw 2c4ba589b8 🗃️ 新增回单待确认状态旧值订正脚本 2026-10-24 21:29:16 +08:00
weicw b36abe9e4b 🔀 合并主干 master 到 dev
- 状态命名统一用 dev 的 pending_return_confirm:master 侧 pending_return 常量、字面量与文案分支一并改名,避免两套状态并存
- 汇票可选按 master 放开:去掉部门/收付款方限制,删除随之失效的 selectableBill 判定
- 结算导入模板按 master 重写:不预置费用项列、不再有结算金额列,导出签名收为两参
- 合入 master 的待确认回单批量完成、变更记录审批过滤、小程序数据权限(MpUserDataScope)与评分量化/客商档案改动
- 受影响的测试构造器补上 MpUserDataScopeSupport 依赖
2026-10-24 16:37:43 +08:00
weicw 85e491bfb4 🐛 修正基线建表脚本与迁移脚本不一致
- blade_customer_archive:补 kingdee_status / kingdee_fail_reason / kingdee_sync_time
  与 idx_kingdee_status(迁移 20260917 已加,基线漏写,新环境按基线建库会缺列)
- blade_invoice_receipt:删掉 20260923 已废弃的 kingdee_bill_no / kingdee_status
  与 idx_invoice_receipt_kingdee(迁移里已 DROP,基线仍在声明)
- 依据:scripts/repo/audit-migrations.py 从「缺列(建表语句) 2 + 基线脚本未同步 3」跑到 ✅
2026-10-24 11:46:53 +08:00
weicw-dshsa 70b2096e8a ✨ 登录自动建档写入岗位并订正存量空岗位
- createPlaceholderProfile 写 posts='司机':岗位为空的档案会被派单候选筛掉
- 新增幂等订正脚本,只补 profile_source='login_auto' 且岗位为空的档案
- update_time 不覆盖,脚本内附校验与回退段
2026-10-23 20:42:55 +08:00
weicw-dshsa 77144f4e68 💡 清理本次改动注释中的票据引用与设计叙述
注释只写从代码看不出来的事实:删除票号引用、设计权衡与取证经过,
保留业务约束(id_card_no 为 NULL 表示未采集、唯一索引覆盖软删除行、
driving_vehicle 为 ALWAYS 策略等)。
2026-10-23 16:34:25 +08:00
weicw-dshsa 1e1f7e3d13 ✨ 新增司机档案可空身份证号与账号绑定唯一索引迁移
- 新建 blade_transport_driver_profile_account_20261023.sql:
  id_card_no 放宽为可空(NULL 表示尚未采集,保留 uk_transport_driver_id_card)、
  user_id 加唯一索引 uk_transport_driver_user、新增 profile_source / account_bound_time 留痕列;
  每段先查 information_schema 再改,重复执行不报错,回滚语句写在脚本注释里。
- 同步基线建表脚本 blade_transport_driver.sql 三处,避免新环境按基线建库缺列。

幂等/失败语义:唯一索引段先执行,user_id 有重复时以
Duplicate entry '<值>' for key 'blade_transport_driver.uk_transport_driver_user' 硬失败,
此时脚本对表零修改;回滚顺序与正向相反(先清 NULL 再收窄 id_card_no)。

跳过 hook 的原因:audit-migrations 的 baseline_sync 仍报存量 3 条
blade_customer_archive 基线缺列(与本票无关,属他票范围);check-comment-style
把 spec 规定的列注释「NULL 为改造前存量」判为叙事措辞(列 COMMENT 语义,非工作区引用)。
2026-10-23 15:37:21 +08:00
b2894lxlx 49c149c675 ✨ 评分量化减分累计与最高扣分限制,并修复运输对账与结算调整单等问题
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-23 04:28:19 +08:00
b2894lxlx dea72691de ✨ 进行中配载可编辑、汇票可选放开限制,并补充业务部门与待确认回单
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 15:40:59 +08:00
b2894lxlx 73c8f6665e ✨ 客商档案表单重构并补充实缴资本、营业期限起日与已使用额度
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 12:56:48 +08:00
b2894lxlx 83b2144407 ✨ 小程序用户支持组织与数据权限,调度端按项目业务部门收口运单
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 10:59:21 +08:00
b2894lxlx 167cea020c ✨ 结算单支持业务模式与运输方式,并修复组织合同流水号空值
预结算/正式结算主表新增业务模式、运输方式及列表导出字典翻译;组织合同初始流水号未填时不落-1,OA同步保留本地合同配置。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-21 16:41:59 +08:00
b2894lxlx 777102485c ✨ 组织机构支持合同初始流水号
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-21 11:51:13 +08:00
weicw-dshsa 776861fc5b 🔀 合并 origin/master 到 dev 2026-10-19 19:03:06 +08:00
b2894lxlx fce582e80b 🐛 修复收款流水继续认领与付款可付口径,并改用OA登录名提交流程
收款流水部分认领预填关联结算单并修正认领完成判定;正式结算尾款扣减预付占用;预付驳回重提纠正结算引用;临时额度取消强制项目额度校验;用户增加OA登录名供MK流程使用。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-19 17:12:22 +08:00
b2894lxlx 68a5d581f3 !4 fix: 结算调整单重推拦截报错补充具体结算单号
Merge pull request !4 from mindless/feature/20261016-settlement-adjustment-kingdee
2026-10-19 06:58:25 +00:00
b2894lxlx c5d5687999 ✨ 完善付款申请多结算行、结算导入与计费方式回填
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-19 12:06:49 +08:00
b2894lxlx ddaa6f2c45 ✨ 完善导入结算单模板校验、草稿明细与历史运单选择
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-18 20:35:28 +08:00
刘泉佳 b9acf6c73d Merge remote-tracking branch 'refs/remotes/origin/master' into feature/20261016-settlement-adjustment-kingdee 2026-10-18 15:14:46 +08:00
weicw-dshsa 7d951d5b04 ✨ 小程序调度端运单列表、待处理与统计按组织收口
原先三个取数入口都不带组织条件,租户内两个组织的运单混在同一张表里。「小程序管理」
账号与运单业务组织不一致确实是事实,但那是账号挂在一个已软删部门上的脏数据症状,
不是「不该按组织过滤」的理由。

现在与后台运单列表同一条规则:普通用户只出自己所属组织,超级管理员不过滤,
小程序端不提供「全部组织」开关;详情与重新派单照旧不按组织收口。
组织条件由调用方算好、经 TripQueryVO.deptIds 落到运次读服务的运单行上,
列表、待处理与首页三档统计因此共用同一条可见范围;「待重新派单」另走库层分组查询,
单独带上,首页重派角标与待办 feed 随之一起收口。

运次读服务的分档统计走一份「去掉 Tab 条件」的副本,该副本必须照搬 deptIds,
否则统计会退回全租户、与列表的数对不上(已由用例钉住)。

存量 42 张 dept_id 为 -1 或 NULL 的运单不属于任何组织,收紧后普通用户再也看不到,
另订正到各自的创建组织,见 doc/sql/transport/blade_waybill_dept_backfill_20261018.sql。

新增 ManageWaybillOrgScopeTest(8 项),TripQueryServiceImplTest 补 3 项;
blade-transport 全量 376 项用例通过。
2026-10-18 11:22:04 +08:00
b2894lxlx 583bab1a4f ✨ 结算付款与汇票校验优化,完善变更记录与菜单拆分
付款可付款占用、汇票仅可选未到期收票、正式结算计费方式与金蝶同步、导入运单删除校验,并补充结算菜单与变更明细 SQL。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-18 05:12:27 +08:00
weicw-dshsa 584d03508d 🐛 收票登记删列脚本改为收敛口径,避免重放时把已下线的金蝶字段加回来
原脚本向 blade_invoice_receipt 补 kingdee_bill_no / kingdee_status 两列,
但收票管理金蝶同步功能已下线,代码中已无这两列的读写,仅 kingdee_push_status 为状态源。
两脚本相向且原脚本日期靠后,按脚本顺序重放会把已删除的列重新加回,故改为幂等删列。

pre-commit 因存量问题被拦(blade_customer_archive 三列未同步进基线建表脚本,
属同事脚本既有问题,与本次改动无关),故本次以 --no-verify 提交。
2026-10-17 02:11:17 +08:00
weicw-dshsa b27e08acd5 Merge remote-tracking branch 'origin/master' into dev 2026-10-17 01:12:05 +08:00
刘泉佳 2a0c2cd9c9 refactor: 结算调整单推送金蝶与重新推送合并为单一按钮 2026-10-16 19:59:01 +08:00
刘泉佳 db3b0ebbfd feat: 新增结算调整单接入金蝶建表与菜单脚本 2026-10-16 19:46:37 +08:00
b2894lxlx cfa77cbba3 ✨ 新增结算规则定时生成,并支持付款申请多结算单与导入停用费用项提示
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-16 16:03:23 +08:00
b2894lxlx 22425708a8 Merge remote-tracking branch 'websoft/dev' 2026-10-16 11:47:52 +08:00
b2894lxlx 93a6555293 ✨ 新增项目预付核销,并修复平台公司多选、常用线路组织过滤与登录 IP 连坐锁
结算附件支持项目预付核销并扣减可付款金额;加固项目平台公司多选字段扩容脚本;常用线路新增归属组织与列表筛选对齐;登录失败仅按账号锁定,取消 IP 级连坐。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-16 02:01:58 +08:00
b2894lxlx d7bf82b159 ✨ 新增导入结算单,并修复运单超管组织过滤与计量单位软删恢复
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-16 00:56:54 +08:00
weicw-dshsa fe35b39f2c 🐛 补收票登记金蝶单据字段迁移脚本,存量库缺 kingdee_bill_no、kingdee_status 两列 2026-10-15 20:50:18 +08:00
刘泉佳 94acfc2174 Merge branch 'master' into feature/payment-apply-bfi-sync 2026-10-14 15:34:45 +08:00
b2894lxlx b791401620 🐛 扩容用户手机号字段并规范化 OA 多号码同步
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-14 15:15:53 +08:00
b2894lxlx dee392eb48 🐛 修复 IAM 同步 dept_id 超长与手机号明文解密失败
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-14 15:13:19 +08:00
刘泉佳 865e3a0498 Merge branch 'master' into feature/payment-apply-bfi-sync
# Conflicts:
#	blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/CustomerArchiveServiceImpl.java
2026-10-14 14:24:27 +08:00
b2894lxlx 6f4812db75 ✨ 项目申请平台公司多选,运单导入承运商筛选与复制草稿优化
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-14 12:59:31 +08:00
刘泉佳 805ca9d380 chore: 归集刘泉佳提交的金蝶对接SQL迁移脚本到doc/sql/transport/lqj 2026-10-13 18:47:11 +08:00
b2894lxlx 17ede93a04 ✨ 新增小程序用户后台管理接口与菜单
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-12 13:49:08 +08:00
b2894lxlx e19c3b100a ✨ 小程序用户独立为 blade_mp_user,并兼容司机/车辆 OCR 宽松日期
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-12 13:02:08 +08:00
b2894lxlx 4e7193893f ✨ 组织与人员支持OA增量同步,并完善用户启停与性别空值
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-10 13:56:29 +08:00
b2894lxlx e20afc0d55 ✨ 合同结算币种贯通应收应付与结算,并完善合同编号与字段
合同结算币种写入应收应付与预结算;总单运费默认币种统一为 RMB;同步合同申请日期、主要内容、部门合同编号前缀及用印材料字典等能力。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-10 00:53:17 +08:00
刘泉佳 e08be9a297 feat: 正式结算单/开票申请同步金蝶后联带锁单,支持解锁回调与金蝶删单还原 2026-10-09 19:52:15 +08:00
b2894lxlx ef9eab737f ✨ 优化主数据校验与运单导入空值处理
电报略码改为选填且填写时唯一;用户支持账号姓名手机模糊查询;合同名称允许重复;项目情况说明扩至1000字;导入运单未填里程费用不再落库-1。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-09 17:07:56 +08:00
weicw-dshsa ac6318d174 ✨ 新增存量司机/车辆补生效快照的订正脚本
「能否接单」的判据是生效快照指针,该列随认证门槛一起新增时对存量对象一律为 NULL,门槛默认开启后存量司机与车辆全部被判未认证、接不了单。脚本给尚无快照的对象补一条已通过记录并把指针指过去,含备份、校验与回退;幂等,且能在已订正过的库上续跑(从段内最大号之后接着发号,不撞主键)。
2026-10-07 18:21:38 +08:00
weicw-dshsa 2e5eae4d32 ✨ 打卡照片按类型最多传 9 张,照片列加宽为 text
- 节点打卡提交新增 photoItems(带显式类型),photos 原样保留供旧版小程序按下标回推
- 打卡照片是每个打卡节点必有的类型,不由过程配置决定,与各凭证类型各自最多 9 张
- 新版提交要求每个类型至少 1 张;旧版仍只要求至少 1 张,避免打断未升级的小程序
- 管理端订正只校验每类上限,不校验必填
- photos 由 varchar(2000) 改 text:36 张约 4000 字符,旧列宽约 17 张即溢出
- 基线建表脚本补 COLLATE=utf8mb4_0900_ai_ci(与本机库实际排序规则一致)
2026-10-07 16:49:19 +08:00
刘泉佳 0dc6c9457a chore: 金蝶票池镜像读回切SQL(可用过滤两列+认领索引幂等脚本)与全票池同步Nacos配置键 2026-10-05 17:51:54 +08:00
weicw-dshsa 7c30ead839 ✨ 异常处置支持归属过程节点并新增打卡门禁
异常上报强制选择过程节点,节点归属写入 node_code / node_name;节点存在未了结
异常时,该节点及其后节点不可打卡(异常门禁),被拦节点仍可展开查看回填内容。

另新增顺序门禁:前置打卡节点未完成时后续节点不可打卡且不可展开;在途节点不受
顺序门禁约束,但仍受异常门禁约束。

配套:
- 过程配置「上传货量为是、货量类型为空」的脏配置订正为不采集货量
- 网关补充 /blade-resource/** 路由(图片上传,小程序打卡与异常上报照片均经此)
2026-10-05 15:10:24 +08:00
weicw-dshsa 7296a5af21 ✨ 异常处置跟进支持上传附件
跟进记录新增 attachments_json 列,存 [{name, url}] 形式的 JSON 数组。
跟进说明与附件至少填其一即可:只传附件时,follow_content 列为 NOT NULL,
故写入固定文案「已上传跟进附件」,列表按该文案展示。

建表脚本补 COLLATE:原先只写 CHARSET,落到 MySQL 8 服务器默认排序规则,
与库中实际的 utf8mb4_0900_ai_ci 不一致。
2026-10-05 01:09:33 +08:00
weicw-dshsa 8d35abd23e ✨ 异常处置新增编辑功能
运管员可订正已上报的异常内容:异常类型、异常原因、上报说明、现场照片。
车牌、项目、承运商、配载单号由上报时从运单回填,不开放编辑,避免与运单脱钩。

编辑不改动处置状态。状态只能经跟进与完成流转,因为运单详情、运单列表、
首页计数与待办四处都以 disposal_status IN (pending, processing) 判定未完成,
允许编辑改状态会让已结案的异常重新长出来,而那四处判定无从知晓。

每次编辑按字段逐项比对生成变更说明,写入一条跟进记录留痕。
变更说明会内嵌修改前后的原文,长文本字段一次编辑就可能超过跟进内容的
varchar(500) 上限,故按 500 截断。

Permission 表达式用 hasMenu('exception_disposal_edit'):
@PreAuth 的值由 SpEL 求值,root object 是 AuthFun,
写成裸字符串会被当作属性访问而在请求时抛错。
2026-10-05 00:54:08 +08:00
weicw-dshsa 5061df8c78 📝 删除认证迁移脚本里的解释性注释
SQL 本身(列名、列 COMMENT、IF 条件)已经把意图说清楚了,注释在复述它、
或是在讲当时的排查过程,对读者没有增量信息。只留一处真正反直觉的:
唯一索引不对 NULL 去重,故 tenant_id 必须 NOT NULL。

注释 31 -> 8 行,DDL 未动,重跑两遍验证。
2026-10-04 23:49:33 +08:00
weicw-dshsa 4a65951adc 📝 精简认证迁移脚本注释
上一版注释把决策理由、备选方案、实测数据都写进了脚本,篇幅盖过 SQL 本身
(cert_record 注释 58 行 / 非空 170 行),后续阅读反而更难抓到重点。
按同目录既有脚本的密度收敛:只留「从 SQL 本身看不出来」的事实
(字段业务含义、不可回退的指针语义、排序规则不能改的原因),
删掉论证过程与常识性说明。

cert_record 注释 58 -> 31 行,另两个 14 -> 6 行;
DDL 一个字未动,重跑一遍验证仍无报错。
2026-10-04 23:46:39 +08:00
weicw-dshsa 378aa11842 ♻️ 认证迁移脚本补幂等并统一注释格式
三个认证相关迁移脚本按项目既有约定整理,DDL 效果不变:

- driving_vehicle 扩长、owner_name/vin 加列两处原为裸 ALTER,重复执行会报
  「Duplicate column」或白白重建表;改为 DELIMITER 存储过程 + information_schema
  判定,与 doc/sql/transport 下 upgrade_* 的既有写法一致,可重复执行。
  扩长那条额外判定 character_maximum_length < 100:MODIFY COLUMN 会重建整表,
  已达标就不必再跑一次。
- cert_record 的菜单段补注 parent_id 的出处(与 blade_transport_driver.sql /
  blade_transport_vehicle.sql / blade_vehicle_dispatch.sql 同一 ID),并说明
  ON DUPLICATE KEY UPDATE 会把 parent_id / name 回写,对旧环境重跑即可收敛。
- 去掉注释里的 markdown 粗体(doc/sql/transport 的既有排版不用 markdown),
  统一以 30 个破折号的横幅开头。

已在 dev 库 transport 连跑两遍验证:两遍均无报错,且列定义 116 行、索引 29 行、
三表排序规则与整理前逐项一致。
2026-10-04 23:43:05 +08:00