Skip to content

Commit f393a1a

Browse files
committed
feat: 판매 올리면 Coupon Image, Barcode Image 조회 불가
1 parent 79252f8 commit f393a1a

File tree

9 files changed

+35
-6
lines changed

9 files changed

+35
-6
lines changed

src/main/java/com/sookmyung/concon/Coupon/Entity/Coupon.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,19 @@ public void useCoupon(LocalDate useDate) {
6060
@Setter
6161
private boolean buyFlag; // 구매 여부
6262

63+
private boolean sellFlag;
64+
6365
private String memo;
6466

6567

6668
public void changeUser(User user) {
6769
this.user = user;
6870
}
6971

72+
public void updateSellFlag(boolean sellFlag) {
73+
this.sellFlag = sellFlag;
74+
}
75+
7076
public void update(String barcode, Double remainingPrice,
7177
LocalDate expirationDate, String memo,
7278
Item item, String itemImageUrl, Double itemPrice) {

src/main/java/com/sookmyung/concon/Coupon/dto/CouponCreateRequestDto.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ public Coupon toEntity(User user, Item item, LocalDateTime now) {
3232
.itemPrice(item.getPrice())
3333
.remainingPrice(price)
3434
.expirationDate(expirationDate)
35+
.sellFlag(false)
3536
.buyFlag(false)
3637
.memo(memo)
3738
.build();

src/main/java/com/sookmyung/concon/Coupon/dto/CouponCreateResponseDto.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ public class CouponCreateResponseDto {
1616
private Double price;
1717
private String category;
1818
private boolean isUsed;
19+
private boolean isSellFlag;
1920
private boolean isBuyFlag;
2021
private String barcodeImageUploadUrl;
2122
private String couponImageUploadUrl;
@@ -29,6 +30,7 @@ public static CouponCreateResponseDto toDto(Coupon coupon, ItemSimpleResponseDto
2930
.expirationDate(coupon.getExpirationDate())
3031
.price(coupon.getRemainingPrice())
3132
.isUsed(false)
33+
.isSellFlag(coupon.isSellFlag())
3234
.isBuyFlag(coupon.isBuyFlag())
3335
.barcodeImageUploadUrl(barcodeImageUploadUrl)
3436
.couponImageUploadUrl(couponImageUploadUrl)

src/main/java/com/sookmyung/concon/Coupon/dto/CouponDetailResponseDto.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,25 +26,32 @@ public class CouponDetailResponseDto {
2626
private Double price;
2727
private LocalDate expirationDate;
2828
private LocalDate usedDate;
29-
private Boolean buyFlag;
29+
private boolean sellFlag;
30+
private boolean buyFlag;
3031
private String memo;
3132
private List<ReviewSimpleResponseDto> reviews;
3233

3334
// TODO : Exception 처리
3435
public static CouponDetailResponseDto toDto(Coupon coupon, UserSimpleResponseDto user,
3536
ItemSimpleResponseDto item, String barcodeImageUrl,
3637
String couponImageUrl, List<ReviewSimpleResponseDto> reviews) {
38+
String barcode = "";
39+
if (!coupon.isSellFlag()) {
40+
barcode = coupon.getBarcode();
41+
}
42+
3743
return CouponDetailResponseDto.builder()
3844
.couponId(coupon.getId())
3945
.user(user)
4046
.item(item)
41-
.barcode(coupon.getBarcode())
47+
.barcode(barcode)
4248
.barcodeImageUrl(barcodeImageUrl)
4349
.itemImageUrl(item.getImageUrl())
4450
.couponImageUrl(couponImageUrl)
4551
.price(coupon.getRemainingPrice())
4652
.expirationDate(coupon.getExpirationDate())
4753
.usedDate(coupon.getUsedDate())
54+
.sellFlag(coupon.isSellFlag())
4855
.buyFlag(coupon.isBuyFlag())
4956
.memo(coupon.getMemo())
5057
.reviews(reviews)

src/main/java/com/sookmyung/concon/Coupon/dto/CouponSimpleResponseDto.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ public class CouponSimpleResponseDto {
1616
private Double price;
1717
private boolean isUsed;
1818
private boolean isBuyFlag;
19+
private boolean isSellFlag;
1920
private String memo;
2021

2122
public static CouponSimpleResponseDto toDto(Coupon coupon, ItemSimpleResponseDto item, boolean isUsed) {
@@ -25,6 +26,7 @@ public static CouponSimpleResponseDto toDto(Coupon coupon, ItemSimpleResponseDto
2526
.expirationDate(coupon.getExpirationDate())
2627
.price(coupon.getRemainingPrice())
2728
.isUsed(isUsed)
29+
.isSellFlag(coupon.isSellFlag())
2830
.isBuyFlag(coupon.isBuyFlag())
2931
.memo(coupon.getMemo())
3032
.build();

src/main/java/com/sookmyung/concon/Coupon/service/CouponFacade.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,15 @@ public class CouponFacade {
2828
private final ReviewRepository reviewRepository;
2929

3030
public CouponDetailResponseDto toDetailDto(Coupon coupon, User user, Item item) {
31-
String couponImageUrl = photoFacade.getCouponPhotoUrl(coupon);
32-
String barcodeImageUrl = photoFacade.getCouponBarcodePhotoUrl(coupon);
31+
String couponImageUrl = "";
32+
String barcodeImageUrl = "";
33+
if (!coupon.isSellFlag()) {
34+
couponImageUrl = photoFacade.getCouponPhotoUrl(coupon);
35+
barcodeImageUrl = photoFacade.getCouponBarcodePhotoUrl(coupon);
36+
}
3337
UserSimpleResponseDto userDto = UserSimpleResponseDto.toDto(user, photoFacade.getUserPhotoUrl(user));
3438
ItemSimpleResponseDto itemDto = ItemSimpleResponseDto.toDto(item, photoFacade.getItemPhotoUrl(item));
39+
3540
List<ReviewSimpleResponseDto> reviews = reviewRepository.findAllByItemId(item.getId(), PageRequest.of(0, 10))
3641
.stream().map(ReviewSimpleResponseDto::toDto).toList();
3742

src/main/java/com/sookmyung/concon/Coupon/service/CouponService.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,6 @@ public class CouponService {
3434
private final ItemFacade itemFacade;
3535
private final OrderUserFacade orderUserFacade;
3636
private final CouponFacade couponFacade;
37-
private final PhotoFacade photoFacade;
38-
private final UserFacade userFacade;
3937
private final ReviewRepository reviewRepository;
4038

4139

@@ -61,6 +59,9 @@ public List<CouponSimpleResponseDto> getAllMyCoupon(String token) {
6159
.map(couponFacade::toSimpleDto)
6260
.toList();
6361
}
62+
63+
64+
// 쿠폰 ID 로 단일 조회
6465
@Transactional(readOnly = true)
6566
public CouponDetailResponseDto getCouponDetail(String token, Long couponId) {
6667
User user = orderUserFacade.findUserByToken(token);
@@ -95,6 +96,7 @@ public CouponDetailResponseDto cancelCoupon(Long couponId) {
9596
return couponFacade.toDetailDto(coupon, coupon.getUser(), coupon.getItem());
9697
}
9798

99+
// 남은 돈 업데이트
98100
@Transactional
99101
public CouponDetailResponseDto changeRemainPrice(CouponChangePriceRequestDto request) {
100102
Coupon coupon = couponFacade.findByCouponId(request.getCouponId());

src/main/java/com/sookmyung/concon/Order/service/OrderServiceImpl.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ public OrderDetailResponseDto createOrder(OrderCreateRequestDto request) {
4848
User seller = coupon.getUser();
4949
Orders orders = request.toEntity(coupon, seller);
5050
orderRepository.save(orders);
51+
52+
coupon.updateSellFlag(true);
53+
5154
return OrderDetailResponseDto.toDto(orders,
5255
CouponSimpleResponseDto.toDto(coupon,
5356
ItemSimpleResponseDto.toDto(item, photoFacade.getItemPhotoUrl(item)),

src/main/java/com/sookmyung/concon/Order/service/TransactionService.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,7 @@ public OrderDetailResponseDto completeTransaction(Long orderId) {
153153
Coupon coupon = order.getCoupon();
154154
coupon.changeUser(order.getBuyer());
155155
coupon.setBuyFlag(true);
156+
coupon.updateSellFlag(false);
156157

157158
// orderRequestRedisRepository.delete(orderId);
158159

0 commit comments

Comments
 (0)