항해99/개발일지

20220218 개발일지 #클론코딩 엔티티 설계하기

paran21 2022. 2. 19. 00:15

오늘부터 새로운 프로젝트를 시작한다.

처음에 cgv 예매를 하려고 했는데 엔티티를 설계하는데 복잡해져서 주제를 바꾸기로 했다.

몇 개가 후보로 나와서 사다리를 돌렸고, 마켓컬리를 하기로 했다.

 

메인페이지와 상세페이지, 장바구니 페이지를 만들고

상품을 장바구니에 담고 주문하기 버튼을 누르면 주문하기 테이블에 담는 것 까지 하기로 했다.

추가로 가능하다면 포토리뷰를 작성하는 것을 하기로 했다.

 

먼저 설계한 엔티티 구조는 다음과 같다.

처음에 ProductInCart와 ProductInOrder을 따로 만들었는데 내용이 거의 똑같아서 고민이 있었다.

저녁에 ERD 세션이 있었는데, 질문에서 좋은 팁을 얻을 수 있었다.

ProductInCart에 state라는 Column을 추가해서 장바구니에 담긴 상태에서는 cart로, 주문 후에는 order로 담기로 했다.

우선 엔티티와 연관관계를 추가하고, 연관관계 편의 메소드도 추가해주었다.

생성자는 로직 구현하면서 달라질 수도 있을 것 같다.

 

내일 시큐리티부분 완성하고, 주문하기 부분 구현하면 될 것 같다.