Skip to content

HBHR260_휴직·퇴사 내역 시트 (2섹션)

(Hereby) HR 급여 관리 > 시트 워크스페이스 > 휴직·퇴사 내역 시트

HR 급여 관리 (hr-system, 포트 4000)
대상 사용자조건1 [HR_ADMIN] / 조건2 [SUPER_ADMIN]
프로토타입TBU
관련 정책[[POL_급여정본경계]]
Statusreview
Owner카나
부모[[HBHR100_시트 워크스페이스 (공통 Shell)]]

개요

  • 휴직·퇴사 내역 시트는 휴직 폴더의 두 시트 유형(휴직 내역 / 퇴사 내역)을 한 문서에 2개 섹션으로 정의한다.
  • 휴직 내역은 leave_of_absence_records, 퇴사 내역은 resignation_records를 근거로 한다.
  • 퇴사 내역은 퇴사정산 calculator(severance_pay 산출)와 연동되어 급여 마감 정산에 반영된다.
  • 휴직/퇴사 상태는 재직상태([[HBHR210_계약급여내역 시트]])와 정합하며, 해당 행은 급여대장([[HBHR200_급여대장 시트]])에서 회색 처리된다(추정).
  • 정산액(퇴직정산/연말정산 등)은 commitDeduction(시트 커밋) 경로로 DeductionRecord를 생성해 정본화한다. resignation_records / year_end_settlements원천(observation)만 남기고 금액은 DeductionRecord로 커밋된다. DeductionRecord는 음수(환급) 허용(예: 연말정산 환급 -200,000). 시트=작업공간 vs 정본=commit 경계를 준수한다 ([[POL_급여정본경계]]). (TC 확정: 08:8.3~8.6 settlement deductions via sheet commit)

문서 히스토리

날짜작성자변경 내용
2026-07-06카나PM최초 작성
2026-07-10카나PM라이브 기능 검토 반영
2026-07-13카나PM버튼 행동 명세 보강
2026-07-21카나PMGC700 깊이 재작성
2026-07-21카나PM가독성 패스 + 액션 표기 (GUIDE §7·§8)
2026-07-21카나PM셀 스타일 확정판 적용 (콸 승인)
2026-07-21카나PMTC 크로스체크 확정분 반영 (🟡)

Data I/O

Server → Client

변수DB 엔티티.컬럼값 없을 때비고
${leave.rows}leave_of_absence_records[]0건 시 빈 그리드휴직 행
${leave.status}leave_of_absence_records.status (default active)미설정 시 default active휴직 상태, enum = TBU
${resign.rows}resignation_records[]0건 시 빈 그리드퇴사 행
${resign.status}resignation_records.status (default pending)미설정 시 default pending퇴사 상태, enum = TBU

Client → Server

액션전달 값tRPC procedure권한 토큰
퇴사 원천 등록employeeId, resignationDate, reasonresignation.create (TC 라이브 확인)payroll:write (추정)
연말정산 원천 등록employeeId, year, 금액yearEndSettlement.create (TC 라이브 확인)payroll:write (추정)
정산액 커밋시트 커밋 대상 셀 → DeductionRecordcommitDeduction (TC 라이브 확인, 음수 허용)payroll:confirm (추정)

퇴사/연말정산 procedure는 원천(observation)만 생성하고, 실제 정산 금액은 commitDeduction(시트 커밋)이 DeductionRecord로 정본화한다. DeductionRecord는 음수(환급) 허용. (TC 확정: 08:8.3~8.6)

연동 방향

흐름계산·경로산출비고
퇴사정산퇴사 확정 시 퇴사정산 calculator가 resignation_records.resignationDate 기준 산출severance_pay(퇴직금) → 급여/정산 반영산출식 = TBU
재직상태 정합휴직/퇴사 상태 ↔ 계약급여내역([[HBHR210_계약급여내역 시트]]) 재직상태급여대장 행 처리(회색/제외)[[HBHR200_급여대장 시트]]
연말정산 연계중도 퇴사 정산 → year_end_settlements연말정산 반영

화면 플로우 (Mermaid)

퇴사정산 calculator의 severance_pay는 preview/preflight까지이며, 정산 정본화는 확정 경로에서만(경로 = TBU).

섹션 A. 휴직 내역 시트 (leave_of_absence_records)

컬럼 순서·명칭은 기본 템플릿 기준(# / 사번 / 성명 / 팀 / 사유 / 시작일 / 복귀예정 / 실제복귀 / 상태 / 메모). 내부 fieldKey: employeeNumber / employeeName / team / reason / startDate / expectedReturnDate / actualReturnDate / status / notes.

#컬럼타입설명 (용도·형식)연관 (ERD/calculator/타 앱)비고
1#Index• 행 순번 (read-only)sheet_rows.sortOrderread-only
2사번Text (system)• 직원 사번 (read-only 시스템 컬럼)employees.employeeNumber / fieldKey=employeeNumber시스템 컬럼
3성명Text (system)• 직원 성명 (read-only 시스템 컬럼)employees.name / fieldKey=employeeName시스템 컬럼
4Text (system)• 소속 팀 (read-only 시스템 컬럼)teams / fieldKey=team시스템 컬럼
5사유Text• 휴직 사유(육아/질병/개인 등)
• 입력 시: reason 저장
leave_of_absence_records.reason / fieldKey=reasonenum 아님(varchar)
6시작일DatePicker• 휴직 시작일 (YYYY-MM-DD)
• 선택 시: startDate 세팅
leave_of_absence_records.startDate / fieldKey=startDate
7복귀예정DatePicker• 복귀 예정일. nullable
• 선택 시: expectedReturnDate 세팅
leave_of_absence_records.expectedReturnDate / fieldKey=expectedReturnDate미정 시 공란
8실제복귀DatePicker• 실제 복귀일. 복귀 전 공란
• 선택 시: actualReturnDate 세팅
leave_of_absence_records.actualReturnDate / fieldKey=actualReturnDatenullable
9상태Badge• 휴직 상태 표시(active 등). 편집/전이 액션 = TBUleave_of_absence_records.status (default active) / fieldKey=statusTBU: enum 값
10메모Text• 비고 (processedBy 참고)
• 입력 시: notes 저장
leave_of_absence_records.notes / fieldKey=notes · processedBy

섹션 B. 퇴사 내역 시트 (resignation_records)

컬럼 순서·명칭은 기본 템플릿 기준(# / 사번 / 성명 / 팀 / 퇴사일 / 사유 / 상태 / 처리일 / 메모). 내부 fieldKey: employeeNumber / employeeName / team / resignationDate / reason / status / processedAt / notes.

#컬럼타입설명 (용도·형식)연관 (ERD/calculator/타 앱)비고
1#Index• 행 순번 (read-only)sheet_rows.sortOrderread-only
2사번Text (system)• 직원 사번 (read-only 시스템 컬럼)employees.employeeNumber / fieldKey=employeeNumber시스템 컬럼
3성명Text (system)• 직원 성명 (read-only 시스템 컬럼)employees.name / fieldKey=employeeName시스템 컬럼
4Text (system)• 소속 팀 (read-only 시스템 컬럼)teams / fieldKey=team시스템 컬럼
5퇴사일DatePicker• 퇴직금 정산 기준일
• 입력 시: resignationDate 세팅, 퇴사정산 calculator 입력
resignation_records.resignationDate / fieldKey=resignationDate → 퇴사정산 calculator 입력
6사유Text• 퇴사 사유(자진/권고/계약만료 등). nullable
• 입력 시: reason 저장
resignation_records.reason / fieldKey=reasonvarchar
7상태Badge• 퇴사 처리 상태 표시(pending 등). 편집/전이 액션 = TBUresignation_records.status (default pending) / fieldKey=statusTBU: enum 값
8처리일DatePicker/Output• 처리 완료일 (processedBy 기록). nullable
• 선택 시: processedAt 세팅
resignation_records.processedAt / fieldKey=processedAt · processedBynullable
9메모Text• 비고
• 입력 시: notes 저장
resignation_records.notes / fieldKey=notes

공통 우측 컬럼군(재계산 diff + eCount)은 [[HBHR203_재계산 diff 뷰]] 참조 (양 섹션 공통).

연동·플로우

  • 퇴사정산: resignation_records.resignationDate → 퇴사정산 calculator(severance_pay 산출) → 마지막 급여/정산 반영. 연말정산(year_end_settlements)과도 연계(중도 퇴사 정산).
  • 재직상태 정합: 휴직/퇴사 상태가 계약급여내역([[HBHR210_계약급여내역 시트]]) 재직상태 및 급여대장 행 처리(회색/제외)에 반영.
  • 버전 관리: resignation_records는 chainId/version/supersededAt 보유 — 정정 시 새 version(추정).
  • 확정 경계: 정산액은 commitDeduction(시트 커밋)으로 DeductionRecord 정본화(음수 환급 허용). resignation_records/year_end_settlements는 원천만. AI는 preview/preflight까지만. (TC 확정: 08:8.3~8.6)

권한·상태 분기 요약

시나리오트리거결과비고
CASE01 [휴직 행]재직상태 = 휴직 (leave_of_absence_records)급여대장 행 회색 처리 (추정)[[HBHR200_급여대장 시트]]
CASE02 [퇴사 확정]resignation_records 퇴사일 입력퇴사정산 calculator 입력 → severance_pay 산출산출식 TBU
CASE03 [정산 확정]시트 커밋(commitDeduction)정산액 → DeductionRecord 정본화 (음수 환급 허용)AI는 preflight까지 · (TC 확정: 08:8.3~8.6)

Open Question

  • leave_of_absence_records.status / resignation_records.status enum 전체 값. TBU.
  • 퇴사정산 calculator의 severance_pay 산출식 및 입력 키(근속·평균임금). TBU.
  • 퇴사 정산이 급여대장 전체 확정 경로인지 별도 정산 확정인지commitDeduction(시트 커밋)으로 DeductionRecord 정본화 확정. resignation_records/year_end_settlements는 원천만. DeductionRecord 음수(환급) 허용. (TC 확정: 08:8.3~8.6)
  • 휴직 기간의 급여/4대보험 처리(무급/유급 구분) 정책. TBU.
  • 휴직/퇴사 행의 급여대장 회색 처리·제외 규칙 확정. TBU.