feat(server): 팀 설정 기반 지각 처리 및 사유 승인 시 패널티 면제 - #60
Merged
Conversation
…Request에 excused_late_user_ids 추가
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
변경 요약
기여도 출석 계산에 하드코딩되어 있던 지각 기준을 팀 설정값(
late_threshold_minutes,late_max_minutes)으로 교체하고, 지각 사유가 승인된 경우attendance_ratio에서late_sec차감을 면제하도록 수정했습니다.태스크 보드에서 타인 담당 태스크는 수정 모달이 열리지 않도록 제한하고, 완료 컬럼 정렬을 최신 완료순으로 변경했습니다.
관련 이슈
없음
변경 사항
TeamSettingsPayload에late_threshold_minutes,late_max_minutes필드 추가contributions.service.ts: DB의 팀 설정에서 지각 기준값 로드contribution.client.ts: 지각 기준 초과 시attendance_ratio에서late_sec차감,late_max_minutes초과 시 결석 처리contribution.client.ts: 지각 사유 승인(MeetingAbsence.status = 'approved'+ join 기록 있음) 시late_sec차감 및punctuality_score감점 면제contributions.service.ts: ① 회의 점수 계산 및 ② 팀 파이프라인 페이로드에excused_late_user_ids전달TasksPage.tsx: 본인/미지정 태스크만 수정 모달 열리도록canEdit조건 추가TasksPage.tsx: 보드 완료 컬럼 정렬을completed_at내림차순으로 변경검증 방법
late_threshold_minutes값 변경 후 회의 recompute → 출석률이 설정값 기준으로 반영되는지 확인attendance_ratio차감 없이 계산되는지 확인체크리스트
type(scope): subject)main이 아닌feature/*또는fix/*브랜치에서 작업했다.env,node_modules등)이 포함되지 않았다비고
excused_late_user_ids는 기존meeting_absences+presence_events테이블에서 런타임에 조합하는 값attendance_ratio변경은 회의 재산정(recompute) 시 적용됨 (기존 저장값 자동 갱신 없음)