Files
tms-erp-api/doc/sql/transport/blade_transport_driver.sql
T
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

80 lines
6.1 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- ----------------------------
-- Table structure for blade_transport_driver
-- ----------------------------
DROP TABLE IF EXISTS `blade_transport_driver`;
CREATE TABLE `blade_transport_driver` (
`id` bigint(20) NOT NULL COMMENT '主键',
`tenant_id` varchar(12) DEFAULT '000000' COMMENT '租户ID',
`driver_name` varchar(20) NOT NULL COMMENT '司机姓名',
`id_card_no` varchar(18) DEFAULT NULL COMMENT '身份证号,NULL 表示尚未采集',
`birthday` date DEFAULT NULL COMMENT '出生年月',
`gender` varchar(10) DEFAULT NULL COMMENT '性别',
`nation` varchar(20) DEFAULT NULL COMMENT '民族',
`education` varchar(20) DEFAULT NULL COMMENT '学历',
`address_region` varchar(100) DEFAULT NULL COMMENT '地址区划',
`address` varchar(200) DEFAULT NULL COMMENT '详细地址',
`driving_vehicle` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '驾驶车辆车牌号,多个用逗号分隔',
`posts` varchar(100) DEFAULT NULL COMMENT '岗位,多个使用逗号分隔',
`id_card_front` varchar(1000) DEFAULT NULL COMMENT '身份证正面照',
`id_card_back` varchar(1000) DEFAULT NULL COMMENT '身份证反面照',
`id_card_valid_start` date DEFAULT NULL COMMENT '身份证有效期起',
`id_card_valid_end` date DEFAULT NULL COMMENT '身份证有效期止',
`id_card_long_term` int(11) DEFAULT '0' COMMENT '身份证长期有效:0否 1是',
`head_photo` varchar(1000) DEFAULT NULL COMMENT '大头照',
`driving_type` varchar(20) NOT NULL COMMENT '准驾车型',
`driving_license_no` varchar(50) DEFAULT NULL COMMENT '驾驶证档案编号',
`driving_license_start_date` date DEFAULT NULL COMMENT '驾驶证有效期起',
`driving_license_end_date` date DEFAULT NULL COMMENT '驾驶证有效期止',
`driving_license_long_term` int(11) DEFAULT '0' COMMENT '驾驶证长期有效:0否 1是',
`driving_license_front` varchar(1000) DEFAULT NULL COMMENT '驾驶证主页',
`driving_license_back` varchar(1000) DEFAULT NULL COMMENT '驾驶证副页',
`qualification_type` varchar(50) DEFAULT NULL COMMENT '从业资格证类型',
`qualification_no` varchar(50) DEFAULT NULL COMMENT '资格证号',
`qualification_end_date` date DEFAULT NULL COMMENT '从业资格证有效期止',
`qualification_long_term` int(11) DEFAULT '0' COMMENT '从业资格证长期有效:0否 1是',
`qualification_front` varchar(1000) DEFAULT NULL COMMENT '从业资格证封面页',
`qualification_back` varchar(1000) DEFAULT NULL COMMENT '从业资格证内容页',
`driver_type` varchar(20) NOT NULL COMMENT '司机类型:自有/外协',
`mobile` varchar(20) NOT NULL COMMENT '手机号',
`user_id` bigint(20) DEFAULT NULL COMMENT '关联系统用户ID',
`profile_source` varchar(20) DEFAULT NULL COMMENT 'login_auto/login_bound/admin/cert_backfill,NULL 为改造前存量',
`account_bound_time` datetime DEFAULT NULL COMMENT '档案与账号建立关联的时点',
`contact_relation` varchar(20) DEFAULT NULL COMMENT '与联系人关系',
`organization_name` varchar(50) NOT NULL COMMENT '所属组织',
`emergency_contact_name` varchar(20) NOT NULL COMMENT '紧急联系人姓名',
`emergency_contact_mobile` varchar(20) NOT NULL COMMENT '紧急联系人手机号',
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
`certification_status` int(11) DEFAULT NULL COMMENT '最新提交状态展示缓存:0审核中 1已通过 2已驳回 3已作废,NULL为从未提交',
`certification_reject_reason` varchar(200) DEFAULT NULL COMMENT '最新一次驳回原因展示缓存',
`effective_cert_record_id` bigint(20) DEFAULT NULL COMMENT '生效快照指针:指向 blade_transport_cert_record.id,NULL 表示从未认证通过;一经设置永不回退',
`create_user` bigint(20) DEFAULT NULL COMMENT '创建人',
`create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_user` bigint(20) DEFAULT NULL COMMENT '修改人',
`update_time` datetime DEFAULT NULL COMMENT '修改时间',
`status` int(11) DEFAULT '1' COMMENT '状态',
`is_deleted` int(11) DEFAULT '0' COMMENT '是否已删除',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE KEY `uk_transport_driver_id_card` (`id_card_no`) USING BTREE,
UNIQUE KEY `uk_transport_driver_user` (`user_id`) USING BTREE,
KEY `idx_transport_driver_mobile` (`mobile`) USING BTREE,
KEY `idx_transport_driver_type` (`driver_type`) USING BTREE,
KEY `idx_transport_driver_org` (`organization_name`) USING BTREE,
KEY `idx_transport_driver_license_end` (`driving_license_end_date`) USING BTREE,
KEY `idx_transport_driver_qualification_end` (`qualification_end_date`) USING BTREE,
KEY `idx_transport_driver_status` (`status`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='司机管理';
-- ----------------------------
-- Records of blade_menu for transport capacity driver
-- ----------------------------
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES
(2079000000000000001, 0, 'transport_capacity', '运力管理', 'transport_capacity', '/transportCapacity', 'iconfont icon-yunshu', 20, 1, 0, 1, '', '', 0),
(2079000000000000002, 2079000000000000001, 'driver', '司机管理', 'driver', '/transportCapacity/driver', 'iconfont icon-yonghu', 1, 1, 0, 1, '', '', 0),
(2079000000000000003, 2079000000000000002, 'driver_add', '新增', 'driver_add', '', '', 1, 2, 0, 1, NULL, '', 0),
(2079000000000000004, 2079000000000000002, 'driver_edit', '编辑', 'driver_edit', '', '', 2, 2, 0, 1, NULL, '', 0),
(2079000000000000005, 2079000000000000002, 'driver_delete', '删除', 'driver_delete', '', '', 3, 2, 0, 1, NULL, '', 0),
(2079000000000000006, 2079000000000000002, 'driver_view', '查看', 'driver_view', '', '', 4, 2, 0, 1, NULL, '', 0),
(2079000000000000007, 2079000000000000002, 'driver_status', '启停', 'driver_status', '', '', 5, 2, 0, 1, NULL, '', 0),
(2079000000000000008, 2079000000000000002, 'driver_export', '批量导出', 'driver_export', '', '', 6, 2, 0, 1, NULL, '', 0);