Files
jcgl-dev/dev/sql/local_seed/duty_demo_tasks.sql
T
2026-11-14 13:01:21 +08:00

97 lines
4.5 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- ============================================================================
-- 值班台(应用端)演示用叫乘任务 —— 本地联调数据,不是迁移脚本
--
-- 用途:在本地库造几条覆盖全部 UI 状态的 gy_jcxx 行,用来打开 /duty/jcxx 看效果。
-- 特征:jcid 一律以 JC-DEMO- 开头,可重放(先按前缀删除再插入),
-- 时刻全部基于 NOW() 推算,保证落在值班台「今日 [00:00, 明日 00:00)」窗口内。
-- 注意:这是唯一写入口之外的手工造数,只允许出现在本地联调库;
-- 生产/测试环境的叫乘数据只能由签到与叫乘链路产生。
-- 库名与 gyid 对齐 dev/.env 的 APT_DB_NAME / APT_GY_ID。
-- ============================================================================
USE apt_rev01;
SET @gyid = 'APT-REV01-001';
DELETE FROM gy_jcxx
WHERE gyid = @gyid AND jcid LIKE 'JC-DEMO-%';
INSERT INTO gy_jcxx
(gyid, jcid, cc, xm, fjh, kcsj, jcsj, ryzt, finish_jc, finish_ly, stoped,
call_mode, biz_version, occurred_at, received_at, deleted,
jcsj_s, hjxysj, jcbjsj_s, fjsj_s, lybjsj, sjlysj,
is_jcbj, is_lybj, is_temp_call, leave_remark)
VALUES
-- 1 待叫乘 + 已过点(应进入「紧急」区,urgent=true)
(@gyid, 'JC-DEMO-001', 'G1234', '张伟', '201',
NOW(3) + INTERVAL 3 HOUR, NOW(3) - INTERVAL 30 MINUTE, '0', '0', '0', '0',
'SIP', 1, NOW(3), NOW(3), 0,
NULL, NULL, NULL, NULL, NULL, NULL,
'0', '0', '0', NULL),
-- 2 待叫乘 + 未到点(普通待办,remainMinutes 为正)
(@gyid, 'JC-DEMO-002', 'D5678', '李强', '202',
NOW(3) + INTERVAL 4 HOUR, NOW(3) + INTERVAL 2 HOUR, '0', '0', '0', '0',
'SIP', 1, NOW(3), NOW(3), 0,
NULL, NULL, NULL, NULL, NULL, NULL,
'0', '0', '0', NULL),
-- 3 呼叫中(ryzt=1,平板链路)
(@gyid, 'JC-DEMO-003', 'K9012', '王芳', '301',
NOW(3) + INTERVAL 3 HOUR, NOW(3) - INTERVAL 3 MINUTE, '1', '0', '0', '0',
'TABLET', 1, NOW(3), NOW(3), 0,
NOW(3) - INTERVAL 3 MINUTE, NULL, NULL, NULL, NULL, NULL,
'0', '0', '0', NULL),
-- 4 叫乘报警(ryzt=2,SIP 30s 无入会;值班台应置红 + 起报警音)
(@gyid, 'JC-DEMO-004', 'Z3456', '赵敏', '302',
NOW(3) + INTERVAL 3 HOUR, NOW(3) - INTERVAL 8 MINUTE, '2', '0', '0', '0',
'SIP', 1, NOW(3), NOW(3), 0,
NOW(3) - INTERVAL 8 MINUTE, NULL, NOW(3) - INTERVAL 3 MINUTE, NULL, NULL, NULL,
'1', '0', '0', NULL),
-- 5 待离寓(ryzt=3,叫乘已完成)
(@gyid, 'JC-DEMO-005', 'G7890', '陈刚', '303',
NOW(3) + INTERVAL 1 HOUR, NOW(3) - INTERVAL 1 HOUR, '3', '1', '0', '0',
'SIP', 1, NOW(3), NOW(3), 0,
NOW(3) - INTERVAL 1 HOUR, NOW(3) - INTERVAL 50 MINUTE, NULL, NULL, NULL, NULL,
'0', '0', '0', NULL),
-- 6 离寓报警(ryzt=4,超时应离寓)
(@gyid, 'JC-DEMO-006', 'D1122', '刘晓', '201',
NOW(3) - INTERVAL 1 HOUR, NOW(3) - INTERVAL 2 HOUR, '4', '1', '0', '0',
'SIP', 1, NOW(3), NOW(3), 0,
NOW(3) - INTERVAL 2 HOUR, NOW(3) - INTERVAL 110 MINUTE, NULL, NULL,
NOW(3) - INTERVAL 5 MINUTE, NULL,
'0', '1', '0', NULL),
-- 7 已停止(stoped=1)
(@gyid, 'JC-DEMO-007', 'G3344', '孙悦', '202',
NOW(3) + INTERVAL 2 HOUR, NOW(3) - INTERVAL 20 MINUTE, '1', '0', '0', '1',
'SIP', 1, NOW(3), NOW(3), 0,
NOW(3) - INTERVAL 20 MINUTE, NULL, NULL, NULL, NULL, NULL,
'0', '0', '0', NULL),
-- 8 已完成并离寓(finish_ly=1,应落在「已完成」筛选)
(@gyid, 'JC-DEMO-008', 'T5566', '周涛', '301',
NOW(3) - INTERVAL 2 HOUR, NOW(3) - INTERVAL 3 HOUR, '3', '1', '1', '0',
'TABLET', 1, NOW(3), NOW(3), 0,
NOW(3) - INTERVAL 3 HOUR, NOW(3) - INTERVAL 170 MINUTE, NULL, NULL, NULL,
NOW(3) - INTERVAL 30 MINUTE,
'0', '0', '0', '演示数据:已完成并登记离寓'),
-- 9 已入寓但未排任务(jcsj 为空,任何时间窗都必须可见)
-- 注意:ck_jcxx_ryzt 只允许 '0'~'5',所以这里不能写空串(DutyStateDeriver 的
-- "ryzt 空 = IN 已入寓" 在库里不可达,见交付说明 L-14)
(@gyid, 'JC-DEMO-009', 'G7788', '吴磊', '302',
NOW(3) + INTERVAL 5 HOUR, NULL, '0', '0', '0', '0',
'SIP', 1, NOW(3), NOW(3), 0,
NULL, NULL, NULL, NULL, NULL, NULL,
'0', '0', '0', NULL);
-- 自检:各 UI 状态各 1 条 + 1 条未排任务
SELECT jcid, fjh, xm, ryzt, finish_jc, finish_ly, stoped, jcsj, call_mode
FROM gy_jcxx
WHERE gyid = @gyid AND jcid LIKE 'JC-DEMO-%'
ORDER BY jcid;