부모 티켓
1개 티켓

백로그

0
티켓 없음

할 일

0
티켓 없음

진행 중

0
티켓 없음

리뷰

0
티켓 없음

완료 (전체)

1
높음 99a53325
서브 티켓 [함께보기 PR4] 뷰: 목록, 생성, 상세, QR코드, 참여, 팀강점 매트릭스

함께 보기 전체 뷰 구현 (index, show, new, join, team_strength)

## 작업 내용 함께 보기 기능의 전체 뷰를 구현합니다. PR3에서 생성한 스텁 뷰를 완성합니다. ## 참고 파일 (반드시 먼저 읽기) - `app/views/workspaces/team_strengths/` — 팀강점 매트릭스 뷰 (show, _overview, _matrix, _matrix_content) - `app/views/workspaces/` — 워크스페이스 뷰 패턴 - `app/views/shared/` — 공용 partial (_button, _card, _input, _flash, _sidebar_nav_item) - `app/helpers/qr_code_helper.rb` — QR코드 SVG 생성 - `app/controllers/view_groups_controller.rb` — 컨트롤러 (PR3) ## 뷰 목록 ### 1. index.html.erb — 내 그룹 목록 - 소유한 그룹 / 참여한 그룹 섹션 분리 - 각 그룹을 카드로 표시 (이름, 멤버 수, 생성일) - "새 그룹 만들기" 버튼 - 빈 상태: "아직 그룹이 없습니다. 새 그룹을 만들어보세요!" - 기존 shared/_card partial 활용 ### 2. new.html.erb — 그룹 생성 - 그룹 이름 입력 폼 - 기존 shared/_input, shared/_button partial 활용 - 에러 메시지 표시 ### 3. show.html.erb — 그룹 상세 - 그룹 이름 + 소유자 정보 - QR코드 표시 (QrCodeHelper#qr_code_svg 사용) - 초대 링크 (복사 버튼 포함) - 멤버 목록 (이름, 진단 유형, 참여일) - 소유자에게만 "그룹 삭제" 버튼 - 멤버에게만 "나가기" 버튼 - "팀 강점 보기" 버튼/링크 → team_strength 페이지로 - 빈 상태: "아직 멤버가 없습니다. QR코드를 공유하세요!" ### 4. join.html.erb — 참여 확인 - 그룹 이름 표시 - report_purchased: true인 진단 세션 목록 (라디오 버튼 또는 카드 선택) - 각 세션: 진단 유형, 완료일 표시 - "참여하기" 버튼 - 세션이 없으면: "구매된 진단 결과가 없습니다" 안내 ### 5. team_strength.html.erb — 팀강점 매트릭스 - 기존 workspaces/team_strengths/show의 구조를 참고하되, ViewGroup 전용으로 구현 - 멤버 선택 체크박스 (비교할 멤버 선택) - 라인 차트 (9WAY 점수 비교) - DNA 매트릭스 (멤버별 강점 DNA 뱃지) - 기존 team_strengths 뷰의 JS/차트 렌더링 패턴 참고 ## UI 요구사항 - Tailwind CSS 사용 (기존 디자인 시스템 준수) - 반응형 (모바일 QR 스캔이 주요 시나리오) - layout "authenticated" 사용 - i18n: 뷰에 하드코딩된 한국어 텍스트는 i18n 키로 관리 - 기존 shared partial 최대한 활용 ## 완료 기준 - [ ] 모든 뷰 정상 렌더링 - [ ] QR코드에 초대 URL 정상 인코딩 - [ ] 모바일 반응형 동작 - [ ] 빈 상태 처리 - [ ] 진단 세션 선택 UI 동작 - [ ] 팀강점 매트릭스 차트 렌더링 - [ ] i18n 키 추가 (ko.yml)

D
developer-1
4 months