fix(frontend): server tsc -b errors + missing pieces
- NotificationCenterPage: toast node was never rendered (toasts invisible + TS6133 on server tsc -b)
- ReportPage: Tooltip formatter param typed number, recharts expects ValueType|undefined
- vite.config: /uploads dev proxy (login slide images) — missed in 1de3b9b
- design.md v2.1.1: all 84 screens Stitch status reconciled 64-row update (via designer)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
c3a695d70c
commit
8509787016
133
docs/design.md
133
docs/design.md
@ -1,6 +1,6 @@
|
|||||||
# 킨텍스 AI 전시관리 시스템 — UI 디자인 스펙 (design.md)
|
# 킨텍스 AI 전시관리 시스템 — UI 디자인 스펙 (design.md)
|
||||||
|
|
||||||
> 작성: 디자인 에이전트(designer) · 작성일: 2026-07-11 · 버전: **v2.1**
|
> 작성: 디자인 에이전트(designer) · 작성일: 2026-07-11 · 버전: **v2.1.1**
|
||||||
> 근거 문서: `docs/PLANNING.md` **v3.0**(모듈 맵 M1~M18 + §5B 공통/시스템관리 레이어 + §1A 멀티테넌시, 6+2 역할, 나노바나나 표준 샷 세트 S1~S7) · `docs/FEATURE_BACKLOG_100.md`(100대 기능 F001~F100·NFR 4축) · Stitch 산출물 `stitch_kintex_ai_system_architect/`(18화면 + DESIGN.md 3변형) 학습·정합
|
> 근거 문서: `docs/PLANNING.md` **v3.0**(모듈 맵 M1~M18 + §5B 공통/시스템관리 레이어 + §1A 멀티테넌시, 6+2 역할, 나노바나나 표준 샷 세트 S1~S7) · `docs/FEATURE_BACKLOG_100.md`(100대 기능 F001~F100·NFR 4축) · Stitch 산출물 `stitch_kintex_ai_system_architect/`(18화면 + DESIGN.md 3변형) 학습·정합
|
||||||
> **단일 출처(Single Source of Truth)**: 프론트 구현 토큰·컴포넌트 계약은 본 문서가 권위다. Stitch 화면(code.html/screen.png)은 시각 참조로만 사용하며, 상충 시 본 문서를 따른다.
|
> **단일 출처(Single Source of Truth)**: 프론트 구현 토큰·컴포넌트 계약은 본 문서가 권위다. Stitch 화면(code.html/screen.png)은 시각 참조로만 사용하며, 상충 시 본 문서를 따른다.
|
||||||
> 용도: **각 화면의 "Stitch 프롬프트" 코드블록을 Google Stitch(stitch.withgoogle.com)에 그대로 붙여넣어 화면을 생성**한다. 문서는 한국어, Stitch 프롬프트만 영어.
|
> 용도: **각 화면의 "Stitch 프롬프트" 코드블록을 Google Stitch(stitch.withgoogle.com)에 그대로 붙여넣어 화면을 생성**한다. 문서는 한국어, Stitch 프롬프트만 영어.
|
||||||
@ -341,68 +341,68 @@ An enterprise MDI (multiple document interface) application shell for "KINTEX AI
|
|||||||
| SCR-15 | 전시 일정 관리 | M1·M6 | 주·홀 | P1 | ✅Stitch ✅구현 |
|
| SCR-15 | 전시 일정 관리 | M1·M6 | 주·홀 | P1 | ✅Stitch ✅구현 |
|
||||||
| SCR-16 | 관리자 대시보드(랜딩) | M18 | 관 | P1 | ✅Stitch ✅구현 |
|
| SCR-16 | 관리자 대시보드(랜딩) | M18 | 관 | P1 | ✅Stitch ✅구현 |
|
||||||
| SCR-17 | 컴포넌트 가이드(스타일가이드) | §1 | 내부 | — | ✅Stitch ✅구현 |
|
| SCR-17 | 컴포넌트 가이드(스타일가이드) | §1 | 내부 | — | ✅Stitch ✅구현 |
|
||||||
| SCR-18 | 홀 배정 신청 & 자동 견적 | M1 | 주 | P1 | 🔲미생성 |
|
| SCR-18 | 홀 배정 신청 & 자동 견적 | M1 | 주 | P1 | ✅Stitch |
|
||||||
| SCR-19 | 부스 판매 인벤토리 | M1·M2 | 주 | P1 | 🔲미생성 |
|
| SCR-19 | 부스 판매 인벤토리 | M1·M2 | 주 | P1 | ✅Stitch |
|
||||||
| SCR-20 | 온라인 부스 셀프 선택·판매 | M2 | 참 | P1 | 🔲미생성 |
|
| SCR-20 | 온라인 부스 셀프 선택·판매 | M2 | 참 | P1 | ✅Stitch |
|
||||||
| SCR-21 | 정산·결제 대시보드 | M9 | 주·참·관 | P1 | 🔲미생성 |
|
| SCR-21 | 정산·결제 대시보드 | M9 | 주·참·관 | P1 | ✅Stitch |
|
||||||
| SCR-22 | 서류·마일스톤 워크플로 | M6 | 주 | P1 | 🔲미생성 |
|
| SCR-22 | 서류·마일스톤 워크플로 | M6 | 주 | P1 | ✅Stitch |
|
||||||
| SCR-23 | 신고서류 작성(웹폼→HWP/PDF) | M6 | 주 | P1 | 🔲미생성 |
|
| SCR-23 | 신고서류 작성(웹폼→HWP/PDF) | M6 | 주 | P1 | ✅Stitch |
|
||||||
| SCR-24 | 등록업체 매칭·RFQ | M7 | 참·주 | P1 | 🔲미생성 |
|
| SCR-24 | 등록업체 매칭·RFQ | M7 | 참·주 | P1 | ✅Stitch |
|
||||||
| SCR-25 | 반입/반출 슬롯 예약 | M8 | 참·장·홀 | P2 | 🔲미생성 |
|
| SCR-25 | 반입/반출 슬롯 예약 | M8 | 참·장·홀 | P2 | ✅Stitch |
|
||||||
| SCR-26 | 옥션 목록·개설 | M15 | 참·주 | P1 | 🔲미생성 |
|
| SCR-26 | 옥션 목록·개설 | M15 | 참·주 | P1 | ✅Stitch |
|
||||||
| SCR-27 | 옥션 상세·실시간 순위·응찰 | M15 | 장 | P1 | 🔲미생성 |
|
| SCR-27 | 옥션 상세·실시간 순위·응찰 | M15 | 장 | P1 | ✅Stitch |
|
||||||
| SCR-28 | 견적서 작성·제출 | M15 | 장 | P1 | 🔲미생성 |
|
| SCR-28 | 견적서 작성·제출 | M15 | 장 | P1 | ✅Stitch |
|
||||||
| SCR-29 | 낙찰 비교·선정(Award) | M15 | 주·참 | P1 | 🔲미생성 |
|
| SCR-29 | 낙찰 비교·선정(Award) | M15 | 주·참 | P1 | ✅Stitch |
|
||||||
| SCR-30 | 관람객 등록 관리 대시보드 | M10·M11 | 주 | P1 | 🔲미생성 |
|
| SCR-30 | 관람객 등록 관리 대시보드 | M10·M11 | 주 | P1 | ✅Stitch |
|
||||||
| SCR-31 | 현장 체크인 데스크/키오스크 | M10 | 홀 | P1 | 🔲미생성 |
|
| SCR-31 | 현장 체크인 데스크/키오스크 | M10 | 홀 | P1 | ✅Stitch |
|
||||||
| SCR-32 | 리드 관리·AI 스코어링 | M10 | 참 | P1 | 🔲미생성 |
|
| SCR-32 | 리드 관리·AI 스코어링 | M10 | 참 | P1 | ✅Stitch |
|
||||||
| SCR-33 | EDM·캠페인 관리 | M12 | 주 | P1 | 🔲미생성 |
|
| SCR-33 | EDM·캠페인 관리 | M12 | 주 | P1 | ✅Stitch |
|
||||||
| SCR-34 | 스폰서십 패키지·판매 관리 | M12 | 주 | P1 | 🔲미생성 |
|
| SCR-34 | 스폰서십 패키지·판매 관리 | M12 | 주 | P1 | ✅Stitch |
|
||||||
| SCR-35 | CMS 콘텐츠·게시 워크플로 | M17 | 주·관 | P1 | 🔲미생성 |
|
| SCR-35 | CMS 콘텐츠·게시 워크플로 | M17 | 주·관 | P1 | ✅Stitch |
|
||||||
| SCR-36 | 참가업체 마이크로사이트 편집기 | M17 | 참 | P1 | 🔲미생성 |
|
| SCR-36 | 참가업체 마이크로사이트 편집기 | M17 | 참 | P1 | ✅Stitch |
|
||||||
| SCR-37 | 다국어 콘텐츠 관리 | M17 | 관 | P1 | 🔲미생성 |
|
| SCR-37 | 다국어 콘텐츠 관리 | M17 | 관 | P1 | ✅Stitch |
|
||||||
| SCR-38 | 업체 수주 부스 대시보드 | 업체포털 | 장 | P1 | 🔲미생성 |
|
| SCR-38 | 업체 수주 부스 대시보드 | 업체포털 | 장 | P1 | ✅Stitch |
|
||||||
| SCR-39 | 업무일지(worklog) | §5B | 전 | P1 | 🔲미생성 |
|
| SCR-39 | 업무일지(worklog) | §5B | 전 | P1 | ✅Stitch |
|
||||||
| SCR-40 | 통합 일정·캘린더(schedule) | §5B | 전 | P1 | 🔲미생성 |
|
| SCR-40 | 통합 일정·캘린더(schedule) | §5B | 전 | P1 | ✅Stitch |
|
||||||
| SCR-41 | 쪽지(message) | §5B | 전 | P1 | 🔲미생성 |
|
| SCR-41 | 쪽지(message) | §5B | 전 | P1 | ✅Stitch |
|
||||||
| SCR-42 | 공지(notice) | §5B | 전 | P1 | 🔲미생성 |
|
| SCR-42 | 공지(notice) | §5B | 전 | P1 | ✅Stitch |
|
||||||
| SCR-43 | 의견접수(opinion) | §5B | 전 | P2 | 🔲미생성 |
|
| SCR-43 | 의견접수(opinion) | §5B | 전 | P2 | ✅Stitch |
|
||||||
| SCR-44 | 통합검색(search) | §5B | 전 | P1 | 🔲미생성 |
|
| SCR-44 | 통합검색(search) | §5B | 전 | P1 | ✅Stitch |
|
||||||
| SCR-45 | 회의록(meeting·STT→Jasper) | §5B | 주·홀 | P1 | 🔲미생성 |
|
| SCR-45 | 회의록(meeting·STT→Jasper) | §5B | 주·홀 | P1 | ✅Stitch |
|
||||||
| SCR-46 | 업무보고·통계(report/stats) | §5B | 주·홀 | P1 | 🔲미생성 |
|
| SCR-46 | 업무보고·통계(report/stats) | §5B | 주·홀 | P1 | ✅Stitch |
|
||||||
| SCR-47 | 알림센터(notification) | §5B | 전 | P1 | 🔲미생성 |
|
| SCR-47 | 알림센터(notification) | §5B | 전 | P1 | ✅Stitch |
|
||||||
| SCR-48 | 마이페이지·환경설정 | §5B | 전 | P1 | 🔲미생성 |
|
| SCR-48 | 마이페이지·환경설정 | §5B | 전 | P1 | ✅Stitch |
|
||||||
| SCR-49 | 회원가입(웹) | §5B-3 | 전 | P1 | 🔲미생성 |
|
| SCR-49 | 회원가입(웹) | §5B-3 | 전 | P1 | ✅Stitch |
|
||||||
| SCR-50 | 비밀번호 찾기·재설정 | §5B-3 | 전 | P1 | 🔲미생성 |
|
| SCR-50 | 비밀번호 찾기·재설정 | §5B-3 | 전 | P1 | ✅Stitch |
|
||||||
| SCR-51 | 2차 인증(OTP) 설정 | §5B-3 | 전 | P1 | 🔲미생성 |
|
| SCR-51 | 2차 인증(OTP) 설정 | §5B-3 | 전 | P1 | ✅Stitch |
|
||||||
|
|
||||||
**웹 — 관리자 백오피스 (§3A · SCR-A*)**
|
**웹 — 관리자 백오피스 (§3A · SCR-A*)**
|
||||||
|
|
||||||
| SCR | 화면명 | 모듈 | 역할 | 상태 |
|
| SCR | 화면명 | 모듈 | 역할 | 상태 |
|
||||||
|---|---|---|---|---|
|
|---|---|---|---|---|
|
||||||
| SCR-A1 | 사용자 관리 | M18·§5B-1 | 관 | 🔲미생성 |
|
| SCR-A1 | 사용자 관리 | M18·§5B-1 | 관 | ✅Stitch |
|
||||||
| SCR-A2 | 역할·권한(RBAC) 관리 | M18·§5B-1 | 관 | 🔲미생성 |
|
| SCR-A2 | 역할·권한(RBAC) 관리 | M18·§5B-1 | 관 | ✅Stitch |
|
||||||
| SCR-A3 | 공통코드 관리 | M18·§5B-1 | 관 | 🔲미생성 |
|
| SCR-A3 | 공통코드 관리 | M18·§5B-1 | 관 | ✅Stitch |
|
||||||
| SCR-A4 | 메뉴 관리 | M18·§5B-1 | 관 | 🔲미생성 |
|
| SCR-A4 | 메뉴 관리 | M18·§5B-1 | 관 | ✅Stitch |
|
||||||
| SCR-A5 | 감사로그 | M18·§5B-1 | 관 | 🔲미생성 |
|
| SCR-A5 | 감사로그 | M18·§5B-1 | 관 | ✅Stitch |
|
||||||
| SCR-A6 | 시스템설정 | M18·§5B-1 | 관 | 🔲미생성 |
|
| SCR-A6 | 시스템설정 | M18·§5B-1 | 관 | ✅Stitch |
|
||||||
| SCR-A7 | 마스터데이터 관리(홀·요율·요금·부스표준·등록업체) | M18 | 관 | 🔲미생성 |
|
| SCR-A7 | 마스터데이터 관리(홀·요율·요금·부스표준·등록업체) | M18 | 관 | ✅Stitch |
|
||||||
| SCR-A8 | 규정 룰셋 버전 관리 | M18 | 관 | 🔲미생성 |
|
| SCR-A8 | 규정 룰셋 버전 관리 | M18 | 관 | ✅Stitch |
|
||||||
| SCR-A9 | 테넌트(전시관) 관리·온보딩 | §1A·M18 | 플랫폼관 | 🔲미생성 |
|
| SCR-A9 | 테넌트(전시관) 관리·온보딩 | §1A·M18 | 플랫폼관 | ✅Stitch |
|
||||||
| SCR-A10 | AI 플랫폼 설정(AiConfig) | §6·F100 | 관 | 🔲미생성 |
|
| SCR-A10 | AI 플랫폼 설정(AiConfig) | §6·F100 | 관 | ✅Stitch |
|
||||||
|
|
||||||
**웹 — 공개 홍보 사이트 (§3B · SCR-P* · MDI 비적용·SEO/다국어)**
|
**웹 — 공개 홍보 사이트 (§3B · SCR-P* · MDI 비적용·SEO/다국어)**
|
||||||
|
|
||||||
| SCR | 화면명 | 모듈 | 역할 | 상태 |
|
| SCR | 화면명 | 모듈 | 역할 | 상태 |
|
||||||
|---|---|---|---|---|
|
|---|---|---|---|---|
|
||||||
| SCR-P1 | 공개 홍보 사이트 홈 | M12 | 대 | 🔲미생성 |
|
| SCR-P1 | 공개 홍보 사이트 홈 | M12 | 대 | ✅Stitch |
|
||||||
| SCR-P2 | 행사 상세(소개·일정·교통·연사) | M12 | 대 | 🔲미생성 |
|
| SCR-P2 | 행사 상세(소개·일정·교통·연사) | M12 | 대 | ✅Stitch |
|
||||||
| SCR-P3 | 공개 인터랙티브 플로어플랜 | M12·M2 | 대 | 🔲미생성 |
|
| SCR-P3 | 공개 인터랙티브 플로어플랜 | M12·M2 | 대 | ✅Stitch |
|
||||||
| SCR-P4 | 관람객 사전등록 폼 | M10 | 대 | 🔲미생성 |
|
| SCR-P4 | 관람객 사전등록 폼 | M10 | 대 | ✅Stitch |
|
||||||
| SCR-P5 | 참가업체 마이크로사이트 공개 뷰 | M17 | 대 | 🔲미생성 |
|
| SCR-P5 | 참가업체 마이크로사이트 공개 뷰 | M17 | 대 | ✅Stitch |
|
||||||
| SCR-P6 | 참가/부스 신청 문의 | M12 | 대 | 🔲미생성 |
|
| SCR-P6 | 참가/부스 신청 문의 | M12 | 대 | ✅Stitch |
|
||||||
| SCR-P7 | 입장권 예매(티켓팅) | M10·M9 | 대 | 🔲미생성 |
|
| SCR-P7 | 입장권 예매(티켓팅) | M10·M9 | 대 | ✅Stitch |
|
||||||
| SCR-P8 | 예매 확인·취소 | M10·M9 | 대 | 🔲미생성 |
|
| SCR-P8 | 예매 확인·취소 | M10·M9 | 대 | ✅Stitch |
|
||||||
|
|
||||||
**모바일 (§4 · SCR-M*)**
|
**모바일 (§4 · SCR-M*)**
|
||||||
|
|
||||||
@ -411,20 +411,20 @@ An enterprise MDI (multiple document interface) application shell for "KINTEX AI
|
|||||||
| SCR-M1 | 시공업체 현장 체크리스트 | M3 | 장 | ✅Stitch ✅구현 |
|
| SCR-M1 | 시공업체 현장 체크리스트 | M3 | 장 | ✅Stitch ✅구현 |
|
||||||
| SCR-M2 | 홀매니저 현장 검수 | M2·M3 | 홀 | ✅Stitch ✅구현 |
|
| SCR-M2 | 홀매니저 현장 검수 | M2·M3 | 홀 | ✅Stitch ✅구현 |
|
||||||
| SCR-M3 | 모바일 홈·대시보드(역할별) | 공통 | 전 | ✅구현(부분) |
|
| SCR-M3 | 모바일 홈·대시보드(역할별) | 공통 | 전 | ✅구현(부분) |
|
||||||
| SCR-M4 | 참가업체 리드캡처(배지 스캔) | M10 | 참 | 🔲미생성 |
|
| SCR-M4 | 참가업체 리드캡처(배지 스캔) | M10 | 참 | ✅Stitch |
|
||||||
| SCR-M5 | 관람객 앱 홈·모바일 배지/QR | M10 | 대 | 🔲미생성 |
|
| SCR-M5 | 관람객 앱 홈·모바일 배지/QR | M10 | 대 | ✅Stitch |
|
||||||
| SCR-M6 | 관람객 wayfinding·실내 지도 | M13 | 대 | 🔲미생성 |
|
| SCR-M6 | 관람객 wayfinding·실내 지도 | M13 | 대 | ✅Stitch |
|
||||||
| SCR-M7 | 관람객 플로어플랜·부스 검색 | M12·M2 | 대 | 🔲미생성 |
|
| SCR-M7 | 관람객 플로어플랜·부스 검색 | M12·M2 | 대 | ✅Stitch |
|
||||||
| SCR-M8 | 비즈매칭·미팅 | M11 | 대·참 | 🔲미생성 |
|
| SCR-M8 | 비즈매칭·미팅 | M11 | 대·참 | ✅Stitch |
|
||||||
| SCR-M9 | 세션·아젠다·개인 일정 | M11 | 대 | 🔲미생성 |
|
| SCR-M9 | 세션·아젠다·개인 일정 | M11 | 대 | ✅Stitch |
|
||||||
| SCR-M10 | 업체 반입 통행증·안전 체크 | M8 | 장 | 🔲미생성 |
|
| SCR-M10 | 업체 반입 통행증·안전 체크 | M8 | 장 | ✅Stitch |
|
||||||
| SCR-M11 | 모바일 알림센터 | §5B | 전 | 🔲미생성 |
|
| SCR-M11 | 모바일 알림센터 | §5B | 전 | ✅Stitch |
|
||||||
| SCR-M12 | 모바일 서류·승인 조회 | M6 | 주·홀 | 🔲미생성 |
|
| SCR-M12 | 모바일 서류·승인 조회 | M6 | 주·홀 | ✅Stitch |
|
||||||
| SCR-M13 | 모바일 옥션 순위 조회 | M15 | 장·참 | 🔲미생성 |
|
| SCR-M13 | 모바일 옥션 순위 조회 | M15 | 장·참 | ✅Stitch |
|
||||||
| SCR-M14 | 모바일 티켓 예매 | M10·M9 | 대 | 🔲미생성 |
|
| SCR-M14 | 모바일 티켓 예매 | M10·M9 | 대 | ✅Stitch |
|
||||||
| SCR-M15 | 내 티켓 지갑 | M10·M9 | 대 | 🔲미생성 |
|
| SCR-M15 | 내 티켓 지갑 | M10·M9 | 대 | ✅Stitch |
|
||||||
|
|
||||||
**집계**: 웹 코어·도메인 51 (기존 17 + 신규 34) · 관리자 10 (신규) · 공개사이트 8 (기존 6 + 신규 2 티켓) · 모바일 15 (기존 3 + 신규 12) = **총 84화면**(기존 유지 20 + 신규 64). 상태: ✅Stitch 18 · ✅구현 20 · 🔲미생성 64.
|
**집계**: 웹 코어·도메인 51 (기존 17 + 신규 34) · 관리자 10 (신규) · 공개사이트 8 (기존 6 + 신규 2 티켓) · 모바일 15 (기존 3 + 신규 12) = **총 84화면**(기존 유지 20 + 신규 64). 상태: ✅Stitch 83 · ✅구현 20 · 🔲미생성 0 (2026-07-12 수확으로 신규 64화면 전량 Stitch 확보 — Stitch 미확보는 SCR-M3(✅구현(부분)) 1건뿐).
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -1617,6 +1617,7 @@ A mobile "my ticket wallet" screen for an exhibition visitor, 390px width, light
|
|||||||
|
|
||||||
| 버전 | 일자 | 작성자 | 내용 |
|
| 버전 | 일자 | 작성자 | 내용 |
|
||||||
|---|---|---|---|
|
|---|---|---|---|
|
||||||
|
| **v2.1.1** | 2026-07-12 | designer | **Stitch 잔여 39화면 전량 확보(64/64) 상태 반영 + 이전 확보 25화면 상태 정합 + 집계 갱신.** 2026-07-12 Stitch 수확 재실행으로 미확보 39화면이 전량 확보됨 — §2.8-2 인덱스 상태 컬럼만 `🔲미생성`→`✅Stitch` 교체(웹코어 SCR-22·23·25·26·27·29·30·32~51, 관리자 SCR-A5·A6·A8·A9, 공개 SCR-P1~P7, 모바일 SCR-M15). 추가로 이전 세션 확보분 25화면(디스크 code.html 존재 검증: 웹코어 SCR-18·19·20·21·24·28·31, 관리자 SCR-A1~A4·A7·A10, 공개 SCR-P8, 모바일 SCR-M4~M14)도 동일 규칙으로 정합화 — 총 64화면 상태 교체. §2.8-2 집계 문장 갱신: ✅Stitch 18→**83** · 🔲미생성 64→**0**(Stitch 미확보는 SCR-M3 1건뿐). 화면 스펙·프롬프트·구조 무수정. 수확 상세 `_workspace/stitch_gen/harvest_report.md` |
|
||||||
| **v2.1** | 2026-07-11 | designer | **입장권 예매 4화면 추가(M10 티켓 기획 대비 화면 갭 해소).** PLANNING v3.0 M10이 티켓을 기획 범위에 포함하나 design.md v2.0 인벤토리엔 예매 흐름 화면이 없던 갭을 메움 — 기존 번호 체계 이어서 순증(재번호화·기존 스펙 수정 없음). ①**§2.8-1 매트릭스**: M10 행에 SCR-P7·P8/M14·M15, M9 행에 SCR-P7(티켓결제 연계) 반영. ②**§2.8-2 인덱스**: 공개사이트에 SCR-P7(입장권 예매)·SCR-P8(예매 확인·취소), 모바일에 SCR-M14(모바일 티켓 예매)·SCR-M15(내 티켓 지갑) 추가, 집계 80→**84화면**(공개 6→8·모바일 13→15, 미생성 60→64). ③**§3B**: SCR-P7(행사·권종→예매자→결제→완료 다단계, 게스트+회원, 결제 PG 어댑터 위임·카드번호 입력 UI 없음)·SCR-P8(예매번호+이메일 조회·QR 티켓 상세·환불정책·취소) 상세+영어 Stitch 프롬프트. ④**§4**: SCR-M14(SCR-P7 모바일 최적화 390px·48px 터치)·SCR-M15(보유 티켓·QR 풀스크린 밝기부스트·오프라인 표시·취소 진입, 티켓→체크인→배지(SCR-M5) 전환 명시) 상세+프롬프트. §5 가이드 모바일 범위 M1~M13→M1~M15. **보안·불변 준수**: 결제 화면 카드번호 저장 UI 금지(PG 위임 명시)·PII 마스킹·WCAG AA·i18n·라이트/다크. §1 토큰 권위 유지, 신규 토큰 0. PLANNING.md·기존 화면 스펙·src 무수정 |
|
| **v2.1** | 2026-07-11 | designer | **입장권 예매 4화면 추가(M10 티켓 기획 대비 화면 갭 해소).** PLANNING v3.0 M10이 티켓을 기획 범위에 포함하나 design.md v2.0 인벤토리엔 예매 흐름 화면이 없던 갭을 메움 — 기존 번호 체계 이어서 순증(재번호화·기존 스펙 수정 없음). ①**§2.8-1 매트릭스**: M10 행에 SCR-P7·P8/M14·M15, M9 행에 SCR-P7(티켓결제 연계) 반영. ②**§2.8-2 인덱스**: 공개사이트에 SCR-P7(입장권 예매)·SCR-P8(예매 확인·취소), 모바일에 SCR-M14(모바일 티켓 예매)·SCR-M15(내 티켓 지갑) 추가, 집계 80→**84화면**(공개 6→8·모바일 13→15, 미생성 60→64). ③**§3B**: SCR-P7(행사·권종→예매자→결제→완료 다단계, 게스트+회원, 결제 PG 어댑터 위임·카드번호 입력 UI 없음)·SCR-P8(예매번호+이메일 조회·QR 티켓 상세·환불정책·취소) 상세+영어 Stitch 프롬프트. ④**§4**: SCR-M14(SCR-P7 모바일 최적화 390px·48px 터치)·SCR-M15(보유 티켓·QR 풀스크린 밝기부스트·오프라인 표시·취소 진입, 티켓→체크인→배지(SCR-M5) 전환 명시) 상세+프롬프트. §5 가이드 모바일 범위 M1~M13→M1~M15. **보안·불변 준수**: 결제 화면 카드번호 저장 UI 금지(PG 위임 명시)·PII 마스킹·WCAG AA·i18n·라이트/다크. §1 토큰 권위 유지, 신규 토큰 0. PLANNING.md·기존 화면 스펙·src 무수정 |
|
||||||
| **v2.0** | 2026-07-11 | designer | **전 화면 인벤토리 확장 — PLANNING v3.0 전 모듈·전 역할 커버.** 기존 SCR-01~17·SCR-M1/M2(재번호화 없이 보존)에 **신규 60화면 순증**: ①**§2.8 전 화면 인벤토리 매트릭스 신설**(모듈×역할×채널 요약표 + 전 SCR 인덱스 + 기생성/기구현/미생성 상태 컬럼, 총 80화면). ②**웹 코어·도메인 SCR-18~51**(M1 배정·견적/부스판매/셀프선택, M9 정산, M6 서류·마일스톤·서류작성, M7 매칭·RFQ, M8 물류, **M15 옥션 4종**(목록·상세순위·견적서·낙찰), M10 관람객관리·체크인·리드, M12 EDM·스폰서십, M17 CMS·마이크로사이트·다국어, 업체 대시보드, **§5B 공통 업무기능 SCR-39~48**(worklog·schedule·message·notice·opinion·search·meeting·report·notification·mypage, UIWS 표준 정합), 인증 SCR-49~51(회원가입·비번재설정·OTP)). ③**§3A 관리자 백오피스 SCR-A1~A10**(사용자·RBAC·공통코드·메뉴·감사로그·시스템설정·마스터데이터·룰셋버전·**테넌트 온보딩§1A**·AiConfig). ④**§3B 공개 홍보 사이트 SCR-P1~P6**(홈·행사상세·인터랙티브 플로어플랜·사전등록·마이크로사이트 공개뷰·참가문의, MDI 비적용·SEO/다국어). ⑤**모바일 SCR-M3~M13**(역할별 홈·리드캡처·관람객 배지/QR·wayfinding·플로어플랜·비즈매칭·세션아젠다·업체 통행증·알림·서류승인·옥션순위). 각 화면 SCR ID·화면명·역할·모듈·레이아웃·상태(로딩/빈/에러/degraded)·데이터 원천(실/샘플 경계)·라우트·**영어 Stitch 프롬프트** 포함. §1 토큰·§2.7 MDI 셸 보존, **신규 토큰 0**. AI 산출물 워터마크·AiLabel·PII 마스킹·WCAG AA·i18n·라이트/다크 토큰 불변 규칙 반영. PLANNING.md·src 무수정 |
|
| **v2.0** | 2026-07-11 | designer | **전 화면 인벤토리 확장 — PLANNING v3.0 전 모듈·전 역할 커버.** 기존 SCR-01~17·SCR-M1/M2(재번호화 없이 보존)에 **신규 60화면 순증**: ①**§2.8 전 화면 인벤토리 매트릭스 신설**(모듈×역할×채널 요약표 + 전 SCR 인덱스 + 기생성/기구현/미생성 상태 컬럼, 총 80화면). ②**웹 코어·도메인 SCR-18~51**(M1 배정·견적/부스판매/셀프선택, M9 정산, M6 서류·마일스톤·서류작성, M7 매칭·RFQ, M8 물류, **M15 옥션 4종**(목록·상세순위·견적서·낙찰), M10 관람객관리·체크인·리드, M12 EDM·스폰서십, M17 CMS·마이크로사이트·다국어, 업체 대시보드, **§5B 공통 업무기능 SCR-39~48**(worklog·schedule·message·notice·opinion·search·meeting·report·notification·mypage, UIWS 표준 정합), 인증 SCR-49~51(회원가입·비번재설정·OTP)). ③**§3A 관리자 백오피스 SCR-A1~A10**(사용자·RBAC·공통코드·메뉴·감사로그·시스템설정·마스터데이터·룰셋버전·**테넌트 온보딩§1A**·AiConfig). ④**§3B 공개 홍보 사이트 SCR-P1~P6**(홈·행사상세·인터랙티브 플로어플랜·사전등록·마이크로사이트 공개뷰·참가문의, MDI 비적용·SEO/다국어). ⑤**모바일 SCR-M3~M13**(역할별 홈·리드캡처·관람객 배지/QR·wayfinding·플로어플랜·비즈매칭·세션아젠다·업체 통행증·알림·서류승인·옥션순위). 각 화면 SCR ID·화면명·역할·모듈·레이아웃·상태(로딩/빈/에러/degraded)·데이터 원천(실/샘플 경계)·라우트·**영어 Stitch 프롬프트** 포함. §1 토큰·§2.7 MDI 셸 보존, **신규 토큰 0**. AI 산출물 워터마크·AiLabel·PII 마스킹·WCAG AA·i18n·라이트/다크 토큰 불변 규칙 반영. PLANNING.md·src 무수정 |
|
||||||
| v1.0 | 2026-07-11 | designer | 최초 작성 — PLANNING.md v1.0 기반. 디자인 시스템·IA·P0 중심 14화면(웹 12 + 모바일 2) Stitch 프롬프트 포함. 다크모드는 Phase 1 미지원(캔버스 다크 서피스만) 결정 |
|
| v1.0 | 2026-07-11 | designer | 최초 작성 — PLANNING.md v1.0 기반. 디자인 시스템·IA·P0 중심 14화면(웹 12 + 모바일 2) Stitch 프롬프트 포함. 다크모드는 Phase 1 미지원(캔버스 다크 서피스만) 결정 |
|
||||||
|
|||||||
@ -166,6 +166,7 @@ export function NotificationCenterPage() {
|
|||||||
<p className="kx-list-table__muted" style={{ fontSize: 12 }}>
|
<p className="kx-list-table__muted" style={{ fontSize: 12 }}>
|
||||||
알림 규칙 설정은 마이페이지 > 알림 설정에서 관리합니다.
|
알림 규칙 설정은 마이페이지 > 알림 설정에서 관리합니다.
|
||||||
</p>
|
</p>
|
||||||
|
{toast}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -148,7 +148,7 @@ export function ReportPage() {
|
|||||||
<YAxis tick={{ fontSize: 12, fill: CHART.slate }} allowDecimals={false} />
|
<YAxis tick={{ fontSize: 12, fill: CHART.slate }} allowDecimals={false} />
|
||||||
<Tooltip
|
<Tooltip
|
||||||
contentStyle={{ fontSize: 12, borderRadius: 8, border: `1px solid ${CHART.neutral200}` }}
|
contentStyle={{ fontSize: 12, borderRadius: 8, border: `1px solid ${CHART.neutral200}` }}
|
||||||
formatter={(v: number) => [`${v}건`, '건수']}
|
formatter={(v) => [`${Number(v ?? 0)}건`, '건수']}
|
||||||
/>
|
/>
|
||||||
<Bar dataKey="count" radius={[4, 4, 0, 0]}>
|
<Bar dataKey="count" radius={[4, 4, 0, 0]}>
|
||||||
{stats.byType.map((_, i) => (
|
{stats.byType.map((_, i) => (
|
||||||
|
|||||||
@ -16,6 +16,11 @@ export default defineConfig({
|
|||||||
target: process.env.VITE_BACKEND_ORIGIN || 'http://localhost:8080',
|
target: process.env.VITE_BACKEND_ORIGIN || 'http://localhost:8080',
|
||||||
changeOrigin: true,
|
changeOrigin: true,
|
||||||
},
|
},
|
||||||
|
// 관리자 업로드 정적 파일(로그인 슬라이드 이미지) — 백엔드가 서빙
|
||||||
|
'/uploads': {
|
||||||
|
target: process.env.VITE_BACKEND_ORIGIN || 'http://localhost:8080',
|
||||||
|
changeOrigin: true,
|
||||||
|
},
|
||||||
'/ws': {
|
'/ws': {
|
||||||
target: process.env.VITE_BACKEND_ORIGIN || 'http://localhost:8080',
|
target: process.env.VITE_BACKEND_ORIGIN || 'http://localhost:8080',
|
||||||
changeOrigin: true,
|
changeOrigin: true,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user