Skip to content

HBEA000_직원 앱 (앱 개요) ​

(Hereby) 직원 앱 > 앱 개요

앱직원 앱 (Employee App / ESS, 포트 4002)
대상 사용자조건1 [직원(self scope)] — 전 직원 공통
프로토타입TBU
관련 정책[[POL_권한(RBAC)]] · [[POL_급여정본경계]] · [[POL_결재워크플로우]] · [[POL_근태원천]]
Statusreview
Owner카나 (PM)

개요 ​

직원 앱은 전 직원이 self 권한 범위로 사용하는 모바일 PWA 셀프서비스 front door다. HR/Admin에서 생성된 원천(급여·근태·휴가·증명서)을 직원이 self 범위로 조회·신청한다. 화면 구조는 하단 4탭("근무" / "메신저" / "결재" / "더보기"). 결재 탭이 휴가·근무·인센티브·서류 4 카테고리 신청 허브로 통합된다. 운영 URL https://okbest.dev.hereby.me/employee-app — 미인증 시 /employee-app/signin 리다이렉트. 핵심 경계: 모든 신청 mutation은 self scope + 사람 confirm이며 타인 데이터·결재 자동승인은 금지, 급여 원장·명세서 본문·교부 이력의 정본 수정은 직원 앱에서 수행하지 않는다.

문서 히스토리 ​

날짜작성자팀변경 내용
2026-07-06카나PM최초 작성
2026-07-10카나PM라이브 기능 검토 반영
2026-07-21카나PMGC700 깊이 재작성
2026-07-21카나PM하위 화면 상태표 추가 + 결재 허브(HBEA400/410/421) 트리 반영
2026-07-21카나PM셀 스타일 확정판 적용 (콸 승인)
2026-10-22카나PM(10/21 머지분, PR #1257) 앱 레벨 기록 2건 — ① 스켈레톤 로딩(bde9d981): 직원 앱 홈 피드·결재·프로필·드라이브 모달·내 정보 등 로딩 상태에 DS 스켈레톤 플레이스홀더 적용 ② 날짜 표기 통일 「YYYY.MM.DD.」(3f5cf23, 63파일 중 직원 앱 포함): 날짜 표기가 「2026.10.13.」 형식으로 통일. 외관·로딩 표현 변경으로 화면별 사양 행 반영 불요, 앱 레벨 기록만. 부수: #1298(012d7aef) 모바일 빌드 구성·버저닝 갱신(간접). 커밋 근거
2026-10-21카나PM(10/20 머지, #1256 design/color-theme) 라이트/다크 테마 전면 도입 — 직원 앱 다크 전 화면(d80d4c5, 60파일) + 잔여 고정 상태 표면·화이트라벨 다크(e20bd2f)·하단 내비 캡슐/확인 띠 다크 분리(b3fa7f8)·다크 상태 틴트 완화(bdb2f6b). 정책: 테마 전환 UI는 hereby Works(직원 앱)에만 제공 — admin은 다크 스타일만 대응하고 전환 기능 없음, 공유 오리진에서 Works 테마 선택을 admin이 상속하지 않도록 차단(5820cf3). info 안내색 파랑 유지 확정. 개별 화면 동작 변화 없음(외관 토큰 전환) — 화면별 사양 행 반영 불요, 앱 레벨 기록만. 커밋 근거

Data I/O ​

Server → Client ​

변수DB 엔티티.컬럼값 없을 때비고
$인증 세션 (self scope)/employee-app/signin 리다이렉트⚠ 계정 레이어 전환(7/16 코드) 반영 여부 라이브 확인 필요
$Employee self (본인 프로필)hide"최콸 / 관리자" 형태 표시
$ConversationMember.unreadCount + Notification.isRead=false0 (배지 미표시)메신저 미읽음 + 알림 미읽음
$Attendance (당일 근태)"미출근"근무 탭 현재 상태 카드

Client → Server ​

액션전달 값tRPC procedure권한 토큰
휴가 신청leaveType, startDate, endDate, reasonsdk.leave.request() (추정)leave:request.self (추정)
연장·휴일 근무 신청workDate, startTime, endTime, typeId, reasonsdk.overtime.request() (추정)overtime:request.self (추정)
외근 신청workDate, location, typeId, reasonsdk.fieldwork.request() (추정)fieldwork:request.self (추정)
증명서 제출·요청documentType, filesdk.document.request() (추정)document:request.self (추정)

생성 엔티티: 휴가 → LeaveRequest · 연장/휴일 → OvertimeRecord · 외근 → OffsiteWorkRecord. procedure/토큰 명 미확정은 TBU.

외부 통합 (cross-app) ​

외부 시스템데이터동기/비동기비고
Team Management (HBTM)직원 신청 → 팀장 결재 승인 라우팅비동기[[POL_결재워크플로우]]
Admin (HBAD)연장근무·외근·휴가 유형, 근태원천 config 소비동기(조회)HBAD261 / HBAD270
HR (HBHR)급여명세서 원천·전자서명 교부 입증층비동기HBHR270
알림/발송 (Notification)per-event/per-channel 선호·mute·device_tokens 푸시비동기[[HBEA110_Shell·탭바·알림]]

화면 플로우 (4탭) ​

직원 앱은 조회·신청까지의 self-service 표면이다. 결재 승인은 HBTM, 정본 수정은 HR/Admin이 실행한다.


앱 개요 사양표 ​

번호항목/기능명타입사양 및 기능 설명연관/영향 범위비고
00화면 진입 조건-• 앱 진입 시 직원 인증(self scope)을 요구하는 게이트
• 진입 시: 조건1 [직원 인증(self scope)] 이면 노출
 - CASE01 [미인증]: /employee-app/signin 리다이렉트
• 조건1 [직원] 전용 — 타 앱 계정 접근 경로 없음
${employee_session} · [[POL_권한(RBAC)]]⚠ 계정 레이어 전환(7/16 코드) 반영 여부 라이브 확인 필요
TBU: 세션 만료 재시도 UI · 타 앱 계정 접근 경로
01초기 상태Output• 진입 직후 랜딩 화면
• 진입 시: "근무 탭 (홈)" 랜딩
 - CASE01 [당일 미출근]: "현재 상태 미출근" 카드 표시
[[HBEA200_근무 탭 (홈)]]
10정체성Info• 전 직원 self-service front door — HR/Admin 원천을 self 범위로 조회·신청하는 모바일 PWAPWA
204탭 구조-• 하단 탭바 4탭 컨테이너: "근무" / "메신저" / "결재" / "더보기"(각 탭 액션은 ㄴ21-24)
• 4월 5탭에서 재편(인센티브 탭 → 결재 서브탭 통합)
Shell 공통 [[HBEA110_Shell·탭바·알림]]
ㄴ21근무Tab• 출퇴근 현황 홈(지문기 config-gated punch), 오늘 근무 유형 표시(예: "3교대 주간 07:00 - 15:00")
• 클릭 → [[HBEA200_근무 탭 (홈)]] 전환
[[HBEA200_근무 탭 (홈)]]
ㄴ22메신저Tab• "대화" / "연락처" / "그룹 대화" — 공지는 "대화" 상단 "공지 n" 섹션, 배지 "메신저 0"
• 클릭 → [[HBEA300_메신저]] 전환
[[HBEA300_메신저]]4/5 개편
ㄴ23결재Tab• 휴가·근무·인센티브·서류 4서브탭 신청 허브
• 클릭 → [[HBEA400_결재 허브]] 전환
HBTM 승인
ㄴ24더보기Tab• 프로필 / 내 정보 / 근무 설정 / 급여명세서 / 로그아웃, 하단 "Hereby Works v1.0.0"
• 클릭 → [[HBEA500_더보기]] 전환
[[HBEA500_더보기]]
30권한 범위 (self scope)Info• 모든 조회·신청 = Admin 권한 트리 (본인) scope 토큰으로 제한 (self < team < full). 타인 데이터·결재 자동승인 금지[[POL_권한(RBAC)]]self scope
40화면 목록 (I.A.)List• 앱 하위 화면 트리(로그인·Shell·근무·메신저·결재 허브·더보기). 결재 허브는 4서브탭 신청 트리(ㄴ41-ㄴ46)앱 하위 화면
ㄴ41ㄴ 로그인·ShellLink• 클릭 → [[HBEA100_로그인]] / [[HBEA110_Shell·탭바·알림]]
ㄴ42ㄴ 근무·메신저Link• 클릭 → [[HBEA200_근무 탭 (홈)]] / [[HBEA300_메신저]]
ㄴ43ㄴ 결재 허브Link• 4서브탭 공통 골격(서브탭 스위처·상태 필터 칩·FAB)
• 클릭 → [[HBEA400_결재 허브]]
결재 탭 진입공통 허브
ㄴ44ㄴㄴ 휴가·근무Link• 클릭 → [[HBEA410_휴가신청]] / [[HBEA420_근무 신청 (연장·휴일/외근)]] / [[HBEA421_보고서 제출]]HBEA400 서브탭보고서=근무 후속
ㄴ45ㄴㄴ 인센티브·서류Link• 클릭 → [[HBEA430_인센티브]] / [[HBEA440_서류관리]]HBEA400 서브탭
ㄴ46ㄴ 더보기·명세서Link• 클릭 → [[HBEA500_더보기]] / [[HBEA510_내 정보·근무 설정]] / [[HBEA530_급여명세서 모달]]
50cross-app 연결List• HBTM(신청 승인) · HBAD(유형·근태원천 config 소비) · HBHR(급여명세서·전자서명 교부) · Notification(알림·푸시)Data I/O 외부 통합 참조
ㄴ51ㄴ 신청 승인Link• 휴가/연장/외근/서류 신청 라우팅
• 클릭 → [[HBTM01_TeamManager_팀결재워크스페이스]]
[[POL_결재워크플로우]]
ㄴ52ㄴ 유형 소비Link• 연장근무·외근·휴가 유형 소비
• 클릭 → [[HBAD261_유형 설정 (연장근무·외근·휴가)]]
[[HBAD270_설정 (조직 설정·내 정보)]] · [[POL_근태원천]]
ㄴ53ㄴ 명세서 교부Link• 급여명세서 원천·전자서명 교부 입증층 연계
• 클릭 → [[HBHR270_전자서명 발송·eCount 연동 시트 (2섹션)]]
[[POL_급여정본경계]]

AI 접점 요약표 ​

ESS AI는 greenfield 확정(메신저 탭 AI 핀 0). 전 skill이 self scope + read/suggest/request-create + 사람 confirm 경계 내. 신청 mutation은 사람 confirm + 멱등키, 타인 데이터·결재 자동승인 금지([[POL_권한(RBAC)]] · [[POL_급여정본경계]]).

AI Skill트리거 위치동작안전 경계
휴가 자연어 신청결재 > 휴가신청"다음주 화수목 연차" → 결재 초안 → confirm → LeaveRequestWrite+confirm, self
잔여연차·근무시간 질의근무 / 결재"연차 며칠?" "이번주 몇시간?"Read, self
52h 임박 경고근무 탭주 52h 한도 임박 자동 경고(과태료 사전차단)Read, self
내 명세서 항목 설명더보기 > 급여명세서"이번달 야근수당 얼마?" 자연어 설명Read, self-only
외근→인센티브 본인 등록결재 > 근무·인센티브"강남 방문 끝, 외근+인센티브 등록" → 초안 → confirmWrite+confirm, self-register TBU 후 활성
결재상태 추적결재 탭"내 휴가 어디까지?"Read, self
증명서 자연어 발급결재 > 서류관리"은행용 재직증명서 1부" → DocumentRequestWrite+confirm, self
신입 온보딩 가이드첫 로그인첫 로그인 자동 체크리스트self

권한·상태 분기 요약 ​

시나리오트리거결과 화면비고
CASE01 [미인증 진입]/employee-app 직접/employee-app/signin 리다이렉트(비밀번호 / 휴대폰 인증)⚠ 계정 레이어 7/16
CASE02 [직원 인증]로그인(self scope)근무 탭 홈
CASE03 [신청]결재 > + 작성대기중 → 승인/반려/취소(팀장 결재 = HBTM)self scope

하위 화면 상태 ​

화면코드버전Status최종 갱신비고
로그인[[HBEA100_로그인]]v2review2026-07-21
Shell·탭바·알림[[HBEA110_Shell·탭바·알림]]v3review2026-07-21fixed-header 정책 반영
근무 탭 (홈)[[HBEA200_근무 탭 (홈)]]v2review2026-07-21
메신저[[HBEA300_메신저]]v3review2026-07-21공지 확인 cross-app write-back
결재 허브[[HBEA400_결재 허브]]v3review2026-07-21GC700 재작성 — 4서브탭 공통 골격
휴가신청[[HBEA410_휴가신청]]v3review2026-07-21GC700 재작성 — 휴가 신청 폼
근무 신청[[HBEA420_근무 신청 (연장·휴일/외근)]]v3review2026-07-21연장·휴일/외근 폼·필터
보고서 제출[[HBEA421_보고서 제출]]v4review2026-07-21GC700 재작성 — 외근 보고서 폼(제출 검증분)
인센티브[[HBEA430_인센티브]]v2review2026-07-21
서류관리[[HBEA440_서류관리]]v3review2026-07-21
더보기[[HBEA500_더보기]]v3review2026-07-21
내 정보·근무 설정[[HBEA510_내 정보·근무 설정]]v3review2026-07-21
급여명세서 모달[[HBEA530_급여명세서 모달]]v1draft2026-07-21실직원 데이터 대기

Open Question ​

  • ⚠ 계정 레이어 전환(7/16 코드): 세션 발급 주체·계정 소속(직원/테넌트) 레이어 변경이 EA 로그인·개요에 반영됐는지 라이브 재확인 필요
  • 권한 레벨 체계(self/team/full, 조회/관리/계산/승인 상하관계·내부 key) = TBU (HBAD 공통)
  • 인센티브 self-register: 현재 화면에 본인 등록 진입점(버튼·FAB) 없음 [[HBEA430_인센티브]]
  • 메신저 탭 AI 핀 배치(단체방 영구 핀 / 별도 AI 탭) = TBU
  • 급여명세서 §48 본문 + 전자서명 서명 액션(실직원 계정 필요) = TBU
  • Data I/O tRPC procedure·권한 토큰 명칭 확정값 = TBU