Pārlūkot izejas kodu

流拍记录表

licailing 4 gadi atpakaļ
vecāks
revīzija
7f31c896a8

+ 9 - 0
src/main/java/com/izouma/nineth/domain/AuctionPassRecord.java

@@ -6,11 +6,20 @@ import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import javax.persistence.Entity;
+import java.math.BigDecimal;
+
 @Data
 @AllArgsConstructor
 @NoArgsConstructor
 @Builder
+@Entity
 @ApiModel("流拍记录表")
 public class AuctionPassRecord extends BaseEntity {
+    private Long auctionId;
+
+    private Long userId;
+
+    private BigDecimal purchasePrice;
 
 }

+ 15 - 0
src/main/java/com/izouma/nineth/service/AuctionActivityService.java

@@ -4,6 +4,7 @@ import com.izouma.nineth.annotations.Debounce;
 import com.izouma.nineth.config.RedisKeys;
 import com.izouma.nineth.domain.Asset;
 import com.izouma.nineth.domain.AuctionActivity;
+import com.izouma.nineth.domain.AuctionPassRecord;
 import com.izouma.nineth.domain.User;
 import com.izouma.nineth.dto.PageQuery;
 import com.izouma.nineth.dto.auction.AuctionInputDTO;
@@ -222,6 +223,13 @@ public class AuctionActivityService {
                         auctionActivityRepo.scheduleOffShelf(recordNew1.getId(), AuctionStatus.PURCHASED);
                     } else {
                         auctionActivityRepo.scheduleOffShelf(recordNew1.getId(), AuctionStatus.PASS);
+                        //添加到流拍记录表里
+                        AuctionPassRecord.builder()
+                                .auctionId(record.getId())
+                                .userId(recordNew1.getPurchaserId())
+                                .purchasePrice(recordNew1.getPurchasePrice())
+                                .build();
+
                         if (record.getAuctionType().equals(AuctionType.NFT)) {
                             Asset asset = assetRepo.findById(recordNew1.getAssetId())
                                     .orElseThrow(new BusinessException("暂无"));
@@ -239,6 +247,13 @@ public class AuctionActivityService {
                     auctionActivityRepo.scheduleOffShelf(recordNew1.getId(), AuctionStatus.PURCHASED);
                 } else {
                     auctionActivityRepo.scheduleOffShelf(recordNew1.getId(), AuctionStatus.PASS);
+                    //添加到流拍记录表里
+                    AuctionPassRecord.builder()
+                            .auctionId(record.getId())
+                            .userId(recordNew1.getPurchaserId())
+                            .purchasePrice(recordNew1.getPurchasePrice())
+                            .build();
+
                     if (record.getAuctionType().equals(AuctionType.NFT)) {
                         Asset asset = assetRepo.findById(recordNew1.getAssetId())
                                 .orElseThrow(new BusinessException("暂无"));

+ 18 - 0
src/main/java/com/izouma/nineth/service/AuctionOrderService.java

@@ -279,6 +279,12 @@ public class AuctionOrderService {
 //                  auction.setStatus(AuctionStatus.PASS);
 //                  auctionActivityRepo.save(auction);
                     auctionActivityService.changeStatus(order.getAuctionId(), AuctionStatus.PASS);
+                    //添加到流拍记录表里
+                    AuctionPassRecord.builder()
+                            .auctionId(auction.getId())
+                            .userId(auction.getPurchaserId())
+                            .purchasePrice(auction.getPurchasePrice())
+                            .build();
 
                     //退其余保证金
                     List<AuctionOrder> orders = auctionOrderRepo
@@ -321,6 +327,12 @@ public class AuctionOrderService {
                 }
 //              auctionActivityRepo.save(auction);
                 auctionActivityService.changeStatus(order.getAuctionId(), AuctionStatus.PASS);
+                //添加到流拍记录表里
+                AuctionPassRecord.builder()
+                        .auctionId(auction.getId())
+                        .userId(auction.getPurchaserId())
+                        .purchasePrice(auction.getPurchasePrice())
+                        .build();
 
             }
 
@@ -362,6 +374,12 @@ public class AuctionOrderService {
                 auctionOrders.forEach(this::cancel);
                 act.setStatus(AuctionStatus.PASS);
                 auctionActivityRepo.save(act);
+                //添加到流拍记录表里
+                AuctionPassRecord.builder()
+                        .auctionId(act.getId())
+                        .userId(act.getPurchaserId())
+                        .purchasePrice(act.getPurchasePrice())
+                        .build();
             });
         }
     }