Files
hzdyjs/test/pm-repair-test-data.sql
T
2025-06-30 20:33:58 +08:00

131 lines
11 KiB
SQL

-- 物业报修系统测试数据
-- 执行前请确保数据库已创建并使用正确的库
USE hzdyjs_xg;
-- ============================================================================
-- 0. 清理现有测试数据
-- ============================================================================
-- 清理报修工单数据
DELETE FROM pm_repair_order WHERE tenant_id = '000000' AND id BETWEEN 1001 AND 1100;
-- 清理维修分类数据 (如果需要重置)
DELETE FROM pm_repair_category WHERE tenant_id = '000000' AND id BETWEEN 100 AND 199;
-- ============================================================================
-- 1. 维修分类测试数据 (pm_repair_category)
-- ============================================================================
-- 插入基础维修分类数据 (使用100-199的ID范围和唯一的category_code)
INSERT INTO pm_repair_category (
id, tenant_id, category_name, category_code, category_description,
parent_id, ancestor_ids, level_depth, children_count,
required_skills, skill_level, estimated_duration, standard_cost,
icon_url, color_code, sort_order, status, usage_count, last_used_time,
create_dept, create_by, create_time, update_by, update_time, deleted, remark
) VALUES
-- 一级分类
(101, '000000', '电路维修', 'ELECTRIC_TEST', '电路故障、插座开关维修等', 0, '0', 1, 0, '电工基础知识、安全操作规范', 2, 60, 50.00, '/icons/electric.svg', '#FFB020', 1, '1', 0, NULL, 103, 1, NOW(), 1, NOW(), 0, NULL),
(102, '000000', '水暖维修', 'PLUMBING_TEST', '管道、水龙头、暖气等维修', 0, '0', 1, 0, '管工基础知识、焊接技能', 2, 90, 60.00, '/icons/plumbing.svg', '#4FC3F7', 2, '1', 0, NULL, 103, 1, NOW(), 1, NOW(), 0, NULL),
(103, '000000', '土建维修', 'CONSTRUCTION_TEST', '墙面、地面、门窗等土建维修', 0, '0', 1, 0, '泥工、油漆工基础技能', 2, 180, 80.00, '/icons/construction.svg', '#8BC34A', 3, '1', 0, NULL, 103, 1, NOW(), 1, NOW(), 0, NULL),
(104, '000000', '设备维修', 'EQUIPMENT_TEST', '各类设备故障维修', 0, '0', 1, 0, '机电维修、设备操作', 3, 120, 100.00, '/icons/equipment.svg', '#FF7043', 4, '1', 0, NULL, 103, 1, NOW(), 1, NOW(), 0, NULL),
(105, '000000', '园林维修', 'GARDEN_TEST', '绿化养护、园林设施维修', 0, '0', 1, 0, '园艺知识、植物养护', 1, 240, 40.00, '/icons/garden.svg', '#66BB6A', 5, '1', 0, NULL, 103, 1, NOW(), 1, NOW(), 0, NULL),
(106, '000000', '清洁维护', 'CLEANING_TEST', '清洁卫生、环境维护', 0, '0', 1, 0, '清洁知识、环保意识', 1, 120, 30.00, '/icons/cleaning.svg', '#42A5F5', 6, '1', 0, NULL, 103, 1, NOW(), 1, NOW(), 0, NULL);
-- ============================================================================
-- 2. 报修工单测试数据 (pm_repair_order) - 使用1001-1100的ID范围
-- ============================================================================
-- 插入报修工单测试数据
INSERT INTO pm_repair_order (
id, tenant_id, order_no, title, description, repair_location,
category_id, priority_level, expected_finish_time,
reporter_id, reporter_name, reporter_phone, reporter_dept,
order_status, assign_time, assignee_id, assignee_name, assign_remark,
start_time, finish_time, total_duration, repair_result,
used_materials, follow_suggestions, evaluation_score, evaluation_time,
attachment_count, progress_count, cancel_reason,
create_dept, create_by, create_time, update_by, update_time, deleted, remark
) VALUES
-- 待分派状态的工单
(1001, '000000', 'RO20250126001', '宿舍A304水龙头漏水', '水龙头一直滴水,影响正常使用,需要及时维修', '学生宿舍A栋304室', 102, 2, '2025-01-27 18:00:00', 10001, '张小明', '13800138001', '计算机学院', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 1, NULL, 103, 1, '2025-01-26 10:30:00', 1, '2025-01-26 10:30:00', 0, NULL),
-- 已分派状态的工单
(1002, '000000', 'RO20250126002', '教学楼B201投影仪故障', '投影仪无法正常开机,影响教学活动', '教学楼B栋201教室', 104, 1, '2025-01-26 16:00:00', 10002, '李老师', '13800138002', '电子工程学院', '2', '2025-01-26 11:00:00', 20001, '王师傅', '紧急处理,明天有重要课程', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 2, NULL, 103, 1, '2025-01-26 09:15:00', 1, '2025-01-26 11:00:00', 0, NULL),
-- 进行中状态的工单
(1003, '000000', 'RO20250125003', '图书馆空调不制热', '阅览室空调无法制热,温度较低影响学习', '图书馆一楼阅览室', 104, 3, '2025-01-26 12:00:00', 10003, '赵管理员', '13800138003', '图书馆', '3', '2025-01-25 14:30:00', 20002, '刘师傅', '检查空调系统', '2025-01-25 15:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 3, NULL, 103, 1, '2025-01-25 13:45:00', 1, '2025-01-25 15:00:00', 0, NULL),
-- 已完成状态的工单
(1004, '000000', 'RO20250124004', '办公室B302灯管不亮', '办公室顶灯灯管损坏,无法正常照明', '行政楼B栋302办公室', 101, 3, '2025-01-25 12:00:00', 10004, '王秘书', '13800138004', '行政办公室', '4', '2025-01-24 10:00:00', 20001, '王师傅', '更换灯管', '2025-01-24 14:00:00', '2025-01-24 15:30:00', 90, '已更换LED灯管,照明功能恢复正常', 'LED灯管 x2', '建议定期检查灯具', NULL, NULL, 0, 4, NULL, 103, 1, '2025-01-24 09:30:00', 1, '2025-01-24 15:30:00', 0, NULL),
-- 已评价状态的工单
(1005, '000000', 'RO20250123005', '宿舍C205门锁故障', '宿舍门锁无法正常开启,钥匙转不动', '学生宿舍C栋205室', 103, 2, '2025-01-24 18:00:00', 10005, '陈同学', '13800138005', '机械工程学院', '5', '2025-01-23 16:00:00', 20003, '张师傅', '门锁维修', '2025-01-24 09:00:00', '2025-01-24 10:45:00', 105, '门锁芯已更换,功能恢复正常', '门锁芯 x1,润滑油', '建议定期保养门锁', 4.8, '2025-01-24 12:00:00', 0, 5, NULL, 103, 1, '2025-01-23 15:20:00', 1, '2025-01-24 12:00:00', 0, NULL),
-- 已取消状态的工单
(1006, '000000', 'RO20250122006', '食堂桌椅松动', '食堂二楼餐桌椅子松动,需要紧固', '学生食堂二楼', 103, 4, '2025-01-25 12:00:00', 10006, '食堂管理员', '13800138006', '后勤服务中心', '9', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 1, '用户发现桌椅已自行修好', 103, 1, '2025-01-22 11:15:00', 1, '2025-01-22 14:20:00', 0, NULL),
-- 更多测试数据
(1007, '000000', 'RO20250126007', '实验楼D101网络故障', '实验室网络无法连接,影响实验教学', '实验楼D栋101实验室', 104, 1, '2025-01-27 09:00:00', 10007, '实验员小李', '13800138007', '物理学院', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 1, NULL, 103, 1, '2025-01-26 08:30:00', 1, '2025-01-26 08:30:00', 0, NULL),
(1008, '000000', 'RO20250126008', '体育馆洗手间堵塞', '男洗手间下水道堵塞,积水严重', '体育馆一楼男洗手间', 102, 2, '2025-01-26 20:00:00', 10008, '体育老师', '13800138008', '体育学院', '2', '2025-01-26 12:30:00', 20002, '刘师傅', '疏通下水道', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 2, NULL, 103, 1, '2025-01-26 11:45:00', 1, '2025-01-26 12:30:00', 0, NULL),
(1009, '000000', 'RO20250125009', '停车场路灯损坏', '停车场第3排路灯不亮,影响夜间照明', '学校停车场第3排', 101, 3, '2025-01-27 18:00:00', 10009, '保安队长', '13800138009', '保卫处', '3', '2025-01-25 20:00:00', 20001, '王师傅', '检查路灯电路', '2025-01-26 08:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 3, NULL, 103, 1, '2025-01-25 19:30:00', 1, '2025-01-26 08:00:00', 0, NULL),
(1010, '000000', 'RO20250124010', '学生活动中心音响故障', '大厅音响系统无声音输出,有杂音', '学生活动中心大厅', 104, 2, '2025-01-25 14:00:00', 10010, '学生会主席', '13800138010', '学生工作处', '4', '2025-01-24 15:00:00', 20003, '张师傅', '音响设备维修', '2025-01-24 19:00:00', '2025-01-24 21:30:00', 150, '音响功放模块故障已更换,音质恢复正常', '功放模块 x1', '建议定期检查音响设备', NULL, NULL, 0, 4, NULL, 103, 1, '2025-01-24 14:15:00', 1, '2025-01-24 21:30:00', 0, NULL),
-- 更多待分派工单
(1011, '000000', 'RO20250126011', '宿舍E506窗户漏风', '窗户密封条老化,冬天漏风严重', '学生宿舍E栋506室', 103, 3, '2025-01-28 18:00:00', 10011, '李同学', '13800138011', '土木工程学院', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 1, NULL, 103, 1, '2025-01-26 14:20:00', 1, '2025-01-26 14:20:00', 0, NULL),
(1012, '000000', 'RO20250126012', '计算机实验室空调噪音大', '空调运行时噪音过大,影响实验', '计算机学院实验楼302', 104, 2, '2025-01-27 14:00:00', 10012, '实验室管理员', '13800138012', '计算机学院', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 1, NULL, 103, 1, '2025-01-26 16:45:00', 1, '2025-01-26 16:45:00', 0, NULL);
-- ============================================================================
-- 3. 更新统计信息
-- ============================================================================
-- 更新维修分类使用统计
UPDATE pm_repair_category SET
usage_count = (SELECT COUNT(*) FROM pm_repair_order WHERE category_id = pm_repair_category.id AND deleted = 0),
last_used_time = (SELECT MAX(create_time) FROM pm_repair_order WHERE category_id = pm_repair_category.id AND deleted = 0)
WHERE deleted = 0 AND id BETWEEN 100 AND 199;
-- ============================================================================
-- 4. 验证数据插入
-- ============================================================================
-- 查看插入的分类数据
SELECT id, category_name, category_code, usage_count, status FROM pm_repair_category WHERE tenant_id = '000000' AND id BETWEEN 100 AND 199 AND deleted = 0;
-- 查看插入的工单数据
SELECT id, order_no, title, category_id, order_status, reporter_name, assignee_name, create_time
FROM pm_repair_order
WHERE tenant_id = '000000' AND id BETWEEN 1001 AND 1100 AND deleted = 0
ORDER BY create_time DESC;
-- 统计各状态工单数量
SELECT
order_status,
CASE order_status
WHEN '1' THEN '待分派'
WHEN '2' THEN '已分派'
WHEN '3' THEN '进行中'
WHEN '4' THEN '已完成'
WHEN '5' THEN '已评价'
WHEN '6' THEN '已归档'
WHEN '9' THEN '已取消'
ELSE '未知状态'
END AS status_name,
COUNT(*) as count
FROM pm_repair_order
WHERE tenant_id = '000000' AND id BETWEEN 1001 AND 1100 AND deleted = 0
GROUP BY order_status
ORDER BY order_status;
-- ============================================================================
-- 执行完成提示
-- ============================================================================
SELECT '=== 物业报修测试数据插入完成 ===' AS message;
SELECT CONCAT('维修分类数量: ', COUNT(*)) AS category_count FROM pm_repair_category WHERE tenant_id = '000000' AND id BETWEEN 100 AND 199 AND deleted = 0;
SELECT CONCAT('报修工单数量: ', COUNT(*)) AS order_count FROM pm_repair_order WHERE tenant_id = '000000' AND id BETWEEN 1001 AND 1100 AND deleted = 0;