wangqifan 2 ani în urmă
părinte
comite
04fbec8ac2
1 a modificat fișierele cu 11 adăugiri și 12 ștergeri
  1. 11 12
      src/main/java/com/izouma/nineth/service/MintOrderService.java

+ 11 - 12
src/main/java/com/izouma/nineth/service/MintOrderService.java

@@ -894,17 +894,17 @@ public class MintOrderService {
         return result;
     }
 
-    @Scheduled(cron = "0 0/1 * * * ?")
+    @Scheduled(cron = "0 0/10 * * * ?")
     public void airDropDelayedOrder() {
         if (generalProperties.isNotifyServer()) {
             throw new BusinessException("订单服务器不执行");
         }
-        List<MintOrder> delayedOrders = mintOrderRepo
-                .findByStatusAndAirDropTimeBefore(MintOrderStatus.AIR_DROP, LocalDateTime.now());
-        delayedOrders.forEach(mintOrder -> {
-            if (!getOrderLock(mintOrder.getId())) {
-                log.error("空投失败 {}, redis锁了", mintOrder.getId());
-            } else {
+        if (!getOrderLock(10086L)) {
+            log.info("执行失败,redis锁了");
+        } else {
+            List<MintOrder> delayedOrders = mintOrderRepo
+                    .findByStatusAndAirDropTimeBefore(MintOrderStatus.AIR_DROP, LocalDateTime.now());
+            delayedOrders.forEach(mintOrder -> {
                 MintActivity mintActivity = mintActivityRepo.findById(mintOrder.getMintActivityId())
                                                             .orElseThrow(new BusinessException("暂无"));
                 List<Long> airDropCollections = mintOrder.getAirDropCollections();
@@ -948,7 +948,7 @@ public class MintOrderService {
                             }
                         }
                     } catch (Exception e) {
-                        releaseOrderLock(mintOrder.getId());
+//                        releaseOrderLock(mintOrder.getId());
                         log.error("延迟空投出错:mintOrderId" + mintOrder.getId() + ",藏品id" + collection.getId(), e);
                     }
                 });
@@ -963,10 +963,9 @@ public class MintOrderService {
                 }
                 mintOrder.setAirDropCollections(airDropCollections);
                 mintOrderRepo.save(mintOrder);
-                releaseOrderLock(mintOrder.getId());
-
-            }
-        });
+                releaseOrderLock(10086L);
+            });
+        }
     }
 
 }