Explorar el Código

铸造订单加锁

xiongzhu hace 3 años
padre
commit
ba3e1fb3c7
Se han modificado 1 ficheros con 2 adiciones y 0 borrados
  1. 2 0
      src/main/java/com/izouma/nineth/service/MintOrderService.java

+ 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("无法铸造"));