Quellcode durchsuchen

fix 异步发送开启提醒

zoujiajian vor 7 Monaten
Ursprung
Commit
a5e86e96a9

+ 4 - 7
netflix-service/src/main/java/com/cyksj/service/goods/impl/GoodsSubscribeAlertServiceImpl.java

@@ -10,13 +10,14 @@ import com.cyksj.mapper.GoodsDonMapper;
 import com.cyksj.mapper.GoodsDonSkuMapper;
 import com.cyksj.mapper.UserMapper;
 import com.cyksj.mapper.UserSubscribeAlertGoodsRecordMapper;
-import com.cyksj.mapper.market.task.UserBindDetailMapper;
-import com.cyksj.model.entity.*;
+import com.cyksj.model.entity.GoodsDon;
+import com.cyksj.model.entity.GoodsDonSku;
+import com.cyksj.model.entity.User;
+import com.cyksj.model.entity.UserSubscribeAlertGoodsRecord;
 import com.cyksj.redis.RedisService;
 import com.cyksj.service.goods.GoodsSubscribeAlertService;
 import com.cyksj.service.mail.MailService;
 import com.cyksj.service.sms.SmsService;
-import com.cyksj.service.template.TemplateCommonService;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
@@ -39,8 +40,6 @@ public class GoodsSubscribeAlertServiceImpl implements GoodsSubscribeAlertServic
 
 	private final GoodsDonMapper goodsDonMapper;
 
-	private final TemplateCommonService templateCommonService;
-
 	private final SmsService smsService;
 
 	private final MailService mailService;
@@ -49,8 +48,6 @@ public class GoodsSubscribeAlertServiceImpl implements GoodsSubscribeAlertServic
 
 	private final RedisService redisService;
 
-	private final UserBindDetailMapper userBindDetailMapper;
-
 	@Override
 	public void alertBeforeSubscribeByGoodsId(Long goodsId) {
 		DateTime now = DateTime.now();

+ 4 - 1
netflix-web/src/main/java/com/cyksj/web/controller/manage/goods/CmsGoodsDonController.java

@@ -7,6 +7,7 @@ import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.cyksj.common.annotation.Log;
 import com.cyksj.common.exception.BusinessRuntimeException;
+import com.cyksj.common.task.GlobalThreadPoolTaskExecutor;
 import com.cyksj.common.util.Jsons;
 import com.cyksj.dto.Result;
 import com.cyksj.enums.BusinessType;
@@ -67,6 +68,8 @@ public class CmsGoodsDonController {
 
     private final GoodsSubscribeAlertService goodsSubscribeAlertService;
 
+   private static final GlobalThreadPoolTaskExecutor TASK_POOL = GlobalThreadPoolTaskExecutor.getInstance();
+
     @GetMapping("/get")
     public Result<SearchResult<GoodsDonCategoryDetailView>> get(){
         SearchResult<GoodsDonCategoryDetailView> search = beanSearcher.search(GoodsDonCategoryDetailView.class, MapUtils.flatBuilder(request.getParameterMap())
@@ -185,7 +188,7 @@ public class CmsGoodsDonController {
             //之前开启订阅 后再次关闭 发送提醒
             if (dbGoodsDon.getIsSubscribeAlert() && spu.getIsSubscribeAlert() != null && !spu.getIsSubscribeAlert()) {
                 //通知之前 订阅该平台的用户
-                goodsSubscribeAlertService.alertBeforeSubscribeByGoodsId(spu.getId());
+                TASK_POOL.execute(() -> goodsSubscribeAlertService.alertBeforeSubscribeByGoodsId(spu.getId()));
             }
         }
         refreshCacheService.refreshYhHomePageCache();

+ 4 - 1
netflix-web/src/main/java/com/cyksj/web/controller/manage/goods/CmsGoodsDonSkuController.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.Assert;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.cyksj.common.annotation.Log;
 import com.cyksj.common.exception.BusinessRuntimeException;
+import com.cyksj.common.task.GlobalThreadPoolTaskExecutor;
 import com.cyksj.common.util.Jsons;
 import com.cyksj.dto.Result;
 import com.cyksj.enums.BusinessType;
@@ -66,6 +67,8 @@ public class CmsGoodsDonSkuController {
 
     private final GoodsSubscribeAlertService goodsSubscribeAlertService;
 
+    private static final GlobalThreadPoolTaskExecutor TASK_POOL = GlobalThreadPoolTaskExecutor.getInstance();
+
 
     /**
      * 新增 商品spec & sku
@@ -191,7 +194,7 @@ public class CmsGoodsDonSkuController {
             //之前开启订阅 后再次关闭 发送提醒
             if (dbIsSubscribeAlert && !sku.getIsSubscribeAlert()) {
                 //通知之前 订阅该平台的用户
-                goodsSubscribeAlertService.alertBeforeSubscribeBySkuId(sku.getId());
+                TASK_POOL.execute(() -> goodsSubscribeAlertService.alertBeforeSubscribeBySkuId(sku.getId()));
             }
         }
         refreshCacheService.refreshYhHomePageCache();