Skip to content

간호 근무표와 희망근무 ​

관리자는 병동·스케줄러·간호사·실제 근무시간을 연결해 근무표를 편성하고 확정·공유합니다. 스케줄러는 병동 안에서 근무표를 나누는 단위입니다. 한 병동에서도 일하는 자리와 기본 시간대가 다른 인력(예: 2W-간호사·2W-요양보호사·2W-이송지원)은 스케줄러를 따로 두고, 명부(간호 프로필)와 근무표를 스케줄러마다 따로 만듭니다. 병동마다 기본 스케줄러가 하나 있으며, 스케줄러의 추가·수정·삭제는 관리자 앱의 병동 관리 페이지에서 합니다. 현재 관리자 앱은 희망근무 대리 입력과 공유 후 재편집을 지원합니다. AI 자동생성 버튼은 준비 중으로 비활성화되어 있고, 간호사 본인의 내 희망 일정 탭은 숨겨져 있습니다.

근무표 작성·희망근무·설정·확정·공유의 사용법을 설명합니다. 실행한 조작과 미확인 항목은 아래 사용 영상과 기능별 영상 기록에서 구분합니다.

역할·진입과 작업 목록 ​

관리자 앱의 기본 주소 뒤 #scheduler 또는 왼쪽 메뉴 스케줄러로 들어갑니다. 내부 결재(팀장) 앱에 있던 스케줄러는 2026-10-20 관리자 앱 하나로 합쳐 제거했습니다. 간호 프로필 또는 간호 근무표 관리 권한이 있어야 화면에 접근합니다. 조회 자원 schedule과 관리 자원 nurse-scheduler 권한을 함께 사용하는 API가 있으므로 팀장 명칭만으로 모든 병동 수정 권한을 가정하지 않습니다. 모든 저장은 로그인 조직에 묶입니다. 병동은 Team(부서)과 별도의 물리적 입원 단위입니다.

작업관리자 앱의 진입현재 결과
병동·스케줄러·연월 전환, 지표, 희망/출근 겹쳐 보기근무표 상단선택 스케줄러·주기의 서버 자료 조회
병동 생성·수정·상태·삭제관리자 앱 병동 관리 페이지Ward 변경
스케줄러(스케줄 그룹) 추가·수정·삭제·포함 직군관리자 앱 병동 관리 → 스케줄러 칸WardScheduleGroup 변경
인력·주기·희망 탭 설정병동 설정 각 탭병원 정책·병동 연결 갱신
교대 매핑·교육 정책·지원 근무형태스케줄러 설정선택 스케줄러의 편성 설정 갱신
간호사 등록·수정·삭제·자동 등록간호사 탭/근무표 간호사 추가NurseProfile 생성·수정/제거
병동 즉시/예약 이동·예약 취소간호사 수정, 근무표 이름 우클릭현재 소속 또는 미래 예약 변경
단건·범위 배정, 삭제, 복사·붙여넣기·채우기근무표 셀NurseScheduleEntry 저장
되돌리기·다시 실행·로컬 임시저장·복원단축키서버 배정 수정/현재 브라우저 스냅샷
양식 다운로드·파일 파싱·업로드 적용업로드인식된 셀을 일괄 저장
희망근무 입력·수정·삭제·되돌리기설정이 켜진 희망근무 탭관리자 대리 입력을 제출 상태로 저장
환자수 단건·월별·일괄·저장오늘 환자수, 환자수 관리WardDailyRecord와 출처 보존
확정·제출·공유 후 편집수정 확인 / 제출 / 편집근무표 상태 전환
경고·출근 비교·재계산·인쇄경고 / 출근 현황 / 인쇄조회·근태 재계산·출력

내부 결재 앱은 관리자 앱과 코드를 공유 복제한 부분이 있으나 완전히 같은 UI가 아닙니다. 아래 새 기능(관리자 희망근무 입력, 예약 이동, 공유 후 편집)은 관리자 앱 기준이며 팀 관리자 화면에서 같은 버튼이 있다고 가정하지 않습니다. 간호사 직접 희망 제출은 API·숨김 화면이 있어도 현재 노출 기능으로 안내하지 않습니다.

병동과 정책 준비 ​

  1. 관리자 앱 인사 관리 → 병동 관리 → 병동 추가를 엽니다. 병동을 만들고 고치는 곳은 이 화면 한 곳입니다. 스케줄러의 병동 관리 및 설정 창에 있던 병동 관리 탭은 없어졌고, 지금 이 창은 인력 설정·교대 매핑·교육 정책·주기 설정 네 탭입니다. 두 곳에서 같은 wards 테이블을 고치면서 목록이 서로 어긋나던 문제를 없앤 변경이며, 환자수 창의 병동 관리 링크도 이 화면으로 이동합니다. 병동명은 필수이고 코드(비우면 자동 생성, 조직 안에서 겹치면 저장할 때 안내)·연결 팀·설명·종류·병상수·표시 순서(0 이상 정수)·상태를 정합니다. 일반병동/재활병동 구분은 배치 기준 표를 고르는 키이므로 해당 없는 병동은 미지정으로 둡니다. 기본 상태는 활성입니다. 병동을 만들면 기본 스케줄러가 함께 생깁니다.
  2. 등록 후 병동 목록에서 편집을 누르면 팝업 대신 그 줄이 입력칸으로 바뀌며 한 번에 한 줄만 고칩니다. 값·연결 팀·상태·순서를 고치고 저장(또는 Enter)합니다. 취소(또는 Esc)는 편집값을 버립니다. 삭제는 확인 후 병동 삭제 API를 실행하며, 팀과의 연결만 풀리고 팀은 남습니다. 연결된 프로필·근무표가 있는 병동을 제거하기 전 해당 자료를 확인합니다. 저장 후 상단 병동 선택 목록을 다시 읽습니다. 자세한 절차는 조직과 접근 권한과 관리자 가이드를 참조합니다.
  3. 같은 병동에서 자리와 기본 시간대가 다른 인력을 따로 편성하려면 병동 목록의 스케줄러 칸(예: 기본 · 요양보호사 (2))을 눌러 스케줄러 관리 팝업을 열고 스케줄러 추가로 만듭니다. 이름은 필수이고 같은 병동 안에서 겹칠 수 없습니다. 코드·근무 장소·설명·표시 순서·상태와 포함 직군(비우면 모든 직군)을 입력합니다. 기본 스케줄러는 삭제하거나 비활성으로 바꿀 수 없고, 명부나 근무표가 남아 있는 스케줄러는 다른 스케줄러로 옮기거나 지운 뒤에만 삭제됩니다. 환자수·병상수·배치 비율·간호등급은 스케줄러가 아니라 병동 단위로 남으며, 최소 인원 검증은 그 병동의 모든 스케줄러 명부를 합쳐서 봅니다.
  4. 인력 설정에서 간호사 1인당 환자 비율 **주간(D) / 저녁(E) / 야간(N)**을 양수로 입력합니다. 예: D=5는 환자 5명당 간호사 1명입니다. 조무사(간호사 대비)·**간병인(환자 대비)**는 0 이상 배수입니다. **간호조무사/병동지원인력/재활지원인력(환자 대비)**는 1인당 환자 수 기준이며 0/빈 값은 미설정으로 처리합니다. 단위가 다르므로 같은 숫자를 그대로 복사하지 않습니다.
  5. 교대 매핑은 스케줄러의 설정입니다. 스케줄러를 고른 뒤 3교대·데이/이브닝/야간전담별 D/E/N과 주말 슬롯을 실제 Shift에 연결합니다. 미설정은 시각 연결이 없는 상태입니다. 선택 목록은 조직의 근무 설정에서 공급하므로 없으면 근무 설정에서 먼저 등록합니다. 저장하면 그 스케줄러의 근무표 코드가 급여·출퇴근 시간 판정에 사용할 시프트와 연결됩니다. 같은 병동이라도 스케줄러마다 다른 시간대를 둘 수 있습니다.
  6. 교육 정책도 스케줄러마다 교육 근무 인정(work_counted) 또는 **교육 휴무(off)**를 정하고 저장합니다. 정규 근무 인정/교육휴무와 교육 기록의 후속 사용을 구분합니다.
  7. 주기 설정의 시작일을 선택하고 적용/저장합니다. 현재 선택 주기를 읽고 새 근무표의 시작·종료일을 결정하므로 모든 조직이 월력 1일~말일이라고 가정하지 않습니다. 기존 근무표의 기간은 자동으로 다시 쓰지 않습니다. 최초 설정값 복원은 편집 기준값으로 되돌리는 조작입니다.
  8. 같은 탭의 희망근무 탭 사용을 켜거나 끕니다. 끄면 관리자 희망근무 탭을 숨기고 해당 탭을 보고 있었다면 근무표로 이동합니다. 이 토글은 즉시 설정 API를 호출합니다.

설정 창은 탭별 변경값과 저장 여부를 추적합니다. 바뀐 값이 없으면 저장 버튼을 비활성화하는 곳이 있습니다. 닫기 시 미저장 변경 확인을 거치며 취소하면 계속 편집합니다. 병원 전체 정책과 병동별 병상수/종류를 혼동하면 준수율 해석이 달라집니다. 정책 공급 관계는 조직과 접근 권한을 참조합니다.

간호사 등록·이동·제거 ​

  1. 간호사 탭 또는 근무표의 간호사 추가를 눌러 간호사 등록을 엽니다. 직원 선택에서 사번/이름으로 검색하고 목록의 직원을 선택합니다. 이미 등록됨 표시는 선택을 막습니다. 직원 자체는 인사 기록에서 먼저 등록되어 있어야 합니다.
  2. 필수 근무 형태(3교대·야간전담·데이전담·이브닝전담)와 소속 병동, 그 병동의 스케줄러를 고릅니다. 병동을 고르면 스케줄러는 그 병동의 기본으로 미리 채워지고, 병동을 바꾸면 다시 기본으로 돌아갑니다. 수간호사는 기본 해제입니다. 등록하면 직원 원본을 복제하지 않고 NurseProfile로 스케줄러(병동은 스케줄러에서 파생)·형태를 연결합니다. 명부는 직원 × 스케줄러이므로 한 직원을 여러 스케줄러에 등록할 수 있습니다(겸임). 같은 병동의 다른 스케줄러도 겸임이 되지만, 같은 스케줄러에 두 번 등록할 수는 없습니다. 관리자 앱의 직원 정보 수정 팝업과 팀 관리 팝업의 병동 배정 줄도 같은 규칙으로 병동·스케줄러·근무 형태·책임자를 고칩니다.
  3. 수정에서 근무 형태·병동·스케줄러·수간호사 여부를 바꿉니다. 직원 자체는 변경 불가입니다. 현재 스케줄러와 다른 병동이나 스케줄러를 즉시 적용하거나 예약 이동을 선택합니다.
  4. 예약 이동은 적용 시작일을 미래 날짜로 입력합니다. 현재와 같은 병동·미래가 아닌 날짜는 서버가 거부합니다. 저장하면 현재 병동을 즉시 교체하지 않고 WardReservation으로 보존합니다. 기존 예약은 수정 화면에서 예약 취소로 취소할 수 있습니다. 도래 예약은 조회 경로에서 적용됩니다.
  5. 근무표 이름을 우클릭해 병동 변경을 사용하는 경로는 현재/새 병동을 비교하고 다른 병동을 선택한 후 적용합니다. 변경 후 이전·새 병동 명부를 재조회합니다.
  6. 간호사 → 자동등록은 스케줄러를 고른 뒤 열고 사번·이름 목록에서 대상을 선택합니다. 기본 선택은 없고 전체 선택 / 전체 해제를 지원합니다. N명 등록은 선택한 병동·스케줄러에 3교대·수간호사 해제로 프로필을 하나씩 생성합니다. 취소는 생성하지 않습니다. 후보는 서버가 거릅니다. 그 스케줄러에 아직 프로필이 없는 재직·휴직 직원 중 ① 이 병동에 연결된 팀의 활성 소속원이거나 ② 직무 조건에 맞고 아직 어느 스케줄러에도 배정되지 않은 사람입니다. 직무 조건은 스케줄러에 포함 직군이 있으면 그 직군 코드, 없으면 직무에 「간호」가 들어간 사람입니다. 연결 팀 소속원을 먼저, 그다음 이름순으로 보여 줍니다. 다른 스케줄러에 이미 배정된 사람은 후보에 나오지 않으므로 겸임은 직접 추가합니다. 결과의 이미 등록됨 집계에는 개별 API 실패도 포함되므로 실패 사유가 중복이라고 단정하지 않습니다.
  7. 근무표의 직원 제거 또는 간호사 목록 삭제는 확인 후 프로필을 제거하는 동작이며 인사 직원 삭제와 다릅니다. 취소는 명부를 유지하고 완료 후 현재 병동을 다시 조회합니다.

병동 배정은 스케줄러 밖에서도 만들어집니다. 팀 관리에서 병동이 연결된 팀에 직원이 들어오면 그 병동 배정이 없을 때 그 병동의 기본 스케줄러에 3교대·수간호사 해제로 자동 생성되며, 팀원 추가·일괄 팀 배정·신규 직원 등록·엑셀 대량 업로드가 모두 같습니다. 병동 팀끼리 옮기면 병동 배정도 함께 옮길지 묻고, 급여 시트의 직원 마스터와 직원 수정 API로 옮기는 경우에는 묻지 않고 예전 팀 병동의 배정을 새 병동으로 옮깁니다. 병동 화면의 기존 직원 추가와 직원 정보 수정·팀 관리 창의 병동 배정 줄에서도 같은 프로필을 만들고 고칠 수 있습니다. 어느 경로든 결과는 이 화면의 명부와 같은 NurseProfile입니다.

간호등급의 간호사 수는 직군이 간호사인 사람만 셉니다. 요양보호사·간호조무사·병동지원은 병동에 배정돼 있어도 분자에서 빠지며, 직군이 아직 비어 있는 직원은 종전처럼 셉니다. 기준은 간호인력·준수율 정책이 정본입니다.

근무 형태 셀을 직접/범위 선택하면 근무형태 변경에서 3교대 / 주간전담 / 초번전담 / 야간전담을 즉시 적용합니다. 방향키로 이동하고 Enter 적용, Esc 취소를 사용할 수 있습니다. 여러 명은 순차 저장하며 한 명 실패해도 나머지를 계속 처리하므로 화면을 다시 읽어 성공 범위를 확인합니다. 직원 앱의 근무 형태 변경 신청은 별도 결재 경로이며 직원 정보와 설정에 설명합니다. 근무표에서 설정을 직접 바꾸는 관리 기능과 혼동하지 않습니다.

근무표 직접 편성·편집 ​

  1. 근무표에서 병동·스케줄러·연도·월을 고릅니다. 근무표는 스케줄러마다 따로 있으므로 같은 병동이라도 스케줄러를 바꾸면 다른 명부·근무표가 열립니다. 화면의 실제 주기(예: 6월 16일~7월 15일)와 날짜 열을 먼저 확인합니다. 근무표가 없으면 첫 저장 과정에서 생성합니다. 서버는 같은 스케줄러·기간의 중복 생성을 거부할 수 있으므로 동시 작업 실패 뒤 재조회합니다. 겸임 직원이 같은 날 다른 스케줄러의 근무표에도 근무로 잡혀 있으면 셀에 경고 표시가 붙습니다. 저장을 막지는 않으므로 두 근무표를 함께 확인합니다.
  2. 간호사×날짜 셀을 클릭하거나 드래그/Shift+방향키로 범위를 선택합니다. Ctrl/Cmd+A는 전체 셀 선택, Esc는 선택 해제입니다. 셀의 빠른 배정 팝오버·우클릭 배정 또는 D/E/N/O/V 단축키로 근무·OFF·연차를 지정합니다. 조직의 스케줄러 연동 근무/휴가 코드가 목록을 공급합니다.
  3. 여러 셀을 선택한 상태에서 배정하면 선택 셀에 같은 유형을 적용합니다. 근무 유형/휴가 항목을 고르면 즉시 서버 저장을 호출하므로 팝오버를 닫는 동작이 이미 실행된 배정을 취소하지 않습니다.
  4. 복사는 Ctrl/Cmd+C 또는 우클릭 복사, 붙여넣기는 Ctrl/Cmd+V 또는 붙여넣기입니다. 시작 셀을 선택하고 붙여 넣은 후 대상 범위가 맞는지 확인합니다. 채움 핸들을 드래그하면 선택 패턴을 확장해 저장합니다.
  5. 관리자 앱의 Delete/Backspace는 선택 배정을 완전히 삭제해 빈 셀로 만듭니다. O의 OFF 배정과 다릅니다. 현재 단축키 도움말에는 OFF로 초기화라고 남아 있는 부분이 있어 실제 clearSelected 동작을 기준으로 기록합니다.
  6. Ctrl/Cmd+Z로 되돌리기, Ctrl/Cmd+Shift+Z 또는 Ctrl/Cmd+Y로 다시 실행합니다. 이는 화면 표시만 되돌리는 것이 아니라 해당 배정을 서버에 동기화합니다. 근무표 확정/공유됨 상태의 일반 편집은 잠겨 있으며 먼저 편집 복귀를 실행해야 합니다.
  7. 이름 옆 메모를 열면 월 단위 메모를 수정하고 아래 날짜별 사유를 읽습니다. 저장은 기존 날짜별 희망을 유지한 채 월 메모를 대리 희망 API에 보냅니다. 취소/X/Esc/외부 클릭은 미저장 메모를 버립니다. 실패도 팝오버를 닫고 재조회하는 경로라 닫혔다는 사실만으로 저장 완료를 판단하지 않습니다. 보고서나 인사 기록을 대체하지 않습니다.

임시저장: Ctrl/Cmd+S는 현재 브라우저 localStorage에 병동·연월별 스냅샷을 저장합니다. Ctrl/Cmd+L로 저장 목록을 열어 복원할 시점을 고릅니다. 다른 브라우저/기기에 공유되는 서버 백업이 아니며, 복원은 현재 근무표에 쓰는 동작입니다. 변경마다 자동 스냅샷이 갱신되고 수동 저장을 포함해 최대 20개를 유지합니다. 저장된 버전 불러오기에서 일시·자동/수동·셀 수를 확인하고 카드를 누르면 복원합니다. 저장본이 없으면 창 대신 안내를 표시합니다. 수동 저장본에만 호버 삭제가 나타나며 로컬 기록만 지웁니다. 복원 실패 뒤 서버를 다시 읽어도 복원 완료 토스트가 나오는 경로가 있어 성공 문구만으로 단정하지 않습니다. 현재 복원 알고리즘은 저장본에 없는 셀을 서버에 OFF로 보낼 수 있으므로 빈 셀 삭제와 동일한 복원으로 취급하지 않습니다. 재접속의 정본은 서버 근무표입니다.

양식 다운로드·업로드 ​

  1. 편집 가능한 근무표에서 업로드를 엽니다. 병동·대상 연월을 고르고 빈 양식 다운로드 영역의 양식.xlsx를 누르면 해당 명부와 날짜가 들어간 파일을 받습니다.
  2. 양식의 직원 식별 열과 날짜 열을 유지한 채 D/E/N/OFF 등 인식 가능한 근무 코드를 입력합니다. 파일 선택 또는 드래그로 .xlsx/.xls 파일을 업로드합니다. 제한은 10MiB이고 파일은 먼저 브라우저에서 파싱합니다.
  3. 파싱된 건수와 오류를 확인합니다. 빈 셀·미인식 코드·매칭되지 않는 직원/기간 외 날짜는 적용 대상에서 빠질 수 있습니다. 인식한 항목 0건이면 오류이며 확인을 누를 수 없습니다. 파일 선택 취소/삭제는 파싱 결과를 비우고 다시 파일을 고를 수 있게 합니다.
  4. 확인하면 대상 병동·기간 근무표를 찾거나 생성하고 batchUpdateEntries로 인식된 셀을 저장합니다. 성공하면 창을 닫고 N건 업로드 완료를 표시하며 같은 기간을 보고 있으면 다시 로드합니다.
  5. 적용 실패는 **업로드 적용에 실패했습니다. 다시 시도해 주세요.**를 표시합니다. 파일 파싱 성공과 서버 저장 성공은 다르므로 기간·명부·현재 상태를 재조회한 후 다시 적용합니다. 취소는 적용 전 파일 선택을 버립니다.

관리자 희망근무 대리 입력 ​

  1. 병동 설정 → 주기 설정 → 희망근무 탭 사용이 켜진 관리자 화면의 희망근무를 엽니다. 병동·연월을 고르고 그리드/목록 및 미입력 인원을 확인합니다.
  2. 직원·날짜 셀 또는 범위를 선택해 입력 팝오버를 엽니다. 빈 셀에는 아무 유형도 미리 선택하지 않습니다. 희망 근무, 특정 근무 불가, 전체 근무 불가, 휴가 중 내용을 지정하고 필요하면 사유/메모를 입력합니다. 원하는 D와 불가 D를 같은 날짜에 동시에 중복 지정하지 않습니다.
  3. 저장하면 해당 직원·연월의 기존 희망 기록에서 선택 날짜를 치환하고 upsertPreferenceByManager로 제출됨 상태를 저장합니다. 관리자 대리 입력에는 직원용 임시저장→제출 단계를 추가하지 않습니다. 휴가 희망은 현재 날짜만 기록하며 실제 휴가 유형 신청·승인은 만들지 않습니다.
  4. 다시 열어 수정하거나 삭제/Delete/Backspace로 선택 날짜 희망을 제거합니다. Ctrl/Cmd+Z·다시 실행으로 이전 입력을 복구할 수 있으며 서버 동기화를 수행합니다.
  5. 근무표 → 희망근무 토글을 켜면 제출된 희망과 실제 배정을 비교합니다. 원하는 일정이 자동 배정되었다는 뜻은 아닙니다. 실제 배정은 근무표 편집에서 수행합니다.

다중 직원 저장은 직원별 순차 호출이며 중간 실패가 앞선 성공을 되돌리지 않습니다. 성공/실패 후 서버를 다시 읽어 부분 반영을 표시합니다. 현재 일부 실패는 콘솔 기록만 남으므로 저장 뒤 각 날짜를 재확인해야 합니다. 간호사 본인의 숨김 내 희망 일정 UI/API를 현재 사용 가능한 메뉴로 소개하지 않습니다.

환자수·지표와 출근 비교 ​

  1. 당일은 상단 오늘 환자수의 병동별 입력(0 이상 정수)을 바꾸면 해당 날짜에 즉시 저장합니다. 합계는 병동별 합입니다. 병동/월 전환과 오늘 입력의 대상 날짜가 다를 수 있으므로 표시 날짜를 확인합니다.
  2. 월 단위는 환자수 관리를 열고 병동·이전/다음 월·오늘을 선택합니다. 날짜별 환자수와 D/E/N 배정 인원, 전월 평균·최소·최대·입력일, 월간 통계를 확인합니다. 미래 날짜는 직접 입력이 비활성입니다.
  3. 개별 날짜 수치를 수정합니다. 미입력 / 수정 / 입력완료 표시와 변경 건수를 확인하고 N건 저장을 누른 뒤 확인창에서 저장합니다. 병상 수 초과·전월 대비 급변 값이 포함되면 확인이 필요한 일수도 표시합니다. 저장 버튼은 변경이 없거나 저장 중이면 비활성입니다. 전체 저장 성공 시 창이 닫히며 일부 실패하면 변경 건수가 남습니다. 저장 전 창을 닫을 때는 변경을 버릴지 확인합니다.
  4. 미입력일을 채우려면 하단 미입력 N일에 옆 수치를 확인합니다. 현재 기본 후보는 전월 평균이며 사용자가 값을 고쳐 입력할 수 있습니다. 일괄 입력 되돌리기는 저장 전 입력을 되돌립니다. 적용 후 변경 건수를 확인해 저장합니다.
  5. 병상수 채움은 이전 자동 추정값의 출처 표기입니다. 실측이 아닌 병상수 추정은 통계에서 제외하고, 사용자가 확정한 일괄 입력은 포함하는 현재 로직을 따릅니다. 과거 가이드의 미입력일 병상수로 채우기를 현재 기본 작업으로 안내하지 않습니다.
  6. 지표 바의 간호등급·준수율과 하단 날짜별 D/E/N 실제/필요 인원을 비교합니다. 병동 명부 인원과 해당 날짜 실제 배정 인원은 다릅니다. 데이터가 없는 지표는 계산 불가/빈 값이며 0% 또는 적합으로 임의 해석하지 않습니다.
  7. 출근 현황을 켜 배정과 실제 출퇴근을 겹쳐 봅니다. 근무시간 불일치 목록에서 단건/전체 수정 액션이 노출된 경우 비교한 직원·날짜·추천 시프트를 확인하고 적용합니다. 이름 우클릭 근태 재계산은 선택 간호사의 기록 재계산을 호출하므로 실행 후 같은 날짜 근태를 다시 확인합니다.

환자수 출처·인력 비율은 경영 지표에도 전달됩니다. 화면 간호등급은 입력자료로 계산한 제품 지표이며 공단 신고·수가 확정의 증명이 아닙니다. 근태 원본과 시프트는 출퇴근, 급여/교육 원천은 급여 시트·인사 기록에 연결됩니다.

확정·공유·편집 복귀·인쇄 ​

  1. 편집 내용·경고·휴가/교육 셀·기간을 확인하고 수정 확인(생성 상태에서는 확인)을 누릅니다. 확인창에서 진행하면 확정이 되고 셀을 잠급니다. 취소는 편집 상태를 유지합니다.
  2. 확정 API는 후속 작업으로 해당 날짜에 기존 대기/승인 휴가가 없으면 근무표 확정 자동 생성 사유의 승인 LeaveRequest와 사용 원장을 만들고 교육 셀에서 TrainingCompletion을 만듭니다. 이미 있는 동일 날짜 관련 기록은 중복 생성하지 않도록 조회합니다. 대기 결재를 새로 올리는 흐름이 아닙니다.
  3. 후속 동기화는 비동기이며 실패해도 근무표 확정 자체는 유지됩니다. 확정 배지만으로 모든 연차 차감·교육 기록 완료를 판단하지 말고 관련 화면을 확인합니다.
  4. 제출을 누르면 관리자 앱에서는 공유 확인창을 엽니다. 확인 시 공유됨으로 전환합니다. 현재 publish API는 상태·게시 시각을 저장하며 이 경로에서 간호사 푸시 알림 호출은 확인되지 않았습니다. 공유와 알림 도착을 같은 완료 조건으로 쓰지 않습니다.
  5. 확정/공유 후 수정은 관리자 앱의 편집을 눌러 수정 중으로 돌아갑니다. 수정 후 다시 수정 확인 → 제출합니다. 편집 복귀가 앞서 자동 생성된 휴가·교육 기록을 역으로 삭제하는 코드는 아니므로 배정 변경과 원천 기록 정합성을 별도 확인합니다.
  6. 출근 원본 재계산은 간호사 이름 우클릭의 근태 재계산을 누르고 해당 직원·현재 주기·수동 기록 유지 안내를 확인한 후 실행합니다. 취소는 재계산하지 않습니다. 완료는 처리 건수를 알리고 출근 겹쳐 보기가 켜져 있으면 다시 조회합니다. 실패는 오류 안내 후 원본/기간을 확인해 재시도합니다.
  7. 출력은 인쇄를 누릅니다. 선택 병동·기간을 확인하고 브라우저 인쇄 화면에서 인쇄/PDF 저장을 선택합니다. 인쇄 취소는 근무표 상태를 바꾸지 않습니다. 통계는 하단 합계와 환자수 화면에서 확인하며 전체 원본 내보내기와 다릅니다.

유지보수·근거·검증 경계 ​

  • 관리자 UI 진입과 툴바, 관리자 전체 동작, 내부 결재 구현, 희망근무 UI.
  • NurseSchedulerService, API·권한·상태·비동기 동기화, 입력 스키마, 근무표 엔터티, 배정 엔터티.
  • 초기 로딩은 booted 재진입 가드와 병렬 조회, findByPeriod로 개선되었습니다. 설명의 지연 150ms 로컬 조건·2.4초→1.2초 수치는 과거 측정이며 이번 새 측정이나 운영 응답 보장이 아닙니다.
  • 자동 생성·직원 희망 제출의 노출 상태, 관리자 대리 입력, 환자수 출처·일괄 입력, 확정의 승인 휴가 생성, 공유 확인 및 편집 복귀를 반영했습니다. 이전 가이드 ns-04.png를 열어 관리자 근무표·희망근무 탭·비활성 AI 버튼을 확인했습니다. 배포 커밋·브라우저·실제 뷰포트는 미기록이며 새 성공 증거로 재사용하지 않았습니다.
  • 남은 실행/자료: 권한별 관리자·팀 관리자 차이, 새 병동/간호사/예약 이동, 셀 선택·채움·복원·업로드의 짧은 영상, 희망 입력 부분 실패, 환자수 실측/일괄/추정 통계, 확정 후 휴가·교육 원장 생성, 공유 후 수정 정합성. 실패가 콘솔에만 남는 경로도 있으므로 저장 전후 및 새로고침 결과가 함께 필요합니다.

간호 스케줄러 사용 영상 ​

45초 · 소리 없음 · 화면 안의 번호와 강조 위치를 따라 보세요. 전체화면으로 확대할 수 있어요.

처음에는 재생 버튼을, 다시 볼 때는 아래 동작 번호를 누르세요.

  1. 스케줄러를 엽니다

    관리자 메뉴에서 「스케줄러」를 누릅니다. 간호 근무표 관리 권한과 등록된 병동·간호사가 필요합니다. 자세히 따라 하기

  2. 병동과 기간을 확인합니다

    병동과 연월, 실제 시작·종료일을 확인합니다. 영상은 작성 중인 예제 A병동의 9월 16일~10월 15일 근무표입니다. 확정 상태라면 먼저 「편집」을 눌러야 합니다. 자세히 따라 하기

  3. 변경할 셀을 엽니다

    변경할 간호사와 날짜가 만나는 셀을 더블클릭해 배정 메뉴를 엽니다. 자세히 따라 하기

  4. 주간 근무를 배정합니다

    「D 주간」을 선택합니다. 영상은 조은별의 9월 16일 셀을 N에서 D로 바꾸며, 선택 즉시 셀 저장 요청이 실행됩니다. 자세히 따라 하기

  5. 수정 내용을 확인합니다

    「수정 확인」을 누르고 확정 안내와 경고를 확인합니다. 자세히 따라 하기

  6. 근무표를 확정합니다

    「확인」을 누른 뒤 확정 상태와 변경한 셀을 확인합니다. 확정은 휴가·교육 등 후속 기록과 연결될 수 있으며, 「제출」을 통한 공유는 별도 단계입니다. 자세히 따라 하기

교육용 예제 조직에서 촬영했어요. 이름·금액·날짜는 교육용 예시이며, 사용 중인 조직의 자료를 확인하세요.

간호 스케줄러 소개와 사용자 교육에서 실제 누르는 위치와 결과를 따라갈 수 있도록 번호 자막·강조 표시를 붙여 촬영했습니다. 별도 DB의 로컬 예제 조직·관리자 테스트 계정을 사용했습니다. 화면 크기는 1440×900입니다. 예제 A병동의 2026-09-16~10-15 근무표에서 조은별의 9월 16일 근무를 N에서 D로 변경하고 확정 표시를 확인했습니다. 제출·공유·후속 휴가/교육 동기화 결과·직원 수신은 별도 검증 대상입니다.

앱 소개 · 영상 목록과 교육 범위 · 촬영·검증 기록

설정별 사용 영상 ​

인력 설정, 교대 매핑, 교육 정책·주기·희망근무 표시를 각각 독립 영상으로 연결했습니다. 간호 스케줄러에 접근 가능한 예제 관리자, 로컬 촬영 DB, 1440×900 화면을 사용했습니다. 각 영상의 번호 버튼에서 해당 조작 시점으로 이동할 수 있습니다.

작업실제 조작과 재확인관련 데이터·영향
인력 기준병동 설정 → 인력 설정에서 간호사 D/E/N 비율 5/7/10과 환산 계수 0.5/0.3을 읽고, 보조인력 기준을 12/10/10으로 저장한 뒤 다시 열어 확인간호등급·준수율·경영 대시보드 인력 계산의 기준. 비율과 환산 계수의 단위를 구분
교대 매핑3교대 D/E/N을 주간 07–15·저녁 14–22·야간 22–06에 연결하고 전담 근무 3종에도 대응 유형을 지정. 저장 후 재조회근태 현황의 근무 유형을 참조. 실제 출퇴근 기록·급여의 재계산 완료를 이 영상으로 판단하지 않음
교육 정책교육 휴무를 선택해 저장·재조회한 뒤 원래 교육 근무 인정으로 복원교육일 근무 인정 방식. 교육수당 계산·지급은 별도 후속 처리
근무표 주기시작일 16에서 1로 변경, 확인창 승인, 재조회 후 16으로 복원1–28일 입력. 기존 9월 16일~10월 15일 표의 기간은 유지되고 새 표의 주기에 적용
희망근무 탭주기 설정에서 사용 끄기, 상단 탭이 사라진 결과 확인, 다시 켜기별도 저장 버튼 없이 즉시 저장. 입력 기록 삭제와 구분

유지보수 시 apps/admin/src/views/scheduler/modals/ward-settings.html의 입력·저장 조건과 스케줄러의 설정 API 연결을 함께 확인합니다. 가이드의 화면 요약만으로 저장을 증명하지 않도록 재조회 장면을 포함했습니다. 다른 권한·동시 편집·조직별 인력 계산 및 급여 결과는 이번 촬영 범위 밖입니다.

명부·환자수·희망근무·공유 영상 ​

사용자 가이드촬영한 진입·조작·결과관련 기능과 남은 범위
간호사 등록간호사 탭 → 간호사 등록 → DOC002 홍영상 검색 → 3교대·영상 실습 병동 선택 → 등록 → 상단 병동 필터 전환 → 명부 확인직원 등록·소속 팀과 별도 간호 프로필 연결. 다른 병동에 등록하면 현재 병동 목록에 바로 나타나지 않음. 자동등록·예약 이동은 남음
환자수 입력환자수 관리 → 예제 A병동·9월 확인 → 9월 8일 31명 입력 → 1건 저장 → 확인창 저장 → 창이 닫힌 후 다시 열어 31명 확인병상 수 35, 미래 날짜 입력 불가. 근무표가 없는 날짜의 인력 계산은 불가. 일괄 입력·부분 저장 실패는 남음
희망근무희망근무 → 영상 실습 병동 → 홍영상의 9월 16일 셀 → 위쪽 D(주간) 희망 → 사유 입력 → 저장 → 셀 D 표시·사유 확인upsertPreferenceByManager의 관리자 대리 입력. 실제 배정·휴가 결재와 구분. 불가·휴가 예정·범위 선택·부분 실패는 남음
간호등급·준수율예제 A병동 기간 확인 → 지표 바의 등급·준수율·명부 인원·오늘 환자수 읽기 → 환자수 관리에서 월별 원천 비교자료가 없어 ‘-’인 값은 계산 불가로 읽음. 법정 등급 신고·외부 판정 검증은 아님
확정·공유기존 확정 근무표 → 제출 → 근무표 공유 확인창 → 공유 → 공유됨 표시 → 병동을 바꿨다가 돌아와 상태 재확인API의 publish는 조직·확정 상태를 검사한 뒤 공유 상태·시각을 저장. 직원 계정 조회·실기기 수신, 확정 후 휴가·교육 후속 자료는 별도 검증

영상은 로컬 예제 DB에서 촬영했으며 실제 고객 데이터·운영 근무표는 변경하지 않았습니다. 입력창의 단어와 확인창은 apps/admin/src/views/scheduler/ 및 apps/admin/src/scheduler.ts, 조직별 저장·상태 전이는 packages/api/src/routers/nurse-scheduler.router.ts를 함께 대조했습니다. 실패하거나 결과 확인이 빠진 재촬영본은 문서 자산으로 연결하지 않았습니다.

직원 근무 형태 변경 신청 영상 ​

직원 가이드의 근무 형태 변경에 실제 5단계 영상을 연결했습니다. Codex가 간호 프로필을 갖춘 예제 EMP001로 「더보기」 → 「근무 형태 변경」에 진입했습니다. 기존 대기 신청은 새 신청을 막으므로 해당 건의 「취소」와 확인창 오른쪽 「취소」를 눌러 취소했습니다. 확인창 두 버튼의 문구가 같으므로 영상에서 누르는 쪽을 번호로 표시했습니다.

현재 3교대에서 데이전담을 선택하고 사유·희망 적용일 2026-10-16을 입력해 「변경 신청」을 눌렀습니다. 승인 대기 안내와 동일 사유의 신청 내역을 확인했으며 현재 형태는 3교대로 유지됩니다. 이는 개인 출퇴근 시간 선택과 다른 승인 업무입니다. 간호 프로필이 없으면 신청할 수 없고, 대기 신청이 있으면 중복 신청할 수 없습니다. 관리자 승인·적용일 반영과 새 근무표 생성은 이번 영상에서 실행하지 않았습니다.

직접 편성과 일별 집계 영상 ​

초안 작성 영상은 영상 실습 병동의 2026-09-16~10-15 주기, 홍영상(DOC002)의 9월 16일 한 셀을 더블클릭하고 배정 메뉴의 D를 선택한 과정입니다. 다른 병동으로 갔다가 돌아와 같은 셀의 D 저장을 확인했습니다. 희망 입력과 달리 실제 근무 배정이며 확정·제출은 아직 별도입니다. 이어 업로드 창에서 병동·월을 확인하고 양식.xlsx를 내려받았습니다. 작성한 파일 선택·파싱·서버 적용은 이 영상에 포함하지 않았습니다.

일별 합계 영상은 예제 A병동 근무표의 날짜별 D/E/N 인원·기준과 간호사:환자 합계를 읽고 인쇄 버튼 위치를 확인합니다. 브라우저 인쇄 창, PDF 저장·실제 출력은 미촬영입니다. 합계는 해당 병동·근무표 주기와 환자수 입력 자료의 집계이며 공단 제출 완료나 법정 등급 판정을 뜻하지 않습니다.

직접 배정의 진입점은 현재 더블클릭/우클릭 공통 배정 메뉴(data-cell-ctx-menu)입니다. 이전 근무 변경 팝오버만을 안내하면 실제 진입과 어긋납니다. onGridDblClick → handleCellContextMenu → assignToSelected → 저장/재조회 관계와, 원천 환자수·인력 기준이 일별 합계에 적용되는 범위를 유지보수 때 함께 확인합니다.

다운로드 결과도 XLSX 내부를 열어 확인했습니다. schedule-template-영상 실습 병동-2026-09.xlsx는 사번·이름과 16일부터 다음 달 15일까지의 날짜 열, DOC002·EMP001의 두 명부 행을 포함하며 배정 칸은 비어 있습니다. 빈 양식 다운로드가 화면의 기존 D 배정을 내보내는 동작은 아닙니다.