Prechádzať zdrojové kódy

Merge branch 'dev' of http://git.izouma.com/xiongzhu/raex_back into dev

lajiyouxi-xu 2 rokov pred
rodič
commit
729a117b22

+ 8 - 6
src/main/java/com/izouma/nineth/domain/nftdomain/Cart.java

@@ -32,14 +32,16 @@ public class Cart extends BaseEntity {
     @Convert(converter = FileObjectListConverter.class)
     private List<FileObject> picFile;
     private BigDecimal       price;
-    private boolean        enabled = false;
-    private Long           ownerId;
-    private String         owner;
-    private String         ownerAvatar;
+    private boolean          enabled  = false;
+    private Long             ownerId;
+    private String           owner;
+    private String           ownerAvatar;
     @ApiModelProperty("类型")
     @Enumerated(EnumType.STRING)
     @Column(length = 20)
-    private CollectionType type;
+    private CollectionType   type;
     @Transient
-    private LocalDateTime  endTime;
+    private LocalDateTime    endTime;
+    @Transient
+    private boolean          inPaying = false;
 }

+ 2 - 0
src/main/java/com/izouma/nineth/repo/OrderRepo.java

@@ -31,6 +31,8 @@ public interface OrderRepo extends JpaRepository<Order, Long>, JpaSpecificationE
 
     List<Order> findByCollectionId(Long collectionId);
 
+    int countByCollectionIdAndUserIdAndStatus(Long collectionId, Long userId, OrderStatus orderStatus);
+
     int countByUserIdAndCollectionIdAndStatusIn(Long userId, Long collectionId, Iterable<OrderStatus> orderStatuses);
 
     int countByUserIdAndCountIdAndStatusIn(Long userId, String countId, Iterable<OrderStatus> orderStatuses);

+ 8 - 1
src/main/java/com/izouma/nineth/web/nftdomain/CartController.java

@@ -8,6 +8,7 @@ import com.izouma.nineth.enums.CollectionType;
 import com.izouma.nineth.enums.OrderStatus;
 import com.izouma.nineth.repo.CollectionRepo;
 import com.izouma.nineth.repo.DomainOrderRepo;
+import com.izouma.nineth.repo.OrderRepo;
 import com.izouma.nineth.utils.SecurityUtils;
 import com.izouma.nineth.web.BaseController;
 import com.izouma.nineth.domain.nftdomain.Cart;
@@ -39,6 +40,7 @@ public class CartController extends BaseController {
     private CartRepo        cartRepo;
     private CollectionRepo  collectionRepo;
     private DomainOrderRepo domainOrderRepo;
+    private OrderRepo       orderRepo;
 
     @PreAuthorize("hasRole('ADMIN')")
     @PostMapping("/save")
@@ -81,9 +83,14 @@ public class CartController extends BaseController {
                 Collection collection = collectionRepo.findById(cart.getCollectionId()).orElse(null);
                 if (collection != null) {
                     if (!collection.isSalable() || collection.getStock() < 0 || collection.isInPaying()) {
-                        cart.setEnabled(false);
                         if (!collection.isInPaying()) {
+                            cart.setEnabled(false);
                             cartRepo.save(cart);
+                        } else {
+                            if (orderRepo.countByCollectionIdAndUserIdAndStatus(cart.getCollectionId(), cart
+                                    .getUserId(), OrderStatus.NOT_PAID) > 0) {
+                                cart.setInPaying(true);
+                            }
                         }
                     } else {
                         if (collection.getType().equals(CollectionType.DOMAIN)) {