mqtt消息记录开发完成

This commit is contained in:
2025-05-23 11:03:42 +08:00
parent abf14bd42f
commit 49f1220310
27 changed files with 1787 additions and 66 deletions

View File

@@ -1,17 +1,17 @@
/*
Navicat Premium Data Transfer
Navicat Premium Dump SQL
Source Server : yuyun
Source Server : yuyun-us1.stormrain.cn
Source Server Type : MySQL
Source Server Version : 50744
Source Server Version : 50744 (5.7.44)
Source Host : yuyun-us1.stormrain.cn:3306
Source Schema : mqtt_power
Target Server Type : MySQL
Target Server Version : 50744
Target Server Version : 50744 (5.7.44)
File Encoding : 65001
Date: 18/05/2025 19:54:49
Date: 22/05/2025 19:36:58
*/
SET NAMES utf8mb4;
@@ -89,6 +89,33 @@ CREATE TABLE `charging_session` (
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_german2_ci COMMENT = '充电记录表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mqtt_communication_log
-- ----------------------------
DROP TABLE IF EXISTS `mqtt_communication_log`;
CREATE TABLE `mqtt_communication_log` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志ID',
`message_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '消息的唯一标识 (例如 MQTT v5 的 Message ID 或应用生成的UUID)',
`direction` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '消息方向: UPSTREAM (设备->服务器), DOWNSTREAM (服务器->设备)',
`client_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '相关的客户端ID',
`topic` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'MQTT 主题',
`payload_format` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'TEXT' COMMENT 'Payload 格式 (TEXT, JSON, BINARY)',
`payload` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '消息原文 (Payload)',
`qos` tinyint(4) NULL DEFAULT NULL COMMENT '消息QoS级别',
`is_retained` tinyint(1) NULL DEFAULT NULL COMMENT '是否为保留消息',
`log_timestamp` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '日志记录时间戳 (精确到毫秒)',
`backend_processing_status` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '后端处理状态 (RECEIVED, PROCESSING, SUCCESS, FAILED)',
`backend_processing_info` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '后端处理附加信息 (如错误信息、关联业务ID)',
`related_session_id` bigint(20) NULL DEFAULT NULL COMMENT '关联的充电会话ID (如果适用)',
`related_task_id` bigint(20) NULL DEFAULT NULL COMMENT '关联的机器人任务ID (如果适用)',
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_log_timestamp`(`log_timestamp`) USING BTREE,
INDEX `idx_topic`(`topic`(255)) USING BTREE,
INDEX `idx_client_id`(`client_id`) USING BTREE,
INDEX `idx_related_session_id`(`related_session_id`) USING BTREE,
INDEX `idx_related_task_id`(`related_task_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'MQTT通信日志表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for parking_spot
-- ----------------------------