wangqifan 3 vuotta sitten
vanhempi
commit
4cf722aa9d

+ 20 - 16
src/main/java/com/izouma/nineth/service/TradeAuctionOrderService.java

@@ -108,22 +108,26 @@ public class TradeAuctionOrderService {
             tradeAuction.setStatus(TradeAuctionStatus.FIXED_PRICE_PURCHASED);
 
         } else if (tradeAuctionOrder.getPaymentType().equals(AuctionPaymentType.DEPOSIT)) {
-            BigDecimal result = tradeAuctionOrder.getPrice()
-                    .multiply(BigDecimal.valueOf(tradeAuction.getIncreasePer()))
-                    .divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP);
-            tradeAuction.setNextPrice(result.add(tradeAuctionOrder.getPrice()));
-            tradeAuction.setEarning(tradeAuction.getNextPrice().subtract(tradeAuction.getPrice()));
-            BigDecimal serviceCharge = (BigDecimal.valueOf(0.03).multiply(tradeAuction.getNextPrice()))
-                    .add(tradeAuctionOrder.getPrice().subtract(tradeAuction.getPrice()));
-            tradeAuction.setCommission(serviceCharge);
-            tradeAuction.setStatus(TradeAuctionStatus.WAITING);
-            tradeAuction.setCurrentPrice(tradeAuctionOrder.getPrice());
-            tradeAuction.setCurrentOwner(tradeAuctionOrder.getNickname());
-            tradeAuction.setCurrentOwnerId(tradeAuctionOrder.getUserId());
-            tradeAuction.setCurrentStartTime(LocalDateTime.now().plusMinutes(tradeAuction.getMinutes()));
-            tradeAuction.setCurrentEndTime(LocalDateTime.now().plusMinutes(tradeAuction.getMinutes()).plusDays(1));
-            tradeAuction.setFixedPrice(tradeAuctionOrder.getPrice().multiply(BigDecimal.valueOf(150))
-                    .divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP));
+            if (tradeAuction.getSale() == 29) {
+                tradeAuction.setStatus(TradeAuctionStatus.PURCHASED);
+            } else {
+                BigDecimal result = tradeAuctionOrder.getPrice()
+                        .multiply(BigDecimal.valueOf(tradeAuction.getIncreasePer()))
+                        .divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP);
+                tradeAuction.setNextPrice(result.add(tradeAuctionOrder.getPrice()));
+                tradeAuction.setEarning(tradeAuction.getNextPrice().subtract(tradeAuction.getPrice()));
+                BigDecimal serviceCharge = (BigDecimal.valueOf(0.03).multiply(tradeAuction.getNextPrice()))
+                        .add(tradeAuctionOrder.getPrice().subtract(tradeAuction.getPrice()));
+                tradeAuction.setCommission(serviceCharge);
+                tradeAuction.setCurrentPrice(tradeAuctionOrder.getPrice());
+                tradeAuction.setCurrentOwner(tradeAuctionOrder.getNickname());
+                tradeAuction.setCurrentOwnerId(tradeAuctionOrder.getUserId());
+                tradeAuction.setCurrentStartTime(LocalDateTime.now().plusMinutes(tradeAuction.getMinutes()));
+                tradeAuction.setCurrentEndTime(LocalDateTime.now().plusMinutes(tradeAuction.getMinutes()).plusDays(1));
+                tradeAuction.setFixedPrice(tradeAuctionOrder.getPrice().multiply(BigDecimal.valueOf(150))
+                        .divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP));
+                tradeAuction.setStatus(TradeAuctionStatus.WAITING);
+            }
         } else {
             tradeAuction.setCurrentPrice(tradeAuctionOrder.getCurrentPrice());
             tradeAuction.setCurrentOwner(tradeAuctionOrder.getNickname());

+ 1 - 2
src/main/java/com/izouma/nineth/service/TradeAuctionService.java

@@ -195,9 +195,8 @@ public class TradeAuctionService {
     }
 
     public void pass(TradeAuction tradeAuction) {
-        tradeAuction.setStatus(TradeAuctionStatus.PASS);
+        tradeAuction.setStatus(TradeAuctionStatus.PURCHASED);
         tradeAuctionRepo.save(tradeAuction);
-
         decreaseStock(tradeAuction.getId(), 1);
     }
 }