0설계 원칙
서버를 새로 만들지 않는다뷰어·티저처럼 CF Pages 정적 페이지 + Supabase Edge Function 조합. 월 추가 비용 0원.
읽기 먼저, 쓰기는 확인 카드1단계는 조회 전용. 상태 변경 같은 쓰기는 "정말 정지할까요?" 확인 카드를 거쳐 실행하고 전부 감사 로그에 남김.
지표는 기존 테이블에서회원·문서·매칭·평가·공유링크는 이미 DB에 있음. 새로 수집할 것은 앱 사용 이벤트 하나뿐.
크라니즈 ERP와 완전 분리코드·DB·배포 모두 별개. 패턴(확인 카드, 사용 로그)만 사상으로 참고.
1전체 구조 — 8개 모듈
좌측 내비게이션 하나로 오가는 단일 페이지 앱(SPA). 도메인은 admin.oright.co.kr.
WIREFRAME · 공통 레이아웃
① 대시보드
② 회원
③ 서류
④ 매칭
⑤ 분석
⑥ 마케팅
⑦ 운영 도구
⑧ 시스템
2① 대시보드 — 아침에 여는 한 화면
"오늘 서비스가 건강한가"를 30초에 판단. 매일 보는 유일한 화면이라는 전제로 설계.
- KPI 스트립: 오늘 가입(차주/OPR) · 문서 발행 · 공유링크 열람 · 매칭 성사 · 주간 활성 회원
- 주간 추이 미니차트: 발행·가입·열람 7일 스파크라인
- 할 일 알림: 사업자 검증 대기 n건 · 신고 n건 · 버그 신고 n건 — 클릭하면 해당 큐로 이동
- 최근 활동 피드: 방금 가입·방금 발행·방금 성사 (실시간 감각 유지)
WIREFRAME · 대시보드
+4오늘 가입
17문서 발행
31링크 열람
2매칭 성사
48주간 활성
⚠ 할 일 — 검증 대기 3 · 신고 0 · 버그 1
최근 활동 — "한결중기, 명세서 발행" …
3② 회원(거래처) 관리
차주·오퍼레이터를 하나의 목록에서 검색·필터하고, 상세에서 그 회원의 모든 것을 봅니다.
- 목록: 역할·장비 종류·지역·상태(활성/휴면/정지)·가입일 필터 + 이름/회사/전화 검색
- 상세: 프로필 · 보유 장비 · 문서 발행 이력 · 매칭 이력 · 받은/남긴 평가 · 공유링크 · 운영 메모(우리끼리 기록)
- 액션(쓰기): 사업자 검증 승인/반려 · 계정 상태 변경 · 문의 대응 메모 — 전부 확인 카드 + 감사 로그
- 검증 대기 큐: 사업자등록증 올린 순서대로 처리 — 베타 신뢰의 핵심 업무라 대시보드에서 바로 진입
WIREFRAME · 회원 상세
한결중기(주) · 차주 · 활성
김한결 · 010-****-1234 · 경기 고양
사업자 123-45-67890 ✓ 검증됨
장비 2대 — 크롤러 50톤 · 유압 25톤
문서 14건 (이번 달 3) · 매칭 5건
공유링크 활성 2 · 평가 ★4.8
타임라인: 6/30 명세서 발행 → 6/28 매칭 완료 → … · [운영 메모 +]
4③ 서류 현황 — 우리 성장 엔진의 계기판
- 발행 추이: 명세서/견적서 일·주·월, 월대 vs 시간제 비율
- 공유링크 테이블: 상태(활성 D-n/만료/회수)·열람 수·수신처 — 문서가 어디까지 퍼지는지가 곧 바이럴 지표
- 보관함 통계: 현장 반입 서류 등록률·만료 임박(보험 1년·비파괴 6개월·교육 3년) 알림 대상
- 현장 자료실(신설 예정 기능): 자료실 수·재열람률(셀프서브 가설 검증)·요청→수락 대기 큐·rotate/회수 이력 — SITE_ROOM_DESIGN 연동
- 안전정보 등록 현황: 장비별 안전장치 체크리스트 입력률·증빙(L2) 연결률·검사 만료 임박 — SAFETY_INFO_DESIGN 연동
- 시그니처 QR 유입: oright.co.kr 방문 중 QR 경유 비율 (문서 하단 시그니처 켠 뒤의 효과 측정)
5④ 매칭 운영
- 진행 보드: 모집 중 → 성사 → 완료 — 오래 머무는 요청(3일+ 무지원)은 노랑 표시 → 수동 개입(전화) 대상
- 품질 지표: 성사율 · 요청→성사 평균 시간 · 완료율 · 평가 작성률
- 신고·분쟁 큐: 접수 → 확인 → 조치 상태 관리 (베타 기간엔 전화 해결이 기본, 기록이 목적)
6⑤ 분석 — 다음 결정을 위한 화면
- 활성화 퍼널: 가입 → 온보딩 완료 → 첫 문서 발행 → 첫 전송 → 2회차 발행(습관) — 어디서 새는지 한눈에
- 리텐션 코호트: 주 단위 재방문 — "서류는 월말 도구"라 월 주기 코호트 병행
- 장비 분포: 가입 회원의 장비 종류·톤수·지역 분포 — 굴착기 매칭(P2) 오픈 트리거 계측 ('기타/굴착기' 차주 20+ 또는 서류 주 10건+)
- 검증 시간 적립 추이: verified OH 총량·적립 회원 수 — 경력 자산 축적 속도
- 역견인 지표(자료실 전략): 사무실(수신자) 경유 신규 차주 가입 — 뷰어 UTM + 가입 경로 1탭. "사장님은 오라잇 왜 안 써요?"가 실제로 일어나는지 측정
WIREFRAME · 활성화 퍼널
100가입
82온보딩
45첫 발행
31첫 전송
192회 발행
구간별 이탈률 + 지난주 대비 화살표 · 클릭하면 해당 구간 회원 목록
7⑥ 마케팅
- ★ 설문 리포트 (A1 — 가장 먼저 만듭니다): 설문 2종 응답이 여기로 자동 취합 —
①문항별 집계(막대 + 핵심 문항 신호등: 링크 정리 수용 70%↑ 🟢) ②자유의견·메모 전문 보드
③고정 계산식 인사이트 줄("링크 정리 수용 n% · 보안 불안 1위 ○○") ④커피 쿠폰 발송 큐(연락처·발송 체크).
설문 배포 첫날부터 두 분 다 로그인 하나로 실시간 확인
- 세그먼트 빌더: 조건 조합(장비 × 지역 × 마지막 활동 × 문서 발행 여부)으로 대상 추출 — 예: "굴착기 차주 & 2주 무활동"
- 메시지 발송: 푸시 / 카카오 알림톡 템플릿 — 발송 전 미리보기·수신 표본 확인, 발송 이력과 클릭률 기록
- 유입 리포트: QR·공유링크·티저 방문 UTM 별 가입 전환
- 리드 관리: 사전등록·문의 목록 → 연락 상태(대기/통화/전환) 체크
- 제휴 리드(안전 수익 접점): 미구비 안전장치 "설치 견적"·검사 만료 "검사 예약" 리드 발생·전달·성사 추적 — 안전장비/검사업체/보험사 제휴 관리
※ 발송 기능은 오퍼레이터 강요 금지 원칙의 연장선에서 — 기본은 차주 대상, OPR 대상 발송은 일감·정산 등 실익 알림으로 한정.
8⑦ 운영 도구 · ⑧ 시스템
- 공지·배너: 앱 홈 상단 공지 등록/종료 예약
- 기능 플래그: 문서 시그니처 ON/OFF, 매칭 오픈 장비군 등 — 지금은 코드 상수인 것을 원격 토글로 (OTA 없이 전환)
- 버그 신고함: 앱 내 신고 수신 → 상태(접수/수정 중/해결) 관리 — 해결 시 상태 갱신 원칙 유지
- 시스템: 운영자 계정(초기 2인) · 모든 쓰기 행위 감사 로그 · Edge Function 오류 모니터
9기술 구성 — 기존 인프라 재사용
admin.oright.co.kr (CF Pages · 정적 SPA)
│ 로그인: Supabase Auth + 운영자 화이트리스트 + TOTP 2단계 인증
▼
Edge Function admin-api (JWT의 운영자 여부 검사 → service role로 조회/실행)
│ 모든 쓰기는 admin_audit_logs 기록 후 실행
▼
Supabase (기존 테이블 + 신설 3개)
├ 기존: profiles·owners·operators·equipments·doc_invoices·doc_estimates
│ doc_share_links/views·matchings·applications·evaluations·work_logs…
└ 신설: usage_events(앱 사용 이벤트) · admin_audit_logs · feature_flags
빌드 순서(확정): A1(1.5~2일) = 로그인 쉘 + 마케팅>설문 리포트 전체 + 대시보드 최소판 — 설문 배포 전 가동 목표
→ A2 = 회원·검증 큐·서류 현황 → A3 = 분석 퍼널(usage_events)·매칭 보드 → B = 발송·플래그. 신설 마이그레이션은 3개뿐이고, 화면·배포는 뷰어(view.oright.co.kr)와 같은 방식이라 새 운영 비용이 없습니다. RLS는 건드리지 않고 service role은 Edge 안에서만 사용합니다.
10단계별 로드맵
비범위(지금 안 만듦): 결제·정산 관리(Tosspayments 도입 시 추가) · 권한 세분화(운영자가 2인이라 불필요) · 자동 리포트 메일. 필요해지는 시점에 모듈로 추가.
11결정해 주실 것
- Phase A 착수 시점 — 트랙2(박 대표님 실사용) 직후를 추천: 검증 큐·대시보드가 바로 쓰입니다.
- 운영자 계정 범위 — 초기 이사님 + 박 대표님 2인 여부
- usage_events 수집 시작 — Phase A 전에 마이그레이션만 먼저 넣으면 데이터가 미리 쌓입니다 (권장)