Explorar el Código

Merge branch 'dev' of xiongzhu/raex_back into master

sunkean hace 3 años
padre
commit
d4ecbc50a2

+ 33 - 0
src/main/java/com/izouma/nineth/domain/BonusGive.java

@@ -0,0 +1,33 @@
+package com.izouma.nineth.domain;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.persistence.Entity;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+@Data
+@Entity
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+public class BonusGive extends BaseEntity {
+
+    private String name;
+
+    private String pattern;
+
+    private BigDecimal bonus;
+
+    private LocalDateTime startTime;
+
+    private LocalDateTime endTime;
+
+    private int assetNum;
+
+    private BigDecimal totalBonus;
+}

+ 1 - 1
src/main/java/com/izouma/nineth/repo/AssetRepo.java

@@ -104,7 +104,7 @@ public interface AssetRepo extends JpaRepository<Asset, Long>, JpaSpecificationE
 
     List<Asset> findAllByUserIdAndTypeAndOpened(Long userId, CollectionType type, Boolean opened);
 
-    @Query(nativeQuery = true, value = "SELECT asset.user_id userId,user.nickname nickname,user.username username,user.avatar avatar,asset.name,asset.prefix_name prefixName,count(*) num FROM asset left join user on asset.user_id = user.id where asset.user_id not in (1435297,4273750) and asset.status in ('NORMAL','TRADING','GIFTING','MINTING','AUCTIONING') GROUP BY asset.user_id ORDER BY count(*) DESC limit ?1,?2")
+    @Query(nativeQuery = true, value = "SELECT asset.user_id userId,user.nickname nickname,user.username username,user.avatar avatar,asset.name,asset.prefix_name prefixName,count(*) num FROM asset left join user on asset.user_id = user.id where asset.user_id not in (1435297,4273750, 56302) and asset.status in ('NORMAL','TRADING','GIFTING','MINTING','AUCTIONING') GROUP BY asset.user_id ORDER BY count(*) DESC limit ?1,?2")
     List<Map<String, String>> findByPage(int start, int end);
 
     @Query(nativeQuery = true, value = "SELECT count(distinct user_id) FROM asset where status in ('NORMAL','TRADING','GIFTING','MINTING','AUCTIONING') ")

+ 2 - 0
src/main/java/com/izouma/nineth/service/MintOrderService.java

@@ -12,6 +12,7 @@ import com.github.binarywang.wxpay.service.WxPayService;
 import com.huifu.adapay.core.exception.BaseAdaPayException;
 import com.huifu.adapay.model.AdapayCommon;
 import com.huifu.adapay.model.Payment;
+import com.izouma.nineth.annotations.RedisLock;
 import com.izouma.nineth.config.*;
 import com.izouma.nineth.domain.Collection;
 import com.izouma.nineth.domain.*;
@@ -122,6 +123,7 @@ public class MintOrderService {
     }
 
     @Transactional
+    @RedisLock(value = "'mintOrderLock'+#{userId}", expire = 30)
     public void create(Long userId, List<Long> assetIds) {
         User user = userRepo.findByIdAndDelFalse(userId).orElseThrow(new BusinessException("用户不存在"));
         User blackHole = userRepo.findByIdAndDelFalse(Constants.BLACK_HOLE_USER_ID).orElseThrow(new BusinessException("无法铸造"));

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

@@ -724,8 +724,8 @@ public class OrderService {
                         Asset asset = assetRepo.findById(collection.getAssetId()).orElse(null);
                         boolean safeFlag = Objects
                                 .equals(true, redisTemplate.opsForValue().get("safeFlag::" + orderId));
-                        assetService.transfer(asset, order.getPrice(), user, TransferReason.TRANSFER, order
-                                .getId(), safeFlag);
+                        assetService.transfer(asset, order.getPrice(), user, TransferReason.TRANSFER,
+                                order.getId(), safeFlag);
                         order.setStatus(OrderStatus.FINISH);
                         orderRepo.save(order);
                         collectionRepo.delete(collection);

+ 5 - 1
src/main/java/com/izouma/nineth/web/UserHoldCountController.java

@@ -10,6 +10,7 @@ import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.util.Comparator;
 import java.util.List;
 
 @RestController
@@ -29,7 +30,10 @@ public class UserHoldCountController {
         PageQuery pageQuery = new PageQuery();
         pageQuery.setPage(0);
         pageQuery.setSize(50);
-        return userHoldCountService.all(pageQuery).getContent();
+        List<UserHoldDTO> userHoldDTOs = userHoldCountService.all(pageQuery).getContent();
+        userHoldDTOs.sort(Comparator.comparing(UserHoldDTO::getPrice).reversed());
+        return userHoldDTOs;
+
     }
 
     @GetMapping("/excel")