无关风月
2026-02-14 2996980930ea678d56fde08e5515d3f1b6ab52bd
Merge remote-tracking branch 'origin/master'
1个文件已删除
8个文件已添加
37个文件已修改
10138 ■■■■■ 已修改文件
.gitignore 4 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sql/nacos_config_export_20260212142234.zip 补丁 | 查看 | 原始文档 | blame | 历史
sql/nacos_config_export_20260214005925.zip 补丁 | 查看 | 原始文档 | blame | 历史
sql/xprt_account.sql 206 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sql/xprt_maintenance.sql 320 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sql/xprt_operation.sql 3506 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sql/xprt_order.sql 4255 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/config/DataUpdateHandlerConfig.java 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/SysRoleBakController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/SysUserController.java 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/mapper/SysUserMapper.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/model/vo/SysGroupPageVO.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/resources/bootstrap.yml 118 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/resources/mapper/account/SysGroupMapper.xml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/resources/mapper/account/SysUserMapper.xml 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/account/SysUser.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/order/XpOrderDetail.java 1 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-api/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports 1 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-itinerary-boot/src/main/resources/bootstrap.yml 128 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/resources/bootstrap.yml 198 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/constant/I18nKeyConstant.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpPricingController.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpRegionController.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/dto/PricingAddDTO.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/dto/PricingSetPriceDTO.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/dto/PricingSetRuleDTO.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/mapper/XpPricingMapper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/mapper/XpRegionMapper.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/query/PricingPageListQuery.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/XpPricingService.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/XpRegionService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpPricingServiceImpl.java 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpRegionServiceImpl.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/vo/PricingPageListVO.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/resources/bootstrap.yml 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/resources/i18n/messages.properties 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/resources/i18n/messages_en_US.properties 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/resources/i18n/messages_zh_CN.properties 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/resources/mapper/operation/XpPricingMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/resources/mapper/operation/XpRegionMapper.xml 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-order-boot/src/main/resources/bootstrap.yml 129 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-order-boot/src/main/resources/mapper/order/XpOrderDetailMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-payment-boot/src/main/resources/bootstrap.yml 128 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-push-message-boot/src/main/resources/bootstrap.yml 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-remote-driving-boot/src/main/resources/bootstrap.yml 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-vehicle-convoy-boot/src/main/resources/bootstrap.yml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.gitignore
@@ -15,7 +15,7 @@
target
#*.yaml
#*.yml
*.yaml
*.yml
*.log.DS_Store
**/.DS_Store
sql/nacos_config_export_20260212142234.zip
Binary files differ
sql/nacos_config_export_20260214005925.zip
Binary files differ
sql/xprt_account.sql
@@ -11,7 +11,7 @@
 Target Server Version : 80019 (8.0.19)
 File Encoding         : 65001
 Date: 12/02/2026 14:23:06
 Date: 14/02/2026 00:59:38
*/
SET NAMES utf8mb4;
@@ -68,12 +68,13 @@
  `create_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '创建人',
  `update_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '修改人',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '权限组设置' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '权限组设置' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of sys_group
-- ----------------------------
INSERT INTO `sys_group` VALUES (1, '超级管理员', '', 1, 0, '2026-02-09 18:12:12', '2026-02-09 18:12:25', '', '');
INSERT INTO `sys_group` VALUES (4, '管理后台权限', '备注', 1, 0, '2026-02-13 23:13:03', '2026-02-13 23:13:03', '开发', '开发');
-- ----------------------------
-- Table structure for sys_group_menu
@@ -197,6 +198,30 @@
INSERT INTO `sys_group_menu` VALUES (1, 216);
INSERT INTO `sys_group_menu` VALUES (1, 217);
INSERT INTO `sys_group_menu` VALUES (1, 218);
INSERT INTO `sys_group_menu` VALUES (4, 101);
INSERT INTO `sys_group_menu` VALUES (4, 202);
INSERT INTO `sys_group_menu` VALUES (4, 203);
INSERT INTO `sys_group_menu` VALUES (4, 402);
INSERT INTO `sys_group_menu` VALUES (4, 20101);
INSERT INTO `sys_group_menu` VALUES (4, 20401);
INSERT INTO `sys_group_menu` VALUES (4, 20402);
INSERT INTO `sys_group_menu` VALUES (4, 20501);
INSERT INTO `sys_group_menu` VALUES (4, 30101);
INSERT INTO `sys_group_menu` VALUES (4, 30102);
INSERT INTO `sys_group_menu` VALUES (4, 30103);
INSERT INTO `sys_group_menu` VALUES (4, 30104);
INSERT INTO `sys_group_menu` VALUES (4, 30105);
INSERT INTO `sys_group_menu` VALUES (4, 30106);
INSERT INTO `sys_group_menu` VALUES (4, 30201);
INSERT INTO `sys_group_menu` VALUES (4, 30202);
INSERT INTO `sys_group_menu` VALUES (4, 30203);
INSERT INTO `sys_group_menu` VALUES (4, 30204);
INSERT INTO `sys_group_menu` VALUES (4, 30301);
INSERT INTO `sys_group_menu` VALUES (4, 30302);
INSERT INTO `sys_group_menu` VALUES (4, 30303);
INSERT INTO `sys_group_menu` VALUES (4, 30304);
INSERT INTO `sys_group_menu` VALUES (4, 40101);
INSERT INTO `sys_group_menu` VALUES (4, 40102);
INSERT INTO `sys_group_menu` VALUES (122, 110);
INSERT INTO `sys_group_menu` VALUES (122, 111);
INSERT INTO `sys_group_menu` VALUES (122, 112);
@@ -743,12 +768,14 @@
  `create_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人',
  `update_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '修改人',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 139 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '角色信息表' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 141 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '角色信息表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of sys_role
-- ----------------------------
INSERT INTO `sys_role` VALUES (1, 1, '超级管理员', '', 0, '2026-02-09 18:10:58', '2026-02-09 18:10:58', 'admin', 'admin');
INSERT INTO `sys_role` VALUES (139, 4, '管理员1', '123', 1, '2026-02-13 23:29:05', '2026-02-13 23:29:32', '开发', '开发');
INSERT INTO `sys_role` VALUES (140, 4, '管理员', '123', 0, '2026-02-13 23:29:41', '2026-02-13 23:29:41', '开发', '开发');
-- ----------------------------
-- Table structure for sys_role_dept
@@ -787,12 +814,13 @@
  `create_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '创建人',
  `update_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '修改人',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 949 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户信息表' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 950 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户信息表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of sys_user
-- ----------------------------
INSERT INTO `sys_user` VALUES (948, '开发', '1', 'admin', '18888888888', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '', 0, '备注', 0, '2026-02-09 18:08:42', '2026-02-09 18:08:53', '', '');
INSERT INTO `sys_user` VALUES (948, '开发', '1', 'admin', '18888888888', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '', 0, '备注', 0, '2026-02-09 18:08:42', '2026-02-14 00:09:05', '', '开发');
INSERT INTO `sys_user` VALUES (949, '张三', '001', '13350010001', '13350010001', '$2a$10$JtTjRGkjGl6xDWd7Y3NfNuatn25xZetIoHmFkRIuQPu6fqjIsUUsK', '', 0, '', 0, '2026-02-13 23:24:44', '2026-02-14 00:09:16', '开发', '开发');
-- ----------------------------
-- Table structure for sys_user_post
@@ -1517,6 +1545,8 @@
INSERT INTO `sys_user_role` VALUES (944, 127);
INSERT INTO `sys_user_role` VALUES (946, 1);
INSERT INTO `sys_user_role` VALUES (947, 138);
INSERT INTO `sys_user_role` VALUES (948, 1);
INSERT INTO `sys_user_role` VALUES (949, 1);
-- ----------------------------
-- Table structure for xp_app_user
@@ -1537,7 +1567,7 @@
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `idx_phone`(`phone_number` ASC) USING BTREE COMMENT '手机号',
  INDEX `idx_ctime`(`create_time` ASC) USING BTREE COMMENT '创建时间'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '小程序用户' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '小程序用户' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user
@@ -1836,12 +1866,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1851,7 +1885,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_0
@@ -1866,12 +1900,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1881,7 +1919,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_1
@@ -1896,12 +1934,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1911,7 +1953,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_10
@@ -1926,12 +1968,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1941,7 +1987,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_11
@@ -1956,12 +2002,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1971,7 +2021,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_12
@@ -1986,12 +2036,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2001,7 +2055,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_13
@@ -2016,12 +2070,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2031,7 +2089,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_14
@@ -2046,12 +2104,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2061,7 +2123,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_15
@@ -2076,12 +2138,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2091,7 +2157,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_16
@@ -2106,12 +2172,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2121,7 +2191,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_17
@@ -2136,12 +2206,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2151,7 +2225,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_18
@@ -2166,12 +2240,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2181,7 +2259,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_19
@@ -2196,12 +2274,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2211,7 +2293,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_2
@@ -2226,12 +2308,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2241,7 +2327,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_3
@@ -2256,12 +2342,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2271,7 +2361,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_4
@@ -2286,12 +2376,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2301,7 +2395,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_5
@@ -2316,12 +2410,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2331,7 +2429,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_6
@@ -2346,12 +2444,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2361,7 +2463,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_7
@@ -2376,12 +2478,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2391,7 +2497,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_8
@@ -2406,12 +2512,16 @@
  `full_money` decimal(10, 2) NOT NULL COMMENT '满减金额',
  `money` decimal(10, 2) NOT NULL COMMENT '金额',
  `expiration_time` datetime NOT NULL COMMENT '过期时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期)',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态(1=未使用,2=已使用,3=已过期  0=待领取)',
  `coupon_type` int NOT NULL DEFAULT 1 COMMENT '优惠券类型(1=抵扣,2=满减)',
  `app_user_id` bigint NOT NULL COMMENT '用户id',
  `coupon_id` bigint NOT NULL COMMENT '优惠券发放id',
  `activity_id` bigint NOT NULL COMMENT '活动id',
  `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
  `coupon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '优惠券名称',
  `activity_type` int NOT NULL DEFAULT 1 COMMENT '活动类型(1=注册,2=邀请,3=红包)',
  `time_json` json NULL COMMENT '使用时间规则',
  `open_city_id` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开通城市id集合',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -2421,7 +2531,7 @@
  INDEX `idx_uid`(`app_user_id` ASC) USING BTREE COMMENT '用户id索引',
  INDEX `idx_cid`(`coupon_id` ASC) USING BTREE COMMENT '优惠券id索引',
  INDEX `idx_aid_atype`(`activity_id` ASC, `activity_type` ASC) USING BTREE COMMENT '活动id类型复合索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户优惠券' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_app_user_coupon_9
@@ -2479,11 +2589,13 @@
  `create_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '创建人',
  `update_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '修改人',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '运维人员' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '运维人员' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_operations_user
-- ----------------------------
INSERT INTO `xp_operations_user` VALUES (1, '张三', '7355608', '{\"id\":\"1\",\"name\":\"头像.jpg\",\"url\":\"\nhttps://pss.bdstatic.com/static/superman/img/topnav/newfanyi-da0cea8f7e.png\"}', '123456', '1888888888', '备注', 1, NULL, NULL, NULL, NULL, NULL, 0, '2026-02-13 14:21:34', '2026-02-13 14:23:13', '', '');
INSERT INTO `xp_operations_user` VALUES (2, '李四', '7355609', '{\"id\":\"1\",\"name\":\"头像.jpg\",\"url\":\"\nhttps://pss.bdstatic.com/static/superman/img/topnav/newfanyi-da0cea8f7e.png\"}', '123456', '1888888889', '备注', 1, NULL, NULL, NULL, NULL, NULL, 0, '2026-02-13 14:23:14', '2026-02-13 14:23:38', '', '');
-- ----------------------------
-- Table structure for xp_operations_user_notification
sql/xprt_maintenance.sql
@@ -11,7 +11,7 @@
 Target Server Version : 80019 (8.0.19)
 File Encoding         : 65001
 Date: 12/02/2026 14:23:17
 Date: 14/02/2026 00:59:51
*/
SET NAMES utf8mb4;
@@ -40,11 +40,12 @@
  `update_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '修改人',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `idx_vid`(`vehicle_id` ASC) USING BTREE COMMENT '车辆id索引'
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆充电记录' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆充电记录' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_charging_record
-- ----------------------------
INSERT INTO `xp_charging_record` VALUES (1, 3, 2, 10, '{\"id\": \"349d63fd\", \"url\": null, \"name\": \"k5cJyYGcZ2sB6748b26737af63446e4c291367fbf19a.png\"}', '2026-02-13 17:49:42', 100, '{\"id\": \"349d63fd\", \"url\": null, \"name\": \"k5cJyYGcZ2sB6748b26737af63446e4c291367fbf19a.png\"}', '2026-02-13 19:49:49', 2, 2, 0, '2026-02-13 17:50:12', '2026-02-13 17:50:12', '', '');
-- ----------------------------
-- Table structure for xp_charging_record_0
@@ -69,7 +70,7 @@
  `update_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '修改人',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `idx_vid`(`vehicle_id` ASC) USING BTREE COMMENT '车辆id索引'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆充电记录' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆充电记录' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_charging_record_0
@@ -643,11 +644,12 @@
  `create_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '创建人',
  `update_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '修改人',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '打卡地址管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '打卡地址管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_check_location
-- ----------------------------
INSERT INTO `xp_check_location` VALUES (1, '天府新谷', 100.00, 11.00, 77.00, 1, 0, '2026-02-13 15:27:03', '2026-02-13 15:27:06', '', '');
-- ----------------------------
-- Table structure for xp_clock_in
@@ -949,18 +951,20 @@
  `create_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '创建人',
  `update_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '修改人',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '事故任务事故类型(目前作为临时表存储,后续可能会在后台手动配置或存入数据字典)' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '事故任务事故类型(目前作为临时表存储,后续可能会在后台手动配置或存入数据字典)' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_error_type
-- ----------------------------
INSERT INTO `xp_error_type` VALUES (2, '车辆技术故障类', 0, 0, '2026-02-13 14:09:53', '2026-02-13 14:14:09', '', '');
INSERT INTO `xp_error_type` VALUES (3, '自动驾驶系统失效', 2, 0, '2026-02-13 14:10:06', '2026-02-13 14:10:06', '', '');
-- ----------------------------
-- Table structure for xp_fleet
-- ----------------------------
DROP TABLE IF EXISTS `xp_fleet`;
CREATE TABLE `xp_fleet`  (
  `id` bigint NOT NULL COMMENT '自增id',
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `fleet_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '车队名称',
  `province_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '省份名称',
  `province_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '省份code',
@@ -980,11 +984,13 @@
  `update_by` varchar(127) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '修改人',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `idx_name`(`fleet_name` ASC) USING BTREE COMMENT '名称'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车队管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车队管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_fleet
-- ----------------------------
INSERT INTO `xp_fleet` VALUES (1, '测试的编辑', '', '', '', '', '', '', '', '', 1, NULL, 1, 1, '2026-02-13 15:39:10', '2026-02-13 17:21:58', '开发', '开发');
INSERT INTO `xp_fleet` VALUES (2, '44', '', '', '', '', '', '', '', '', 2, NULL, 1, 0, '2026-02-13 16:17:25', '2026-02-13 16:17:25', '开发', '开发');
-- ----------------------------
-- Table structure for xp_fleet_operations
@@ -999,6 +1005,7 @@
-- ----------------------------
-- Records of xp_fleet_operations
-- ----------------------------
INSERT INTO `xp_fleet_operations` VALUES (2, 1);
-- ----------------------------
-- Table structure for xp_fleet_vehicle
@@ -1013,6 +1020,7 @@
-- ----------------------------
-- Records of xp_fleet_vehicle
-- ----------------------------
INSERT INTO `xp_fleet_vehicle` VALUES (2, 4);
-- ----------------------------
-- Table structure for xp_policy_application
@@ -1164,11 +1172,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task
-- ----------------------------
INSERT INTO `xp_task` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_0
@@ -1178,9 +1191,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1191,7 +1205,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1201,11 +1216,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_0
-- ----------------------------
INSERT INTO `xp_task_0` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_0` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_0` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_0` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_0` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_1
@@ -1215,9 +1235,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1228,7 +1249,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1238,11 +1260,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_1
-- ----------------------------
INSERT INTO `xp_task_1` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_1` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_1` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_1` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_1` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_10
@@ -1252,9 +1279,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1265,7 +1293,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1275,11 +1304,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_10
-- ----------------------------
INSERT INTO `xp_task_10` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_10` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_10` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_10` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_10` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_11
@@ -1289,9 +1323,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1302,7 +1337,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1312,11 +1348,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_11
-- ----------------------------
INSERT INTO `xp_task_11` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_11` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_11` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_11` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_11` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_12
@@ -1326,9 +1367,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1339,7 +1381,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1349,11 +1392,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_12
-- ----------------------------
INSERT INTO `xp_task_12` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_12` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_12` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_12` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_12` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_13
@@ -1363,9 +1411,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1376,7 +1425,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1386,11 +1436,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_13
-- ----------------------------
INSERT INTO `xp_task_13` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_13` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_13` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_13` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_13` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_14
@@ -1400,9 +1455,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1413,7 +1469,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1423,11 +1480,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_14
-- ----------------------------
INSERT INTO `xp_task_14` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_14` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_14` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_14` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_14` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_15
@@ -1437,9 +1499,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1450,7 +1513,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1460,11 +1524,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_15
-- ----------------------------
INSERT INTO `xp_task_15` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_15` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_15` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_15` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_15` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_16
@@ -1474,9 +1543,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1487,7 +1557,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1497,11 +1568,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_16
-- ----------------------------
INSERT INTO `xp_task_16` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_16` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_16` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_16` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_16` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_17
@@ -1511,9 +1587,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1524,7 +1601,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1534,11 +1612,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_17
-- ----------------------------
INSERT INTO `xp_task_17` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_17` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_17` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_17` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_17` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_18
@@ -1548,9 +1631,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1561,7 +1645,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1571,11 +1656,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_18
-- ----------------------------
INSERT INTO `xp_task_18` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_18` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_18` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_18` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_18` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_19
@@ -1585,9 +1675,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1598,7 +1689,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1608,11 +1700,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_19
-- ----------------------------
INSERT INTO `xp_task_19` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_19` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_19` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_19` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_19` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_2
@@ -1622,9 +1719,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1635,7 +1733,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1645,11 +1744,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_2
-- ----------------------------
INSERT INTO `xp_task_2` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_2` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_2` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_2` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_2` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_3
@@ -1659,9 +1763,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1672,7 +1777,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1682,11 +1788,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_3
-- ----------------------------
INSERT INTO `xp_task_3` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_3` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_3` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_3` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_3` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_4
@@ -1696,9 +1807,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1709,7 +1821,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1719,11 +1832,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_4
-- ----------------------------
INSERT INTO `xp_task_4` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_4` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_4` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_4` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_4` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_5
@@ -1733,9 +1851,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1746,7 +1865,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1756,11 +1876,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_5
-- ----------------------------
INSERT INTO `xp_task_5` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_5` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_5` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_5` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_5` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_6
@@ -1770,9 +1895,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1783,7 +1909,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1793,11 +1920,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_6
-- ----------------------------
INSERT INTO `xp_task_6` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_6` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_6` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_6` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_6` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_7
@@ -1807,9 +1939,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1820,7 +1953,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1830,11 +1964,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_7
-- ----------------------------
INSERT INTO `xp_task_7` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_7` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_7` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_7` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_7` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_8
@@ -1844,9 +1983,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1857,7 +1997,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1867,11 +2008,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_8
-- ----------------------------
INSERT INTO `xp_task_8` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_8` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_8` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_8` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_8` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_9
@@ -1881,9 +2027,10 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `task_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务编号',
  `task_category` int NOT NULL DEFAULT 1 COMMENT '任务类别1常规 2事故',
  `task_type_id` bigint NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_type_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务类型id 任务类别为2时对应数据字典,为1的时候 枚举1车辆检查 2车辆充电 3车辆整备 4整备洗车 5车辆维修 6车辆保养 7车辆保险到期 8车辆年检到期 9车辆运营资质到期',
  `task_urgency_level` int NOT NULL COMMENT '任务紧急程度 0=P0 1=P1 2=P2 3=P3',
  `task_description` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务描述',
  `task_image` json NOT NULL COMMENT '任务图片',
  `vehicle_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车辆位置',
  `vehicle_id` bigint NOT NULL COMMENT '车辆id',
  `vehicle_lon` decimal(10, 2) NOT NULL COMMENT '车辆经度',
@@ -1894,7 +2041,8 @@
  `assignee_time` datetime NULL DEFAULT NULL COMMENT '分配时间',
  `report_user_id` bigint NOT NULL COMMENT '上报人id',
  `report_time` datetime NOT NULL COMMENT '上报时间',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态 1=待处理 2=已完成 3=已取消',
  `status` int NOT NULL DEFAULT 1 COMMENT '状态0=待到达 1=待处理 2=已完成 3=已取消',
  `end_time` datetime NOT NULL COMMENT '任务处理时限',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
@@ -1904,11 +2052,16 @@
  INDEX `idx_tid`(`task_type_id` ASC) USING BTREE COMMENT '类型id',
  INDEX `idx_level`(`task_urgency_level` ASC) USING BTREE COMMENT '级别',
  INDEX `idx_status`(`status` ASC) USING BTREE COMMENT '状态'
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '任务管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_task_9
-- ----------------------------
INSERT INTO `xp_task_9` VALUES (2, '1', 1, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:45:35', '', '');
INSERT INTO `xp_task_9` VALUES (3, '2', 1, '2', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:48:58', '', '');
INSERT INTO `xp_task_9` VALUES (4, '3', 1, '1', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:52:45', '', '');
INSERT INTO `xp_task_9` VALUES (5, '4', 1, '5', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 17:58:11', '', '');
INSERT INTO `xp_task_9` VALUES (6, '5', 2, '3', 3, '描述', '{}', '位置', 2, 89.00, 98.00, 2, '2026-02-13 17:45:01', 2, '2026-02-13 17:45:11', 2, '2026-02-13 17:45:16', 2, '2026-02-13 17:45:16', 0, '2026-02-13 17:45:35', '2026-02-13 18:00:52', '', '');
-- ----------------------------
-- Table structure for xp_task_handle_detail
@@ -3137,6 +3290,7 @@
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `vehicle_code` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '车辆编码',
  `vehicle_vin` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '车辆vin码',
  `xpu_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT 'XPUID',
  `plate_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '车牌号',
  `vehicle_model` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '型号',
  `vehicle_color` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '车辆颜色',
@@ -3157,8 +3311,8 @@
  `operating_status` int NOT NULL DEFAULT 1 COMMENT '运营状态 1运营中 2维修中 3已收车 4车辆异常',
  `warehousing_time` datetime NULL DEFAULT NULL COMMENT '入库时间',
  `vehicle_type` int NOT NULL DEFAULT 1 COMMENT '车辆类型 1=在库 2=运营',
  `accept_or_test` int NOT NULL DEFAULT 3 COMMENT '当前模式 1接单 2测试',
  `accept_or_test_status` int NOT NULL COMMENT '模式状态 1开始接单/开始测试 2停止接单/停止测试',
  `accept_or_test` int NULL DEFAULT 1 COMMENT '当前模式 1接单 2测试',
  `accept_or_test_status` int NULL DEFAULT NULL COMMENT '模式状态 1开始接单/开始测试 2停止接单/停止测试',
  `current_electricity` int NOT NULL DEFAULT 100 COMMENT '当前电量',
  `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0=未删除 1=已删除',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
@@ -3173,11 +3327,15 @@
  INDEX `idx_ostatus`(`operating_status` ASC) USING BTREE COMMENT '运营状态',
  INDEX `idx_wtime`(`warehousing_time` ASC) USING BTREE COMMENT '入库时间',
  INDEX `idx_aidate`(`annual_inspection_date` ASC) USING BTREE COMMENT '年检日期'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆管理' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆管理' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_vehicle
-- ----------------------------
INSERT INTO `xp_vehicle` VALUES (1, '03', '12312312312312312', '1', '粤PXV7029', '阿斯蒂芬', '白色', '{\"id\": \"926c50a3\", \"url\": \"https://q3.itc.cn/images01/20240319/ebdf9d93de4a498bbb819a0bce143cb7.jpeg\", \"name\": \"6lvylsNkTqdn86fe4fc2e7832b2ecd08d28bb4bc3c8c.png\"}', '采购', '备注', '2026-02-14 00:00:00', '宝相寺', '18224358736', '2026-02-21 00:00:00', '[{\"id\": \"6514c2ab\", \"url\": \"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png\", \"name\": \"90.jpg\"}]', '[{\"id\": \"ae9cb5ff\", \"url\": \"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png\", \"name\": \"90.jpg\"}]', 23, '[{\"id\": \"35bd87e9\", \"url\": \"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png\", \"name\": \"52852962eb8be041576show.jpg\"}]', '2026-02-28 00:00:00', 0, 2, 1, '2026-02-13 16:05:40', 1, 1, NULL, 100, 0, '2026-02-13 16:05:40', '2026-02-13 21:17:14', '', '');
INSERT INTO `xp_vehicle` VALUES (2, '1', 'CDTEST005', '1', '1', '1', '1', '{\"id\": \"926c50a3\", \"url\": \"https://q3.itc.cn/images01/20240319/ebdf9d93de4a498bbb819a0bce143cb7.jpeg\", \"name\": \"6lvylsNkTqdn86fe4fc2e7832b2ecd08d28bb4bc3c8c.png\"}', '1', '1', '2026-02-13 10:19:47', '1', '1', '2026-02-13 10:19:51', '1', '1', 22, '1', '2026-02-13 10:20:03', 0, 2, 1, '2026-02-13 10:20:21', 2, 1, 1, 10, 0, '2026-02-13 10:19:31', '2026-02-13 21:17:15', '1', '1');
INSERT INTO `xp_vehicle` VALUES (4, '0001', '21312323333333312', '1', '川X00001', '型号001', '白色', '{\"id\": \"926c50a3\", \"url\": \"https://q3.itc.cn/images01/20240319/ebdf9d93de4a498bbb819a0bce143cb7.jpeg\", \"name\": \"6lvylsNkTqdn86fe4fc2e7832b2ecd08d28bb4bc3c8c.png\"}', '采购', '这是备注001', '2026-02-26 00:00:00', '宝相寺', '18224358736', '2026-02-27 00:00:00', '[{\"id\": \"6ad5adb7\", \"url\": null, \"name\": \"5c7915bf-bb79-4450-924b-73c5b523055f.jpg\"}]', '[{\"id\": \"f203241c\", \"url\": null, \"name\": \"6c49230287fa2bfb9d5ee9783a14584c.jpg\"}]', 15, '[{\"id\": \"e4d966a2\", \"url\": null, \"name\": \"602e0742de3b93bc391d71641e4a904c.jpg\"}]', '2026-02-28 00:00:00', 0, 2, 1, '2026-02-13 14:50:59', 2, 1, NULL, 100, 0, '2026-02-13 14:50:59', '2026-02-13 21:17:15', '', '');
INSERT INTO `xp_vehicle` VALUES (6, '1', 'TEST004', '1', '粤PXV7029', '1', '1', '{\"id\": \"926c50a3\", \"url\": \"https://q3.itc.cn/images01/20240319/ebdf9d93de4a498bbb819a0bce143cb7.jpeg\", \"name\": \"6lvylsNkTqdn86fe4fc2e7832b2ecd08d28bb4bc3c8c.png\"}', '1', '1', '2026-02-13 10:19:47', '1', '1', '2026-02-13 10:19:51', '1', '1', 23, '1', '2026-02-13 10:20:03', 0, 2, 1, '2026-02-13 10:20:21', 1, 1, 1, 1, 0, '2026-02-13 10:19:31', '2026-02-13 21:17:15', '1', '1');
-- ----------------------------
-- Table structure for xp_vehicle_annual_record
@@ -3202,11 +3360,14 @@
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `idx_code`(`vehicle_id` ASC) USING BTREE COMMENT '编码',
  INDEX `idx_aidate`(`annual_inspection_date` ASC) USING BTREE COMMENT '年检日期'
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆年检信息修改记录' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆年检信息修改记录' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_vehicle_annual_record
-- ----------------------------
INSERT INTO `xp_vehicle_annual_record` VALUES (1, 4, '2026-02-26 00:00:00', '宝相寺', '18224358736', '2026-02-27 00:00:00', '[{\"id\": \"6ad5adb7\", \"url\": null, \"name\": \"5c7915bf-bb79-4450-924b-73c5b523055f.jpg\"}]', '[{\"id\": \"f203241c\", \"url\": null, \"name\": \"6c49230287fa2bfb9d5ee9783a14584c.jpg\"}]', '[{\"id\": \"e4d966a2\", \"url\": null, \"name\": \"602e0742de3b93bc391d71641e4a904c.jpg\"}]', '2026-02-28 00:00:00', 0, '2026-02-13 15:01:39', '2026-02-13 17:41:07', '', '');
INSERT INTO `xp_vehicle_annual_record` VALUES (2, 4, '2026-02-26 00:00:00', '宝相寺', '18224358736', '2026-02-27 00:00:00', '[{\"id\": \"6ad5adb7\", \"url\": null, \"name\": \"5c7915bf-bb79-4450-924b-73c5b523055f.jpg\"}]', '[{\"id\": \"f203241c\", \"url\": null, \"name\": \"6c49230287fa2bfb9d5ee9783a14584c.jpg\"}]', '[{\"id\": \"e4d966a2\", \"url\": null, \"name\": \"602e0742de3b93bc391d71641e4a904c.jpg\"}]', '2026-02-28 00:00:00', 0, '2026-02-13 15:02:46', '2026-02-13 17:41:07', '', '');
INSERT INTO `xp_vehicle_annual_record` VALUES (3, 2, '2026-02-26 00:00:00', '宝相寺', '18224358736', '2026-02-27 00:00:00', '[{\"id\": \"6ad5adb7\", \"url\": null, \"name\": \"5c7915bf-bb79-4450-924b-73c5b523055f.jpg\"}]', '[{\"id\": \"f203241c\", \"url\": null, \"name\": \"6c49230287fa2bfb9d5ee9783a14584c.jpg\"}]', '[{\"id\": \"e4d966a2\", \"url\": null, \"name\": \"602e0742de3b93bc391d71641e4a904c.jpg\"}]', '2026-02-28 00:00:00', 0, '2026-02-13 15:02:46', '2026-02-13 17:41:07', '', '');
-- ----------------------------
-- Table structure for xp_vehicle_clean
@@ -3285,11 +3446,12 @@
  INDEX `idx_vid`(`vehicle_id` ASC) USING BTREE COMMENT '车辆id',
  INDEX `idx_uid`(`operations_user_id` ASC) USING BTREE COMMENT '检查人id',
  INDEX `idx_ctime`(`check_time` ASC) USING BTREE COMMENT '检查时间'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆检测' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆检测' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_vehicle_detection
-- ----------------------------
INSERT INTO `xp_vehicle_detection` VALUES (1, 4, 2, 1, 1, 1, 1, 1, 1, 1, '{\"id\": \"349d63fd\", \"url\": null, \"name\": \"k5cJyYGcZ2sB6748b26737af63446e4c291367fbf19a.png\"}', 1, '[{\"id\": \"e4d966a2\", \"url\": null, \"name\": \"602e0742de3b93bc391d71641e4a904c.jpg\"}]', 1, '[{\"id\": \"e4d966a2\", \"url\": null, \"name\": \"602e0742de3b93bc391d71641e4a904c.jpg\"}]', 1, '[{\"id\": \"e4d966a2\", \"url\": null, \"name\": \"602e0742de3b93bc391d71641e4a904c.jpg\"}]', 1, '[{\"id\": \"e4d966a2\", \"url\": null, \"name\": \"602e0742de3b93bc391d71641e4a904c.jpg\"}]', 2, '2026-02-13 17:56:22', 0, '2026-02-13 17:57:08', '2026-02-13 17:57:08', '', '');
-- ----------------------------
-- Table structure for xp_vehicle_detection_0
@@ -3326,7 +3488,7 @@
  INDEX `idx_vid`(`vehicle_id` ASC) USING BTREE COMMENT '车辆id',
  INDEX `idx_uid`(`operations_user_id` ASC) USING BTREE COMMENT '检查人id',
  INDEX `idx_ctime`(`check_time` ASC) USING BTREE COMMENT '检查时间'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆检测' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆检测' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_vehicle_detection_0
@@ -3731,11 +3893,12 @@
  INDEX `idx_vid`(`vehicle_id` ASC) USING BTREE COMMENT '车辆id',
  INDEX `idx_uid`(`operations_user_id` ASC) USING BTREE COMMENT '检查人id',
  INDEX `idx_ctime`(`create_time` ASC) USING BTREE COMMENT '整备时间'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆整备' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆整备' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_vehicle_preparation
-- ----------------------------
INSERT INTO `xp_vehicle_preparation` VALUES (1, 2, 2, '120', '120', '120', '120', '{\"id\": \"349d63fd\", \"url\": null, \"name\": \"k5cJyYGcZ2sB6748b26737af63446e4c291367fbf19a.png\"}', '{\"id\": \"349d63fd\", \"url\": null, \"name\": \"k5cJyYGcZ2sB6748b26737af63446e4c291367fbf19a.png\"}', '{\"id\": \"349d63fd\", \"url\": null, \"name\": \"k5cJyYGcZ2sB6748b26737af63446e4c291367fbf19a.png\"}', '{\"id\": \"349d63fd\", \"url\": null, \"name\": \"k5cJyYGcZ2sB6748b26737af63446e4c291367fbf19a.png\"}', '{\"id\": \"349d63fd\", \"url\": null, \"name\": \"k5cJyYGcZ2sB6748b26737af63446e4c291367fbf19a.png\"}', '{\"id\": \"349d63fd\", \"url\": null, \"name\": \"k5cJyYGcZ2sB6748b26737af63446e4c291367fbf19a.png\"}', '{\"id\": \"349d63fd\", \"url\": null, \"name\": \"k5cJyYGcZ2sB6748b26737af63446e4c291367fbf19a.png\"}', '被准', 2, 0, '2026-02-13 17:47:36', '2026-02-13 17:47:36', '', '');
-- ----------------------------
-- Table structure for xp_vehicle_preparation_0
@@ -3767,7 +3930,7 @@
  INDEX `idx_vid`(`vehicle_id` ASC) USING BTREE COMMENT '车辆id',
  INDEX `idx_uid`(`operations_user_id` ASC) USING BTREE COMMENT '检查人id',
  INDEX `idx_ctime`(`create_time` ASC) USING BTREE COMMENT '整备时间'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆整备' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆整备' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_vehicle_preparation_0
@@ -4125,11 +4288,12 @@
  INDEX `idx_sid`(`send_user_id` ASC) USING BTREE COMMENT '送修人id',
  INDEX `idx_ctime`(`create_time` ASC) USING BTREE COMMENT '维修时间',
  INDEX `idx_rid`(`return_user_id` ASC) USING BTREE COMMENT '取回人id'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆维修' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆维修' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_vehicle_repair
-- ----------------------------
INSERT INTO `xp_vehicle_repair` VALUES (1, 5, 2, '2026-02-13 17:58:30', '2026-02-14 17:58:33', '原因', '[{\"id\": \"e4d966a2\", \"url\": null, \"name\": \"602e0742de3b93bc391d71641e4a904c.jpg\"}]', 100.00, '{}', 2, '2026-02-13 17:59:21', 2, '2026-02-14 17:59:28', 0, '2026-02-13 17:59:51', '2026-02-13 17:59:51', '', '');
-- ----------------------------
-- Table structure for xp_vehicle_repair_0
@@ -4159,7 +4323,7 @@
  INDEX `idx_sid`(`send_user_id` ASC) USING BTREE COMMENT '送修人id',
  INDEX `idx_ctime`(`create_time` ASC) USING BTREE COMMENT '维修时间',
  INDEX `idx_rid`(`return_user_id` ASC) USING BTREE COMMENT '取回人id'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆维修' ROW_FORMAT = Dynamic;
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆维修' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of xp_vehicle_repair_0
sql/xprt_operation.sql
Diff too large
sql/xprt_order.sql
Diff too large
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/config/DataUpdateHandlerConfig.java
New file
@@ -0,0 +1,72 @@
package com.xiaopeng.account.config;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import com.xiaopeng.common.core.utils.StringUtils;
import com.xiaopeng.common.security.utils.SecurityUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.context.annotation.Configuration;
import java.time.LocalDateTime;
/**
 * @author xiaochen
 * @ClassName DataUpdateInterceptor
 * @Description 数据更新操作处理
 * @date 2021-12-15
 * <p>
 * 注意,之前在此处注入了 JwtTokenUtils
 * <p>
 * 造成spring循环依赖,项目支棱不起来
 */
@Slf4j
@Configuration
public class DataUpdateHandlerConfig implements MetaObjectHandler {
    /**
     * 新增数据执行
     *
     * @param metaObject
     */
    @Override
    public void insertFill(MetaObject metaObject) {
        String userName = "";
        try{
            //  获取登录信息
            userName = SecurityUtils.getLoginUser().getSysUser().getNickName();
            log.info("DataUpdateInterceptor insertFill");
        } catch (Exception e) {
            log.error("DataUpdateInterceptor insertFill error:{}", e.getMessage());
        }
        if (StringUtils.isNotBlank(userName)) {
            this.setFieldValByName("createBy", userName, metaObject);
            this.setFieldValByName("updateBy", userName, metaObject);
        } else {
            this.setFieldValByName("createBy", userName, metaObject);
            this.setFieldValByName("updateBy", userName, metaObject);
        }
        this.setFieldValByName("createTime", LocalDateTime.now(), metaObject);
        this.setFieldValByName("updateTime", LocalDateTime.now(), metaObject);
    }
    /**
     * 修改数据执行
     *
     * @param metaObject
     */
    @Override
    public void updateFill(MetaObject metaObject) {
        String userName = "";
        try{
            //  获取登录信息
            userName = SecurityUtils.getLoginUser().getSysUser().getNickName();
            log.info("DataUpdateInterceptor insertFill");
        } catch (Exception e) {
            log.error("DataUpdateInterceptor insertFill error:{}", e.getMessage());
        }
        this.setFieldValByName("updateTime", LocalDateTime.now(), metaObject);
        this.setFieldValByName("updateBy", userName, metaObject);
    }
}
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/SysRoleBakController.java
@@ -10,11 +10,7 @@
import com.xiaopeng.account.vo.RoleAddDto;
import com.xiaopeng.account.vo.RoleInfoVo;
import com.xiaopeng.account.vo.RoleUpdateDto;
import com.xiaopeng.api.model.account.SysRoleBak;
import com.xiaopeng.api.model.account.SysRoleMenu;
import com.xiaopeng.api.model.account.SysUser;
import com.xiaopeng.api.model.account.SysUserRole;
import com.xiaopeng.api.model.account.SysDept;
import com.xiaopeng.api.model.account.*;
import com.xiaopeng.common.core.utils.StringUtils;
import com.xiaopeng.common.core.web.controller.BaseController;
import com.xiaopeng.common.core.web.domain.AjaxResult;
@@ -26,7 +22,6 @@
import com.xiaopeng.common.security.annotation.Logical;
import com.xiaopeng.common.security.annotation.RequiresPermissions;
import com.xiaopeng.common.security.utils.SecurityUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.util.CollectionUtils;
import org.springframework.validation.annotation.Validated;
@@ -45,7 +40,6 @@
 */
@RestController
@RequestMapping("/role")
@Api(tags = "角色模块")
public class SysRoleBakController extends BaseController {
    @Resource
    private ISysRoleBakService roleService;
@@ -78,7 +72,6 @@
    @RequiresPermissions(value = {"/roleManagement"}, logical = Logical.OR)
    @ResponseBody
    @GetMapping("/listPage")
    @ApiOperation(value = "获取角色列表", tags = {"管理后台-角色管理"})
    public AjaxResult listPage(String name, BasePage basePage) {
        PageInfo<SysRoleBak> pageInfo = new PageInfo<>(basePage.getPageNum(), basePage.getPageSize());
        LambdaQueryWrapper<SysRoleBak> wrapper = new LambdaQueryWrapper<SysRoleBak>().eq(SysRoleBak::getStatus, 0).eq(SysRoleBak::getDelFlag, 0);
@@ -124,7 +117,6 @@
    
    @RequiresPermissions(value = {"/roleManagement/info", "/roleManagement/update"}, logical = Logical.OR)
    @GetMapping("/roleInfo")
    @ApiOperation(value = "角色详情", tags = {"管理后台-角色管理"})
    public AjaxResult roleInfo(@RequestParam Long id) {
        SysRoleBak role = roleService.selectRoleById(id);
        RoleInfoVo roleInfoVo = new RoleInfoVo();
@@ -161,7 +153,6 @@
    
    @RequiresPermissions(value = {"/roleManagement/update"}, logical = Logical.OR)
    @PostMapping("/roleUpdate")
    @ApiOperation(value = "编辑角色", tags = {"管理后台-角色管理"})
    public AjaxResult roleUpdate(@Validated @RequestBody RoleUpdateDto dto) {
        SysRoleBak role = new SysRoleBak();
        role.setRoleName(dto.getRoleName());
@@ -208,7 +199,6 @@
    @RequiresPermissions(value = {"/roleManagement/del"}, logical = Logical.OR)
    @Log(title = "角色管理", businessType = BusinessType.DELETE)
    @DeleteMapping("/{roleIds}")
    @ApiOperation(value = "删除角色", tags = {"管理后台-角色管理"})
    public AjaxResult remove(@PathVariable Long[] roleIds) {
        return toAjax(roleService.deleteRoleByIds(roleIds));
    }
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/SysUserController.java
@@ -7,12 +7,9 @@
import com.xiaopeng.account.model.dto.UserPwdResetDTO;
import com.xiaopeng.account.model.query.SysUserListQuery;
import com.xiaopeng.account.service.*;
import com.xiaopeng.api.model.account.SysRole;
import com.xiaopeng.api.model.account.SysRoleBak;
import com.xiaopeng.api.model.account.SysUser;
import com.xiaopeng.api.model.account.SysUserRole;
import com.xiaopeng.api.model.account.SysDept;
import com.xiaopeng.api.model.account.*;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.enums.DisabledEnum;
import com.xiaopeng.common.core.exception.ServiceException;
import com.xiaopeng.common.core.utils.RSAUtil;
import com.xiaopeng.common.core.utils.StringUtils;
@@ -22,8 +19,6 @@
import com.xiaopeng.common.log.annotation.Log;
import com.xiaopeng.common.log.enums.BusinessType;
import com.xiaopeng.common.redis.service.RedisService;
import com.xiaopeng.common.security.annotation.Logical;
import com.xiaopeng.common.security.annotation.RequiresPermissions;
import com.xiaopeng.common.security.service.TokenService;
import com.xiaopeng.common.security.utils.SecurityUtils;
import io.swagger.annotations.ApiOperation;
@@ -72,7 +67,6 @@
    /**
     * 获取用户列表
     */
    @RequiresPermissions(value = {"/systemUserManagement", "/roleManagement/info"}, logical = Logical.OR)
    @GetMapping("/api/v1/sys-user/pageList")
    @ApiOperation(value = "账号管理分页列表", tags = {"管理后台-账号管理"})
    public AjaxResult<PageInfo<SysUser>> list(SysUserListQuery sysUserListQuery) {
@@ -86,7 +80,6 @@
    /**
     * 新增用户
     */
    @RequiresPermissions(value = {"/systemUserManagement/add"}, logical = Logical.OR)
    @Log(title = "帐号管理", businessType = BusinessType.INSERT)
    @PostMapping("/api/v1/sys-user/add")
    @ApiOperation(value = "添加帐号", tags = {"管理后台-帐号管理"})
@@ -102,7 +95,6 @@
        if (count > 0) {
            throw new ServiceException("用户编号已存在", I18nKeyConstant.ACCOUNT_UNIQUE_NUMBER_DUPLICATE);
        }
        user.setCreateBy(SecurityUtils.getLoginUser().getSysUser().getNickName());
        user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
        //TODO 手机号脱敏存储
        userService.insertUser(user);
@@ -114,7 +106,6 @@
    }
    
    
    @RequiresPermissions(value = {"/systemUserManagement/add", "/systemUserManagement/update"}, logical = Logical.OR)
    @GetMapping("/verifyUserNameRepeat/{username}")
    @ApiOperation(value = "校验账号是否重复", tags = {"管理后台-系统用户管理"})
    public AjaxResult verifyUserNameRepeat(@PathVariable String username){
@@ -155,18 +146,10 @@
    /**
     * 修改用户
     */
    @RequiresPermissions(value = {"/systemUserManagement/update"}, logical = Logical.OR)
    @Log(title = "帐号管理", businessType = BusinessType.UPDATE)
    @PutMapping("/api/v1/sys-user/edit")
    @ApiOperation(value = "编辑帐号", tags = {"管理后台-帐号管理"})
    public AjaxResult edit(@Validated @RequestBody SysUser user) {
        R<Integer> admin = this.isAdmin(user.getId());
        Integer data = admin.getData();
        if(data == null || data != 1){
            SysUserRole one = sysUserRoleService.getOne(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, user.getId()));
            one.setRoleId(user.getRoleId());
            sysUserRoleService.updateSysUserRole(one);
        }
        userService.checkUserAllowed(user);
        // userService.checkUserDataScope(user.getId());
        SysUser sysUser = userService.getOne(Wrappers.lambdaQuery(SysUser.class)
@@ -182,12 +165,10 @@
        if (StringUtils.isNotEmpty(user.getUserAccount()) && (Objects.nonNull(sysUser) && !user.getId().equals(sysUser.getId()) )) {
            throw new ServiceException("登录账号重复", I18nKeyConstant.ACCOUNT_DUPLICATE);
        }
        user.setUpdateBy(SecurityUtils.getUsername());
        if (user.getPassword() != null && !user.getPassword().isEmpty()) {
            user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
            user.setPassword(null);
        }
        user.setUpdateBy(SecurityUtils.getUsername());
        userService.updateUser(user);
        userService.updateById(user);
        
        //删除旧的角色数据,添加新的角色
        sysUserRoleService.remove(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, user.getId()));
@@ -204,7 +185,6 @@
    /**
     * 删除用户
     */
    @RequiresPermissions(value = {"/systemUserManagement/del"}, logical = Logical.OR)
    @Log(title = "帐号管理", businessType = BusinessType.DELETE)
    @DeleteMapping("/api/v1/sys-user/{userIds}")
    @ApiOperation(value = "删除账号", tags = {"管理后台-帐号管理"})
@@ -218,15 +198,14 @@
    
    @RequiresPermissions(value = {"/systemUserManagement/forbidden"}, logical = Logical.OR)
    @PostMapping("/api/v1/sys-user/switchStatus/{id}")
    @ApiOperation(value = "账号管理--禁用/启用", tags = {"管理后台-帐号管理"})
    public AjaxResult shopUserStart(@ApiParam(name = "id", value = "帐号ID") @PathVariable("id") Long id) {
        SysUser sysUser = userService.selectUserById(id);
        if (sysUser.getStatus().equals("0")) {
            sysUser.setStatus("1");
        SysUser sysUser = userService.getById(id);
        if (sysUser.getStatus().equals(DisabledEnum.NO.getCode())) {
            sysUser.setStatus(DisabledEnum.YES.getCode());
        } else {
            sysUser.setStatus("0");
            sysUser.setStatus(DisabledEnum.NO.getCode());
        }
        return toAjax(userService.updateById(sysUser));
    }
@@ -240,10 +219,13 @@
    @PostMapping("/isAdmin")
    public R<Integer> isAdmin(@RequestBody Long userId){
    public R<Long> isAdmin(@RequestBody Long userId){
        Long id = null;
        SysUserRole one = sysUserRoleService.getOne(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, userId));
        Long id =one.getRoleId();
        return R.ok(id.intValue());
        if (Objects.nonNull(one)) {
            id =one.getRoleId();
        }
        return R.ok(id);
    }
    @PostMapping("/getSysUser")
@@ -287,7 +269,6 @@
    /**
     * 重置密码
     */
    @RequiresPermissions(value = {"/systemUserManagement/reset_passwords"}, logical = Logical.OR)
    @Log(title = "帐号管理", businessType = BusinessType.UPDATE)
    @PutMapping("/api/v1/sys-user/rePassword")
    @ApiOperation(value = "重置密码", tags = {"管理后台-帐号管理"})
@@ -299,8 +280,7 @@
        userService.checkUserAllowed(user);
        // userService.checkUserDataScope(user.getId());
        user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
        user.setUpdateBy(SecurityUtils.getUsername());
        return toAjax(userService.resetPwd(user));
        return toAjax(userService.updateById(user));
    }
    /**
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/mapper/SysUserMapper.java
@@ -110,18 +110,18 @@
    /**
     * 校验用户名称是否唯一
     * 
     * @param userName 用户名称
     * @param userAccount 用户名称
     * @return 结果
     */
    public SysUser checkUserNameUnique(String userName);
    public SysUser checkUserNameUnique(String userAccount);
    /**
     * 校验手机号码是否唯一
     *
     * @param phonenumber 手机号码
     * @param phoneNumber 手机号码
     * @return 结果
     */
    public SysUser checkPhoneUnique(String phonenumber);
    public SysUser checkPhoneUnique(String phoneNumber);
    
    
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/model/vo/SysGroupPageVO.java
@@ -1,8 +1,11 @@
package com.xiaopeng.account.model.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
/**
 * 权限组分页列表VO
@@ -27,4 +30,8 @@
    @ApiModelProperty(value = "关联账号数")
    private Long bindCount;
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createTime;
}
xp-robotaxi-account-boot/src/main/resources/bootstrap.yml
@@ -160,121 +160,3 @@
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
---
spring:
  shardingsphere:
    mode:
      type: Standalone
      repository:
        type: File
      overwrite: true
    props:
      sql-show: true
    datasource:
      names: xp0
      xp0:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.110.34:3306/xprt_account?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: root
        password: 123456
        druid:
          # 连接池初始化时创建的连接数。
          # 应根据实际应用场景设置,确保应用程序启动时即可获取数据库连接。
          initial-size: 10
          # 连接池中最小的空闲连接数,保证即使在低负载时也有足够的连接可用。
          min-idle: 10
          # 连接池中最大活动连接数,限制并发请求时的数据库连接数,避免过多的连接消耗系统资源。
          max-active: 100
          # 获取连接时的最大等待时间,超过该时间则抛出异常。单位通常为毫秒。
          max-wait: 60000
          # 两个连接检查之间的时间间隔,用于检测和清理空闲过久的连接。单位为毫秒。
          time-between-eviction-runs-millis: 60000
          # 连接在被清理前的最小空闲时间。单位为毫秒。
          min-evictable-idle-time-millis: 300000
          # 用于验证连接有效性的 SQL 查询语句。
          validation-query: SELECT 1
          # 如果为真,则连接空闲时会被定期测试有效性。
          test-while-idle: true
          # 如果为真,在获取连接前进行有效性测试。
          test-on-borrow: false
          # 如果为真,在归还连接时进行有效性测试。
          test-on-return: false
          # 是否开启 PreparedStatement 缓存。
          pool-prepared-statements: true
          # 单个连接上缓存的 PreparedStatement 最大数量。
          max-pool-prepared-statement-per-connection-size: 20
          # 指定要启用的过滤器,如 stat, log4j, wall 等,用于监控和日志记录。
          filters: stat,wall,log4j
          # 连接属性,例如配置日志级别或慢 SQL 阈值。
          connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
          # 是否自动回收超时连接
          remove-abandoned: true
          # 超时时间,单位秒
          remove-abandoned-timeout: 1800
          # 是否记录被遗弃的连接
          log-abandoned: true
          # StatViewServlet配置,访问监控页面
          stat-view-servlet:
            enabled: true
            url-pattern: /druid/*
            login-username: admin
            login-password: admin
            reset-enable: false
          # 防火墙配置
          wall:
            config:
              multi-statement-allow: false
    rules:
      sharding:
        tables:
          xp_app_user:
            standard:
              sharding-column: phone_number
              sharding-algorithm-name: xp_app_user_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_app_user_coupon:
            standard:
              sharding-column: app_user_id
              sharding-algorithm-name: xp_app_user_coupon_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_operations_user_notification:
            standard:
              sharding-column: operations_user_id
              sharding-algorithm-name: xp_operations_user_notification_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
      sharding-algorithms:
        xp_app_user_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_app_user_${phone_number % 10}
        xp_app_user_coupon_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_app_user_coupon_${app_user_id % 20}
        xp_operations_user_notification_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_operations_user_notification_${operations_user_id % 20}
        single-table:
          tables:
            - xp0.sys_dept
            - xp0.sys_group
            - xp0.sys_group_menu
            - xp0.sys_post
            - xp0.sys_role
            - xp0.sys_role_dept
            - xp0.sys_user
            - xp0.sys_user_post
            - xp0.sys_user_role
            - xp0.xp_operations_position
            - xp0.xp_operations_role
            - xp0.xp_operations_user
            - xp0.xp_qualification_audit
xp-robotaxi-account-boot/src/main/resources/mapper/account/SysGroupMapper.xml
@@ -27,11 +27,12 @@
        FROM sys_user su
        INNER JOIN sys_user_role sur ON su.id = sur.user_id
        INNER JOIN sys_role sr ON sur.role_id = sr.id
        LEFT JOIN sys_group sg ON sr.group_id = sg.id
        WHERE sr.group_id = #{query.groupId}
          AND sr.is_deleted = 0
          AND su.is_deleted = 0
        <if test="query.groupType != null">
            AND sr.group_type = #{query.groupType}
            AND sg.group_type = #{query.groupType}
        </if>
        <if test="query.nickName != null and query.nickName != ''">
            AND su.nick_name LIKE CONCAT('%', #{query.nickName}, '%')
xp-robotaxi-account-boot/src/main/resources/mapper/account/SysUserMapper.xml
@@ -5,29 +5,21 @@
<mapper namespace="com.xiaopeng.account.mapper.SysUserMapper">
    <resultMap type="com.xiaopeng.api.model.account.SysUser" id="SysUserResult">
        <id     property="userId"       column="id"      />
        <result property="deptId"       column="dept_id"      />
        <result property="userName"     column="user_name"    />
        <result property="nickName"     column="nick_name"    />
        <result property="email"        column="email"        />
        <result property="phonenumber"  column="phonenumber"  />
        <result property="sex"          column="sex"          />
        <result property="avatar"       column="avatar"       />
        <result property="password"     column="password"     />
        <id     property="id"       column="id"      />
        <result property="nickName"     column="nick_name"    />
        <result property="uniqueNumber"     column="unique_number"    />
        <result property="userAccount"     column="user_account"    />
        <result property="phoneNumber"  column="phone_number"  />
        <result property="password"     column="password"     />
        <result property="avatar"       column="avatar"       />
        <result property="status"       column="status"       />
        <result property="delFlag"      column="del_flag"     />
        <result property="loginIp"      column="login_ip"     />
        <result property="loginDate"    column="login_date"   />
        <result property="remarks"       column="remarks"       />
        <result property="deleted"      column="is_deleted"     />
        <result property="createBy"     column="create_by"    />
        <result property="createTime"   column="create_time"  />
        <result property="updateBy"     column="update_by"    />
        <result property="updateTime"   column="update_time"  />
        <result property="forbiddenRemark"           column="forbidden_remark"/>
        <result property="remark"       column="remark"       />
        <result property="passWordUpdate"       column="passWordUpdate"       />
        <result property="roleType"       column="roleType"       />
        <result property="objectId"       column="objectId"       />
        <association property="dept"    column="dept_id" javaType="com.xiaopeng.api.model.account.SysDept" resultMap="deptResult" />
        <result property="roleId"   column="role_id"  />
        <collection  property="roles"   javaType="java.util.List"           resultMap="RoleResult" />
    </resultMap>
    
@@ -42,11 +34,10 @@
    </resultMap>
    
    <resultMap id="RoleResult" type="com.xiaopeng.api.model.account.SysRole">
        <id     property="roleId"       column="role_id"        />
        <id     property="id"       column="role_id"        />
        <result property="roleName"     column="role_name"      />
        <result property="roleKey"      column="role_key"       />
        <result property="dataScope"     column="data_scope"    />
        <result property="status"       column="role_status"    />
        <result property="groupId"      column="group_id"       />
        <result property="remarks"     column="remarks"    />
    </resultMap>
    
    <sql id="selectUserVo">
@@ -114,22 +105,25 @@
    </select>
    
    <select id="checkUserNameUnique" parameterType="String" resultMap="SysUserResult">
        select user_id, user_name from sys_user where user_name = #{userName} and del_flag = '0' limit 1
        select id, user_account from sys_user where user_account = #{userName} and is_deleted = 0 limit 1
    </select>
    
    <select id="checkPhoneUnique" parameterType="String" resultMap="SysUserResult">
        select user_id, phonenumber from sys_user where phonenumber = #{phonenumber} and del_flag = '0' limit 1
        select id, phone_number from sys_user where phone_number = #{phonenumber} and is_deleted = 0 limit 1
    </select>
    
    <select id="checkEmailUnique" parameterType="String" resultMap="SysUserResult">
        select user_id, email from sys_user where email = #{email} and del_flag = '0' limit 1
    </select>
    <select id="getList" resultMap="SysUserResult">
        select su.*,sr.role_name from sys_user su
        select su.*,sr.role_name, sur.role_id from sys_user su
        left join sys_user_role sur on su.id= sur.user_id
        left join sys_role sr on sr.id = sur.role_id where 1=1
        <if test="req.nickname !=null and req.nickname !=''">
            and nick_name like concat("%", #{req.nickname},"%")
        <if test="req.nickName !=null and req.nickName !=''">
            and su.nick_name like concat("%", #{req.nickName},"%")
        </if>
        <if test="req.phoneNumber !=null and req.phoneNumber !=''">
            and su.phone_number like concat("%", #{req.phoneNumber},"%")
        </if>
        <if test="null != req.roleId">
            and sur.role_id = #{req.roleId}
@@ -214,7 +208,7 @@
             <if test="userName != null and userName != ''">user_name = #{userName},</if>
             <if test="nickName != null and nickName != ''">nick_name = #{nickName},</if>
             <if test="email != null ">email = #{email},</if>
             <if test="phonenumber != null ">phonenumber = #{phonenumber},</if>
             <if test="phoneNumber != null ">phone_number = #{phonenumber},</if>
             <if test="sex != null and sex != ''">sex = #{sex},</if>
             <if test="avatar != null and avatar != ''">avatar = #{avatar},</if>
             <if test="password != null and password != ''">password = #{password},</if>
@@ -247,7 +241,7 @@
     </delete>
     
     <delete id="deleteUserByIds" parameterType="Long">
         update sys_user set del_flag = '2' where user_id in
         update sys_user set is_deleted = 1 where id in
         <foreach collection="array" item="userId" open="(" separator="," close=")">
             #{userId}
        </foreach> 
xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/account/SysUser.java
@@ -57,7 +57,7 @@
    /** 帐号状态(0正常 1停用) */
    @Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用")
    @ApiModelProperty(value = "帐号状态 0=正常,1=停用")
    private String status;
    private Integer status;
    @ApiModelProperty(value = "备注")
    private String remarks;
xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/order/XpOrderDetail.java
@@ -48,7 +48,6 @@
    @ApiModelProperty(value = "金额")
    private BigDecimal money;
    @TableLogic
    @ApiModelProperty(value = "是否删除 0=未删除 1=已删除")
    private Boolean isDeleted;
xp-robotaxi-api/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -25,5 +25,6 @@
com.xiaopeng.api.factory.vehicleConvoy.VehicleControlClientFallbackFactory
com.xiaopeng.api.factory.automaticPilot.XPUClientFallbackFactory
com.xiaopeng.api.factory.automaticPilot.XpuVimClientFallbackFactory
com.xiaopeng.api.factory.automaticPilot.OrderMissionClientFallbackFactory
com.xiaopeng.api.factory.maintenance.XpCheckLocationClientFallbackFactory
com.xiaopeng.api.factory.automaticPilot.OrderMissionClientFallbackFactory
xp-robotaxi-itinerary-boot/src/main/resources/bootstrap.yml
@@ -161,131 +161,3 @@
---
spring:
  shardingsphere:
    mode:
      type: Standalone
      repository:
        type: File
      overwrite: true
    datasource:
      names: xp0
      xp0:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.110.34:3306/xprt_order?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: root
        password: 123456
        druid:
          # 连接池初始化时创建的连接数。
          # 应根据实际应用场景设置,确保应用程序启动时即可获取数据库连接。
          initial-size: 10
          # 连接池中最小的空闲连接数,保证即使在低负载时也有足够的连接可用。
          min-idle: 10
          # 连接池中最大活动连接数,限制并发请求时的数据库连接数,避免过多的连接消耗系统资源。
          max-active: 100
          # 获取连接时的最大等待时间,超过该时间则抛出异常。单位通常为毫秒。
          max-wait: 60000
          # 两个连接检查之间的时间间隔,用于检测和清理空闲过久的连接。单位为毫秒。
          time-between-eviction-runs-millis: 60000
          # 连接在被清理前的最小空闲时间。单位为毫秒。
          min-evictable-idle-time-millis: 300000
          # 用于验证连接有效性的 SQL 查询语句。
          validation-query: SELECT 1
          # 如果为真,则连接空闲时会被定期测试有效性。
          test-while-idle: true
          # 如果为真,在获取连接前进行有效性测试。
          test-on-borrow: false
          # 如果为真,在归还连接时进行有效性测试。
          test-on-return: false
          # 是否开启 PreparedStatement 缓存。
          pool-prepared-statements: true
          # 单个连接上缓存的 PreparedStatement 最大数量。
          max-pool-prepared-statement-per-connection-size: 20
          # 指定要启用的过滤器,如 stat, log4j, wall 等,用于监控和日志记录。
          filters: stat,wall,log4j
          # 连接属性,例如配置日志级别或慢 SQL 阈值。
          connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
          # 是否自动回收超时连接
          remove-abandoned: true
          # 超时时间,单位秒
          remove-abandoned-timeout: 1800
          # 是否记录被遗弃的连接
          log-abandoned: true
          # StatViewServlet配置,访问监控页面
          stat-view-servlet:
            enabled: true
            url-pattern: /druid/*
            login-username: admin
            login-password: admin
            reset-enable: false
          # 防火墙配置
          wall:
            config:
              multi-statement-allow: false
    rules:
      sharding:
        tables:
          xp_order:
            standard:
              sharding-column: app_user_id
              sharding-algorithm-name: xp_order_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_cancel:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_cancel_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_evaluate:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_evaluate_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_payment:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_payment_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_reassign:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_reassign_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
      sharding-algorithms:
        xp_order_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_${app_user_id % 20}
        xp_order_cancel_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_cancel_${order_id % 20}
        xp_order_evaluate_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_evaluate_${order_id % 20}
        xp_order_payment_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_payment_${order_id % 20}
        xp_order_reassign_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_reassign_${task_id % 10}
        single-table:
          tables:
    props:
      sql-show: true
      sql-simple: true
xp-robotaxi-maintenance-boot/src/main/resources/bootstrap.yml
@@ -159,201 +159,3 @@
        shared-configs:
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
---
spring:
  shardingsphere:
    mode:
      type: Standalone
      repository:
        type: File
      overwrite: true
    datasource:
      names: xp0
      xp0:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.110.34:3306/xprt_maintenance?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: root
        password: 123456
        druid:
          # 连接池初始化时创建的连接数。
          # 应根据实际应用场景设置,确保应用程序启动时即可获取数据库连接。
          initial-size: 10
          # 连接池中最小的空闲连接数,保证即使在低负载时也有足够的连接可用。
          min-idle: 10
          # 连接池中最大活动连接数,限制并发请求时的数据库连接数,避免过多的连接消耗系统资源。
          max-active: 100
          # 获取连接时的最大等待时间,超过该时间则抛出异常。单位通常为毫秒。
          max-wait: 60000
          # 两个连接检查之间的时间间隔,用于检测和清理空闲过久的连接。单位为毫秒。
          time-between-eviction-runs-millis: 60000
          # 连接在被清理前的最小空闲时间。单位为毫秒。
          min-evictable-idle-time-millis: 300000
          # 用于验证连接有效性的 SQL 查询语句。
          validation-query: SELECT 1
          # 如果为真,则连接空闲时会被定期测试有效性。
          test-while-idle: true
          # 如果为真,在获取连接前进行有效性测试。
          test-on-borrow: false
          # 如果为真,在归还连接时进行有效性测试。
          test-on-return: false
          # 是否开启 PreparedStatement 缓存。
          pool-prepared-statements: true
          # 单个连接上缓存的 PreparedStatement 最大数量。
          max-pool-prepared-statement-per-connection-size: 20
          # 指定要启用的过滤器,如 stat, log4j, wall 等,用于监控和日志记录。
          filters: stat,wall,log4j
          # 连接属性,例如配置日志级别或慢 SQL 阈值。
          connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
          # 是否自动回收超时连接
          remove-abandoned: true
          # 超时时间,单位秒
          remove-abandoned-timeout: 1800
          # 是否记录被遗弃的连接
          log-abandoned: true
          # StatViewServlet配置,访问监控页面
          stat-view-servlet:
            enabled: true
            url-pattern: /druid/*
            login-username: admin
            login-password: admin
            reset-enable: false
          # 防火墙配置
          wall:
            config:
              multi-statement-allow: false
    rules:
      sharding:
        tables:
          xp_charging_record:
            standard:
              sharding-column: vehicle_id
              sharding-algorithm-name: xp_charging_record_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_clock_in:
            standard:
              sharding-column: app_user_id
              sharding-algorithm-name: xp_clock_in_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_task:
            standard:
              sharding-column: vehicle_id
              sharding-algorithm-name: xp_task_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_task_handle_detail:
            standard:
              sharding-column: task_id
              sharding-algorithm-name: xp_task_handle_detail_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_task_handle_detail_routine:
            standard:
              sharding-column: task_id
              sharding-algorithm-name: xp_task_handle_detail_routine_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_vehicle_detection:
            standard:
              sharding-column: task_id
              sharding-algorithm-name: xp_vehicle_detection_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_vehicle_preparation:
            standard:
              sharding-column: task_id
              sharding-algorithm-name: xp_vehicle_preparation_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_vehicle_repair:
            standard:
              sharding-column: task_id
              sharding-algorithm-name: xp_vehicle_repair_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_work_order:
            standard:
              sharding-column: feedback_user_phone
              sharding-algorithm-name: xp_work_order_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_work_order_log:
            standard:
              sharding-column: work_order_id
              sharding-algorithm-name: xp_work_order_log_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
      sharding-algorithms:
        xp_charging_record_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_charging_record_${vehicle_id % 20}
        xp_clock_in_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_clock_in_${app_user_id % 10}
        xp_task_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_task_${vehicle_id % 20}
        xp_task_handle_detail_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_task_handle_detail_${task_id % 20}
        xp_task_handle_detail_routine_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_task_handle_detail_routine_${task_id % 20}
        xp_vehicle_detection_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_vehicle_detection_${task_id % 10}
        xp_vehicle_preparation_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_vehicle_preparation_${task_id % 10}
        xp_vehicle_repair_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_vehicle_repair_${task_id % 10}
        xp_work_order_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_work_order_${feedback_user_phone % 10}
        xp_work_order_log_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_work_order_log_${work_order_id % 20}
        single-table:
          tables:
            - xp0.xp_check_location
            - xp0.xp_fleet
            - xp0.xp_fleet_operations
            - xp0.xp_fleet_vehicle
            - xp0.xp_policy_application
            - xp0.xp_position
            - xp0.xp_scheduling
            - xp0.xp_scheduling_detail
            - xp0.xp_shift
            - xp0.xp_task_rule
            - xp0.xp_task_rule_role
            - xp0.xp_vehicle
            - xp0.xp_vehicle_clean
            - xp0.xp_vehicle_description
    props:
      sql-show: true
      sql-simple: true
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/constant/I18nKeyConstant.java
@@ -35,4 +35,16 @@
    //开通城市已存在
    String OPEN_CITY_EXISTS = "open.city.exists";
    //定价已存在
    String PRICING_EXISTS = "pricing.exists";
    //定价不存在
    String PRICING_NOT_EXIST = "pricing.not.exist";
    //价格配置json格式错误
    String PRICING_JSON_INVALID = "pricing.json.invalid";
    //价格规则不能为空
    String PRICING_RULE_EMPTY = "pricing.rule.empty";
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpPricingController.java
@@ -2,17 +2,23 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.xiaopeng.api.dto.operation.LonLatDto;
import com.xiaopeng.api.model.operation.XpGeoQueryEntity;
import com.xiaopeng.api.model.operation.XpPricing;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.web.controller.BaseController;
import com.xiaopeng.common.core.web.domain.AjaxResult;
import com.xiaopeng.api.dto.map.RouteAndFareDto;
import com.xiaopeng.api.dto.operation.LonLatDto;
import com.xiaopeng.api.model.operation.XpPricing;
import com.xiaopeng.api.vo.operation.RouteAndFareVo;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.exception.ServiceException;
import com.xiaopeng.common.core.web.controller.BaseController;
import com.xiaopeng.common.core.web.page.PageInfo;
import com.xiaopeng.operation.constant.I18nKeyConstant;
import com.xiaopeng.operation.dto.PricingAddDTO;
import com.xiaopeng.operation.dto.PricingSetPriceDTO;
import com.xiaopeng.operation.dto.PricingSetRuleDTO;
import com.xiaopeng.operation.dto.XpOrderDto;
import com.xiaopeng.operation.query.PricingPageListQuery;
import com.xiaopeng.operation.service.IXpGeoQueryEntityService;
import com.xiaopeng.operation.service.XpPricingService;
import com.xiaopeng.api.vo.operation.RouteAndFareVo;
import com.xiaopeng.operation.vo.PricingPageListVO;
import com.xiaopeng.operation.vo.SaveOrderVo;
import com.xiaopeng.unifiedverification.interceptor.XpClientCheck;
import io.swagger.annotations.Api;
@@ -23,7 +29,6 @@
import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import java.util.Date;
/**
 * <p>
@@ -116,5 +121,53 @@
        return R.ok(saveOrderVo);
    }
    @PostMapping("/api/v1/pricing/pageList")
    @ApiOperation(value = "管理后台-定价管理分页列表", tags = {"管理后台-定价管理"})
    public R<PageInfo<PricingPageListVO>> pageList(@RequestBody PricingPageListQuery query) {
        return R.ok(xpPricingService.pageList(query));
    }
    @GetMapping("/api/v1/pricing/queryById")
    @ApiOperation(value = "管理后台-定价管理-详情", tags = {"管理后台-定价管理"}, response = XpPricing.class)
    public R<XpPricing> queryById(@RequestParam Long id) {
        XpPricing pricing = xpPricingService.getById(id);
        if (pricing == null) {
            throw new ServiceException("定价不存在", I18nKeyConstant.PRICING_NOT_EXIST);
        }
        return R.ok(pricing);
    }
    @PostMapping("/api/v1/pricing/add")
    @ApiOperation(value = "管理后台-新增定价", tags = {"管理后台-定价管理"})
    public R<?> add(@Valid @RequestBody PricingAddDTO dto) {
        xpPricingService.add(dto);
        return R.ok();
    }
    @PostMapping("/api/v1/pricing/setPrice")
    @ApiOperation(value = "管理后台-定价管理-设置价格", tags = {"管理后台-定价管理"})
    public R<?> setPrice(@Valid @RequestBody PricingSetPriceDTO dto) {
        xpPricingService.setPrice(dto);
        return R.ok();
    }
    @PostMapping("/api/v1/pricing/setRule")
    @ApiOperation(value = "管理后台-计费规则富文本配置", tags = {"管理后台-定价管理"})
    public R<?> setRule(@Valid @RequestBody PricingSetRuleDTO dto) {
        xpPricingService.setRule(dto);
        return R.ok();
    }
    @DeleteMapping("/api/v1/pricing/deleteById")
    @ApiOperation(value = "管理后台-定价管理-删除", tags = {"管理后台-定价管理"})
    public R<?> deleteById(@RequestParam Long id) {
        XpPricing pricing = xpPricingService.getById(id);
        if (pricing == null) {
            throw new ServiceException("定价不存在", I18nKeyConstant.PRICING_NOT_EXIST);
        }
        xpPricingService.removeById(id);
        return R.ok();
    }
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpRegionController.java
@@ -12,11 +12,13 @@
import com.xiaopeng.operation.service.XpOpenCityService;
import com.xiaopeng.operation.service.XpRegionService;
import com.xiaopeng.operation.vo.RegionCascaderVO;
import com.xiaopeng.operation.vo.RegionDistrictSyncResultVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.Collections;
import java.util.List;
@@ -30,7 +32,6 @@
 */
@Api(tags = "省市管理")
@RestController
@RequestMapping("/base/v1/mini-program")
public class XpRegionController {
    private final XpRegionService regionService;
@@ -51,7 +52,7 @@
     * 查询省市管理
     */
    @ApiOperation(value = "查询省市管理",tags = {"小程序-省市管理"},response = XpRegion.class)
    @GetMapping(value = "/open/t-region/getRegion")
    @GetMapping(value = "/base/v1/mini-program/open/t-region/getRegion")
    public R<List<List<XpRegion>>> geXpRegion() {
        return R.ok(regionService.getXpRegion());
    }
@@ -61,7 +62,7 @@
     * 查询市
     */
    @ApiOperation(value = "查询市",tags = {"小程序-查询市"},response = XpRegion.class)
    @PostMapping(value = "/open/t-region/getProvince")
    @PostMapping(value = "/base/v1/mini-program/open/t-region/getProvince")
    public R<List<XpRegion>> getProvince(@RequestBody getProvinceQuery query) {
        // 缓存数据
        List<Object> cacheList = redisService.getCacheList(CacheConstants.XP_REGION_CITY);
@@ -108,14 +109,4 @@
    public R<List<RegionCascaderVO>> getRegionCascader() {
        return R.ok(regionService.getRegionCascader());
    }
    /**
     * 管理后台-同步区级数据
     */
    @ApiOperation(value = "管理后台-同步区级数据", tags = {"管理后台-省市区管理"})
    @PostMapping("/api/v1/region/syncDistrict")
    public R<RegionDistrictSyncResultVO> syncDistrict() {
        return R.ok(regionService.syncDistrictFromRegionAll());
    }
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/dto/PricingAddDTO.java
New file
@@ -0,0 +1,39 @@
package com.xiaopeng.operation.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * 定价新增数据传输对象
 */
@Data
@ApiModel(value = "定价新增数据传输对象")
public class PricingAddDTO {
    @ApiModelProperty(value = "车型", required = true)
    @NotBlank(message = "车型不能为空")
    private String vehicleModel;
    @ApiModelProperty(value = "渠道", required = true)
    @NotBlank(message = "渠道不能为空")
    private String channel;
    @ApiModelProperty(value = "开通城市ID", required = true)
    @NotNull(message = "开通城市ID不能为空")
    private Long cityId;
    @ApiModelProperty(value = "说明")
    private String remark;
    @ApiModelProperty(value = "计费规则 1动态计费 2一口价", required = true)
    @NotNull(message = "计费规则不能为空")
    @Min(value = 1, message = "计费规则不合法")
    @Max(value = 2, message = "计费规则不合法")
    private Integer pricingType;
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/dto/PricingSetPriceDTO.java
New file
@@ -0,0 +1,32 @@
package com.xiaopeng.operation.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * 定价设置价格数据传输对象
 */
@Data
@ApiModel(value = "定价设置价格数据传输对象")
public class PricingSetPriceDTO {
    @ApiModelProperty(value = "定价ID", required = true)
    @NotNull(message = "定价ID不能为空")
    private Long id;
    @ApiModelProperty(value = "基础价格json配置", required = true)
    @NotBlank(message = "基础价格json配置不能为空")
    private String basicPricingJson;
    @ApiModelProperty(value = "起步价json配置", required = true)
    @NotBlank(message = "起步价json配置不能为空")
    private String startingFareJson;
    @ApiModelProperty(value = "动态价格json配置", required = true)
    @NotBlank(message = "动态价格json配置不能为空")
    private String dynamicPricingJson;
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/dto/PricingSetRuleDTO.java
New file
@@ -0,0 +1,24 @@
package com.xiaopeng.operation.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * 定价计费规则富文本配置数据传输对象
 */
@Data
@ApiModel(value = "定价计费规则富文本配置数据传输对象")
public class PricingSetRuleDTO {
    @ApiModelProperty(value = "定价ID", required = true)
    @NotNull(message = "定价ID不能为空")
    private Long id;
    @ApiModelProperty(value = "价格规则", required = true)
    @NotBlank(message = "价格规则不能为空")
    private String priceRule;
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/mapper/XpPricingMapper.java
@@ -2,7 +2,12 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xiaopeng.api.model.operation.XpPricing;
import com.xiaopeng.common.core.web.page.PageInfo;
import com.xiaopeng.operation.query.PricingPageListQuery;
import com.xiaopeng.operation.vo.PricingPageListVO;
import org.apache.ibatis.annotations.Param;
/**
 * <p>
@@ -14,4 +19,13 @@
 */
public interface XpPricingMapper extends BaseMapper<XpPricing> {
    /**
     * 定价管理分页列表
     *
     * @param pageInfo 分页信息
     * @param query 查询条件
     * @return 分页数据
     */
    Page<PricingPageListVO> pageList(@Param("pageInfo") PageInfo<PricingPageListVO> pageInfo,
                                     @Param("query") PricingPageListQuery query);
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/mapper/XpRegionMapper.java
@@ -4,8 +4,6 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xiaopeng.api.model.operation.XpRegion;
import java.util.List;
/**
 * <p>
 * 省市区三级联动 Mapper 接口
@@ -15,23 +13,5 @@
 * @since 2026-02-03
 */
public interface XpRegionMapper extends BaseMapper<XpRegion> {
    /**
     * 查询缺失的区级数据
     * @return 待同步区级数据
     */
    List<XpRegion> selectMissingDistrictFromRegionAll();
    /**
     * 查询可参与同步的市级总数
     * @return 市级总数
     */
    Long countCityForDistrictSync();
    /**
     * 查询候选区级总数(无论是否已存在)
     * @return 候选区级总数
     */
    Long countCandidateDistrictForSync();
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/query/PricingPageListQuery.java
New file
@@ -0,0 +1,22 @@
package com.xiaopeng.operation.query;
import com.xiaopeng.common.core.web.page.BasePage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 定价管理分页查询对象
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "定价管理分页查询对象")
public class PricingPageListQuery extends BasePage {
    @ApiModelProperty(value = "车型")
    private String vehicleModel;
    @ApiModelProperty(value = "城市")
    private String cityName;
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/XpPricingService.java
@@ -2,10 +2,16 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.xiaopeng.api.model.operation.XpPricing;
import com.xiaopeng.api.dto.map.RouteAndFareDto;
import com.xiaopeng.api.model.operation.XpPricing;
import com.xiaopeng.api.vo.operation.RouteAndFareVo;
import com.xiaopeng.common.core.web.page.PageInfo;
import com.xiaopeng.operation.dto.PricingAddDTO;
import com.xiaopeng.operation.dto.PricingSetPriceDTO;
import com.xiaopeng.operation.dto.PricingSetRuleDTO;
import com.xiaopeng.operation.dto.XpOrderDto;
import com.xiaopeng.operation.query.PricingPageListQuery;
import com.xiaopeng.operation.vo.PricingPageListVO;
/**
 * <p>
@@ -45,4 +51,33 @@
     */
    Long saveOrder(XpOrderDto dto,String uid);
    /**
     * 管理后台-定价管理分页列表
     *
     * @param query 查询条件
     * @return 分页结果
     */
    PageInfo<PricingPageListVO> pageList(PricingPageListQuery query);
    /**
     * 管理后台-新增定价
     *
     * @param dto 新增参数
     */
    void add(PricingAddDTO dto);
    /**
     * 管理后台-定价管理-设置价格
     *
     * @param dto 设置参数
     */
    void setPrice(PricingSetPriceDTO dto);
    /**
     * 管理后台-计费规则富文本配置
     *
     * @param dto 配置参数
     */
    void setRule(PricingSetRuleDTO dto);
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/XpRegionService.java
@@ -4,7 +4,6 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.xiaopeng.api.model.operation.XpRegion;
import com.xiaopeng.operation.vo.RegionCascaderVO;
import com.xiaopeng.operation.vo.RegionDistrictSyncResultVO;
import java.util.List;
@@ -29,11 +28,5 @@
     * @return 级联树
     */
    List<RegionCascaderVO> getRegionCascader();
    /**
     * 从xp_region_all同步区级数据到xp_region
     * @return 同步结果
     */
    RegionDistrictSyncResultVO syncDistrictFromRegionAll();
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpPricingServiceImpl.java
@@ -4,6 +4,7 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xiaopeng.api.dto.account.GetUserCouponDto;
import com.xiaopeng.api.dto.map.RouteAndFareDto;
@@ -12,7 +13,6 @@
import com.xiaopeng.api.feignClient.account.XpAppUserCouponClient;
import com.xiaopeng.api.feignClient.map.XpMapClient;
import com.xiaopeng.api.feignClient.order.XpOrderClient;
import com.xiaopeng.api.feignClient.vehicleConvoy.XpVehicleClient;
import com.xiaopeng.api.model.account.XpAppUser;
import com.xiaopeng.api.model.operation.*;
import com.xiaopeng.api.model.order.XpOrder;
@@ -26,23 +26,27 @@
import com.xiaopeng.common.core.exception.ServiceException;
import com.xiaopeng.common.core.utils.DateUtils;
import com.xiaopeng.common.core.utils.uuid.UUID;
import com.xiaopeng.common.core.web.page.PageInfo;
import com.xiaopeng.common.redis.service.RedisService;
import com.xiaopeng.operation.constant.I18nKeyConstant;
import com.xiaopeng.operation.dto.PricingAddDTO;
import com.xiaopeng.operation.dto.PricingSetPriceDTO;
import com.xiaopeng.operation.dto.PricingSetRuleDTO;
import com.xiaopeng.operation.dto.XpOrderDto;
import com.xiaopeng.api.model.operation.XpGeoQueryEntity;
import com.xiaopeng.operation.mapper.*;
import com.xiaopeng.operation.query.PricingPageListQuery;
import com.xiaopeng.operation.service.IXpGeoQueryEntityService;
import com.xiaopeng.operation.service.XpPricingService;
import com.xiaopeng.operation.utils.XpPricingUtil;
import com.xiaopeng.operation.utils.holiday.HolidayUtil;
import com.xiaopeng.operation.utils.map.FastDistanceCalculator;
import com.xiaopeng.operation.vo.PricingPageListVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.geo.GeoJsonPoint;
import org.springframework.stereotype.Service;
import javax.annotation.PreDestroy;
import javax.annotation.Resource;
import java.time.Duration;
import java.time.LocalDateTime;
import java.util.*;
import java.util.concurrent.*;
@@ -614,5 +618,78 @@
        return false;
    }
    @Override
    public PageInfo<PricingPageListVO> pageList(PricingPageListQuery query) {
        PageInfo<PricingPageListVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        Page<PricingPageListVO> page = this.baseMapper.pageList(pageInfo, query);
        pageInfo.setRecords(page.getRecords());
        pageInfo.setTotal(page.getTotal());
        return pageInfo;
    }
    @Override
    public void add(PricingAddDTO dto) {
        XpOpenCity openCity = xpOpenCityMapper.selectById(dto.getCityId());
        if (openCity == null) {
            throw new ServiceException("开通城市不存在");
        }
        Long count = this.lambdaQuery()
                .eq(XpPricing::getVehicleModel, dto.getVehicleModel())
                .eq(XpPricing::getChannel, dto.getChannel())
                .eq(XpPricing::getCityId, dto.getCityId().intValue())
                .count();
        if (count != null && count > 0) {
            throw new ServiceException("该车型/渠道/城市的定价已存在", I18nKeyConstant.PRICING_EXISTS);
        }
        XpPricing pricing = new XpPricing();
        pricing.setVehicleModel(dto.getVehicleModel());
        pricing.setChannel(dto.getChannel());
        pricing.setCityId(dto.getCityId().intValue());
        pricing.setRemark(dto.getRemark());
        pricing.setPricingType(dto.getPricingType());
        pricing.setBasicPricingJson("{}");
        pricing.setStartingFareJson("[]");
        pricing.setDynamicPricingJson("{}");
        pricing.setIsDynamicPrice(0);
        this.save(pricing);
    }
    @Override
    public void setPrice(PricingSetPriceDTO dto) {
        XpPricing pricing = this.getById(dto.getId());
        if (pricing == null) {
            throw new ServiceException("定价不存在", I18nKeyConstant.PRICING_NOT_EXIST);
        }
        try {
            JSONObject.parseObject(dto.getBasicPricingJson());
            JSONArray.parseArray(dto.getStartingFareJson());
            JSONObject.parseObject(dto.getDynamicPricingJson());
        } catch (Exception e) {
            throw new ServiceException("价格配置JSON格式不正确", I18nKeyConstant.PRICING_JSON_INVALID);
        }
        XpPricing update = new XpPricing();
        update.setId(dto.getId());
        update.setBasicPricingJson(dto.getBasicPricingJson());
        update.setStartingFareJson(dto.getStartingFareJson());
        update.setDynamicPricingJson(dto.getDynamicPricingJson());
        this.updateById(update);
    }
    @Override
    public void setRule(PricingSetRuleDTO dto) {
        XpPricing pricing = this.getById(dto.getId());
        if (pricing == null) {
            throw new ServiceException("定价不存在", I18nKeyConstant.PRICING_NOT_EXIST);
        }
        XpPricing update = new XpPricing();
        update.setId(dto.getId());
        update.setPriceRule(dto.getPriceRule());
        this.updateById(update);
    }
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpRegionServiceImpl.java
@@ -178,35 +178,4 @@
            .comparing((XpRegion region) -> StringUtils.defaultString(region.getInitial()))
            .thenComparing((XpRegion region) -> StringUtils.defaultString(region.getCode()));
    @Override
    @Transactional(rollbackFor = Exception.class)
    public RegionDistrictSyncResultVO syncDistrictFromRegionAll() {
        Long cityCount = this.baseMapper.countCityForDistrictSync();
        if (cityCount == null) {
            cityCount = 0L;
        }
        Long candidateDistrictCount = this.baseMapper.countCandidateDistrictForSync();
        if (candidateDistrictCount == null) {
            candidateDistrictCount = 0L;
        }
        List<XpRegion> missingDistrictList = this.baseMapper.selectMissingDistrictFromRegionAll();
        long insertedCount = 0L;
        if (missingDistrictList != null && !missingDistrictList.isEmpty()) {
            this.saveBatch(missingDistrictList);
            insertedCount = missingDistrictList.size();
        }
        redisService.deleteObject(CacheConstants.XP_REGION);
        redisService.deleteObject(CacheConstants.XP_REGION_CITY);
        redisService.deleteObject(CacheConstants.XP_REGION_CASCADER);
        RegionDistrictSyncResultVO result = new RegionDistrictSyncResultVO();
        result.setCityCount(cityCount);
        result.setCandidateDistrictCount(candidateDistrictCount);
        result.setInsertedCount(insertedCount);
        result.setSkippedCount(Math.max(candidateDistrictCount - insertedCount, 0));
        result.setMessage("区级数据同步完成");
        return result;
    }
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/vo/PricingPageListVO.java
New file
@@ -0,0 +1,33 @@
package com.xiaopeng.operation.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
 * 定价管理分页列表项
 */
@Data
@ApiModel(value = "定价管理分页列表项")
public class PricingPageListVO implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    @ApiModelProperty(value = "车型")
    private String vehicleModel;
    @ApiModelProperty(value = "使用城市")
    private String useCity;
    @ApiModelProperty(value = "渠道")
    private String channel;
    @ApiModelProperty(value = "计费规则 1动态计费 2一口价")
    private Integer pricingType;
}
xp-robotaxi-operation-boot/src/main/resources/bootstrap.yml
@@ -160,137 +160,3 @@
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
---
spring:
  shardingsphere:
    mode:
      type: Standalone
      repository:
        type: File
      overwrite: true
    datasource:
      names: xp0
      xp0:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.110.34:3306/xprt_operation?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: root
        password: 123456
        druid:
          # 连接池初始化时创建的连接数。
          # 应根据实际应用场景设置,确保应用程序启动时即可获取数据库连接。
          initial-size: 10
          # 连接池中最小的空闲连接数,保证即使在低负载时也有足够的连接可用。
          min-idle: 10
          # 连接池中最大活动连接数,限制并发请求时的数据库连接数,避免过多的连接消耗系统资源。
          max-active: 100
          # 获取连接时的最大等待时间,超过该时间则抛出异常。单位通常为毫秒。
          max-wait: 60000
          # 两个连接检查之间的时间间隔,用于检测和清理空闲过久的连接。单位为毫秒。
          time-between-eviction-runs-millis: 60000
          # 连接在被清理前的最小空闲时间。单位为毫秒。
          min-evictable-idle-time-millis: 300000
          # 用于验证连接有效性的 SQL 查询语句。
          validation-query: SELECT 1
          # 如果为真,则连接空闲时会被定期测试有效性。
          test-while-idle: true
          # 如果为真,在获取连接前进行有效性测试。
          test-on-borrow: false
          # 如果为真,在归还连接时进行有效性测试。
          test-on-return: false
          # 是否开启 PreparedStatement 缓存。
          pool-prepared-statements: true
          # 单个连接上缓存的 PreparedStatement 最大数量。
          max-pool-prepared-statement-per-connection-size: 20
          # 指定要启用的过滤器,如 stat, log4j, wall 等,用于监控和日志记录。
          filters: stat,wall,log4j
          # 连接属性,例如配置日志级别或慢 SQL 阈值。
          connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
          # 是否自动回收超时连接
          remove-abandoned: true
          # 超时时间,单位秒
          remove-abandoned-timeout: 1800
          # 是否记录被遗弃的连接
          log-abandoned: true
          # StatViewServlet配置,访问监控页面
          stat-view-servlet:
            enabled: true
            url-pattern: /druid/*
            login-username: admin
            login-password: admin
            reset-enable: false
          # 防火墙配置
          wall:
            config:
              multi-statement-allow: false
    rules:
      sharding:
        tables:
          sys_oper_log:
            standard:
              sharding-column: userId
              sharding-algorithm-name: sys_oper_log_inline
            key-generate-strategy:
              column: oper_id
              key-generator-name: snowflake
          xp_agreement_app_user:
            standard:
              sharding-column: app_user_id
              sharding-algorithm-name: xp_agreement_app_user_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_point:
            standard:
              sharding-column: id
              sharding-algorithm-name: xp_point_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
      sharding-algorithms:
        sys_oper_log_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.sys_oper_log_${userId % 10}
        xp_agreement_app_user_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_agreement_app_user_${app_user_id % 10}
        xp_point_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_point_${id % 10}
        single-table:
          tables:
            - xp0.sys_config
            - xp0.sys_dict_data
            - xp0.sys_dict_type
            - xp0.sys_logininfor
            - xp0.sys_menu
            - xp0.xp_acticity
            - xp0.xp_acticity_coupon
            - xp0.xp_agreement
            - xp0.xp_banner
            - xp0.xp_coupon
            - xp0.xp_electronic_fence
            - xp0.xp_electronic_fence_area
            - xp0.xp_feedback_type
            - xp0.xp_frequently_asked_questions
            - xp0.xp_invitation_code
            - xp0.xp_notification
            - xp0.xp_open_city
            - xp0.xp_pricing
            - xp0.xp_pricing_item
            - xp0.xp_region
            - xp0.xp_ride_guide
            - xp0.xp_route_plan
            - xp0.xp_system_setting
            - xp0.xp_trading_strategy
            - xp0.xp_trading_strategy_city
            - xp0.xp_user_feedback
            - xp0.xp_whitelist
            - xp0.xp_whitelist_operlog
    props:
      sql-show: true
      sql-simple: true
xp-robotaxi-operation-boot/src/main/resources/i18n/messages.properties
@@ -12,4 +12,8 @@
fence.not.exist=围栏不存在
fence.status.cannot.copied=围栏启用状态不可复制;
order.create.fail=订单创建失败
open.city.exists=该城市已存在
open.city.exists=该城市已存在
pricing.exists=该车型/渠道/城市的定价已存在
pricing.not.exist=定价不存在
pricing.json.invalid=价格配置JSON格式不正确
pricing.rule.empty=价格规则不能为空
xp-robotaxi-operation-boot/src/main/resources/i18n/messages_en_US.properties
@@ -12,4 +12,8 @@
fence.status.cannot.copied=The enabled state of the fence cannot be copied;
fence.not.exist=The fence does not exist.
order.create.fail=Order creation failed
open.city.exists=This city already exists
open.city.exists=This city already exists
pricing.exists=Pricing for this vehicle model/channel/city already exists
pricing.not.exist=Pricing does not exist
pricing.json.invalid=Invalid JSON format for pricing configuration
pricing.rule.empty=Price rule cannot be empty
xp-robotaxi-operation-boot/src/main/resources/i18n/messages_zh_CN.properties
@@ -12,4 +12,8 @@
fence.not.exist=围栏不存在
fence.status.cannot.copied=围栏启用状态不可复制
order.create.fail=订单创建失败
open.city.exists=该城市已存在
open.city.exists=该城市已存在
pricing.exists=该车型/渠道/城市的定价已存在
pricing.not.exist=定价不存在
pricing.json.invalid=价格配置JSON格式不正确
pricing.rule.empty=价格规则不能为空
xp-robotaxi-operation-boot/src/main/resources/mapper/operation/XpPricingMapper.xml
@@ -2,6 +2,30 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xiaopeng.operation.mapper.XpPricingMapper">
    <select id="pageList" resultType="com.xiaopeng.operation.vo.PricingPageListVO">
        SELECT
            p.create_time AS createTime,
            p.vehicle_model AS vehicleModel,
            CASE
                WHEN oc.district_name IS NOT NULL AND oc.district_name != ''
                    THEN CONCAT(oc.city_name, '->', oc.district_name)
                ELSE oc.city_name
                END AS useCity,
            p.channel AS channel,
            p.pricing_type AS pricingType
        FROM xp_pricing p
                 LEFT JOIN xp_open_city oc ON p.city_id = oc.id
        WHERE p.is_deleted = 0
        <if test="query.vehicleModel != null and query.vehicleModel != ''">
            AND p.vehicle_model LIKE CONCAT('%', #{query.vehicleModel}, '%')
        </if>
        <if test="query.cityName != null and query.cityName != ''">
            AND (
                oc.city_name LIKE CONCAT('%', #{query.cityName}, '%')
                    OR oc.district_name LIKE CONCAT('%', #{query.cityName}, '%')
                )
        </if>
        ORDER BY p.create_time DESC
    </select>
</mapper>
xp-robotaxi-operation-boot/src/main/resources/mapper/operation/XpRegionMapper.xml
@@ -2,42 +2,4 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xiaopeng.operation.mapper.XpRegionMapper">
    <select id="selectMissingDistrictFromRegionAll" resultType="com.xiaopeng.api.model.operation.XpRegion">
        select
            district.name as name,
            district.code as code,
            district.citycode as cityCode,
            city.id as parentId,
            district.english as english,
            city.initial as initial
        from xp_region city
                 join xp_region_all all_city on all_city.code = city.code
                 join xp_region_all district on district.parent_id = all_city.id
                 left join xp_region existing on existing.code = district.code
        where city.parentId != 0
          and city.code like '%00'
          and city.code not like '%0000'
          and existing.id is null
        order by city.code, district.code
    </select>
    <select id="countCityForDistrictSync" resultType="java.lang.Long">
        select count(1)
        from xp_region city
                 join xp_region_all all_city on all_city.code = city.code
        where city.parentId != 0
          and city.code like '%00'
          and city.code not like '%0000'
    </select>
    <select id="countCandidateDistrictForSync" resultType="java.lang.Long">
        select count(1)
        from xp_region city
                 join xp_region_all all_city on all_city.code = city.code
                 join xp_region_all district on district.parent_id = all_city.id
        where city.parentId != 0
          and city.code like '%00'
          and city.code not like '%0000'
    </select>
</mapper>
xp-robotaxi-order-boot/src/main/resources/bootstrap.yml
@@ -159,132 +159,3 @@
        shared-configs:
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
---
spring:
  shardingsphere:
    mode:
      type: Standalone
      repository:
        type: File
      overwrite: true
    datasource:
      names: xp0
      xp0:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.110.34:3306/xprt_order?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: root
        password: 123456
        druid:
          # 连接池初始化时创建的连接数。
          # 应根据实际应用场景设置,确保应用程序启动时即可获取数据库连接。
          initial-size: 10
          # 连接池中最小的空闲连接数,保证即使在低负载时也有足够的连接可用。
          min-idle: 10
          # 连接池中最大活动连接数,限制并发请求时的数据库连接数,避免过多的连接消耗系统资源。
          max-active: 100
          # 获取连接时的最大等待时间,超过该时间则抛出异常。单位通常为毫秒。
          max-wait: 60000
          # 两个连接检查之间的时间间隔,用于检测和清理空闲过久的连接。单位为毫秒。
          time-between-eviction-runs-millis: 60000
          # 连接在被清理前的最小空闲时间。单位为毫秒。
          min-evictable-idle-time-millis: 300000
          # 用于验证连接有效性的 SQL 查询语句。
          validation-query: SELECT 1
          # 如果为真,则连接空闲时会被定期测试有效性。
          test-while-idle: true
          # 如果为真,在获取连接前进行有效性测试。
          test-on-borrow: false
          # 如果为真,在归还连接时进行有效性测试。
          test-on-return: false
          # 是否开启 PreparedStatement 缓存。
          pool-prepared-statements: true
          # 单个连接上缓存的 PreparedStatement 最大数量。
          max-pool-prepared-statement-per-connection-size: 20
          # 指定要启用的过滤器,如 stat, log4j, wall 等,用于监控和日志记录。
          filters: stat,wall,log4j
          # 连接属性,例如配置日志级别或慢 SQL 阈值。
          connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
          # 是否自动回收超时连接
          remove-abandoned: true
          # 超时时间,单位秒
          remove-abandoned-timeout: 1800
          # 是否记录被遗弃的连接
          log-abandoned: true
          # StatViewServlet配置,访问监控页面
          stat-view-servlet:
            enabled: true
            url-pattern: /druid/*
            login-username: admin
            login-password: admin
            reset-enable: false
          # 防火墙配置
          wall:
            config:
              multi-statement-allow: false
    rules:
      sharding:
        tables:
          xp_order:
            standard:
              sharding-column: app_user_id
              sharding-algorithm-name: xp_order_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_cancel:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_cancel_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_evaluate:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_evaluate_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_payment:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_payment_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_reassign:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_reassign_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
      sharding-algorithms:
        xp_order_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_${app_user_id % 20}
        xp_order_cancel_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_cancel_${order_id % 20}
        xp_order_evaluate_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_evaluate_${order_id % 20}
        xp_order_payment_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_payment_${order_id % 20}
        xp_order_reassign_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_reassign_${task_id % 10}
        single-table:
          tables:
    props:
      sql-show: true
      sql-simple: true
xp-robotaxi-order-boot/src/main/resources/mapper/order/XpOrderDetailMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xiaopeng.order.mapper.XpOrderDetailMapper">
</mapper>
xp-robotaxi-payment-boot/src/main/resources/bootstrap.yml
@@ -160,131 +160,3 @@
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
---
spring:
  shardingsphere:
    mode:
      type: Standalone
      repository:
        type: File
      overwrite: true
    datasource:
      names: xp0
      xp0:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.110.34:3306/xprt_order?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: root
        password: 123456
        druid:
          # 连接池初始化时创建的连接数。
          # 应根据实际应用场景设置,确保应用程序启动时即可获取数据库连接。
          initial-size: 10
          # 连接池中最小的空闲连接数,保证即使在低负载时也有足够的连接可用。
          min-idle: 10
          # 连接池中最大活动连接数,限制并发请求时的数据库连接数,避免过多的连接消耗系统资源。
          max-active: 100
          # 获取连接时的最大等待时间,超过该时间则抛出异常。单位通常为毫秒。
          max-wait: 60000
          # 两个连接检查之间的时间间隔,用于检测和清理空闲过久的连接。单位为毫秒。
          time-between-eviction-runs-millis: 60000
          # 连接在被清理前的最小空闲时间。单位为毫秒。
          min-evictable-idle-time-millis: 300000
          # 用于验证连接有效性的 SQL 查询语句。
          validation-query: SELECT 1
          # 如果为真,则连接空闲时会被定期测试有效性。
          test-while-idle: true
          # 如果为真,在获取连接前进行有效性测试。
          test-on-borrow: false
          # 如果为真,在归还连接时进行有效性测试。
          test-on-return: false
          # 是否开启 PreparedStatement 缓存。
          pool-prepared-statements: true
          # 单个连接上缓存的 PreparedStatement 最大数量。
          max-pool-prepared-statement-per-connection-size: 20
          # 指定要启用的过滤器,如 stat, log4j, wall 等,用于监控和日志记录。
          filters: stat,wall,log4j
          # 连接属性,例如配置日志级别或慢 SQL 阈值。
          connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
          # 是否自动回收超时连接
          remove-abandoned: true
          # 超时时间,单位秒
          remove-abandoned-timeout: 1800
          # 是否记录被遗弃的连接
          log-abandoned: true
          # StatViewServlet配置,访问监控页面
          stat-view-servlet:
            enabled: true
            url-pattern: /druid/*
            login-username: admin
            login-password: admin
            reset-enable: false
          # 防火墙配置
          wall:
            config:
              multi-statement-allow: false
    rules:
      sharding:
        tables:
          xp_order:
            standard:
              sharding-column: app_user_id
              sharding-algorithm-name: xp_order_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_cancel:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_cancel_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_evaluate:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_evaluate_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_payment:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_payment_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_order_reassign:
            standard:
              sharding-column: order_id
              sharding-algorithm-name: xp_order_reassign_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
      sharding-algorithms:
        xp_order_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_${app_user_id % 20}
        xp_order_cancel_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_cancel_${order_id % 20}
        xp_order_evaluate_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_evaluate_${order_id % 20}
        xp_order_payment_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_payment_${order_id % 20}
        xp_order_reassign_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_order_reassign_${task_id % 10}
        single-table:
          tables:
    props:
      sql-show: true
      sql-simple: true
xp-robotaxi-push-message-boot/src/main/resources/bootstrap.yml
@@ -159,137 +159,3 @@
        shared-configs:
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
---
spring:
  shardingsphere:
    mode:
      type: Standalone
      repository:
        type: File
      overwrite: true
    datasource:
      names: xp0
      xp0:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.110.34:3306/xprt_operation?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: root
        password: 123456
        druid:
          # 连接池初始化时创建的连接数。
          # 应根据实际应用场景设置,确保应用程序启动时即可获取数据库连接。
          initial-size: 10
          # 连接池中最小的空闲连接数,保证即使在低负载时也有足够的连接可用。
          min-idle: 10
          # 连接池中最大活动连接数,限制并发请求时的数据库连接数,避免过多的连接消耗系统资源。
          max-active: 100
          # 获取连接时的最大等待时间,超过该时间则抛出异常。单位通常为毫秒。
          max-wait: 60000
          # 两个连接检查之间的时间间隔,用于检测和清理空闲过久的连接。单位为毫秒。
          time-between-eviction-runs-millis: 60000
          # 连接在被清理前的最小空闲时间。单位为毫秒。
          min-evictable-idle-time-millis: 300000
          # 用于验证连接有效性的 SQL 查询语句。
          validation-query: SELECT 1
          # 如果为真,则连接空闲时会被定期测试有效性。
          test-while-idle: true
          # 如果为真,在获取连接前进行有效性测试。
          test-on-borrow: false
          # 如果为真,在归还连接时进行有效性测试。
          test-on-return: false
          # 是否开启 PreparedStatement 缓存。
          pool-prepared-statements: true
          # 单个连接上缓存的 PreparedStatement 最大数量。
          max-pool-prepared-statement-per-connection-size: 20
          # 指定要启用的过滤器,如 stat, log4j, wall 等,用于监控和日志记录。
          filters: stat,wall,log4j
          # 连接属性,例如配置日志级别或慢 SQL 阈值。
          connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
          # 是否自动回收超时连接
          remove-abandoned: true
          # 超时时间,单位秒
          remove-abandoned-timeout: 1800
          # 是否记录被遗弃的连接
          log-abandoned: true
          # StatViewServlet配置,访问监控页面
          stat-view-servlet:
            enabled: true
            url-pattern: /druid/*
            login-username: admin
            login-password: admin
            reset-enable: false
          # 防火墙配置
          wall:
            config:
              multi-statement-allow: false
    rules:
      sharding:
        tables:
          sys_oper_log:
            standard:
              sharding-column: userId
              sharding-algorithm-name: sys_oper_log_inline
            key-generate-strategy:
              column: oper_id
              key-generator-name: snowflake
          xp_agreement_app_user:
            standard:
              sharding-column: app_user_id
              sharding-algorithm-name: xp_agreement_app_user_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_point:
            standard:
              sharding-column: id
              sharding-algorithm-name: xp_point_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
      sharding-algorithms:
        sys_oper_log_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.sys_oper_log_${userId % 10}
        xp_agreement_app_user_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_agreement_app_user_${app_user_id % 10}
        xp_point_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_point_${id % 10}
        single-table:
          tables:
            - xp0.sys_config
            - xp0.sys_dict_data
            - xp0.sys_dict_type
            - xp0.sys_logininfor
            - xp0.sys_menu
            - xp0.xp_acticity
            - xp0.xp_acticity_coupon
            - xp0.xp_agreement
            - xp0.xp_banner
            - xp0.xp_coupon
            - xp0.xp_electronic_fence
            - xp0.xp_electronic_fence_area
            - xp0.xp_feedback_type
            - xp0.xp_frequently_asked_questions
            - xp0.xp_invitation_code
            - xp0.xp_notification
            - xp0.xp_open_city
            - xp0.xp_pricing
            - xp0.xp_pricing_item
            - xp0.xp_region
            - xp0.xp_ride_guide
            - xp0.xp_route_plan
            - xp0.xp_system_setting
            - xp0.xp_trading_strategy
            - xp0.xp_trading_strategy_city
            - xp0.xp_user_feedback
            - xp0.xp_whitelist
            - xp0.xp_whitelist_operlog
    props:
      sql-show: true
      sql-simple: true
xp-robotaxi-remote-driving-boot/src/main/resources/bootstrap.yml
@@ -162,137 +162,3 @@
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
---
spring:
  shardingsphere:
    mode:
      type: Standalone
      repository:
        type: File
      overwrite: true
    datasource:
      names: xp0
      xp0:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.110.34:3306/xprt_operation?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: root
        password: 123456
        druid:
          # 连接池初始化时创建的连接数。
          # 应根据实际应用场景设置,确保应用程序启动时即可获取数据库连接。
          initial-size: 10
          # 连接池中最小的空闲连接数,保证即使在低负载时也有足够的连接可用。
          min-idle: 10
          # 连接池中最大活动连接数,限制并发请求时的数据库连接数,避免过多的连接消耗系统资源。
          max-active: 100
          # 获取连接时的最大等待时间,超过该时间则抛出异常。单位通常为毫秒。
          max-wait: 60000
          # 两个连接检查之间的时间间隔,用于检测和清理空闲过久的连接。单位为毫秒。
          time-between-eviction-runs-millis: 60000
          # 连接在被清理前的最小空闲时间。单位为毫秒。
          min-evictable-idle-time-millis: 300000
          # 用于验证连接有效性的 SQL 查询语句。
          validation-query: SELECT 1
          # 如果为真,则连接空闲时会被定期测试有效性。
          test-while-idle: true
          # 如果为真,在获取连接前进行有效性测试。
          test-on-borrow: false
          # 如果为真,在归还连接时进行有效性测试。
          test-on-return: false
          # 是否开启 PreparedStatement 缓存。
          pool-prepared-statements: true
          # 单个连接上缓存的 PreparedStatement 最大数量。
          max-pool-prepared-statement-per-connection-size: 20
          # 指定要启用的过滤器,如 stat, log4j, wall 等,用于监控和日志记录。
          filters: stat,wall,log4j
          # 连接属性,例如配置日志级别或慢 SQL 阈值。
          connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
          # 是否自动回收超时连接
          remove-abandoned: true
          # 超时时间,单位秒
          remove-abandoned-timeout: 1800
          # 是否记录被遗弃的连接
          log-abandoned: true
          # StatViewServlet配置,访问监控页面
          stat-view-servlet:
            enabled: true
            url-pattern: /druid/*
            login-username: admin
            login-password: admin
            reset-enable: false
          # 防火墙配置
          wall:
            config:
              multi-statement-allow: false
    rules:
      sharding:
        tables:
          sys_oper_log:
            standard:
              sharding-column: userId
              sharding-algorithm-name: sys_oper_log_inline
            key-generate-strategy:
              column: oper_id
              key-generator-name: snowflake
          xp_agreement_app_user:
            standard:
              sharding-column: app_user_id
              sharding-algorithm-name: xp_agreement_app_user_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
          xp_point:
            standard:
              sharding-column: id
              sharding-algorithm-name: xp_point_inline
            key-generate-strategy:
              column: id
              key-generator-name: snowflake
      sharding-algorithms:
        sys_oper_log_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.sys_oper_log_${userId % 10}
        xp_agreement_app_user_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_agreement_app_user_${app_user_id % 10}
        xp_point_inline:
          type: INLINE
          props:
            algorithm-expression: xp0.xp_point_${id % 10}
        single-table:
          tables:
            - xp0.sys_config
            - xp0.sys_dict_data
            - xp0.sys_dict_type
            - xp0.sys_logininfor
            - xp0.sys_menu
            - xp0.xp_acticity
            - xp0.xp_acticity_coupon
            - xp0.xp_agreement
            - xp0.xp_banner
            - xp0.xp_coupon
            - xp0.xp_electronic_fence
            - xp0.xp_electronic_fence_area
            - xp0.xp_feedback_type
            - xp0.xp_frequently_asked_questions
            - xp0.xp_invitation_code
            - xp0.xp_notification
            - xp0.xp_open_city
            - xp0.xp_pricing
            - xp0.xp_pricing_item
            - xp0.xp_region
            - xp0.xp_ride_guide
            - xp0.xp_route_plan
            - xp0.xp_system_setting
            - xp0.xp_trading_strategy
            - xp0.xp_trading_strategy_city
            - xp0.xp_user_feedback
            - xp0.xp_whitelist
            - xp0.xp_whitelist_operlog
    props:
      sql-show: true
      sql-simple: true
xp-robotaxi-vehicle-convoy-boot/src/main/resources/bootstrap.yml
@@ -157,7 +157,4 @@
        file-extension: yml
        # 共享配置
        shared-configs:
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
---
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}