-- 车辆上牌记录表 CREATE TABLE IF NOT EXISTS `asset_vehicle_registration` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID', `vehicle_id` BIGINT NOT NULL COMMENT '车辆ID', `vin` VARCHAR(50) NOT NULL COMMENT '车辆识别代号(VIN)', `plate_no` VARCHAR(20) NOT NULL COMMENT '车牌号', `plate_date` DATE NOT NULL COMMENT '上牌日期', `operator` VARCHAR(50) COMMENT '操作员', -- OCR 识别信息 `recognized_brand` VARCHAR(100) COMMENT 'OCR识别的品牌型号', `recognized_model` VARCHAR(100) COMMENT 'OCR识别的车型', `vehicle_type` VARCHAR(50) COMMENT '车辆类型', `owner` VARCHAR(100) COMMENT '所有人', `use_character` VARCHAR(50) COMMENT '使用性质', `engine_no` VARCHAR(50) COMMENT '发动机号码', `register_date` DATE COMMENT '注册日期', `issue_date` DATE COMMENT '发证日期', `inspection_record` VARCHAR(50) COMMENT '检验记录', `scrap_date` DATE COMMENT '强制报废期止', `curb_weight` VARCHAR(20) COMMENT '整备质量(kg)', `total_mass` VARCHAR(20) COMMENT '总质量(kg)', `approved_passenger_capacity` VARCHAR(20) COMMENT '核定载人数', -- 匹配信息 `vehicle_model_id` BIGINT COMMENT '匹配的车型ID', `match_confidence` DECIMAL(5,2) COMMENT '匹配置信度(0-100)', `match_method` VARCHAR(20) COMMENT '匹配方式(exact/fuzzy/manual)', -- 照片信息 `photo_url` VARCHAR(500) COMMENT '行驶证照片URL', `photo_size` INT COMMENT '照片大小(字节)', -- OCR 信息 `ocr_provider` VARCHAR(50) COMMENT 'OCR厂商', `ocr_cost_time` INT COMMENT 'OCR识别耗时(毫秒)', `ocr_raw_result` TEXT COMMENT 'OCR原始结果(JSON)', -- 状态信息 `status` TINYINT NOT NULL DEFAULT 0 COMMENT '状态(0-待确认 1-已确认 2-已作废)', `remark` VARCHAR(500) COMMENT '备注', -- 审计字段 `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户编号', PRIMARY KEY (`id`), UNIQUE KEY `uk_vehicle_plate` (`vehicle_id`, `plate_no`, `deleted`), INDEX `idx_vin` (`vin`), INDEX `idx_plate_no` (`plate_no`), INDEX `idx_plate_date` (`plate_date`), INDEX `idx_status` (`status`), INDEX `idx_create_time` (`create_time`), INDEX `idx_tenant_id` (`tenant_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='车辆上牌记录表'; -- 菜单 SQL INSERT INTO system_menu( name, permission, type, sort, parent_id, path, icon, component, status, component_name ) VALUES ( '上牌管理', '', 2, 3, (SELECT id FROM system_menu WHERE name = '车辆管理' LIMIT 1), 'registration', 'form', 'asset/vehicle/registration/index', 0, 'VehicleRegistration' ); -- 获取刚插入的菜单ID SET @menuId = LAST_INSERT_ID(); -- 上牌管理按钮权限 INSERT INTO system_menu(name, permission, type, sort, parent_id, path, icon, component, status) VALUES ('上牌记录查询', 'asset:vehicle-registration:query', 3, 1, @menuId, '', '', '', 0), ('上牌记录创建', 'asset:vehicle-registration:create', 3, 2, @menuId, '', '', '', 0), ('上牌记录更新', 'asset:vehicle-registration:update', 3, 3, @menuId, '', '', '', 0), ('上牌记录删除', 'asset:vehicle-registration:delete', 3, 4, @menuId, '', '', '', 0), ('行驶证识别', 'asset:vehicle-registration:recognize', 3, 5, @menuId, '', '', '', 0);