[ Refactor ] - 대시보드 근무시간/소득을 목표·확정·계획 기준으로 분리 - #190
Merged
Conversation
- WorkLog.status 문자열을 WorkLogStatus 공유 상수로 추출 (WorkLogService, WorkLogReminderService, CalendarService) - CalendarMonthlyHours: plannedHours/actualHours → goalHours/confirmedHours/scheduledHours로 분리 - CalendarMonthlyHours: WORK_LOG_PLATFORM_INCOME 기준 expectedSettlementIncome(예상 정산 소득) 추가 - DashboardHoursResponse: confirmedHours/scheduledHours/goalHours 3필드로 변경 - DashboardIncomeResponse: actualIncome(SETTLEMENT 기반 실입금액)/expectedSettlementIncome/goalIncome 3필드로 변경 - 미사용 DashboardSettlementResponse 삭제, DashboardResponse.settlement 필드 제거 - DashboardController: getDashboard()에서 실입금액은 IncomeAnalysisQueryClient로 별도 조회
hanjyoon01
requested review from
KSBoscoKim,
Kimd0ng,
SOOsuhyuncho,
bigwaveBigwave and
shinh09
August 19, 2026 08:48
bigwaveBigwave
approved these changes
Aug 19, 2026
shinh09
approved these changes
Aug 19, 2026
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.
관련 이슈
작업 사항
WorkLogStatus공유 상수로 추출(WorkLogService, WorkLogReminderService, CalendarService에서 참조)
CalendarMonthlyHours:plannedHours/actualHours→goalHours(추천 근무시간)/confirmedHours/scheduledHours(WorkLog.status 기준)로 분리CalendarMonthlyHours:WORK_LOG_PLATFORM_INCOME기준expectedSettlementIncome(예상 정산 소득 - PLANNED 전체 + CONFIRMED인데 아직 COMPLETED 안 된 플랫폼 몫) 추가.
플랫폼별 income 행 단위로 계산해서 PARTIAL(일부 플랫폼만 정산완료) 근무도 정확히 반영됨
DashboardHoursResponse:{confirmedHours, scheduledHours, goalHours}3필드로 변경DashboardIncomeResponse:{actualIncome, expectedSettlementIncome, goalIncome}3필드로 변경actualIncome은IncomeAnalysisQueryClient(SETTLEMENT 테이블, 실제 입금액) 기준expectedSettlementIncome은CalendarQueryClient(WORK_LOG 기준 예상치) 기준 — 데이터 소스가달라 한 DTO에 섞지 않음
DashboardSettlementResponse삭제,DashboardResponse.settlement필드 제거CalendarServiceTest에 근무시간/소득 분리 집계 검증 테스트 추가 (PARTIAL 케이스 포함)참고 사항
DashboardHoursResponse/DashboardIncomeResponse/DashboardResponse의 필드 구성이바뀌었어서 프론트(Vue) 쪽 대시보드 화면 연동 확인이 필요합니다 —
settlement필드가없어졌고,
goalHours/goalIncome하위 필드명도 달라졌습니다.WorkLog.status를 아직 공유 상수(문자열)로만 통일했고,IncomeAnalysisService에는같은 값을 가리키는 별도 private 상수가 남아있습니다. enum 전환 여부와 함께 통일은
별도 이슈로 분리했습니다.