|
|
|
@ -1,70 +1,84 @@ |
|
|
|
-- ============================================================= |
|
|
|
-- 种子数据 |
|
|
|
-- ============================================================= |
|
|
|
|
|
|
|
USE laic; |
|
|
|
|
|
|
|
-- --------------------------------------------------------------- |
|
|
|
-- 默认管理员账号 |
|
|
|
-- 手机号: 13800000000 |
|
|
|
-- 密码: admin123456 (bcrypt 加密) |
|
|
|
-- ⚠ 上线前务必修改默认密码 |
|
|
|
-- --------------------------------------------------------------- |
|
|
|
INSERT INTO `user` (id, name, phone, email, password, role, traffic_balance, status, created_at, updated_at) |
|
|
|
VALUES (1, '管理员', '13800000000', 'admin@laic.local', |
|
|
|
'$2a$10$vpTDi8nUl/Lyb4KBjtHLBevsCQ08FB46bLgJG3JxVACzqYOWD3YSq', |
|
|
|
'admin', 0, 1, NOW(), NOW()) |
|
|
|
ON DUPLICATE KEY UPDATE role = 'admin'; |
|
|
|
|
|
|
|
-- --------------------------------------------------------------- |
|
|
|
-- 演示业务账号(远程监控 / 设备控制走普通用户) |
|
|
|
-- 手机号: 13900000000 |
|
|
|
-- 密码: admin123456 |
|
|
|
-- --------------------------------------------------------------- |
|
|
|
INSERT INTO `user` (id, name, phone, email, password, role, traffic_balance, status, created_at, updated_at) |
|
|
|
VALUES (2, '演示用户', '13900000000', 'demo@laic.local', |
|
|
|
'$2a$10$vpTDi8nUl/Lyb4KBjtHLBevsCQ08FB46bLgJG3JxVACzqYOWD3YSq', |
|
|
|
'user', 10737418240, 1, NOW(), NOW()) |
|
|
|
ON DUPLICATE KEY UPDATE |
|
|
|
password = VALUES(password), |
|
|
|
role = 'user', |
|
|
|
status = 1; |
|
|
|
|
|
|
|
SET @demo_user_id = (SELECT id FROM `user` WHERE phone = '13900000000'); |
|
|
|
|
|
|
|
-- --------------------------------------------------------------- |
|
|
|
-- 演示机巢 / 无人机(与 mock 设备 dock-1/2/3 对应) |
|
|
|
-- 若 MQTT 已自发现同 dock_id 的 pending 记录,则认领并补全名称坐标。 |
|
|
|
-- --------------------------------------------------------------- |
|
|
|
INSERT INTO dock (id, user_id, dock_id, name, code, sn, iccid, longitude, latitude, altitude, location, register_status, dock_id_source, software_ver, protocol_ver, created_at, updated_at) |
|
|
|
VALUES |
|
|
|
(1001, @demo_user_id, 'dock-1', '青山湖 01 号机巢', 'JG-DOCK-001', 'dock-1', '8986000000000000001', 119.802631, 30.262438, 15, '青山湖科技城 A 区', 'registered', 'seed', '1.3.0', '1.0', NOW(), NOW()), |
|
|
|
(1002, @demo_user_id, 'dock-2', '青山湖 02 号机巢', 'JG-DOCK-002', 'dock-2', '8986000000000000002', 119.818264, 30.255917, 18, '青山湖科技城 B 区', 'registered', 'seed', '1.3.0', '1.0', NOW(), NOW()), |
|
|
|
(1003, @demo_user_id, 'dock-3', '青山湖 03 号机巢', 'JG-DOCK-003', 'dock-3', '8986000000000000003', 119.791450, 30.248610, 12, '青山湖科技城 C 区', 'registered', 'seed', '1.3.0', '1.0', NOW(), NOW()) |
|
|
|
ON DUPLICATE KEY UPDATE |
|
|
|
user_id = @demo_user_id, |
|
|
|
name = VALUES(name), |
|
|
|
code = VALUES(code), |
|
|
|
sn = VALUES(sn), |
|
|
|
iccid = VALUES(iccid), |
|
|
|
longitude = VALUES(longitude), |
|
|
|
latitude = VALUES(latitude), |
|
|
|
location = VALUES(location), |
|
|
|
register_status = 'registered'; |
|
|
|
|
|
|
|
INSERT INTO drone (id, user_id, drone_sn, dock_id, name, code, model, battery, firmware_ver, created_at, updated_at) |
|
|
|
VALUES |
|
|
|
(2001, @demo_user_id, 'JG-UAV-001', 'dock-1', '巡检无人机 001', 'JG-UAV-001', 'LAIC-X1', 86, '1.0.0', NOW(), NOW()), |
|
|
|
(2002, @demo_user_id, 'JG-UAV-002', 'dock-2', '巡检无人机 002', 'JG-UAV-002', 'LAIC-X1', 72, '1.0.0', NOW(), NOW()), |
|
|
|
(2003, @demo_user_id, 'JG-UAV-003', 'dock-3', '巡检无人机 003', 'JG-UAV-003', 'LAIC-X1', 41, '1.0.0', NOW(), NOW()) |
|
|
|
ON DUPLICATE KEY UPDATE |
|
|
|
user_id = @demo_user_id, |
|
|
|
dock_id = VALUES(dock_id), |
|
|
|
name = VALUES(name), |
|
|
|
code = VALUES(code), |
|
|
|
model = VALUES(model); |
|
|
|
|
|
|
|
DELETE FROM drone WHERE drone_sn = 'JG-UAV-MOCK01'; |
|
|
|
DELETE FROM dock WHERE dock_id IN ('JG-DK-MOCK01', '333'); |
|
|
|
|
|
|
|
-- ============================================================= |
|
|
|
-- 种子数据 |
|
|
|
-- ============================================================= |
|
|
|
|
|
|
|
USE laic; |
|
|
|
|
|
|
|
-- --------------------------------------------------------------- |
|
|
|
-- 默认管理员账号 |
|
|
|
-- 手机号: 13800000000 |
|
|
|
-- 密码: admin123456 (bcrypt 加密) |
|
|
|
-- ⚠ 上线前务必修改默认密码 |
|
|
|
-- --------------------------------------------------------------- |
|
|
|
INSERT INTO `user` (id, name, phone, email, password, role, traffic_balance, status, created_at, updated_at) |
|
|
|
VALUES (1, '管理员', '13800000000', 'admin@laic.local', |
|
|
|
'$2a$10$vpTDi8nUl/Lyb4KBjtHLBevsCQ08FB46bLgJG3JxVACzqYOWD3YSq', |
|
|
|
'admin', 0, 1, NOW(), NOW()) |
|
|
|
ON DUPLICATE KEY UPDATE role = 'admin'; |
|
|
|
|
|
|
|
-- --------------------------------------------------------------- |
|
|
|
-- 演示业务账号(远程监控 / 设备控制走普通用户) |
|
|
|
-- 手机号: 13900000000 |
|
|
|
-- 密码: admin123456 |
|
|
|
-- --------------------------------------------------------------- |
|
|
|
INSERT INTO `user` (id, name, phone, email, password, role, traffic_balance, status, created_at, updated_at) |
|
|
|
VALUES (2, '演示用户', '13900000000', 'demo@laic.local', |
|
|
|
'$2a$10$vpTDi8nUl/Lyb4KBjtHLBevsCQ08FB46bLgJG3JxVACzqYOWD3YSq', |
|
|
|
'user', 10737418240, 1, NOW(), NOW()) |
|
|
|
ON DUPLICATE KEY UPDATE |
|
|
|
password = VALUES(password), |
|
|
|
role = 'user', |
|
|
|
status = 1; |
|
|
|
|
|
|
|
SET @demo_user_id = (SELECT id FROM `user` WHERE phone = '13900000000'); |
|
|
|
|
|
|
|
-- --------------------------------------------------------------- |
|
|
|
-- 演示机巢 / 无人机(与 mock 设备 dock-1/2/3 对应) |
|
|
|
-- 若 MQTT 已自发现同 dock_id 的 pending 记录,则认领并补全名称坐标。 |
|
|
|
-- --------------------------------------------------------------- |
|
|
|
INSERT INTO dock (id, user_id, dock_id, name, code, sn, longitude, latitude, altitude, location, register_status, dock_id_source, software_ver, protocol_ver, created_at, updated_at) |
|
|
|
VALUES |
|
|
|
(1001, @demo_user_id, 'dock-1', '青山湖 01 号机巢', 'JG-DOCK-001', 'dock-1', 119.802631, 30.262438, 15, '青山湖科技城 A 区', 'registered', 'seed', '1.3.0', '1.0', NOW(), NOW()), |
|
|
|
(1002, @demo_user_id, 'dock-2', '青山湖 02 号机巢', 'JG-DOCK-002', 'dock-2', 119.818264, 30.255917, 18, '青山湖科技城 B 区', 'registered', 'seed', '1.3.0', '1.0', NOW(), NOW()), |
|
|
|
(1003, @demo_user_id, 'dock-3', '青山湖 03 号机巢', 'JG-DOCK-003', 'dock-3', 119.791450, 30.248610, 12, '青山湖科技城 C 区', 'registered', 'seed', '1.3.0', '1.0', NOW(), NOW()) |
|
|
|
ON DUPLICATE KEY UPDATE |
|
|
|
user_id = @demo_user_id, |
|
|
|
name = VALUES(name), |
|
|
|
code = VALUES(code), |
|
|
|
sn = VALUES(sn), |
|
|
|
longitude = VALUES(longitude), |
|
|
|
latitude = VALUES(latitude), |
|
|
|
location = VALUES(location), |
|
|
|
register_status = 'registered'; |
|
|
|
|
|
|
|
-- 演示通信卡:通信卡以 ICCID 为业务主体,dock_id 仅记录当前来源/归属,不施加一对一约束。 |
|
|
|
INSERT INTO sim_card (id, user_id, dock_id, carrier, phone, iccid, plan_gb, used_gb, status, carrier_status, created_at, updated_at) |
|
|
|
VALUES |
|
|
|
(3001, @demo_user_id, 'dock-1', '中国移动', '', '8986000000000000001', 100, 0, 'active', 'normal', NOW(), NOW()), |
|
|
|
(3002, @demo_user_id, 'dock-2', '中国移动', '', '8986000000000000002', 100, 0, 'active', 'normal', NOW(), NOW()), |
|
|
|
(3003, @demo_user_id, 'dock-3', '中国移动', '', '8986000000000000003', 100, 0, 'active', 'normal', NOW(), NOW()) |
|
|
|
ON DUPLICATE KEY UPDATE |
|
|
|
user_id = VALUES(user_id), |
|
|
|
dock_id = VALUES(dock_id), |
|
|
|
carrier = VALUES(carrier), |
|
|
|
plan_gb = VALUES(plan_gb), |
|
|
|
status = VALUES(status), |
|
|
|
carrier_status = VALUES(carrier_status), |
|
|
|
updated_at = NOW(); |
|
|
|
|
|
|
|
|
|
|
|
VALUES |
|
|
|
(2001, @demo_user_id, 'JG-UAV-001', 'dock-1', '巡检无人机 001', 'JG-UAV-001', 'LAIC-X1', 86, '1.0.0', NOW(), NOW()), |
|
|
|
(2002, @demo_user_id, 'JG-UAV-002', 'dock-2', '巡检无人机 002', 'JG-UAV-002', 'LAIC-X1', 72, '1.0.0', NOW(), NOW()), |
|
|
|
(2003, @demo_user_id, 'JG-UAV-003', 'dock-3', '巡检无人机 003', 'JG-UAV-003', 'LAIC-X1', 41, '1.0.0', NOW(), NOW()) |
|
|
|
ON DUPLICATE KEY UPDATE |
|
|
|
user_id = @demo_user_id, |
|
|
|
dock_id = VALUES(dock_id), |
|
|
|
name = VALUES(name), |
|
|
|
code = VALUES(code), |
|
|
|
model = VALUES(model); |
|
|
|
|
|
|
|
DELETE FROM drone WHERE drone_sn = 'JG-UAV-MOCK01'; |
|
|
|
DELETE FROM dock WHERE dock_id IN ('JG-DK-MOCK01', '333'); |
|
|
|
|
|
|
|
-- 角色由 user.role 维护,管理员接口由路由 AdminMiddleware 保护。 |