feat(ops): 新增业务日志表
- 新增 ops_business_event_log 表结构 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -196,37 +196,6 @@ CREATE TABLE `ops_cleaner_status` (
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='保洁员实时状态';
|
||||
|
||||
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for ops_order_clean_log
|
||||
-- 保洁业务日志表
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `ops_order_clean_log`;
|
||||
CREATE TABLE `ops_order_clean_log` (
|
||||
`id` bigint NOT NULL COMMENT '日志ID',
|
||||
`event_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '事件发生时间',
|
||||
`event_level` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'INFO' COMMENT '日志级别(INFO=信息/WARN=警告/ERROR=错误)',
|
||||
`event_domain` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '领域(RULE=规则引擎/DISPATCH=调度/BADGE=工牌/BEACON=信标/SYSTEM=系统)',
|
||||
`event_type` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '事件类型',
|
||||
`ops_order_id` bigint COMMENT '关联工单ID',
|
||||
`area_id` bigint COMMENT '区域ID',
|
||||
`cleaner_id` bigint COMMENT '保洁员ID',
|
||||
`device_id` bigint COMMENT '设备ID(工牌/信标)',
|
||||
`event_message` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '可读日志内容',
|
||||
`event_payload` json COMMENT '结构化上下文',
|
||||
`creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '创建者',
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '更新者',
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
|
||||
`tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_event_time` (`event_time`),
|
||||
KEY `idx_ops_order_id` (`ops_order_id`),
|
||||
KEY `idx_cleaner_id` (`cleaner_id`),
|
||||
KEY `idx_event_domain_type` (`event_domain`, `event_type`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='保洁业务日志';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for ops_bus_area
|
||||
-- 业务区域表(园区/楼栋/楼层/功能区域)
|
||||
@@ -292,4 +261,58 @@ CREATE TABLE `ops_cleaner_performance_monthly` (
|
||||
KEY `idx_year_month` (`year_month`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='保洁员绩效月度汇总';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for ops_business_event_log
|
||||
-- 通用业务事件日志表(支持多模块日志记录)
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `ops_business_event_log`;
|
||||
CREATE TABLE `ops_business_event_log` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
|
||||
-- 时间与级别
|
||||
`event_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '事件时间',
|
||||
`event_level` varchar(16) NOT NULL DEFAULT 'INFO' COMMENT '级别:INFO/WARN/ERROR',
|
||||
|
||||
-- 业务分类
|
||||
`module` varchar(32) NOT NULL COMMENT '模块:clean/repair/patrol',
|
||||
`event_domain` varchar(32) NOT NULL COMMENT '领域:DISPATCH/BEACON/TRAFFIC/DEVICE/SYSTEM/AUDIT',
|
||||
`event_type` varchar(64) NOT NULL COMMENT '事件类型',
|
||||
|
||||
-- 设备关联(方案A:冗余存储名称)
|
||||
`device_id` bigint DEFAULT NULL COMMENT '设备ID',
|
||||
`device_name` varchar(128) DEFAULT NULL COMMENT '设备名称(冗余)',
|
||||
`device_code` varchar(64) DEFAULT NULL COMMENT '设备编码(冗余)',
|
||||
`device_type` varchar(32) DEFAULT NULL COMMENT '设备类型(冗余)',
|
||||
|
||||
-- 人员关联(方案A:冗余存储名称)
|
||||
`person_id` bigint DEFAULT NULL COMMENT '人员ID',
|
||||
`person_name` varchar(64) DEFAULT NULL COMMENT '人员姓名(冗余)',
|
||||
`person_type` varchar(32) DEFAULT NULL COMMENT '人员类型(冗余)',
|
||||
|
||||
-- 业务实体关联
|
||||
`target_id` bigint DEFAULT NULL COMMENT '业务实体ID(工单ID/区域ID)',
|
||||
`target_type` varchar(32) DEFAULT NULL COMMENT '业务类型:order/area/task',
|
||||
|
||||
-- 日志内容
|
||||
`event_message` varchar(500) NOT NULL COMMENT '事件描述',
|
||||
`event_summary` varchar(200) DEFAULT NULL COMMENT '简要摘要',
|
||||
|
||||
-- 扩展数据
|
||||
`event_payload` json DEFAULT NULL COMMENT '扩展数据',
|
||||
|
||||
-- 标准字段
|
||||
`creator` varchar(64) DEFAULT '' COMMENT '创建者',
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`updater` varchar(64) DEFAULT '' COMMENT '更新者',
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
|
||||
`tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户ID',
|
||||
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_event_time` (`event_time`),
|
||||
KEY `idx_module_domain_type` (`module`, `event_domain`, `event_type`),
|
||||
KEY `idx_device_person` (`device_id`, `person_id`),
|
||||
KEY `idx_target` (`target_type`, `target_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='通用业务事件日志';
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
||||
|
||||
Reference in New Issue
Block a user