批量发送短信任务

This commit is contained in:
lifenlong 2021-05-18 17:27:43 +08:00
parent 0528a1e1ca
commit 3925422b3e
5 changed files with 6 additions and 12 deletions

View File

@ -13,7 +13,6 @@ import cn.lili.modules.message.service.StoreMessageService;
import cn.lili.modules.store.entity.dos.Store; import cn.lili.modules.store.entity.dos.Store;
import cn.lili.modules.store.service.StoreService; import cn.lili.modules.store.service.StoreService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.RequiredArgsConstructor;
import org.apache.rocketmq.common.message.MessageExt; import org.apache.rocketmq.common.message.MessageExt;
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
import org.apache.rocketmq.spring.core.RocketMQListener; import org.apache.rocketmq.spring.core.RocketMQListener;
@ -59,7 +58,7 @@ public class NoticeSendMessageListener implements RocketMQListener<MessageExt> {
List<String> list = memberMapper.getAllMemberMobile(); List<String> list = memberMapper.getAllMemberMobile();
smsUtil.sendBatchSms(smsReachDTO.getSignName(), list, smsReachDTO.getMessageCode()); smsUtil.sendBatchSms(smsReachDTO.getSignName(), list, smsReachDTO.getMessageCode());
//判断为发送部分用户 //判断为发送部分用户
} else if (smsReachDTO.getSmsRange().equals(RangeEnum.APPOINT.name())) { } else {
smsUtil.sendBatchSms(smsReachDTO.getSignName(), smsReachDTO.getMobile(), smsReachDTO.getMessageCode()); smsUtil.sendBatchSms(smsReachDTO.getSignName(), smsReachDTO.getMobile(), smsReachDTO.getMessageCode());
} }
break; break;

View File

@ -112,7 +112,6 @@ public class SmsUtilAliImplService implements SmsUtil, AliSmsUtil {
.setTemplateParam(JSONUtil.toJsonStr(param)); .setTemplateParam(JSONUtil.toJsonStr(param));
try { try {
SendSmsResponse response = client.sendSms(sendSmsRequest); SendSmsResponse response = client.sendSms(sendSmsRequest);
System.out.println(response.getBody().getCode());
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
@ -123,8 +122,9 @@ public class SmsUtilAliImplService implements SmsUtil, AliSmsUtil {
com.aliyun.dysmsapi20170525.Client client = this.createClient(); com.aliyun.dysmsapi20170525.Client client = this.createClient();
List<String> sign = mobile; List<String> sign = new ArrayList<String>();
sign.addAll(mobile);
sign.replaceAll(e -> signName); sign.replaceAll(e -> signName);
//手机号拆成多个小组进行发送 //手机号拆成多个小组进行发送
@ -140,7 +140,7 @@ public class SmsUtilAliImplService implements SmsUtil, AliSmsUtil {
signNameList.add(sign.subList((i * 100), endPoint)); signNameList.add(sign.subList((i * 100), endPoint));
} }
//发送短信 // //发送短信
for (int i = 0; i < mobileList.size(); i++) { for (int i = 0; i < mobileList.size(); i++) {
SendBatchSmsRequest sendBatchSmsRequest = new SendBatchSmsRequest() SendBatchSmsRequest sendBatchSmsRequest = new SendBatchSmsRequest()
.setPhoneNumberJson(JSONUtil.toJsonStr(mobileList.get(i))) .setPhoneNumberJson(JSONUtil.toJsonStr(mobileList.get(i)))

View File

@ -10,7 +10,6 @@ import cn.lili.modules.message.entity.dto.SmsReachDTO;
import cn.lili.modules.message.mapper.SmsReachMapper; import cn.lili.modules.message.mapper.SmsReachMapper;
import cn.lili.modules.message.service.SmsReachService; import cn.lili.modules.message.service.SmsReachService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import org.apache.rocketmq.spring.core.RocketMQTemplate; import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -40,7 +39,7 @@ public class SmsReachServiceImpl extends ServiceImpl<SmsReachMapper, SmsReach> i
BeanUtil.copyProperties(smsReach,smsReachDTO); BeanUtil.copyProperties(smsReach,smsReachDTO);
smsReachDTO.setMobile(mobile); smsReachDTO.setMobile(mobile);
this.save(smsReach); this.save(smsReach);
//发送订单变更mq消息 //发送短信批量发送mq消息
rocketMQTemplate.asyncSend(destination, JSONUtil.toJsonStr(smsReachDTO), RocketmqSendCallbackBuilder.commonCallback()); rocketMQTemplate.asyncSend(destination, JSONUtil.toJsonStr(smsReachDTO), RocketmqSendCallbackBuilder.commonCallback());
} }

View File

@ -1,6 +1,5 @@
package cn.lili.modules.message.serviceimpl; package cn.lili.modules.message.serviceimpl;
import cn.lili.common.enums.MessageCode;
import cn.lili.common.enums.ResultCode; import cn.lili.common.enums.ResultCode;
import cn.lili.common.exception.ServiceException; import cn.lili.common.exception.ServiceException;
import cn.lili.common.sms.AliSmsUtil; import cn.lili.common.sms.AliSmsUtil;
@ -13,7 +12,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -71,7 +69,6 @@ public class SmsSignServiceImpl extends ServiceImpl<SmsSignMapper, SmsSign> impl
//查询签名状态 //查询签名状态
for (SmsSign smsSign : list) { for (SmsSign smsSign : list) {
map = aliSmsUtil.querySmsSign(smsSign.getSignName()); map = aliSmsUtil.querySmsSign(smsSign.getSignName());
smsSign.setSignStatus((Integer) map.get("SignStatus")); smsSign.setSignStatus((Integer) map.get("SignStatus"));
smsSign.setReason(map.get("Reason").toString()); smsSign.setReason(map.get("Reason").toString());
this.updateById(smsSign); this.updateById(smsSign);

View File

@ -10,7 +10,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -65,7 +64,7 @@ public class SmsTemplateServiceImpl extends ServiceImpl<SmsTemplateMapper, SmsTe
List<SmsTemplate> list = list(new LambdaQueryWrapper<SmsTemplate>().eq(SmsTemplate::getTemplateStatus, 0)); List<SmsTemplate> list = list(new LambdaQueryWrapper<SmsTemplate>().eq(SmsTemplate::getTemplateStatus, 0));
//查询签名状态 //查询签名状态
for (SmsTemplate smsTemplate : list) { for (SmsTemplate smsTemplate : list) {
map = aliSmsUtil.querySmsTemplate(smsTemplate.getTemplateName()); map = aliSmsUtil.querySmsTemplate(smsTemplate.getTemplateCode());
smsTemplate.setTemplateStatus((Integer) map.get("TemplateStatus")); smsTemplate.setTemplateStatus((Integer) map.get("TemplateStatus"));
smsTemplate.setReason(map.get("Reason").toString()); smsTemplate.setReason(map.get("Reason").toString());
smsTemplate.setTemplateCode(map.get("TemplateCode").toString()); smsTemplate.setTemplateCode(map.get("TemplateCode").toString());