HBAD260_근무 설정 (근무 그룹·유형)
(Hereby) 관리자 패널 > 근태 현황 > 근무 탭 > 유형·기준 관리 모달 > 근무 설정
| 메타 | 앱: 관리자 패널 (HBAD)대상 사용자: 조건1 [근태 관리] (설정 수정)프로토타입: TBU관련 정책: [[POL_근무설정]]Status: reviewOwner: 카나 |
개요
근무 설정은 근무 그룹과 그룹별 근무 유형(마스터) 을 정의하는 근태 원천 설정 화면이다.근태 현황 > 근무 탭 > "근무 설정" 버튼 → "유형·기준 관리" 모달(좌측 네비 7종: 근무 설정 / 연장근무 유형 / 외근 유형 / 연차 부여 기준 / 휴가/연차 유형 / 연차 정책 / 공휴일)의 근무 설정 섹션으로 진입한다.근무 유형은 간호 스케줄러(HBNS)와 근태 정규화의 원천이 된다. ✅ 2026-08-17 라이브 실사에서 유형·기준 관리 모달이 최초로 실오픈되어 내부 구성을 실화면 대조 완료했다. 스케줄러 연동 ON/OFF에 따른 코드·코드라벨색 조건부 노출(d1c3f25)이 폼 레벨에서 실증되었다.
문서 히스토리
- 2026-07-06 최초 작성 - 카나/콸
- 2026-07-10 라이브 기능 검토 반영 (진입 경로 확인, 모달 내부 미오픈) - 카나/콸
- 2026-07-13 버튼 행동 명세 보강 - 카나/콸
- 2026-07-21 GC700 깊이 재작성 - 카나/콸
- 2026-07-21 셀 스타일 확정판 적용 (콸 승인) - 카나/PM
- 2026-08-06 근무 코드 조건부 노출(스케줄러 연동 기준) 반영(d1c3f25) - 카나/PM
- 2026-08-17 라이브 실사 검증 반영(dev v0.1.0+, 유형·기준 모달 최초 실증) - 카나/PM
Data I/O
Server → Client
변수
| 메타 | $ |
| 메타 | $ |
Client → Server
| 액션 | 전달 값 | tRPC procedure | 권한 토큰 |
|---|---|---|---|
| 근무 그룹 추가 | name, isActive | sdk.shiftGroup.create() (추정) | 근태 관리 |
| 근무 유형 추가/수정 | 근무그룹·코드·이름·출퇴근 시간·근무/휴게 시간·적용 요일·색상·스케줄러 연동 | sdk.workType.create() (추정) | 근태 관리 |
| 삭제 | id | sdk.*.delete() (추정) | 근태 관리 |
외부 통합 (cross-app)
| 외부 시스템 | 데이터 | 동기/비동기 | 비고 |
|---|---|---|---|
| 간호 스케줄러 (HBNS) | 근무 유형(D/E/N 등) → 근무표 셀 원천 ("스케줄러 연동" 토글) | 참조 | [[POL_근무설정]] |
| 근태 정규화 | 근무 유형 근무·휴게 시간 → attendances regularHours 산정 기준 (추정) | 참조 |
근무 설정 사양표
| 번호 | 항목/기능명 | 타입 | 사양 및 기능 설명 | 연관/영향 범위 | 비고 |
|---|---|---|---|---|---|
| 00 | 노출 조건 | - | • 조건1 [근태 관리 권한] 인증 후 근무 탭 "근무 설정" 버튼으로 진입- CASE01 [미인증]: /admin/signin 리다이렉트 | 인증 세션 · RBAC | |
| 01 | 초기 상태 | - | • 유형·기준 관리 모달 좌측 네비 "근무 설정" 선택 상태 | 2026-08-17 라이브 실오픈 확인 | |
| 02 | 좌측 네비 | Nav | • 유형·기준 관리 모달 좌측 네비 7종(원문): "근무 설정" / "연장근무 유형" / "외근 유형" / "연차 부여 기준" / "휴가/연차 유형" / "연차 정책" / "공휴일" • 클릭 시: 해당 섹션 전환 | [[HBAD261_유형 설정 (연장근무·외근·휴가)]] · [[HBAD262_연차 부여 기준]] | 라이브 정정: 5→7종("연차 정책"·"공휴일" 추가)(2026-08-17 실사) |
| 10 | 근무 그룹 목록 | List | • 근무 그룹을 카드/행으로 나열 — 그룹별 활성 배지 · "스케줄러" 배지 · "근무 유형" 버튼 노출 (라이브: "기본 근무" = 활성 + 스케줄러 배지 + [근무 유형] 버튼 / "3교대" 등). 설명 "비슷한 근무 형태를 묶는 단위예요. 예) 3교대·간호부·행정직"(원문). 하단 "근무 그룹 추가" 버튼 - CASE01 [그룹 0건]: Empty state (원문 TBU) | shift_groups (추정) | 라이브 실증(2026-08-17 실사) · TBU: 그룹 Empty 원문 |
| ㄴ11 | + 근무 그룹 추가 | Button | • 새 근무 그룹을 생성하는 진입 • 클릭 시: 근무 그룹 폼 열림 → 저장 시 그룹 생성 | shift_groups (추정) | |
| ㄴ12 | 편집 / 삭제 (그룹) | Action | • 개별 근무 그룹을 수정·삭제 • 클릭 시: "편집" → 근무 그룹 편집 폼 · "삭제" → 컨펌 후 삭제 | shift_groups (추정) | TBU: 삭제 컨펌 문구 |
| ㄴ13 | + 근무 유형 (그룹 내) | Button | • 해당 그룹에 근무 유형을 추가하는 진입 • 클릭 시: 근무 유형 폼 모달(30) 열림 | shifts (추정) | |
| 20 | 근무 유형 목록 | Grid | • 그룹별 근무 유형을 그리드로 표시 — 컬럼(census): 코드 / 이름 / 근무시간 / 연장 휴게 / 상태 / 관리 - CASE01 [유형 0건]: Empty state "등록된 근무 유형이 없어요."(census 원문) | shifts (추정) | census |
| ㄴ21 | 코드 | Cell | • 근무 유형 코드 배지 표시 (D/E/N 등) - CASE01 [코드 없음 (그룹 '스케줄러 연동' OFF)]: 코드 배지 대신 "-" 표시 | shifts.code (추정) | 코드 optional (d1c3f25) · 라이브: OFF 그룹 유형 0건이라 "-" 셀 실물 미관찰(폼 레벨 코드 숨김 메커니즘은 확인, 2026-08-17 실사) |
| ㄴ22 | 이름 | Cell | • 근무 유형명 표시 | shifts.name (추정) | |
| ㄴ23 | 근무시간 | Cell | • 출퇴근 시각 + 적용 요일 + 근무/휴게 시간을 한 셀에 병합 표기 (라이브 원문 예: "09:00~18:00+1 월 화 수 목 금 8:00 / 휴게 1:00") | shifts.startTime / endTime / breakHours (추정) | 병합 표기(라이브 hh:mm 실증, 2026-08-17 실사) |
| ㄴ24 | 연장 휴게 | Cell | • 연장 휴게 시간 표시 (h) | shifts (추정) | TBU: 산정 규칙 |
| ㄴ25 | 상태 / 관리 | Badge/Action | • 활성/비활성 배지 + 편집/삭제 액션 • 클릭 시: "편집" → 근무 유형 폼 모달(30) · "삭제" → 컨펌 후 삭제 | shifts.isActive (추정) | TBU: 삭제 컨펌 문구 |
| 30 | 근무 유형 폼 | Modal | • 근무 유형을 생성/수정하는 폼 모달 (아래 필드) • 클릭 시: "+ 근무 유형" 또는 "편집"으로 열림 - CASE01 [저장]: 유형 생성/갱신 - CASE02 ["코드 *"/"이름 *" 미입력]: 저장 불가(추정) | sdk.workType.create() (추정) | 필드 census · TBU: 실패 처리 |
| ㄴ31 | 코드 / 이름 | Input | • 근무 유형 코드·이름 입력 • 입력 시: "이름 *" 필수 - CASE01 [그룹 '스케줄러 연동' ON]: "이름 *"(예: 데이,이브닝,나이트) + "코드 *"(예: D,E,N) 2열 노출·필수 (스케줄러 셀 표기용) - CASE02 [그룹 '스케줄러 연동' OFF]: 코드 필드 미노출(x-show), "이름 *" 단독 1열 그리드 · 코드 값은 x-show 숨김이라 연동 OFF↔ON 전환 시 보존 | shifts.code / name (추정) | 조건부 필수 (d1c3f25) · 라이브 폼 레벨 실증: ON=이름*+코드* / OFF=이름*만(2026-08-17 실사) |
| ㄴ32 | 출퇴근 시간 | TimePicker | • 출근/퇴근 시각 지정(라이브 출근 09:00/퇴근 18:00) + 야간 근무용 "익일 퇴근" 체크 • 선택 시: 익일 퇴근 ON이면 퇴근 시각을 +1일로 계산 | shifts.startTime / endTime (추정) | 익일 퇴근 · 라이브 실증(2026-08-17 실사) |
| ㄴ33 | 근무·휴게 시간 | Input | • 근무 시간 / 휴게 시간 입력(hh:mm) — 근태 정규화 기준값. 라이브 근무 8:00·휴게 1:00 | 근태 정규화 기준 | 단위 hh:mm(라이브 실증) |
| ㄴ34 | 적용 요일 | Checkbox | • 월~일 칩 중 유형이 적용될 요일 선택(라이브 월~금 선택) • 선택 시: 체크된 요일에만 유형 적용 | shifts (추정) | 라이브 월~일 칩 실증(2026-08-17 실사) |
| ㄴ34a | 연차 차감 판정 | - | • "연차 차감 판정" 설정(요일 기준 등). 라이브 신규 관찰 필드 | shifts (추정) | 라이브 신규 필드(2026-08-17 실사, 세부 옵션 TBU) |
| ㄴ34b | 공휴일 근무 | Checkbox | • "공휴일에도 근무하는 유형" 체크. 라이브 신규 관찰 필드 | shifts (추정) · 공휴일 정책 | 라이브 신규 필드(2026-08-17 실사) |
| ㄴ34c | 상태 | Dropdown | • "상태" 드롭다운(활성/비활성 등). 라이브 신규 관찰 필드 | shifts.isActive (추정) | 라이브 신규 필드(2026-08-17 실사, 옵션값 TBU) |
| ㄴ35 | 코드 라벨 색상 | ColorPicker | • "코드 라벨 색상" (원문) — 스케줄러 셀에 표시될 코드 라벨 색상 팔레트 지정 • 선택 시: 간호 스케줄러 근무표 셀 색상에 반영 - CASE01 [그룹 '스케줄러 연동' ON]: 코드 라벨색 팔레트 노출 (스케줄러 셀 표기용) - CASE02 [그룹 '스케줄러 연동' OFF]: 코드 라벨색 필드 숨김(x-show) | 간호 스케줄러 표시 | 조건부 노출 (d1c3f25) · 라이브 실증: ON 폼에만 "코드 라벨 색상" 노출(2026-08-17 실사) |
| ㄴ36 | 스케줄러 연동 | Toggle | • 간호 스케줄러 근무표 노출 여부 제어 (추정) • 토글 시: ON → HBNS 근무표 셀 원천으로 노출(추정) | HBNS 간호 스케줄러 | cross-app |
근무 유형 예시 (census 6종)
| 유형 | 구분 | 비고 |
|---|---|---|
| 일반근무 | 기본 근무 그룹 | 주간 표준 |
| 3교대 주간(D) | 3교대 그룹 | Day |
| 3교대 오후(E) | 3교대 그룹 | Evening |
| 3교대 야간(N) | 3교대 그룹 | Night (익일 퇴근) |
| 스포츠 근무 | - | 특수 근무 |
| 스케줄 근무 | - | 스케줄러 연동 |
권한 · 상태 분기 요약
| 시나리오 | 트리거 | 결과 화면 | 비고 |
|---|---|---|---|
CASE01 [조회] | 근무 설정 진입 | 그룹·유형 목록 | 근태 관리 |
CASE02 [그룹 추가] | "+ 근무 그룹 추가" | 그룹 폼 → 생성 | |
CASE03 [유형 추가] | "+ 근무 유형" | 유형 폼 모달 → 생성 | |
CASE04 [유형 없음] | 유형 0건 | "등록된 근무 유형이 없어요." | Empty |
CASE05 [권한 없음] | 근태 관리 권한 미보유 | 편집/추가 비활성 (추정) | TBU |
Open Question
- ✅ 유형·기준 관리 모달 2026-08-17 라이브 최초 실오픈 — 좌측 네비 7종·근무 유형 폼 조건부 노출 실화면 대조 완료.
- 좌측 네비 신규 2종 "연차 정책" / "공휴일" 섹션 내부 구성. TBU (별도 사양 편입 대상).
- 근무 유형 폼 신규 필드 "연차 차감 판정"(옵션값)·"공휴일에도 근무하는 유형"·"상태"(옵션값) 세부. TBU.
- 스케줄러 OFF 그룹 유형 목록 코드 "-" 셀 실물(현재 OFF 그룹 유형 0건이라 미관찰). 데이터 필요.
- 근무 그룹/유형 엔티티명(shift_groups / shifts) 확정. TBU.
- "연장 휴게" 컬럼 산정 규칙. TBU.
- 그룹/유형 삭제 컨펌 문구 원문. TBU.
- 스케줄러 연동 토글 ↔ 간호 스케줄러(HBNS) 근무표 매핑 → [[POL_근무설정]] 참조.