weicw-dshsa
87f4c3a830
✨ 新增认证记录不可变快照数据模型与迁移脚本
按 ADR-0001/0002 建立司机与车辆共用的认证记录表 blade_transport_cert_record
(biz_type 区分、载荷存 JSON、检索字段提升为真实列),并为司机/车辆表补生效快照指针。
不变式结构性保证:
- I1 同对象至多一条待审:生成列 pending_biz_id + 唯一索引,数据库层拦截;
生成列同时排除 is_deleted,避免逻辑删除的待审记录永久占用唯一键。
- I3 快照不可变:snapshot_json 等 5 列标 FieldStrategy.NEVER,永不进入 UPDATE。
- status 承载审核状态(0审核中/1已通过/2已驳回/3已作废),新增时必须显式设置:
框架 resolveEntity 会把 null 的 status 静默填成 1(即「已通过」),
且继承来的 changeStatus 可直接写 status,两条通道均已封堵。
其他:司机表补身份证有效期三列并订正排序规则为 utf8mb4_general_ci
(原先为 0900_ai_ci,与车辆表 JOIN 已发生过 Illegal mix of collations);
生效快照指针加 @JsonProperty(READ_ONLY),防止以 /submit 请求体自行「认证」自己;
同步基线建表脚本与认证审核菜单/权限码。本票不含任何业务接口。
2026-10-02 14:40:56 +08:00
..
2026-08-26 23:17:56 +08:00
2026-08-25 16:15:19 +08:00
2026-08-25 16:15:19 +08:00
2026-08-26 23:17:56 +08:00
2026-08-22 17:25:26 +08:00
2026-08-22 17:25:26 +08:00
2026-08-12 19:44:34 +08:00
2026-07-27 11:50:23 +08:00
2026-07-20 15:34:31 +08:00
2026-08-06 02:57:38 +08:00
2026-08-24 00:58:54 +08:00
2026-09-14 15:00:40 +08:00
2026-09-14 15:00:40 +08:00
2026-09-03 22:40:19 +08:00
2026-08-25 16:15:19 +08:00
2026-09-03 22:40:19 +08:00
2026-08-18 01:41:37 +08:00
2026-09-03 03:30:57 +08:00
2026-08-06 02:57:38 +08:00
2026-08-25 03:25:40 +08:00
2026-08-25 03:25:40 +08:00
2026-08-25 03:25:40 +08:00
2026-07-17 15:32:00 +08:00
2026-09-23 11:29:52 +08:00
2026-09-14 23:43:00 +08:00
2026-09-14 23:43:00 +08:00
2026-09-23 11:29:52 +08:00
2026-08-11 08:43:22 +08:00
2026-08-01 01:22:46 +08:00
2026-08-11 08:43:22 +08:00
2026-08-25 03:25:40 +08:00
2026-08-06 17:58:27 +08:00
2026-08-01 01:22:46 +08:00
2026-08-01 01:22:46 +08:00
2026-09-14 23:43:00 +08:00
2026-08-12 12:42:07 +08:00
2026-09-22 12:03:59 +08:00
2026-07-16 17:04:46 +08:00
2026-09-15 11:59:42 +08:00
2026-09-29 03:15:26 +08:00
2026-09-21 16:03:28 +08:00
2026-08-07 08:27:47 +08:00
2026-08-27 12:54:10 +08:00
2026-08-27 12:54:10 +08:00
2026-08-26 23:17:56 +08:00
2026-08-13 00:01:10 +08:00
2026-07-24 14:33:50 +08:00
2026-08-04 02:49:59 +08:00
2026-08-25 16:15:19 +08:00
2026-09-03 22:40:19 +08:00
2026-09-03 22:40:19 +08:00
2026-09-09 15:39:21 +08:00
2026-08-27 18:20:48 +08:00
2026-08-27 18:20:48 +08:00
2026-08-25 22:34:49 +08:00
2026-08-24 00:58:54 +08:00
2026-09-14 23:43:00 +08:00
2026-09-14 23:43:00 +08:00
2026-07-21 13:16:10 +08:00
2026-09-02 03:22:22 +08:00
2026-09-02 03:22:22 +08:00
2026-08-27 23:51:55 +08:00
2026-08-27 23:51:55 +08:00
2026-08-22 17:25:26 +08:00
2026-08-21 14:30:59 +08:00
2026-08-21 14:30:59 +08:00
2026-08-11 23:50:37 +08:00
2026-09-20 13:16:44 +08:00
2026-09-20 13:16:44 +08:00
2026-07-23 17:17:56 +08:00
2026-08-26 23:17:56 +08:00
2026-08-26 23:17:56 +08:00
2026-08-26 23:17:56 +08:00
2026-08-28 15:30:12 +08:00
2026-08-27 18:20:48 +08:00
2026-07-24 14:33:50 +08:00
2026-08-25 16:15:19 +08:00
2026-09-03 15:59:20 +08:00
2026-09-03 15:59:20 +08:00
2026-09-09 15:39:21 +08:00
2026-09-05 23:26:00 +08:00
2026-09-10 22:50:00 +08:00
2026-09-13 01:01:09 +08:00
2026-09-14 15:00:40 +08:00
2026-07-24 14:33:50 +08:00
2026-08-22 17:25:26 +08:00
2026-08-22 17:25:26 +08:00
2026-08-31 10:38:14 +08:00
2026-08-21 12:41:34 +08:00
2026-08-25 22:34:49 +08:00
2026-09-05 00:03:21 +08:00
2026-09-09 15:39:21 +08:00
2026-07-24 14:33:50 +08:00
2026-09-03 03:30:57 +08:00
2026-09-03 03:30:57 +08:00
2026-07-21 13:16:10 +08:00
2026-08-13 00:01:10 +08:00
2026-08-31 10:38:14 +08:00
2026-08-25 22:34:49 +08:00
2026-08-31 10:38:14 +08:00
2026-08-31 10:38:14 +08:00
2026-09-09 15:39:21 +08:00
2026-08-13 14:06:53 +08:00
2026-07-24 14:33:50 +08:00
2026-08-26 23:17:56 +08:00
2026-09-27 22:54:30 +08:00
2026-10-02 14:40:56 +08:00
2026-08-26 23:17:56 +08:00
2026-08-26 23:17:56 +08:00
2026-09-10 22:50:00 +08:00
2026-09-10 22:50:00 +08:00
2026-10-02 14:40:56 +08:00
2026-09-08 17:50:20 +08:00
2026-09-02 03:22:22 +08:00
2026-08-13 14:06:53 +08:00
2026-08-13 14:06:53 +08:00
2026-09-07 19:37:08 +08:00
2026-09-07 19:37:08 +08:00
2026-07-31 01:30:54 +08:00
2026-07-31 01:30:54 +08:00
2026-09-23 14:49:19 +08:00
2026-08-07 08:27:47 +08:00
2026-09-10 22:50:00 +08:00
2026-10-02 14:40:56 +08:00
2026-08-07 08:27:47 +08:00
2026-08-07 08:27:47 +08:00
2026-09-14 01:49:02 +08:00
2026-08-26 23:17:56 +08:00
2026-08-26 23:17:56 +08:00
2026-08-26 23:17:56 +08:00
2026-08-26 23:17:56 +08:00
2026-08-26 23:17:56 +08:00
2026-09-08 10:58:21 +08:00
2026-08-13 17:54:35 +08:00
2026-09-10 02:01:51 +08:00
2026-09-08 17:50:20 +08:00
2026-09-10 02:01:51 +08:00
2026-09-10 02:01:51 +08:00
2026-08-21 14:30:59 +08:00
2026-08-05 15:51:44 +08:00
2026-09-11 14:39:10 +08:00
2026-09-11 14:39:10 +08:00
2026-08-05 15:51:44 +08:00
2026-09-27 22:54:30 +08:00
2026-08-31 10:38:14 +08:00
2026-09-11 14:39:10 +08:00
2026-08-13 20:58:52 +08:00
2026-08-12 19:44:34 +08:00
2026-08-05 15:51:44 +08:00
2026-08-13 14:06:53 +08:00
2026-08-13 17:54:35 +08:00
2026-07-23 17:17:56 +08:00
2026-09-03 15:59:20 +08:00