- 添加短信服务 admin api
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package cn.iocoder.mall.admin.convert;
|
||||
|
||||
import cn.iocoder.mall.admin.api.bo.sms.PageSmsSignBO;
|
||||
import cn.iocoder.mall.admin.api.bo.sms.PageSmsTemplateBO;
|
||||
import cn.iocoder.mall.admin.api.bo.sms.SmsSignBO;
|
||||
import cn.iocoder.mall.admin.dataobject.SmsSignDO;
|
||||
import org.mapstruct.Mapper;
|
||||
@@ -25,4 +26,5 @@ public interface SmsSignConvert {
|
||||
|
||||
@Mappings({})
|
||||
List<PageSmsSignBO.Sign> convert(List<SmsSignDO> smsSignDOList);
|
||||
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package cn.iocoder.mall.admin.convert;
|
||||
|
||||
import cn.iocoder.mall.admin.api.bo.sms.PageSmsTemplateBO;
|
||||
import cn.iocoder.mall.admin.api.bo.sms.SmsTemplateBO;
|
||||
import cn.iocoder.mall.admin.dataobject.SmsSignDO;
|
||||
import cn.iocoder.mall.admin.dataobject.SmsTemplateDO;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mappings;
|
||||
@@ -24,5 +25,8 @@ public interface SmsTemplateConvert {
|
||||
SmsTemplateBO convert(SmsTemplateDO smsTemplateDO);
|
||||
|
||||
@Mappings({})
|
||||
List<PageSmsTemplateBO.Template> convert(List<SmsTemplateDO> smsTemplateDO);
|
||||
List<PageSmsTemplateBO.Template> convert(List<SmsTemplateDO> smsTemplateDOList);
|
||||
|
||||
@Mappings({})
|
||||
List<PageSmsTemplateBO.Sign> convertTemplateSign(List<SmsSignDO> smsSignDOList);
|
||||
}
|
||||
|
||||
@@ -27,11 +27,11 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 短信
|
||||
@@ -95,6 +95,9 @@ public class SmsServiceImpl implements SmsService {
|
||||
if (!StringUtils.isEmpty(queryDTO.getTemplate())) {
|
||||
queryWrapper.like("template", queryDTO.getTemplate());
|
||||
}
|
||||
if (!StringUtils.isEmpty(queryDTO.getId())) {
|
||||
queryWrapper.eq("id", queryDTO.getId());
|
||||
}
|
||||
|
||||
Page<SmsTemplateDO> page = new Page<SmsTemplateDO>()
|
||||
.setSize(queryDTO.getSize())
|
||||
@@ -102,9 +105,39 @@ public class SmsServiceImpl implements SmsService {
|
||||
.setDesc("create_time");
|
||||
|
||||
IPage<SmsTemplateDO> signPage = smsTemplateMapper.selectPage(page, queryWrapper);
|
||||
|
||||
List<PageSmsTemplateBO.Template> templateList
|
||||
= SmsTemplateConvert.INSTANCE.convert(signPage.getRecords());
|
||||
|
||||
if (CollectionUtils.isEmpty(templateList)) {
|
||||
return new PageSmsTemplateBO()
|
||||
.setData(Collections.EMPTY_LIST)
|
||||
.setCurrent(signPage.getCurrent())
|
||||
.setSize(signPage.getSize())
|
||||
.setTotal(signPage.getTotal());
|
||||
}
|
||||
|
||||
// 获取 sign
|
||||
|
||||
Set<Integer> smsSignIds = templateList.stream().map(
|
||||
PageSmsTemplateBO.Template::getSmsSignId).collect(Collectors.toSet());
|
||||
|
||||
List<SmsSignDO> smsSignDOList = smsSignMapper.selectList(
|
||||
new QueryWrapper<SmsSignDO>().in("id", smsSignIds));
|
||||
|
||||
List<PageSmsTemplateBO.Sign> signList = SmsTemplateConvert.INSTANCE.convertTemplateSign(smsSignDOList);
|
||||
|
||||
Map<Integer, PageSmsTemplateBO.Sign> smsSignDOMap = signList
|
||||
.stream().collect(Collectors.toMap(PageSmsTemplateBO.Sign::getId, o -> o));
|
||||
|
||||
// 设置 sign
|
||||
|
||||
templateList.forEach(template -> {
|
||||
if (smsSignDOMap.containsKey(template.getSmsSignId())) {
|
||||
template.setSign(smsSignDOMap.get(template.getSmsSignId()));
|
||||
}
|
||||
});
|
||||
|
||||
return new PageSmsTemplateBO()
|
||||
.setData(templateList)
|
||||
.setCurrent(signPage.getCurrent())
|
||||
@@ -121,7 +154,7 @@ public class SmsServiceImpl implements SmsService {
|
||||
new QueryWrapper<SmsSignDO>()
|
||||
.eq("platform", platform)
|
||||
.eq("sign", sign)
|
||||
);
|
||||
);
|
||||
|
||||
if (smsSignDO != null) {
|
||||
throw new ServiceException(AdminErrorCodeEnum.SMS_SIGN_IS_EXISTENT.getCode(),
|
||||
|
||||
Reference in New Issue
Block a user