Skip to content

[ Bug ] - 정산 기간 계산이 공휴일/주말 근무를 놓치는 문제 수정 (#195) - #196

Merged
hanjyoon01 merged 1 commit into
developfrom
feature/#195
Aug 20, 2026
Merged

[ Bug ] - 정산 기간 계산이 공휴일/주말 근무를 놓치는 문제 수정 (#195)#196
hanjyoon01 merged 1 commit into
developfrom
feature/#195

Conversation

@hanjyoon01

Copy link
Copy Markdown
Contributor

관련 이슈

작업 사항

  • SettlementPeriodCalculator.dailyPeriod: workDate 하루만 조회하던 걸
    workDate ~ 다음 영업일 직전까지로 기간 확장
    • BUSINESS_DAY 오프셋 플랫폼(배민커넥트 등)은 순방향으로 보면 다음 영업일
      직전까지의 비영업일(주말/공휴일) 근무가 전부 같은 입금일로 수렴하는데,
      workDate 하루만 조회하면 그 구간의 다른 날 근무일지를 놓침
    • extendThroughTrailingNonBusinessDays 헬퍼 추가 (CALENDAR_DAY는 그대로 통과)
  • SettlementPeriodCalculator.weeklyPeriod:
    • periodEnd 경계일 자체가 공휴일이면 그 전 영업일로 밀려서 경계일이 기간
      밖으로 빠지던 문제를 같은 헬퍼로 보정
    • PLATFORM.settlement_day_of_week(쿠팡이츠=FRI, 스키마엔 있었지만 로직에서
      미사용이던 필드)를 활용해, 실제 입금일이 아니라 원래 예정된 정산 요일
      기준으로 오프셋을 역산하도록 변경
      • 금 사이에 공휴일이 껴서 실제 입금이 다음 영업일(보통 다음주 월요일)로
        밀려도, 정산 기간(전주 수
        금주 화) 자체는 흔들리지 않게 됨
      • settlement_day_of_week가 없는 플랫폼은 기존 동작 그대로(하위호환)
  • SettlementPeriodCalculatorTest: 금·토·일 연속근무, 8/17 대체공휴일 실사례,
    WEEKLY 경계일 공휴일 케이스, 쿠팡이츠 화~금 사이 공휴일로 정산일이
    다음주로 밀리는 케이스 테스트 추가
  • SettlementServiceTest: 기존 공휴일 테스트를 새 동작(공휴일에 일한
    근무일지도 같은 정산 기간에 매칭돼 COMPLETED로 갱신됨)에 맞게 갱신
  • (테스트용) SettlementBatchCommandClient / LocalSettlementBatchCommandClient /
    SettlementTestController/internal/test/settlement/run으로 정산 배치를
    특정 사용자·날짜로 수동 실행해볼 수 있는 디버그 엔드포인트. 검증 끝나면
    같이 지워도 됨(컨트롤러 상단 주석에 정리 대상 명시해둠)

참고 사항

  • 여러 날 연속 공휴일(예: 목·금 이틀)이 화~금 사이에 낄 때의 실제 동작은 아직
    실측 확인 전 - 지금 로직은 며칠이 밀리든 상관없이 항상 예정 요일(FRI) 기준으로
    고정 계산하는데, 이게 실제 관찰한 동작과 맞는지 추가 확인 필요
  • work-service 전체 테스트 + 전 모듈 컴파일 BUILD SUCCESSFUL 확인함

- DAILY: workDate 하루만 조회하던 걸 다음 영업일 직전까지로 확장
  (공휴일/주말 연속 근무도 같은 정산일로 매칭되도록)
- WEEKLY: periodEnd 경계일이 공휴일이어도 기간 유지되게 보정
- WEEKLY: settlement_day_of_week 기준으로 예정 정산 요일 역산하도록 변경
  (쿠팡이츠처럼 화~금 사이 공휴일로 정산일이 다음주로 밀려도 기간이 안 흔들림)
- 관련 테스트 추가, 전체 테스트/컴파일 통과 확인
@hanjyoon01 hanjyoon01 self-assigned this Aug 20, 2026
@hanjyoon01 hanjyoon01 added the 🐞 BugFix Something isn't working label Aug 20, 2026
@hanjyoon01
hanjyoon01 merged commit adec4e7 into develop Aug 20, 2026
2 checks passed
@hanjyoon01
hanjyoon01 deleted the feature/#195 branch August 20, 2026 09:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🐞 BugFix Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ Bug ] - 정산 기간 계산이 공휴일/주말에 일한 근무일지를 놓침 (SettlementPeriodCalculator)

3 participants