From ff663f1b7cbea8bcd550075b8499fdc74d54fe35 Mon Sep 17 00:00:00 2001 From: mg <maokecheng@163.com> Date: 星期四, 27 十月 2022 18:19:35 +0800 Subject: [PATCH] 添加短信审核功能 --- ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java | 70 +++++++++++++++++++++++++++++++++++ 1 files changed, 70 insertions(+), 0 deletions(-) diff --git a/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java index d307642..6712c0c 100644 --- a/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java @@ -4,13 +4,20 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ycl.common.util.CommonUtils; +import com.ycl.dto.message.MessageSmsParam; import com.ycl.entity.message.Message; import com.ycl.entity.message.SmsAudit; import com.ycl.entity.user.UmsDepartManage; +import com.ycl.exception.ApiException; +import com.ycl.mapper.message.MessageMapper; import com.ycl.mapper.message.SmsAuditMapper; import com.ycl.mapper.user.UmsDepartManageMapper; import com.ycl.service.message.ISmsAuditService; +import com.ycl.service.message.factory.SmsSender; +import com.ycl.service.user.UmsAdminService; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.*; @@ -29,6 +36,13 @@ @Resource private UmsDepartManageMapper umsDepartManageMapper; + @Resource + private MessageMapper messageMapper; + + @Resource + private UmsAdminService adminService; + @Resource + private SmsSender smsSender; @Override public IPage<SmsAudit> list(SmsAudit smsAudit) { @@ -81,6 +95,62 @@ audits.add(audit); } saveBatch(audits); + } + @Override + public Boolean checkSms(MessageSmsParam messageSmsParam) { + switch (messageSmsParam.getStatus()) + { + //鏈�氳繃 + case 0: + noPassMethod(messageSmsParam); + break; + //閫氳繃 + case 1: + passMethod(messageSmsParam); + break; + default: + throw new ApiException("鏈尮閰嶅埌璇ョ被鍨�"); + } + return true; + } + @Transactional + public void passMethod(MessageSmsParam messageSmsParam) { + Message message = messageMapper.selectById(messageSmsParam.getMessageId()); + if (CommonUtils.isEmpty(message)) { + throw new ApiException("鏈壘鍒拌瀹℃牳鐭俊娑堟伅"); + } + //id鎹㈡垚鎵嬫満鍙� + String targetToPhone = adminService.getTargetTo(message.getTargetTo(), message.getChannelCode()); + message.setTargetTo(targetToPhone); + //鍙戦�佺煭淇� + smsSender.sendSms(message); + + Message updateMessage = new Message(); + updateMessage.setSendTime(new Date()); + updateMessage.setIsScan(1); + updateMessage.setUpdateTime(new Date()); + updateMessage.setUpdateUser(messageSmsParam.getUpdateUser()); + + LambdaQueryWrapper<Message> updateWrapper = new LambdaQueryWrapper<>(); + updateWrapper.eq(Message::getMessageNumber, message.getMessageNumber()); + messageMapper.update(updateMessage, updateWrapper); + + baseMapper.updateById(packageData(messageSmsParam)); + } + @Transactional + public void noPassMethod(MessageSmsParam messageSmsParam) { + baseMapper.updateById(packageData(messageSmsParam)); + } + public SmsAudit packageData(MessageSmsParam messageSmsParam) { + SmsAudit smsAudit = new SmsAudit(); + smsAudit.setId(messageSmsParam.getId()); + smsAudit.setAuditStatus(messageSmsParam.getStatus()); + smsAudit.setAuditOpinion(messageSmsParam.getAuditOpinion()); + smsAudit.setAuditResult(messageSmsParam.getResult()); + smsAudit.setAuditId(messageSmsParam.getUpdateUser()); + smsAudit.setUpdateTime(new Date()); + smsAudit.setUpdateUser(messageSmsParam.getUpdateUser()); + return smsAudit; } } -- Gitblit v1.8.0