|
@@ -6,6 +6,7 @@ import com.pj.enummj.EnterpriseConfirm;
|
|
|
import com.pj.rabbitmq.config.RabbitMqConfig;
|
|
|
import com.pj.tb_enterprise.TbEnterprise;
|
|
|
import com.pj.tb_goods.TbGoods;
|
|
|
+import com.pj.tb_goods_transit.retry.SmsRetryService;
|
|
|
import com.pj.tb_goods_type.TbGoodsTypeService;
|
|
|
import com.pj.tb_order.TbOrder;
|
|
|
import com.pj.tb_people.TbPeople;
|
|
@@ -40,19 +41,24 @@ public class MethodGoodsTransitService {
|
|
|
@Autowired
|
|
|
private AmqpTemplate amqpTemplate;
|
|
|
|
|
|
+ /** 短信运营商 */
|
|
|
+ @Autowired
|
|
|
+ private SmsRetryService smsRetryService;
|
|
|
+ //todo:
|
|
|
+
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 给边民组组员发送短信通知
|
|
|
*/
|
|
|
- public int sendSms(List<TbPeople> peopleIdList){
|
|
|
+ public int sendSms(List<TbPeople> peopleIdList) {
|
|
|
|
|
|
//获取当前电脑核心数
|
|
|
int processors = Runtime.getRuntime().availableProcessors() / 2;
|
|
|
//创建固定线程
|
|
|
ExecutorService executorService = Executors.newFixedThreadPool(processors);
|
|
|
//执行任务
|
|
|
- //每次执行100条
|
|
|
+ //每次执行30条
|
|
|
int bai = 30;
|
|
|
//计算需要创建的线程数
|
|
|
int threads = (int) Math.ceil((double) peopleIdList.size() / bai);
|
|
@@ -66,7 +72,13 @@ public class MethodGoodsTransitService {
|
|
|
//多线程执行任务
|
|
|
executorService.submit(() -> {
|
|
|
enterpriseList.forEach(item -> {
|
|
|
- //todo: 给边民发送短信
|
|
|
+ //todo: 给边民发送短信,调用短信商接口API
|
|
|
+ try {
|
|
|
+ smsRetryService.sendSms(item.getPhone(), item.getCode().equals("null")? "666666" :item.getCode());
|
|
|
+ } catch (Exception e) {
|
|
|
+ System.out.println("异常被抓住了!");
|
|
|
+ throw new RuntimeException(e);
|
|
|
+ }
|
|
|
|
|
|
});
|
|
|
});
|