docs: [근태] 캘린더 영업팀 제외 필터 누락 수정 변경이력 추가

This commit is contained in:
김보곤
2026-03-20 10:20:51 +09:00
parent ba731f3b3b
commit 3b43099fbf
2 changed files with 51 additions and 0 deletions

View File

@@ -299,6 +299,7 @@ DB 도메인별:
| [20260319_split_card_journal_matching_fix.md](changes/20260319_split_card_journal_matching_fix.md) | 분리 카드거래 분개 매칭 + 개별 행 확장 표시 수정 |
| [20260320_income_statement_monthly_total_and_items.md](changes/20260320_income_statement_monthly_total_and_items.md) | 손익계산서 월별보기 합계 열 추가 및 세부계정과목 표시 개선 |
| [20260320_attendance_manual_absent.md](changes/20260320_attendance_manual_absent.md) | 근태현황 자동 결근 처리 → 수동 트리거 전환 (스케줄러 비활성화, 버튼 추가) |
| [20260320_attendance_calendar_exclude_fix.md](changes/20260320_attendance_calendar_exclude_fix.md) | 근태 캘린더 영업팀 제외 필터 누락 수정 + 운영DB 오류 데이터 삭제 |
---

View File

@@ -0,0 +1,50 @@
# 근태현황 캘린더 영업팀 제외 필터 누락 수정
**날짜:** 2026-03-20
**작업자:** Claude Code
## 변경 개요
근태현황 캘린더에서 영업팀 사원(오세형)이 결근으로 표시되는 오류를 수정한다.
---
## 원인 분석
2가지 문제가 복합적으로 발생:
1. **자동 결근 스케줄러에 영업팀 제외 로직 부재**: 기존 `markAbsentees()``getExcludedUserIds()`를 호출하지 않아 영업팀 사원도 결근 처리됨 (3/19 23:50 자동 실행으로 오세형 결근 레코드 생성)
2. **캘린더 뷰에 제외 필터 누락**: `getMonthlyCalendarData()`에만 `getExcludedUserIds()` 필터가 빠져있음. 목록/통계/요약에는 적용되어 있었음
---
## 수정된 파일
| 파일 | 변경 내용 |
|------|----------|
| `mng/app/Services/HR/AttendanceService.php` | `getMonthlyCalendarData()``getExcludedUserIds()` 필터 추가 |
## 추가 조치
| 조치 | 내용 |
|------|------|
| 운영DB | 오세형(user_id:84) 잘못된 결근 레코드(id:432) 직접 삭제 |
---
## 제외 필터 적용 현황 (수정 후)
| 메서드 | 제외 필터 |
|--------|:---------:|
| `buildFilteredQuery()` (목록) | ✅ |
| `getMonthlyStats()` (통계) | ✅ |
| `getMonthlyCalendarData()` (캘린더) | ✅ (이번 수정) |
| `getEmployeeMonthlySummary()` (요약) | ✅ |
| `getOvertimeAlerts()` (초과근무) | ✅ |
| `markAbsentees()` (결근 처리) | ✅ (이전 커밋에서 수정) |
---
## 관련 문서
- [20260320_attendance_manual_absent.md](20260320_attendance_manual_absent.md) — 자동 결근 처리 수동 트리거 전환