✅ CQRS
이슈
CQRS 분리를 어디까지 해야할까?
컨트롤러까지?
서비스까지?
해결방안
CQS 일단 서비스에만 붙이기로결정
주문 도메인 이외에는 CQRS 적용 안 하기.
✅ 즉시구매/구매입찰과 결제상태
이슈
구매 입찰 / 즉시 구매 모두 상품 선택 & 카드 결제 & 쿠폰 로직처리를 한 번에?
입찰시 결제대기상태에 걸릴수 있음 → 문제
방법 1 → 컬럼추가 (결제대기 → 구매,판매완료) =>거래종료여부(거래구분)
방법 2 → 테이블 분리(구매,판매)
방법 3 → 컬럼에 enum으로 구분? (구매,판매입찰 → 결제대기 → 구매,판매완료)
join을 어차피쓸꺼면 주문 테이블 클 필요 있나..?
쿠폰 사용 지금은 붙이는게 맞나?
해결방안
결제를 미리 등록하게끔 하자!
구매 입찰 시 결제를 미리 등록
본인 계좌 등록
이에 따라 계좌 등록 처리 또한 처리해주어야 한다
계좌 등록 API 처리
사용자 등록
프로필 수정
계좌 등록 API를 따로 분리
계좌 테이블로 처리한다
(FK) 사용자 id값
계좌번호
,,
포인트
로 결제할 수 있게끔 처리한다.
포인트 충전은 결제시스템을 통해 처리한다.
추후 구현 예정
즉시구매와 즉시판매를 아래와 같이 처리하기로 함
(이전) 즉시구매와 즉시판매를 각각 구매입찰,판매입찰로서 처리
구매입찰,판매입찰을 생성
이에 대한 주문데이터도 생성
(이후)
즉시구매/즉시판매 시, 주문건으로 처리
주문처리가 완료된 입찰데이터는 어떻게 구분할까???
구매 입찰 처리를 아래와 같이 하자
마감시간이 현재시간보다 이전이면 종료된 입찰
구매입찰 완료 시, 마감일자를 입찰시간으로 변경
주문처리가된 입찰데이터는 삭제한다.