冷链管理系统.sql 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. SET NAMES utf8mb4;
  2. SET FOREIGN_KEY_CHECKS = 0;
  3. -- ----------------------------
  4. -- Table structure for monitor_device 监控设备表
  5. -- ----------------------------
  6. DROP TABLE IF EXISTS `monitor_device`;
  7. CREATE TABLE `monitor_device` (
  8. `id` VARCHAR(50) NOT NULL COMMENT '设备唯一标识符,UUID', -- 设备唯一标识符,UUID
  9. `device_name` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '设备名称', -- 设备名称
  10. `device_code` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '设备编码', -- 设备编码
  11. `model_name` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '设备型号', -- 设备型号
  12. `last_heartbeat_time` DATETIME NULL DEFAULT NULL COMMENT '最后心跳时间', -- 设备最后心跳时间
  13. `status` CHAR(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '设备状态(1:正常,2:闲置)', -- 设备状态
  14. `sensor_count` INT NULL DEFAULT NULL COMMENT '传感器路数', -- 传感器的路数
  15. `last_login_time` TIMESTAMP NULL DEFAULT NULL COMMENT '最近登录时间', -- 最近登录时间
  16. `sort_code` INT NULL DEFAULT NULL COMMENT '排序码', -- 排序码
  17. `extra_info` LONGTEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '扩展信息,存储额外的JSON数据', -- 扩展信息,存储JSON
  18. `is_deleted` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '删除标志,标记是否删除', -- 删除标志
  19. `created_at` DATETIME NULL DEFAULT NULL COMMENT '记录创建时间', -- 记录的创建时间
  20. `created_by` VARCHAR(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '记录创建用户', -- 创建用户
  21. `updated_at` DATETIME NULL DEFAULT NULL COMMENT '记录修改时间', -- 记录的修改时间
  22. `updated_by` VARCHAR(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '记录修改用户', -- 修改用户
  23. PRIMARY KEY (`id`) USING BTREE
  24. ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '监控设备管理表,存储设备信息及其状态管理' ROW_FORMAT = Dynamic;
  25. -- ----------------------------
  26. -- Table structure for monitor_target 监控目标
  27. -- ----------------------------
  28. DROP TABLE IF EXISTS `monitor_target`;
  29. CREATE TABLE `monitor_target` (
  30. `id` VARCHAR(50) NOT NULL,
  31. `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '名称001',
  32. `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '状态(1:正常,2:闲置)',
  33. `monitor_point` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '监控位置区域',
  34. `sensor_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '传感器类型',
  35. `monitor_device_id` VARCHAR(50) NULL DEFAULT NULL COMMENT '监控设备编号', -- 监控目标设备的UUID
  36. `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '冷链编号',
  37. `limit_up` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '报警上限',
  38. `limit_down` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '报警下限',
  39. PRIMARY KEY (`id`) USING BTREE
  40. ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '目标设备管理' ROW_FORMAT = Dynamic;
  41. DROP TABLE IF EXISTS `monitor_target_region`;
  42. CREATE TABLE `monitor_target_region` (
  43. `id` VARCHAR(50) NOT NULL COMMENT '区域唯一标识符,UUID', -- 区域唯一标识符
  44. `name` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '区域名称', -- 区域名称
  45. `parent_id` VARCHAR(50) NULL DEFAULT NULL COMMENT '上级区域ID,若无则为NULL', -- 上级区域ID
  46. `monitor_target_id` VARCHAR(50) NULL DEFAULT NULL COMMENT '监控目标设备',
  47. `sensor_code` VARCHAR(50) NOT NULL COMMENT '传感器编号,如:X001、C001',
  48. `sensor_type` VARCHAR(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '传感器类型,如:温湿度传感器、二氧化碳传感器',
  49. `sensor_route` INT NOT NULL COMMENT '传感器路数,如:路数1、路数2',
  50. `created_at` DATETIME NULL DEFAULT NULL COMMENT '记录创建时间', -- 记录创建时间
  51. `created_by` VARCHAR(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '记录创建用户', -- 创建用户
  52. `updated_at` DATETIME NULL DEFAULT NULL COMMENT '记录修改时间', -- 记录修改时间
  53. `updated_by` VARCHAR(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '记录修改用户', -- 修改用户
  54. PRIMARY KEY (`region_id`) USING BTREE
  55. ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '区域管理表,用于管理设备区域结构' ROW_FORMAT = Dynamic;
  56. DROP TABLE IF EXISTS `monitor_monitor_target`;
  57. CREATE TABLE `monitor_monitor_target` (
  58. `monitor_device_id` VARCHAR(50) NOT NULL COMMENT '监控设备ID(外键,来自monitor_device表)', -- 监控设备ID
  59. `monitor_target_id` VARCHAR(50) NOT NULL COMMENT '目标设备ID(外键,来自monitor_target表)', -- 目标设备ID
  60. `monitor_target_region_id` VARCHAR(50) NULL COMMENT '目标设备区域ID(外键,来自monitor_target表)', -- 目标设备ID
  61. `sensor_route` INT NULL DEFAULT NULL COMMENT '传感器路数', -- 传感器的路数(例如路数1、路数2等)
  62. `created_at` DATETIME NULL DEFAULT NULL COMMENT '记录创建时间', -- 记录创建时间
  63. `created_by` VARCHAR(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '记录创建用户', -- 创建用户
  64. `updated_at` DATETIME NULL DEFAULT NULL COMMENT '记录修改时间', -- 记录修改时间
  65. `updated_by` VARCHAR(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '记录修改用户'
  66. ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '监控设备与目标设备关系表,管理传感器监控的目标设备' ROW_FORMAT = Dynamic;
  67. CREATE TABLE monitor_device_parameters (
  68. id VARCHAR(50) PRIMARY KEY COMMENT '主键,唯一标识每个记录', -- 主键,唯一标识每个记录
  69. monitor_device_id INT NOT NULL COMMENT '监控设备ID,关联到设备', -- 设备ID,关联到设备
  70. param_id INT NOT NULL COMMENT '参数ID,每个参数的唯一标识', -- 参数ID
  71. param_type VARCHAR(20) NOT NULL COMMENT '参数类型 (如 STRING, INT16U, IP, FLOAT)', -- 参数类型
  72. description VARCHAR(255) NOT NULL COMMENT '参数描述,简短的参数解释', -- 参数描述
  73. value VARCHAR(255) NOT NULL COMMENT '参数值,存储该参数的当前值', -- 参数值
  74. length INT DEFAULT 0 COMMENT '参数长度,通常用于表示字符串的长度', -- 参数长度
  75. min_value INT DEFAULT 0 COMMENT '参数的最小值,用于数值类型的参数', -- 最小值
  76. max_value INT DEFAULT 0 COMMENT '参数的最大值,用于数值类型的参数', -- 最大值
  77. value_description TEXT COMMENT '可选的值描述,存储该参数可能的取值描述或枚举值', -- 可选的值描述 (如关联继电器)
  78. created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间', -- 创建时间
  79. updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间', -- 更新时间
  80. UNIQUE KEY(id, param_id) COMMENT '确保每个设备的每个参数唯一' -- 唯一约束,确保每个设备的每个参数唯一
  81. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='存储设备参数及其配置的数据表'; -- 表级注释
  82. INSERT INTO monitor_device_parameters (id, device_id, param_id, param_type, description, value, length, min_value, max_value, value_description, created_at, updated_at)
  83. VALUES
  84. ('1', 30067080, 2, 'STRING', '网口服务器1URL地址', '10.0.1.125', 64, 0, 0, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  85. ('2', 30067080, 3, 'INT16U', '网口服务器1源端口', '-25132', 0, 0, 0, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  86. ('3', 30067080, 13, 'IP', '网口静态IP', '55.1.168.192', 0, 0, 0, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  87. ('4', 30067080, 14, 'IP', '网口子网掩码', '0.255.255.255', 0, 0, 0, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  88. ('5', 30067080, 15, 'IP', '网口网关', '0.1.168.192', 0, 0, 0, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  89. ('6', 30067080, 16, 'INT8U', '网口IP获取方式', '1', 0, 0, 0, '{"0":"静态IP", "1":"自动获取IP"}', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  90. ('7', 30067080, 30, 'INT16U', '网口登陆帧间隔(秒)', '2', 0, 1, 65535, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  91. ('8', 30067080, 31, 'INT16U', '网口心跳帧间隔(秒)', '10', 0, 1, 65535, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  92. ('9', 30067080, 32, 'INT16U', '网口数据帧间隔(秒)', '5', 0, 1, 65535, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  93. ('10', 30067080, 33, 'FLOAT', '标识设备坐标经度 其中-180-0代表西经', '0.0', 0, -180, 180, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  94. ('11', 30067080, 34, 'FLOAT', '标识设备坐标维度 其中-90-0代表南纬', '0.0', 0, -90, 90, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  95. ('12', 30067080, 38, 'INT16U', '主机正常数据记录间隔(分)', '1', 0, 1, 65535, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  96. ('13', 30067080, 39, 'INT16U', '主机报警数据记录间隔(分)', '2', 0, 1, 65535, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  97. ('14', 30067080, 40, 'INT8U', '主机数据存储配型', '2', 0, 0, 0, '{"0":"关闭", "1":"关闭", "2":"开启", "3":"自动"}', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  98. ('15', 30067080, 44, 'INT8U', '主机存储数据是否主动上传', '0', 0, 0, 0, '{"0":"否", "1":"是"}', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  99. ('16', 30067080, 247, 'INT16U', '通道1报警延时(秒)', '0', 0, 0, 65535, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  100. ('17', 30067080, 248, 'FLOAT', '通道1模拟量1上限', '80.0', 0, 0, 0, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  101. ('18', 30067080, 249, 'FLOAT', '通道1模拟量1下限', '-80.0', 0, 0, 0, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  102. ('19', 30067080, 250, 'FLOAT', '通道1模拟量1控制回差', '0.0', 0, 0, 0, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  103. ('20', 30067080, 257, 'INT8U', '通道1模拟量1上限关联继电器', '0', 0, 0, 0, '{"0":"不关联","1":"关联1号继电器","2":"关联2号继电器","3":"关联3号继电器","4":"关联4号继电器","5":"关联5号继电器","6":"关联6号继电器","7":"关联7号继电器","8":"关联8号继电器"}', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  104. ('21', 30067080, 258, 'INT8U', '通道1模拟量1下限关联继电器', '0', 0, 0, 0, '{"0":"不关联","1":"关联1号继电器","2":"关联2号继电器","3":"关联3号继电器","4":"关联4号继电器","5":"关联5号继电器","6":"关联6号继电器","7":"关联7号继电器","8":"关联8号继电器"}', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
  105. ('22', 30067080, 252, 'FLOAT', '通道1模拟量1系数B', '0.0', 0, 0, 0, NULL, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  106. SET FOREIGN_KEY_CHECKS = 1;