新增功能

This commit is contained in:
Your Name
2026-03-04 15:32:30 +08:00
parent a07e844c47
commit ab77f5488d
2266 changed files with 177942 additions and 3444 deletions
+52
View File
@@ -0,0 +1,52 @@
-- 测试数据:创建医生排班
-- 请根据实际情况修改 doctor_id
-- 为医生ID=1创建未来7天的排班数据
INSERT INTO `la_doctor_roster` (`doctor_id`, `date`, `period`, `status`, `quota`, `max_patients`, `create_time`, `update_time`)
VALUES
-- 今天
(1, CURDATE(), 'morning', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
(1, CURDATE(), 'afternoon', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
-- 明天
(1, DATE_ADD(CURDATE(), INTERVAL 1 DAY), 'morning', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
(1, DATE_ADD(CURDATE(), INTERVAL 1 DAY), 'afternoon', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
-- 后天
(1, DATE_ADD(CURDATE(), INTERVAL 2 DAY), 'morning', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
(1, DATE_ADD(CURDATE(), INTERVAL 2 DAY), 'afternoon', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
-- 第4天
(1, DATE_ADD(CURDATE(), INTERVAL 3 DAY), 'morning', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
(1, DATE_ADD(CURDATE(), INTERVAL 3 DAY), 'afternoon', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
-- 第5天
(1, DATE_ADD(CURDATE(), INTERVAL 4 DAY), 'morning', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
(1, DATE_ADD(CURDATE(), INTERVAL 4 DAY), 'afternoon', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
-- 第6天
(1, DATE_ADD(CURDATE(), INTERVAL 5 DAY), 'morning', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
(1, DATE_ADD(CURDATE(), INTERVAL 5 DAY), 'afternoon', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
-- 第7天
(1, DATE_ADD(CURDATE(), INTERVAL 6 DAY), 'morning', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()),
(1, DATE_ADD(CURDATE(), INTERVAL 6 DAY), 'afternoon', 1, 10, 15, UNIX_TIMESTAMP(), UNIX_TIMESTAMP());
-- 查询验证
SELECT
id,
doctor_id,
date,
period,
CASE
WHEN status = 1 THEN '出诊'
WHEN status = 2 THEN '停诊'
WHEN status = 3 THEN '休息'
WHEN status = 4 THEN '请假'
END as status_text,
quota,
max_patients
FROM la_doctor_roster
WHERE doctor_id = 1
AND date >= CURDATE()
ORDER BY date, period;