88e030b7
王彪总
init project
|
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
|
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`user_id`),
KEY `idx_work_type` (`work_type`),
KEY `idx_tel` (`tel`),
KEY `idx_store_id` (`store_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='物业人员表';
-- ============================================================
-- 2. 定位轨迹表
-- ============================================================
DROP TABLE IF EXISTS `location_track`;
CREATE TABLE `location_track` (
`id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`user_id` VARCHAR(32) NOT NULL COMMENT '用户ID',
`longitude` DECIMAL(10,7) NOT NULL COMMENT '经度',
`latitude` DECIMAL(10,7) NOT NULL COMMENT '纬度',
`report_time` DATETIME NOT NULL COMMENT '上报时间',
`bind_relation` VARCHAR(32) DEFAULT NULL COMMENT '绑定关系(工单ID/巡更ID/作业ID)',
`loc_status` VARCHAR(8) NOT NULL DEFAULT 'NORMAL' COMMENT '定位状态: NORMAL=正常 ABNORMAL=异常',
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`),
KEY `idx_user_id` (`user_id`),
KEY `idx_report_time` (`report_time`),
KEY `idx_user_time` (`user_id`, `report_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='定位轨迹表';
-- ============================================================
-- 3. 上下班打卡表
-- ============================================================
DROP TABLE IF EXISTS `attendance_record`;
CREATE TABLE `attendance_record` (
`id` VARCHAR(32) NOT NULL COMMENT '打卡记录ID',
`user_id` VARCHAR(32) NOT NULL COMMENT '用户ID',
`user_name` VARCHAR(64) NOT NULL COMMENT '用户姓名',
`work_type` VARCHAR(16) NOT NULL COMMENT '工种',
`punch_type` VARCHAR(8) NOT NULL COMMENT '打卡类型: ON=上班 OFF=下班',
`punch_time` DATETIME NOT NULL COMMENT '打卡时间',
`punch_address` VARCHAR(256) DEFAULT NULL COMMENT '打卡地点描述',
`longitude` DECIMAL(10,7) NOT NULL COMMENT '打卡经度',
`latitude` DECIMAL(10,7) NOT NULL COMMENT '打卡纬度',
`store_id` VARCHAR(32) DEFAULT NULL COMMENT '商户ID',
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`),
KEY `idx_user_id` (`user_id`),
KEY `idx_punch_time` (`punch_time`),
KEY `idx_work_type` (`work_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='上下班打卡记录表';
-- ============================================================
-- 4. 保安巡更记录表
-- ============================================================
DROP TABLE IF EXISTS `patrol_record`;
CREATE TABLE `patrol_record` (
`id` VARCHAR(32) NOT NULL COMMENT '巡更记录ID',
`user_id` VARCHAR(32) NOT NULL COMMENT '巡更人ID',
`user_name` VARCHAR(64) NOT NULL COMMENT '巡更人姓名',
`patrol_location` VARCHAR(256) NOT NULL COMMENT '巡更地点',
`patrol_content` TEXT DEFAULT NULL COMMENT '巡更内容',
`patrol_time` DATETIME NOT NULL COMMENT '巡更时间',
`longitude` DECIMAL(10,7) NOT NULL COMMENT '巡更经度',
`latitude` DECIMAL(10,7) NOT NULL COMMENT '巡更纬度',
`images` TEXT DEFAULT NULL COMMENT '图片URL列表(JSON数组)',
`remark` VARCHAR(512) DEFAULT NULL COMMENT '备注',
`store_id` VARCHAR(32) DEFAULT NULL COMMENT '商户ID',
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`),
KEY `idx_user_id` (`user_id`),
KEY `idx_patrol_time` (`patrol_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='保安巡更记录表';
-- ============================================================
-- 5. 保洁作业记录表
-- ============================================================
DROP TABLE IF EXISTS `cleaning_record`;
CREATE TABLE `cleaning_record` (
`id` VARCHAR(32) NOT NULL COMMENT '作业记录ID',
`user_id` VARCHAR(32) NOT NULL COMMENT '作业人ID',
`user_name` VARCHAR(64) NOT NULL COMMENT '作业人姓名',
`work_area` VARCHAR(256) NOT NULL COMMENT '作业区域',
`work_content` TEXT DEFAULT NULL COMMENT '作业内容',
`work_time` DATETIME NOT NULL COMMENT '作业时间',
`longitude` DECIMAL(10,7) NOT NULL COMMENT '作业经度',
`latitude` DECIMAL(10,7) NOT NULL COMMENT '作业纬度',
`images` TEXT DEFAULT NULL COMMENT '图片URL列表(JSON数组)',
`remark` VARCHAR(512) DEFAULT NULL COMMENT '备注',
`store_id` VARCHAR(32) DEFAULT NULL COMMENT '商户ID',
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`),
KEY `idx_user_id` (`user_id`),
KEY `idx_work_time` (`work_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='保洁作业记录表';
-- ============================================================
-- 6. 维修工单表
-- ============================================================
DROP TABLE IF EXISTS `repair_order`;
CREATE TABLE `repair_order` (
`id` VARCHAR(32) NOT NULL COMMENT '工单ID',
`submitter_id` VARCHAR(32) NOT NULL COMMENT '提交人ID',
`submitter_name` VARCHAR(64) NOT NULL COMMENT '提交人姓名',
`title` VARCHAR(256) NOT NULL COMMENT '工单标题',
`description` TEXT DEFAULT NULL COMMENT '工单描述',
`repair_location` VARCHAR(256) NOT NULL COMMENT '报修位置',
`longitude` DECIMAL(10,7) NOT NULL COMMENT '报修经度',
`latitude` DECIMAL(10,7) NOT NULL COMMENT '报修纬度',
`repairer_id` VARCHAR(32) DEFAULT NULL COMMENT '维修人ID(工程维修人员)',
`repairer_name` VARCHAR(64) DEFAULT NULL COMMENT '维修人姓名',
`status` VARCHAR(16) NOT NULL DEFAULT 'PENDING' COMMENT '工单状态: PENDING=待接单 REPAIRING=维修中 COMPLETED=已完成 CANCELLED=已取消',
`images` TEXT DEFAULT NULL COMMENT '报修图片URL列表(JSON数组)',
`repair_result` TEXT DEFAULT NULL COMMENT '维修结果',
`result_images` TEXT DEFAULT NULL COMMENT '维修结果图片(JSON数组)',
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`accept_time` DATETIME DEFAULT NULL COMMENT '接单时间',
`complete_time` DATETIME DEFAULT NULL COMMENT '完成时间',
`store_id` VARCHAR(32) DEFAULT NULL COMMENT '商户ID',
PRIMARY KEY (`id`),
KEY `idx_submitter_id` (`submitter_id`),
KEY `idx_repairer_id` (`repairer_id`),
KEY `idx_status` (`status`),
KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='维修工单表';
-- ============================================================
-- 7. 消息通知表
-- ============================================================
DROP TABLE IF EXISTS `message_notify`;
CREATE TABLE `message_notify` (
`id` VARCHAR(32) NOT NULL COMMENT '通知ID',
`user_id` VARCHAR(32) NOT NULL COMMENT '接收人ID',
`title` VARCHAR(256) NOT NULL COMMENT '通知标题',
`content` TEXT DEFAULT NULL COMMENT '通知内容',
`msg_type` VARCHAR(32) NOT NULL COMMENT '通知类型: REPAIR_STATUS=工单状态 REPAIR_COMPLETE=维修完成',
`relate_id` VARCHAR(32) DEFAULT NULL COMMENT '关联业务ID',
`is_read` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否已读: 0=未读 1=已读',
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`),
KEY `idx_user_id` (`user_id`),
KEY `idx_is_read` (`is_read`),
KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='消息通知表';
|