From 3e26c313f55da8a21fc20df3918bd42f22861cb3 Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Sun, 20 Sep 2026 10:52:36 +0800 Subject: [PATCH 1/6] =?UTF-8?q?feat(mysql):=20=E8=A1=A5=E9=BD=90=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96=E8=A1=A8=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mysql8/initdb/01-maintain-init-table.sql | 60 ++++++++++++++++++------ 1 file changed, 46 insertions(+), 14 deletions(-) diff --git a/mysql8/initdb/01-maintain-init-table.sql b/mysql8/initdb/01-maintain-init-table.sql index ee3b0f5..28a63ed 100644 --- a/mysql8/initdb/01-maintain-init-table.sql +++ b/mysql8/initdb/01-maintain-init-table.sql @@ -432,11 +432,13 @@ CREATE TABLE `jtt808_card` ( `magnetic_card` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '泰国磁条卡唯一ID', `emp_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '员工工号', `emp_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '员工姓名', + `additional` json NULL COMMENT '签到签退区间轨迹统计', `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`, `event_time`) USING BTREE, INDEX `idx_time`(`organize_id` ASC, `event_time` ASC) USING BTREE, - INDEX `idx_car_time`(`organize_id` ASC, `vehicle_id` ASC, `event_time` ASC) USING BTREE + INDEX `idx_car_time`(`organize_id` ASC, `vehicle_id` ASC, `event_time` ASC) USING BTREE, + INDEX `idx_card_match`(`organize_id` ASC, `vehicle_id` ASC, `card_id` ASC, `event_time` ASC) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '设备刷卡记录' ROW_FORMAT = DYNAMIC; -- ---------------------------- @@ -1165,7 +1167,7 @@ CREATE TABLE `ledger_timeline` ( `time_zone` char(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '开始时间对应的时区', `start_time` datetime NOT NULL COMMENT '开始时间', `end_time` datetime NOT NULL COMMENT '结束时间', - `flag` smallint NOT NULL DEFAULT 0 COMMENT '标识 1上线 2下线 10=补传11=轨迹不连续 12=漂移', + `flag` smallint NOT NULL DEFAULT 0 COMMENT '标识 1上线 2下线 10=补传 11=轨迹不连续 12=漂移 13=加油', `duration_second` int NOT NULL DEFAULT 0 COMMENT '时长', `num` int NULL DEFAULT 0 COMMENT '定位包数量', `additional` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '附加数据', @@ -1174,9 +1176,35 @@ CREATE TABLE `ledger_timeline` ( `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, INDEX `idx_time`(`organize_id` ASC, `vehicle_id` ASC, `start_time` ASC) USING BTREE, - INDEX `idx_date`(`organize_id` ASC, `work_date` ASC, `vehicle_id` ASC) USING BTREE + INDEX `idx_date`(`organize_id` ASC, `work_date` ASC, `vehicle_id` ASC) USING BTREE, + INDEX `idx_flag_time`(`organize_id` ASC, `vehicle_id` ASC, `flag` ASC, `start_time` ASC) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '设备时间线' ROW_FORMAT = DYNAMIC; +-- ---------------------------- +-- Table structure for ledger_trip_driver_segment +-- ---------------------------- +DROP TABLE IF EXISTS `ledger_trip_driver_segment`; +CREATE TABLE `ledger_trip_driver_segment` ( + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '序列号', + `organize_id` varchar(32) NOT NULL DEFAULT '' COMMENT '企业ID', + `vehicle_id` varchar(32) NOT NULL DEFAULT '' COMMENT '车辆ID', + `trip_id` bigint NOT NULL COMMENT '车辆行程ID', + `segment_no` int NOT NULL COMMENT '行程内区段序号', + `emp_id` varchar(32) NOT NULL COMMENT '驾驶员工号', + `driver_name` varchar(64) NOT NULL DEFAULT '' COMMENT '驾驶员姓名快照', + `start_time` datetime NOT NULL COMMENT '驾驶开始时间', + `end_time` datetime NOT NULL COMMENT '驾驶结束时间', + `driving_seconds` int NOT NULL DEFAULT 0 COMMENT '驾驶时长秒', + `trip_mileage` decimal(11,3) NOT NULL DEFAULT 0 COMMENT '驾驶里程Km', + `over_speed` int NOT NULL DEFAULT 0 COMMENT '区段内超速次数', + `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`), + UNIQUE KEY `uk_trip_segment` (`organize_id`,`trip_id`,`segment_no`), + KEY `idx_org_time_driver` (`organize_id`,`start_time`,`emp_id`), + KEY `idx_vehicle_time` (`organize_id`,`vehicle_id`,`start_time`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='驾驶员行程区段'; + -- ---------------------------- -- Table structure for ledger_trip_index -- ---------------------------- @@ -3626,22 +3654,26 @@ CREATE TABLE `user_issue` ( ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户意见反馈' ROW_FORMAT = DYNAMIC; -- ---------------------------- --- Table structure for user_line_config +-- Table structure for user_third_notify_config -- ---------------------------- -DROP TABLE IF EXISTS `user_line_config`; -CREATE TABLE `user_line_config` ( +DROP TABLE IF EXISTS `user_third_notify_config`; +CREATE TABLE `user_third_notify_config` ( `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自增长ID', + `notify_config_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '通知配置唯一ID', `user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户ID', - `line_token` varchar(43) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'linenotify发送消息的token', - `token_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'token的名称,用来标识区分用途等', - `target_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'linenotify接收方种类:USER个人或GROUP群组', - `target` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'linenotify接收方的名称: 个人昵称或群组名称', - `is_active` int NOT NULL DEFAULT 0 COMMENT '有效标识 0 无效 1 有效', + `notify_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '第三方通知类型:LINE、TELEGRAM', + `token` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT 'Provider完整Token', + `remark` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '备注', + `target_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '接收目标类型:USER、GROUP', + `target_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'Provider接收目标ID', + `target_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '接收目标名称', + `is_active` int NOT NULL DEFAULT 0 COMMENT '有效标识 0无效/待绑定 1有效', `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, - UNIQUE INDEX `user_line_config_user_id_IDX`(`user_id` ASC, `line_token` ASC) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户LINE平台Token配置' ROW_FORMAT = DYNAMIC; + UNIQUE KEY `uk_notify_config_id` (`notify_config_id`) USING BTREE, + UNIQUE KEY `uk_user_notify_type_token` (`user_id`, `notify_type`, `token`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='用户第三方通知凭据配置'; -- ---------------------------- -- Table structure for user_notification @@ -3746,7 +3778,7 @@ CREATE TABLE `user_subscribe_config` ( `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', `user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户ID', `channel_key` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '订阅的频道:平台到期PLATFORM_EXPIRATION 保养到期MAINTAIN_EXPIRATION', - `notify_pipe` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '订阅通知渠道: EMAIL、PLATFORM、LINE', + `notify_pipe` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '订阅通知渠道: EMAIL、PLATFORM、THIRD', `notify_config` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '通知渠道可选配置json对象,方便扩展', `is_enabled` int NOT NULL DEFAULT 0 COMMENT '启用标识 0 禁用 1 启用', `lang` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'zh-CN' COMMENT '模板多言', From 9b21d2c2911edf055e2533641796e30fc948674f Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Wed, 23 Sep 2026 10:52:52 +0800 Subject: [PATCH 2/6] =?UTF-8?q?fix(=E6=95=B0=E6=8D=AE=E5=BA=93):=20?= =?UTF-8?q?=E8=A1=A5=E5=85=85=E8=A1=8C=E7=A8=8B=E7=BB=93=E6=9D=9F=E9=87=8C?= =?UTF-8?q?=E7=A8=8B=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mysql8/initdb/01-maintain-init-table.sql | 1 + 1 file changed, 1 insertion(+) diff --git a/mysql8/initdb/01-maintain-init-table.sql b/mysql8/initdb/01-maintain-init-table.sql index 28a63ed..47b7951 100644 --- a/mysql8/initdb/01-maintain-init-table.sql +++ b/mysql8/initdb/01-maintain-init-table.sql @@ -1226,6 +1226,7 @@ CREATE TABLE `ledger_trip_index` ( `last_acc_on_time` datetime NOT NULL DEFAULT '1970-01-01 00:00:00' COMMENT '行程中 | 持续更新坐标时间', `last_trip_end_id` bigint NOT NULL DEFAULT 0 COMMENT '停车中 | 行程结束ID=停车开始ID', `last_trip_end_time` datetime NOT NULL DEFAULT '1970-01-01 00:00:00' COMMENT '停车中 | 行程结束时间=停车开始时间', + `last_trip_end_mileage` decimal(11, 3) NULL DEFAULT NULL COMMENT '停车中 | 上一笔行程结束里程Km', `last_trip_end_oil` decimal(11, 1) NOT NULL DEFAULT 0.0 COMMENT '停车中 | 行程结束油耗=停车开始油耗', `last_park_end_id` bigint NOT NULL DEFAULT 0 COMMENT '连续停车超过24小时分段, 最后一次ID', `last_park_end_time` datetime NOT NULL DEFAULT '1970-01-01 00:00:00' COMMENT '连续停车超过24小时分段, 最后一次时间', From ac69ea78a324d99cdae08510258569b3fd670408 Mon Sep 17 00:00:00 2001 From: "ipcjs.mac4" Date: Wed, 14 Oct 2026 17:16:08 +0800 Subject: [PATCH 3/6] =?UTF-8?q?fix(mysql):=20=E7=A7=BB=E9=99=A4=E6=97=A7?= =?UTF-8?q?=20Flyway=20=E5=8E=86=E5=8F=B2=E8=A1=A8=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Codex --- mysql8/initdb/01-maintain-init-table.sql | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/mysql8/initdb/01-maintain-init-table.sql b/mysql8/initdb/01-maintain-init-table.sql index 47b7951..7f4b93d 100644 --- a/mysql8/initdb/01-maintain-init-table.sql +++ b/mysql8/initdb/01-maintain-init-table.sql @@ -3341,28 +3341,6 @@ CREATE TABLE `system_repo` ( UNIQUE INDEX `sytem_repo_UN`(`repo_url` ASC) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '知识库目录' ROW_FORMAT = DYNAMIC; --- ---------------------------- --- Table structure for system_schema_history --- ---------------------------- -DROP TABLE IF EXISTS `system_schema_history`; -CREATE TABLE `system_schema_history` ( - `id` int NOT NULL AUTO_INCREMENT, - `installed_rank` int NOT NULL, - `version` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, - `description` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, - `type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, - `script` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, - `checksum` int NULL DEFAULT NULL, - `installed_by` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, - `installed_on` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - `execution_time` int NOT NULL, - `success` tinyint(1) NOT NULL, - `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', - `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', - PRIMARY KEY (`id`) USING BTREE, - INDEX `system_schema_history_s_idx`(`success` ASC) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = DYNAMIC; - -- ---------------------------- -- Table structure for system_shedlock -- ---------------------------- From 9bb9ef5a6c66d1038fa2e70a679bf15b2669279b Mon Sep 17 00:00:00 2001 From: "ipcjs.mac4" Date: Thu, 22 Oct 2026 17:07:29 +0800 Subject: [PATCH 4/6] =?UTF-8?q?wip:=20=E6=81=A2=E5=A4=8Dmysql5.7=E7=9A=84c?= =?UTF-8?q?ompose=E6=96=87=E4=BB=B6,=20=E7=94=A8=E4=BA=8E=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E5=92=8Cflyway=E7=9A=84=E5=85=BC=E5=AE=B9=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mysql5.7/.env | 1 + mysql5.7/compose.yml | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 mysql5.7/.env create mode 100644 mysql5.7/compose.yml diff --git a/mysql5.7/.env b/mysql5.7/.env new file mode 100644 index 0000000..c0876ef --- /dev/null +++ b/mysql5.7/.env @@ -0,0 +1 @@ +../.env.default diff --git a/mysql5.7/compose.yml b/mysql5.7/compose.yml new file mode 100644 index 0000000..8484ef2 --- /dev/null +++ b/mysql5.7/compose.yml @@ -0,0 +1,20 @@ +services: + mysql: + image: transcodegroup/mysql + container_name: mysql + restart: always + ports: + - ${MYSQL_PORT:-3306}:3306 + volumes: + - ${DATA_DIR:-/data}/mysql5.7/data:/var/lib/mysql + - ${DATA_DIR:-/data}/mysql5.7/logs:/var/log/mysql + - ${DATA_DIR:-/data}/mysql5.7/backup/database:/mysql/backup/database + - ${DATA_DIR:-/data}/mysql5.7/backup/log:/mysql/backup/log + environment: + # 设置密码 + - MYSQL_ROOT_PASSWORD=${MYSQL_PASSWORD:?required} + logging: + driver: "json-file" + options: + # 限制日志文件大小 + max-size: "100m" From 0ef67da4058b667b58d0469c037b144cb5d12c1e Mon Sep 17 00:00:00 2001 From: cli Date: Thu, 22 Oct 2026 05:16:48 -0400 Subject: [PATCH 5/6] =?UTF-8?q?wip:=20mysql5=E7=9A=84=E7=AB=AF=E5=8F=A3?= =?UTF-8?q?=E8=AE=BE=E4=B8=BA3305,=20=E4=BB=85=E7=94=A8=E4=B8=8E=E6=B5=8B?= =?UTF-8?q?=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mysql5.7/.env | 1 - mysql5.7/compose.yml | 20 -------------------- mysql5/.env | 1 + mysql5/compose.yml | 20 ++++++++++++++++++++ 4 files changed, 21 insertions(+), 21 deletions(-) delete mode 100644 mysql5.7/.env delete mode 100644 mysql5.7/compose.yml create mode 120000 mysql5/.env create mode 100644 mysql5/compose.yml diff --git a/mysql5.7/.env b/mysql5.7/.env deleted file mode 100644 index c0876ef..0000000 --- a/mysql5.7/.env +++ /dev/null @@ -1 +0,0 @@ -../.env.default diff --git a/mysql5.7/compose.yml b/mysql5.7/compose.yml deleted file mode 100644 index 8484ef2..0000000 --- a/mysql5.7/compose.yml +++ /dev/null @@ -1,20 +0,0 @@ -services: - mysql: - image: transcodegroup/mysql - container_name: mysql - restart: always - ports: - - ${MYSQL_PORT:-3306}:3306 - volumes: - - ${DATA_DIR:-/data}/mysql5.7/data:/var/lib/mysql - - ${DATA_DIR:-/data}/mysql5.7/logs:/var/log/mysql - - ${DATA_DIR:-/data}/mysql5.7/backup/database:/mysql/backup/database - - ${DATA_DIR:-/data}/mysql5.7/backup/log:/mysql/backup/log - environment: - # 设置密码 - - MYSQL_ROOT_PASSWORD=${MYSQL_PASSWORD:?required} - logging: - driver: "json-file" - options: - # 限制日志文件大小 - max-size: "100m" diff --git a/mysql5/.env b/mysql5/.env new file mode 120000 index 0000000..897fe64 --- /dev/null +++ b/mysql5/.env @@ -0,0 +1 @@ +../default.env \ No newline at end of file diff --git a/mysql5/compose.yml b/mysql5/compose.yml new file mode 100644 index 0000000..cd96a46 --- /dev/null +++ b/mysql5/compose.yml @@ -0,0 +1,20 @@ +services: + mysql5: + image: transcodegroup/mysql + restart: always + ports: + # mysql5数据库仅用于测试对老数据库的兼容性, 故暴露的端口写死成3305, 不使用环境变量 + - 3305:3306 + volumes: + - ${DATA_DIR:-/data}/mysql5/data:/var/lib/mysql + - ${DATA_DIR:-/data}/mysql5/logs:/var/log/mysql + - ${DATA_DIR:-/data}/mysql5/backup/database:/mysql/backup/database + - ${DATA_DIR:-/data}/mysql5/backup/log:/mysql/backup/log + environment: + # 设置密码 + - MYSQL_ROOT_PASSWORD=${MYSQL_PASSWORD:?required} + logging: + driver: "json-file" + options: + # 限制日志文件大小 + max-size: "100m" From c22714ac149b11ee03fdb8778ed1bc7926294800 Mon Sep 17 00:00:00 2001 From: "ipcjs.mac4" Date: Fri, 23 Oct 2026 17:01:46 +0800 Subject: [PATCH 6/6] =?UTF-8?q?wip:=20=E8=A1=A5=E5=85=85tms=E7=9A=84?= =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mysql8/initdb/07-tms-init-table.sql | 368 ++++++++++++++++++++++++++++ 1 file changed, 368 insertions(+) create mode 100644 mysql8/initdb/07-tms-init-table.sql diff --git a/mysql8/initdb/07-tms-init-table.sql b/mysql8/initdb/07-tms-init-table.sql new file mode 100644 index 0000000..050c658 --- /dev/null +++ b/mysql8/initdb/07-tms-init-table.sql @@ -0,0 +1,368 @@ +/* + Navicat Premium Data Transfer + + Source Server : 219.138.167.86-咸宁 + Source Server Type : MySQL + Source Server Version : 50732 (5.7.32-log) + Source Host : 219.138.167.86:8560 + Source Schema : tms + + Target Server Type : MySQL + Target Server Version : 50732 (5.7.32-log) + File Encoding : 65001 + + Date: 06/06/2025 16:19:46 +*/ + +-- 保证tms数据库存在, 并且默认字符集正确 +CREATE DATABASE IF NOT EXISTS tms; +ALTER DATABASE tms DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; +-- 初始化脚本显式选择 tms 库,避免使用 Flyway 默认的 maintain 库 +USE tms; + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for base_cargo +-- ---------------------------- +DROP TABLE IF EXISTS `base_cargo`; +CREATE TABLE `base_cargo` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `cargo_group` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '商品类型', + `cargo_code` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '商品编号', + `cargo_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '商品名称', + `cargo_unit` smallint(5) UNSIGNED ZEROFILL NOT NULL COMMENT '单位 0件 1箱 2桶 3袋 4kg 5L', + `cargo_weight` decimal(10, 2) NOT NULL COMMENT '单件重量Kg', + `cargo_volume` decimal(10, 2) NOT NULL COMMENT '单件体积m', + `cargo_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '单位价格(可选,用于成本计算)', + `creator_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建用户', + `creator_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户名称', + `created_unix` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for base_customer +-- ---------------------------- +DROP TABLE IF EXISTS `base_customer`; +CREATE TABLE `base_customer` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `customer_id` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '客户ID', + `customer_code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '客户编码', + `customer_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '客户名称', + `industry` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '所属行业', + `customer_level` smallint(6) NOT NULL DEFAULT 0 COMMENT '客户级别', + `customer_tag` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '客户标签', + `region` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '区域,省市区', + `address` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '公司地址', + `postal_code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '邮编', + `status` smallint(6) NOT NULL DEFAULT 0 COMMENT '状态', + `contact_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人姓名', + `contact_mobile` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人电话', + `contact_email` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人邮箱', + `contact_department` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人部门', + `contact_position` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人职位', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `creator_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建用户', + `creator_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户名称', + `created_unix` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uk_customer_id`(`customer_id`) USING BTREE, + UNIQUE INDEX `uk_customer_code`(`customer_code`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'TMS联系人' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for base_road +-- ---------------------------- +DROP TABLE IF EXISTS `base_road`; +CREATE TABLE `base_road` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `road_id` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '路书ID', + `road_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '路书名称', + `vehicle_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '预设-车辆编号', + `vehicle_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '预设-车辆名称', + `lpn` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '预设-车牌号码 License Plate Number', + `driver_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预设-驾驶员账号', + `driver_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预设-预设驾驶员姓名', + `path_points` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '运输路线,lng,lat|...', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `creator_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建用户', + `creator_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户名称', + `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `idx_transport`(`organize_id`, `road_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'TMS订单联系人' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for base_road_point +-- ---------------------------- +DROP TABLE IF EXISTS `base_road_point`; +CREATE TABLE `base_road_point` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `road_id` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '路书ID', + `road_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '路书名称', + `fence_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '自编码', + `fence_name` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '站台名称', + `arrival_time` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '计划到达', + `departure_time` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '计划到达', + `cross_day` smallint(5) UNSIGNED ZEROFILL NOT NULL COMMENT '跨天', + `time_zone` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '时区', + `creator_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建用户', + `creator_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户名称', + `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_transport`(`organize_id`, `road_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'TMS订单联系人' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for base_workflow +-- ---------------------------- +DROP TABLE IF EXISTS `base_workflow`; +CREATE TABLE `base_workflow` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `delivery_method` smallint(6) UNSIGNED ZEROFILL NOT NULL COMMENT '配送方式', + `step_event` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '事件类型, 枚举类型', + `step_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '事件名称', + `step_order` smallint(6) NOT NULL DEFAULT 0 COMMENT '步骤排序', + `created_unix` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for order_cargo +-- ---------------------------- +DROP TABLE IF EXISTS `order_cargo`; +CREATE TABLE `order_cargo` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `cargo_code` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '商品编号', + `order_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '订单编号', + `cargo_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '商品名称', + `cargo_quantity` int(11) NOT NULL DEFAULT 0 COMMENT '运输数量', + `cargo_unit` smallint(5) UNSIGNED ZEROFILL NOT NULL DEFAULT 00000 COMMENT '单位 0件 1箱 2桶 3袋 4kg 5L', + `cargo_weight` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '单件重量Kg', + `cargo_volume` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '单件体积m', + `cargo_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '单位价格(可选,用于成本计算)', + `creator_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建用户', + `creator_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户名称', + `created_unix` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 52 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for order_contact +-- ---------------------------- +DROP TABLE IF EXISTS `order_contact`; +CREATE TABLE `order_contact` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `order_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '订单编号', + `fence_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '自编码', + `fence_name` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '站台名称', + `contact_type` smallint(6) NOT NULL COMMENT '1=发货人,2=收货人', + `contact_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '联系人姓名', + `contact_phone` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系电话', + `plan_time` datetime NULL DEFAULT NULL COMMENT '计划发货/收货时间', + `province_code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '省份编码', + `province_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '省份名称', + `city_code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '城市编码', + `city_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '城市名称', + `district_code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '区县编码', + `district_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '区县名称', + `detail_address` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '详细的地址', + `center_lat` decimal(10, 6) NULL DEFAULT NULL COMMENT '中心点经纬度', + `center_lng` decimal(10, 6) NULL DEFAULT NULL COMMENT '中心点经纬度', + `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uk_order_number`(`organize_id`, `order_number`, `contact_type`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 141 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'TMS订单联系人' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for order_info +-- ---------------------------- +DROP TABLE IF EXISTS `order_info`; +CREATE TABLE `order_info` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `order_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '订单编号', + `order_status` int(11) NOT NULL COMMENT '订单状态', + `customer_id` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '客户ID', + `customer_code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '客户编码', + `customer_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '客户名称', + `transport_type` int(11) UNSIGNED NOT NULL COMMENT '运输类型 0整车运输FTL;1拼车运输LTL', + `cargo_type` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '货物类型,水果,食品等', + `delivery_method` smallint(6) UNSIGNED NOT NULL COMMENT '配送方式 0自提配送 1送货上门', + `contract_info` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '合同信息', + `order_source` smallint(6) UNSIGNED NOT NULL COMMENT '订单来源', + `vehicle_requirements` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '车辆需求', + `shipping_number` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '发货单号', + `shipping_total` smallint(6) NOT NULL DEFAULT 1 COMMENT '默认只有一个批次', + `shipping_index` smallint(6) NOT NULL DEFAULT 1 COMMENT '默认只有一个批次', + `waybill_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '运输单', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `creator_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建用户', + `creator_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户名称', + `created_unix` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uk_order`(`organize_id`, `order_number`) USING BTREE, + INDEX `idx_transport`(`organize_id`, `waybill_number`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 47 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'TMS订单' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for order_timeline +-- ---------------------------- +DROP TABLE IF EXISTS `order_timeline`; +CREATE TABLE `order_timeline` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `order_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '订单编号', + `event_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '事件类型, 枚举类型', + `before_status` int(1) NOT NULL DEFAULT 0 COMMENT '之前订单状态', + `after_status` int(1) NOT NULL DEFAULT 0 COMMENT '之后订单状态', + `is_workflow` smallint(5) UNSIGNED NOT NULL DEFAULT 0 COMMENT '是否核心的业务流程, 创建订单生成, 后续业务只更新', + `creator_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户ID', + `creator_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户名称', + `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uk_order_event`(`organize_id`, `order_number`, `event_type`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 78 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '运输单时间线' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for order_waypoint +-- ---------------------------- +DROP TABLE IF EXISTS `order_waypoint`; +CREATE TABLE `order_waypoint` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `order_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '订单编号', + `fence_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '自编码', + `fence_name` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '站台名称', + `waypoint_type` smallint(6) NOT NULL COMMENT '1=发货人,2=收货人', + `contact_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '联系人姓名', + `contact_phone` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系电话', + `plan_time` datetime NULL DEFAULT NULL COMMENT '计划发货/收货时间', + `province_code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '省份编码', + `province_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '省份名称', + `city_code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '城市编码', + `city_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '城市名称', + `district_code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '区县编码', + `district_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '区县名称', + `detail_address` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '详细的地址', + `center_lat` decimal(10, 6) NULL DEFAULT NULL COMMENT '中心点经纬度', + `center_lng` decimal(10, 6) NULL DEFAULT NULL COMMENT '中心点经纬度', + `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uk_order_number`(`organize_id`, `order_number`, `waypoint_type`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 177 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'TMS订单联系人' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for waybill_info +-- ---------------------------- +DROP TABLE IF EXISTS `waybill_info`; +CREATE TABLE `waybill_info` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `waybill_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '运输单', + `waybill_status` int(16) UNSIGNED NOT NULL DEFAULT 0 COMMENT '运输单状态', + `waybill_paths` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '运输路线,lng,lat|...', + `path_id` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '常用路线ID', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `vehicle_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '车辆编号', + `vehicle_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '车辆名称', + `lpn` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '车牌号码 License Plate Number', + `driver_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '工号', + `driver_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '姓名', + `cargo_quantity` int(11) NOT NULL DEFAULT 0 COMMENT '运输数量', + `cargo_weight` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '单件重量Kg', + `cargo_volume` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '单件体积m', + `creator_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户ID', + `creator_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户名称', + `created_unix` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` datetime NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uk_transport`(`organize_id`, `waybill_number`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 46 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'TMS订单' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for waybill_timeline +-- ---------------------------- +DROP TABLE IF EXISTS `waybill_timeline`; +CREATE TABLE `waybill_timeline` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `waybill_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '订单编号 唯一值,供客户查询', + `event_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '状态机事件ID', + `before_status` int(1) NOT NULL DEFAULT 0 COMMENT '之前订单状态', + `after_status` int(1) NOT NULL DEFAULT 0 COMMENT '之后订单状态', + `change_info` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '变更信息,JSON对象', + `creator_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户ID', + `creator_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户名称', + `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + INDEX `transport_number`(`waybill_number`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '运输单时间线' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for waybill_waypoint +-- ---------------------------- +DROP TABLE IF EXISTS `waybill_waypoint`; +CREATE TABLE `waybill_waypoint` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `waybill_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '运输单', + `serial_number` int(11) NOT NULL COMMENT '序号, 先到哪里再去哪里', + `fence_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '围栏ID', + `fence_name` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '围栏名称', + `order_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '订单编号', + `waypoint_type` smallint(6) NOT NULL COMMENT '0=装货或卸货,10=途经点, 20=返程点', + `plan_arrival` datetime NULL DEFAULT NULL COMMENT '计划到达时间', + `real_arrival` datetime NULL DEFAULT NULL COMMENT '实际到达时间', + `start_work` datetime NULL DEFAULT NULL COMMENT '开始工作时间', + `end_work` datetime NULL DEFAULT NULL COMMENT '结束工作时间', + `real_departure` datetime NULL DEFAULT NULL COMMENT '实际出发时间', + `center_lat` decimal(10, 6) NULL DEFAULT NULL COMMENT '中心点经纬度', + `center_lng` decimal(10, 6) NULL DEFAULT NULL COMMENT '中心点经纬度', + `creator_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户ID', + `creator_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '创建用户名称', + `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_transport`(`organize_id`, `waybill_number`, `fence_id`) USING BTREE, + INDEX `idx_order`(`organize_id`, `order_number`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 51 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'TMS订单联系人' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for waybill_waypoint_order +-- ---------------------------- +DROP TABLE IF EXISTS `waybill_waypoint_order`; +CREATE TABLE `waybill_waypoint_order` ( + `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID', + `organize_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织ID', + `waybill_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '运输单', + `serial_number` int(11) NOT NULL COMMENT '序号, 先到哪里再去哪里', + `order_number` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '订单编号', + `load_type` smallint(6) NOT NULL COMMENT '装货或者卸货:1=装货,2=卸货', + `created_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间戳', + `updated_unix` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_transport`(`organize_id`, `waybill_number`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 51 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'TMS订单联系人' ROW_FORMAT = Dynamic; + +SET FOREIGN_KEY_CHECKS = 1;