xieb
2023-04-23 b82f8f6f82f0d9348997abb77e5d72deac078fa2
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/controller/SmsController.java
@@ -2,6 +2,8 @@
import cn.com.flaginfo.sdk.cmc.api.sms.dynsend.DynSMSSendRequest;
import cn.com.flaginfo.sdk.cmc.api.sms.send.SMSSendRequest;
import cn.gistack.sm.sms.entity.SmsRecord;
import cn.gistack.sm.sms.service.ISmsRecordService;
import cn.gistack.sm.sms.util.SmsUtils;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -19,9 +21,42 @@
@AllArgsConstructor
public class SmsController {
   @GetMapping("/test")
   public R test(SMSSendRequest request){
      return R.data(SmsUtils.sendMsg(request));
   private final ISmsRecordService smsRecordService;
   /**
    * 发送登录验证码
    * request 必须包含手机号(多个手机号以英文逗号分隔)
    * @param request
    * @return
    */
   @PostMapping("/sendCode")
   public R test(@RequestBody SMSSendRequest request){
      //设置模板相关信息
      String templateId = "2431012205498";
      String content = "您的登录验证码是" + SmsUtils.getRandNumber() + ",5分钟内有效,请勿泄漏,如非本人操作,请忽略此信息";
      request.setMessageContent(content);
      request.setTemplateId(templateId);
      // 发送操作
      String sendMsg = SmsUtils.sendMsg(request);
      // 记录发送记录操作
      saveSendRecord(request,sendMsg);
      // 返回发送信息
      return R.data(sendMsg);
   }
   /**
    * 发送记录保存
    * @param request 发送信息
    * @param sendMsg 响应数据
    */
   private void saveSendRecord(SMSSendRequest request, String sendMsg) {
      SmsRecord smsRecord = new SmsRecord();
      smsRecord.setPhone(request.getUserNumber());
      smsRecord.setContent(request.getMessageContent());
      smsRecord.setTemplateId(request.getTemplateId());
      smsRecord.setResContent(sendMsg);
      //插入记录
      smsRecordService.save(smsRecord);
   }
   @PostMapping("/test1")