공통으로 수정된 부분(컬럼명, 컬럼 타입)이 있으면 작성해주세요 :)
코드를 구현하다 발생한 이슈 또는 고민에 대해서 공유하고 같이 해결해봅시다!
10월 31일
- 같은 상품, 같은 사이즈, 같은 가격으로 구매 입찰 시 CREATE가 아닌 UPDATE
- 같은 상품, 같은 사이즈를 구매입찰 한다면 가격, 입찰 기한으로 기존 입찰 내역 UPDATE
- 같은 가격, 입찰기한만 다르게 주면 기존 입찰 내역 입찰기한만 UPDATE
- 사이즈가 다르면 상관없음
- POST → PUT 수정해야할듯
- 즉시 구매 기능에서 즉시 구매가는 판매 입찰에 등록된 판매 희망가 중 최저가를 보여줘야하는데 이전의 변수명인
buyingLowestPrice
를 이용하니 구매 희망가 중 최저가를 보여주더라.... buyingLowestPrice
→highestPrice
(구매희망가 중 최고가)sellingHighestPrice
→lowestPrice
(판매희망가 중 최저가)
⇒ 컬럼(변수명)을 잘못 설계한 것으로 생각하여 아래와 같이 변경!!
11월 01일
- 서비스에서 다른 서비스 공유 → 재사용, 확장성
부리
: A 서비스의 한 기능에만 필요한 로직이고 단순 조회 로직인 경우에는 다른 B 서비스를 참조하지 않는 것보다 B 레포를 주입해서 구현해도 되지 않을까.....?
- 위와 비슷한 주제로 서비스 간 서로 참조하고 있다보니 순환참조 발생!!
- 단순 조회 로직이기 때문에 도메인의 레포를 하여 해결
11월 02일
- 구매/판매내역 조회 DTO 형식
- DTO 세 종류로 만들고 / status 받아서 해당 데이터 보내주기 / enum 3개로 나누기
컨트롤러 반환 객체 형식
@Getter public class SellingHistoryResponse{ private List<SellingBidResponse> sellingBidResponse; private List<UserDealResponse> ongoingUserDealResponse; private List<UserDealResponse> completeUserDealResponse; public SellingHistoryResponse( List<SellingBidResponse>sellingBidResponse, List<UserDealResponse>ongoingUserDealResponse, List<UserDealResponse>completeUserDealResponse ) { this.sellingBidResponse =sellingBidResponse; this.ongoingUserDealResponse =ongoingUserDealResponse; this.completeUserDealResponse =completeUserDealResponse; } }
컨트롤러 반환 객체에 담을 판매 입찰 dto 형식
@Getter public class SellingBidResponse { private String image; private String name; private String size; private int price; private String expiredDate; public SellingBidResponse( String image, String name, String size, int price, String expiredDate ) { this.image = image; this.name = name; this.size = size; this.price = price; this.expiredDate = expiredDate; } }
컨트롤러 반환 객체에 담을 거래 완료 dto 형식
@Getter public class UserDealResponse{ private String image; private String name; private String size; private int price; private String dealDate; private String status; public UserDealResponse( String image, String name, String size, int price, String dealDate, String status ) { this.image =image; this.name =name; this.size =size; this.price =price; this.dealDate =dealDate; this.status =status; } }
11월 03일
- 원래 S3Uploader.java 서비스 단 자체에서
@Value
를 이용해 엑세스 키와 시크릿 키를 접근하여 AWS와의 연결을 확인했는데S3
관련하여 로컬 환경과 달리 배포 환경에서는 yml 파일로 엑세스키와 시크릿키를 접근하지 않기 때문에 S3Uploader.java에서 앞서 말한 부분을 제거하였고...
11월 04일
배포 관련 이슈 :
11월 05일
- 링크 연결시키기
- 수량 - 입찰 중인 것만
- 즉시 판매가 0원
- 입찰 완료 → 리스트에 안보이게(전체-입찰완료가 아닌것)