회원 가입 및 로그인
가입 방식 별 다른 회원으로 볼 것인가
오늘의 집 서비스 기준으로는 다른 회원으로 분류한다.
가입 방식 별 같은 회원으로 볼 것인가
일반 가입 방식
이메일 인증
OAuth 가입 방식
네이버, 카카오, 페이스북
스프링 OAuth 가입 방식을 활용하면 될 듯
오늘의 집 메인 페이지 호출 예상 API
오늘의 딜
인기 상품
조건 : 무료 배송 유무
오늘의 스토리
최신 집들이 카테고리 약간
오늘의 인기 사진
오늘 생성된 사진 중 좋아요 혹은 조회수가 많은 사진 목록
상품 리뷰
이미지
평점
메시지
도움이 돼요(사실상 좋아요)
사이트에서 가장 많이 구매하는 상품
상품 엔티티에 판매량을 기록해야 할 것 같다.
판매자 문의
상품 페이지에서 상품 선택 별로 존재
미니 카테고리
구매/비구매
기타 / 상품
답변 완료/ 답변 안함
문의에 대한 답변
주문
1인당 최고 구매 수량 확인
주문자
배송지
배송지명
주소
다음 우편번호 API 호출로 해결(프론트 영역?)
요청사항
결제 수단
전체적인 결제창 호출 라이브러리 (iamport 의존성)
클라이언트에서 작성하는 코드가 대부분(실질적인 결제 수행을 imaport가 대행)
주문 카트 엔티티
생성 시간
일정 시간 이후 소멸
결제 이후 소멸
옵션(종류, 개수 등)이 모두 정해진 상품 정보
커뮤니티
집들이 조건 검색 API
Query 파라미터로 조건들이 덕지덕지 붙는 형태
집들이
우리가 봐야할 카테고리들

사진 별로 상품 연결
과연 인공지능으로 하는 것일까? 억지로 구현한다면 사용자가 직접 관련 상품을 링크하는 방식
사진
집들이 id(FK) (ManyToOne)
이미지 URL
순서(index)
집들이 post 양식
// 아마도 multipart-formdata 요청 --- html body --- message : "내용1{{이미지1}}내용2{{이미지2}}내용3{{이미지3}}" 이미지1 이미지2 이미지3
받은 content를 파싱해서 사진 엔티티에 사진 URL과 index로 보관. 브라우저는 출력할 때 각 이미지들을 index에 맞게 배치해서 렌더링 해야 함.
사용자가 수정할 때에는 기존의 모든 사진들을 지우고, 프론트엔드가 보낸 사진들로 다시 저장해야 할 것 같음. (만약에 사진 중복 확인 알고리즘을 구현하면 괜찮을지도?)
질문과 답변
해시태그와 댓글(답변)
댓글에 사진도 첨부할 수 있는데 필수적일까?
팔로우
ManyToMany(USER : USER)
개인 페이지
- 택배사 요청 api는 없는 것을 보니, 보통 판매자가 상품을 확인하고, 택배 배송을 시작하면, 택배사로부터 받은 정보를 서버에 입력하는 것 같다.
- (전담 택배사, 운송장 번호)
- 배송 조회 api를 통해 택배사로부터 실시간 정보를 받고, 사용자에게 보여준다.
- 클라이언트 vs 서버?
- 깊게 들어가면 판매자 entity를 따로 만들어야 함
- 판매자 entity를 만들지 않을 경우, 주문 성공과 동시에(혹은 타이머로 일정 시간이 지난 뒤에) 가짜 운송장 번호를 등록하는 식으로 하면 될 듯.
- 배송 엔티티
- 주문 ID(1:1)
- 택배사 (enum)
- 택배사 운송장번호
- 배송 현황(DB에 저장 vs 실시간 api로 요청하기)
- 택배원 정보
- 제품 위치
- 상태