修改发送短信逻辑 更改实体

master
bynt 3 years ago
parent f09a1d29b6
commit 3c2f4dabb3

@ -57,6 +57,7 @@ import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.sql.Timestamp;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author Enzo
@ -70,7 +71,6 @@ import java.util.*;
public class TbSendSmsServiceImpl implements TbSendSmsService {
/**
* hutool
*/
@ -148,12 +148,15 @@ public class TbSendSmsServiceImpl implements TbSendSmsService {
@Transactional(rollbackFor = Exception.class)
public void sendSmsBySendVo(SendVo vo) {
List<SendVo.DataInfo> infos = vo.getData();
for (SendVo.DataInfo info : infos) {
TbTemplate template = lruCache.get(info.getTaskName());
List<String> mobileList = new ArrayList<>();
Map<String, List<SendVo.DataInfo>> listMap = infos.stream().
collect(Collectors.groupingBy(SendVo.DataInfo::getTaskName));
for (String taskName : listMap.keySet()) {
TbTemplate template = lruCache.get(taskName);
if (template == null) {
template = tbTemplateRepository.findByTaskName(info.getTaskName());
template = tbTemplateRepository.findByTaskName(taskName);
// 5分钟缓存
lruCache.put(info.getTaskName(), template,
lruCache.put(taskName, template,
DateUnit.MINUTE.getMillis() * DefaultConstant.FIVE_NUMBER);
}
log.info(" template as [{}]", template);
@ -161,9 +164,10 @@ public class TbSendSmsServiceImpl implements TbSendSmsService {
log.info("send Sms fail the Template is null ");
throw new BadRequestException("模板信息为空");
}
listMap.get(taskName).forEach(info -> mobileList.add(info.getMobile()));
Map<String, Object> map = new HashMap<>(DefaultConstant.TWO_NUMBER);
map.put("baseUrlAddr", template.getLinkUrl());
map.put("variableList", info.getPhoneList());
map.put("variableList", mobileList);
// 接收生成短链参数
ShortLinkUrlDto urlDto =
JSONUtil.toBean(HttpUtil.post
@ -200,8 +204,9 @@ public class TbSendSmsServiceImpl implements TbSendSmsService {
sendSms.setSendStatus(sendResult ? StatusEnum.SUCCESS.getValue() : StatusEnum.UNSUCCESSFUL.getValue());
tbSendSmsRepository.save(sendSms);
}
log.info("======= [ sendSms send size {} ] =======", info.getPhoneList().size());
log.info("======= [ sendSms send size {} ] =======", listMap.get(taskName).size());
}
}
@Override

@ -42,8 +42,8 @@ public class SendVo {
/**
* Base64
*/
@JsonProperty("list")
private List<String> phoneList;
@JsonProperty("mobile")
private String mobile;
}
}

Loading…
Cancel
Save