-
Notifications
You must be signed in to change notification settings - Fork 4
06 ‐ 02 ‐ My Page (Profile) ‐ my portfolio Wiki
Ryu(Paul) edited this page Jan 18, 2024
·
1 revision
- 본 내용은 My Portfolio 기능 추가와 Profile Module 의 개선 전 기록을 위해 남기는 용도이다.
- 본 내용을 기반으로 Profile 에 나의 작업물 보기 기능이 구현될 예정이며, 향후 해당 내용은 Profile 내용에 추가 통합 되어야 한다.
- 작업물은 기본적으로 팀 페이지를 기준으로, 모집글, 쇼케이스, 피어로그로의 리다이렉션을 제공할 수 있어야 한다.
- 이를 팀 기준으로 탐새하는 구조를 접근하게 되면 팀 -> 팀 유저 -> 유저 로 간 뒤, 팀 쇼케이스 글, 팀 피어로그 글이런 형태로 방사형으로 접근이 필요해진다.
- 이에 단독적으로 User-portfolio 로 연결되는 테이블을 단독으로 구성하며, 거기서 필요한 정보들을 업데이트 하는 방식으로 가도록 구성하게 되었다.
- 팀의 상태가 변경되어
완료
상태가 되는 순간, 팀에 대한, 즉 모집글을 기반으로하여 포트폴리오로 기본적으로 데이터가 들어가게 된다. - 이후 쇼케이스, 피어로그가 팀에서 완성되는 순간 자동으로 본인의 포트폴리오에 해당 글이 갱신되며 접근이 가능해진다.
- User 속성으로 전체 포트폴리오 공개, 비공개를 정할 수 있으나, 향후를 고려하여 내부적으로도 각 요소 별 공개 여부를 지정해둬야 한다.
- id: Long, PK
- userId : Long, user의 Id
- User user : User, 1:N fetch.LAZY 전략
- teamId : Long, team의 Id
- Team : team, 1: N fetch.LAZY 전략
- List teamTagList : fetch.EAGER 전략
- teamName : string
- teamLogo : string
- recruitImage : string
- recruitId : Long
- recruit : recruit 타입 객체에 연결되는 용도. fetch.LAZY 전략
- showcaseId : Long
- Post : 게시글, 1:N 으로 게시글에 연결되어 있다. fetch.LAZY 전략
- peerlogId : Long // 일단은 peerlog 기능 전까지는 임시로 존재만한다.
- visibility : boolean, default 는 true다. user 의 속성을 따라 지정된다.
- List myPortfolios 객체 매핑
- user의 folio의 공개여부를 결정한다.
- folio 를 제공한다(무한스크롤)
- 상대방의 folio를 제공한다(무한스크롤)