feat(xg): 请假审批修复、点名今日汇总与寝室扣分条例脚本

同步请假/销假审批上下文与状态、宿舍点名今日汇总与假期留宿标识,并补充寝室检查扣分条例生产 SQL 与执行说明。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
“wuzhen”andCursor committed 2026-10-20 18:01:12 +08:00
1 parent 3e6349112c
commit 7cea0566ac
48 files changed
+1966 -116

No files matched your search

@@ -0,0 +1,57 @@
# 宿舍点名 · 假期留宿标识说明
## 背景
宿舍点名原先仅对「当前有效请假」自动标识为请假(状态 `1`,不可修改)。
已通过审批且仍在留宿日期内的学生,点名界面会误显示为「在寝」。现已补充「假期留宿」标识与独立统计。
## 有效留宿判定(后端统一)
接口:`getRoomStudents` 在返回学生信息时附加 `holidayStayInfo`(有有效请假时不返回,请假优先)。
条件:
1. `apply_status = '2'`(已通过)
2. 检查日落在 `[apply_start_date, apply_end_date]`(按日期比较,**结束日当天整天有效**)
3. 同一学生多条记录时取最新一条
假期结束后,接口不再返回 `holidayStayInfo`,前端恢复默认「在寝」可切换。
## 点名状态字典 `xg_dorm_roll_call_status`
| 值 | 含义 |
|----|------|
| 0 | 在寝 |
| 1 | 请假 |
| 2 | 不在 |
| 3 | 空床位 |
| 4 | 假期留宿 |
## 统计字段
主表 `xg_dorm_roll_call.holiday_stay_count`:本房间假期留宿人数。
明细可存 `holiday_stay_id` / `holiday_type` / `holiday_start_date` / `holiday_end_date`。
## 交互
与请假一致:自动标为假期留宿后**不可修改**。
## 库表脚本
`backend/script/sql/update/update_20261020_dorm_roll_call_holiday_stay.sql`
部署时需先执行该脚本,再发布后端与前端。
## 当天点名汇总(移动端首页)
接口:`GET /dormRollCall/dormRollCall/todaySummary`
权限:`dormRollCall:dormRollCall:list1`
口径:
- **已点名寝室**:当前账号当天有效点名记录的去重房间数(同房多次取最新)
- **未点名寝室**:管辖楼栋(宿舍管理员权限)∪ 当天已点过的楼栋 下可用房间 − 已点名
- **请假 / 假期留宿 / 异常**:最新点名明细中状态 `1` / `4` / `2`,可点开看明细
仅供移动端首页展示,不影响点名提交与 Web 列表。