Fix: prevent leave type duplication in status_text for attendance records

This commit is contained in:
IT狗
2026-07-21 12:35:16 +08:00
parent cca088261b
commit 1e7d58486b
+7
View File
@@ -180,6 +180,13 @@ def enrich_attendance_with_leave(records, db):
else:
r.status_code = "mixed_leave"
r.status_text = leave_text
elif original_code in ("al", "sl", "cl"):
# Pure leave status: check if multiple leave types → upgrade to mixed
if len(leave_by_type) > 1:
r.status_code = "mixed_leave"
r.status_text = leave_text
else:
r.status_text = leave_text
else:
base = r.status_text or "正常"
r.status_text = f"{base} + {leave_text}"