/SimpleHR project
SimpleHR project

RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)

sourceedited by Cairni · 방금 · AIv1

배경 및 방법

기업 모바일은 RN 앱(mobile/src)웹 모바일뷰(frontend/src/components/user/mobile/MobileXXX.tsx) 이중 구조로 운영된다. 웹모바일은 정상 동작하나 RN 앱에서 안 되는 기능이 많다는 현장 피드백을 받아, 12개 도메인을 웹모바일 기준으로 RN과 코드(파일·라인) 수준에서 1:1 대조했다. RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)

총평: RN 이식이 웹모바일보다 후속으로 진행되며 최근·핵심 기능이 미반영. 특히 출퇴근 인증방식(QR·IP)휴가 촉진 응답이 RN에 통째로 빠져 실사용을 직접 차단한다.


도메인별 종합 현황

도메인별 판정AI · 출처 클릭
✅ 정상1
급여(payroll) — 누락 0, 부분 0
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
⚠️ 격차 있음11
대시보드(홈) — 누락 4, 부분 4
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
출퇴근(attendance) — 누락 4, 부분 3
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
휴가(vacation) — 누락 4, 부분 0
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
조직도(directory) — 누락 2, 부분 1
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
프로필/내정보(profile) — 누락 3, 부분 1
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
신청서/서류(applications) — 누락 1, 부분 3
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
결재(approval) — 누락 2, 부분 3
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
메시지(messages) — 누락 1, 부분 2
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
공지(notices) — 누락 0, 부분 1
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
연장근로(overtime) — 누락 0, 부분 1
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
근무표/일정(schedule) — 누락 1, 부분 0
RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)

🔴 HIGH — 실사용 차단

1. 출퇴근 QR·IP 방식 RN 전무

RN CheckInSheet.tsx:161check_in_method:'GPS'만 하드코딩. 웹모바일은 GPS/QR/IP 세 방식을 모두 지원한다.

  • QR: 웹 CheckInLocationSheet.tsx:584-591,858viaQr + qr_token. RN에 QR UI·경로 없음 → QR 전용 근무지 직원 앱 출퇴근 불가.
  • IP(사내망): 웹 :592-596 handleIpConfirmviaIp. RN에 viaIp/allowed_ips 미사용 → IP 전용 근무지 직원 앱 출퇴근 불가.

GPS 출퇴근 스펙 참고.

2. 연차촉진 응답 RN 전무 (근기법 61조)

웹모바일 MobileVacation.tsx에 촉진 응답이 완비(leaveApi.myPromotionNotices() L165)돼 있으나 RN vacation에 promotion 엔드포인트·UI 전무.

  • 촉진 통보 배너: 웹 MobileVacation.tsx:208-259. RN 미구현.
  • 1차 응답(사용 계획 제출+서명): 웹 PromoResponseSheet round=1. RN 미구현.
  • 2차 응답(회사 지정 사용일 확인 서명): 웹 round=2. RN 미구현.

연차촉진 스펙 참고.

3. 조직도 부서 칩 필터 누락

MobileDirectory.tsx:20-23,70-90 — distinct 부서 칩으로 직원을 부서별 필터. RN DirectoryScreen.tsx는 서버 페이지네이션을 이유로 의도적 제거 → 부서 기준 직원 탐색 수단 소실. (검색도 이름·이메일만, 부서명·직책 검색 불가.)

조직도 관리 스펙 참고.

4. 프로필 필수서류 제출·조회 RN 전무

MobileProfile.tsx:376-505getMyRequiredDocuments 목록 + UPLOAD/PASTE/SIGN 처리 + 재제출/취소 + 상태 배지. RN ProfileScreen.tsx:242-265는 PC 안내만 표시.


🟠 MEDIUM — 완결성

항목웹모바일RN 상태
결재 '전체' 통합 탭근태+서류 날짜순 합본근태/서류 2탭만
결재 서류 본문 리치 렌더폼 스키마+TemplatePreview15개 라벨 key-value 표(커스텀 폼 raw 키 노출)
조직도 '메시지 보내기'/user/messages?new=1 딥링크미구현
대시보드 허용시간 외 폴백EARLY/LATE → 출퇴근 요청에러 문구만
대시보드 계약 미서명 액션'날인하러가기' 버튼토스트 액션 버튼 미지원
출퇴근 폴백 GPS 역지오코딩주소 첨부좌표만(결재자에게 주소 미노출)
신청서 서명/도장 입력서명 캔버스'PC에서 작성' 안내만
프로필 서류함(계약서/보관함/제증명서)조회·PDF·서명 완비전무
프로필 자격증·면허 목록만료/임박 배지 포함전무

🟡 LOW — 소소한 격차

  • 공지 본문 하이퍼링크: RN logic.ts:127이 인라인 태그 제거 → href 소실.
  • 연장근로 사유 입력 maxLength: RN 500자 vs 웹 무제한.
  • 근무표 개인화 헤드라인: 웹만 '{이름}님의 이번 주 근무', RN은 고정 타이틀.
  • 메시지 새 대화 picker: 웹 부서 계층 트리 vs RN 평면 칩; 프로필 사진 vs 이니셜.
  • 결재 상세 대기 결재자 표시: 웹은 '~님 결재중' 표시, RN 상세 시트 미표시.

착수 권장 순서

AI · 출처 클릭
  1. 1순위
    출퇴근 QR·IP (RN) — CheckInSheet에 인증방식 선택 + QR스캔·IP 경로 추가. auth_methods·allowed_ips 소비.
    RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
  2. 2순위
    휴가 촉진 응답 (RN) — vacation/api.ts에 promotion 래퍼 + 배너 + 응답 시트(1·2차) + 내역.
    RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
  3. 3순위
    프로필 필수서류·서류함·자격증 (RN) — UPLOAD·PASTE 제출, 계약서/서류/제증명서 조회.
    RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
  4. 4순위
    신청서 서명·붙여넣기·본문 리치 렌더 (RN) — TemplatePreview 엔진 이관 규모 검토.
    RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
  5. 5순위
    결재 통합탭 / 조직도 필터·메시지 / 대시보드 폴백·계약 액션 — 완결성.
    RN 앱 ↔ 웹모바일뷰 기능 격차 감사 (0729)
참고: 급여(payroll)는 이의조회 이식으로 웹모바일과 동등 수준 달성. 급여관리 스펙 참고.

관련 페이지

Made with CairniExplore public wikis →