edu_manage/script/sql/edu/test_data_alert.sql
liuhuayong 6f91af8dea feat(edu): 课时预警+续费提醒 与 学生生命周期档案
- 新增课时预警(课时不足/即将到期/已过期),实时(消课)+定时(每日6点)双触发
- 预警规则引擎:按量与按比例双重判定取高级别,幂等去重
- 新增学生完整生命周期档案聚合接口(/edu/profile/student/{id})
- 聚合:基本信息+课时汇总+合同+排课+课时流水+预警+服务团队及变更历史
- 消课时实时检查合同课时预警
2026-06-26 08:31:53 +08:00

23 lines
2.0 KiB
SQL

-- =====================================================================
-- 预警功能验证数据
-- 构造三类预警场景: 课时不足 / 即将到期 / 已过期
-- =====================================================================
SET NAMES utf8mb4;
-- 清理旧验证数据
DELETE FROM `edu_contract` WHERE id BETWEEN 4200 AND 4299;
-- 场景1: 课时不足 WARN — 钱小红, 总40课时剩8(20%), 触发课时不足警告
INSERT INTO `edu_contract`(`id`,`tenant_id`,`contract_no`,`student_id`,`contract_type`,`sign_date`,`effective_date`,`expire_date`,`total_amount`,`discount_amount`,`paid_amount`,`refund_amount`,`total_hours`,`used_hours`,`remain_hours`,`gift_hours`,`payment_method`,`payment_status`,`status`,`sales_id`,`housekeeper_id`,`remark`,`create_by`,`create_time`) VALUES
(4201,'000000','EDUCT-ALERT-001',2002,'ENROLL','2026-02-10','2026-02-10','2027-02-10',9600.00,0.00,9600.00,0.00,40.00,32.00,8.00,0.00,'WECHAT','2','2',1002,1003,'验证: 课时不足(剩8/40=20%→WARN)',1,NOW()),
-- 场景2: 课时不足 URGENT — 孙小刚, 总20课时剩1.5(7.5%), 触发紧急
(4202,'000000','EDUCT-ALERT-002',2003,'ENROLL','2026-03-01','2026-03-01','2027-03-01',4800.00,0.00,4800.00,0.00,20.00,18.50,1.50,0.00,'ALIPAY','2','2',1001,1003,'验证: 课时不足紧急(剩1.5/20=7.5%→URGENT)',1,NOW()),
-- 场景3: 即将到期 — 钱小红, 剩余课时充足但15天后到期, 触发到期警告
(4203,'000000','EDUCT-ALERT-003',2002,'ENROLL','2025-12-01','2025-12-01',DATE_ADD(CURDATE(),INTERVAL 15 DAY),8000.00,0.00,8000.00,0.00,30.00,5.00,25.00,0.00,'WECHAT','2','2',1002,1003,'验证: 即将到期(15天后→WARN)',1,NOW()),
-- 场景4: 已过期 URGENT — 孙小刚, 到期日已过但仍执行中(异常状态)
(4204,'000000','EDUCT-ALERT-004',2003,'ENROLL','2025-06-01','2025-06-01',DATE_SUB(CURDATE(),INTERVAL 10 DAY),6000.00,0.00,6000.00,0.00,30.00,12.00,18.00,0.00,'CASH','2','2',1001,1003,'验证: 已过期(10天前到期但仍执行中→URGENT)',1,NOW());