| | |
| | | } |
| | | |
| | | /** |
| | | * 短信固定内容发送通用方法(仅支持 {xx} 模式的模板) |
| | | * request 必须包含手机号,模板id,拼接好的内容 |
| | | * @param request |
| | | * @return |
| | | */ |
| | | @PostMapping("/sendFixedContentByXXModel") |
| | | public R sendFixedContentByXXModel(@RequestBody SMSSendRequest request){ |
| | | // 手机号码校验 |
| | | if(validatePhone(request.getUserNumber())) { |
| | | // 发送操作 |
| | | String sendMsg = SmsUtils.sendMsg(request); |
| | | JSONObject jsonObject = JSON.parseObject(sendMsg); |
| | | // 记录发送记录操作 |
| | | SmsResult smsResult = saveSendResult(request, 1); |
| | | if (null != smsResult){ |
| | | saveSendRecord(request, sendMsg,smsResult.getId()); |
| | | } |
| | | // 返回发送信息 |
| | | return R.data(jsonObject); |
| | | } |
| | | // 返回发送信息 |
| | | return R.fail(400,"该手机号不存在!"); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 短信动态内容发送通用方法(仅支持 具名变量 {手机号码:11} 模式的模板) |
| | | * request 必须包含手机号,模板id,拼接好的内容 |
| | | * @param smsRequest |
| | | * @return |
| | | */ |
| | | @PostMapping("/sendFixedContentByNamedVariableModel") |
| | | public R sendFixedContentByNamedVariableModel(@RequestBody SmsRequest smsRequest){ |
| | | // 处理数据(可能是多个手机号情况) |
| | | List<String> list = Arrays.asList(smsRequest.getPhone().split(",")); |
| | | // 保存发送结果 |
| | | // 记录保存 |
| | | SMSSendRequest request = new SMSSendRequest(); |
| | | request.setMessageContent(smsRequest.getContent()); |
| | | request.setTemplateId(smsRequest.getTemplateId()); |
| | | SmsResult smsResult = saveSendResult(request, list.size()); |
| | | // 遍历 |
| | | for (String phone : list) { |
| | | DynSMSSendRequest dynSMSSendRequest = new DynSMSSendRequest(); |
| | | dynSMSSendRequest.setTemplateId(smsRequest.getTemplateId()); |
| | | dynSMSSendRequest.setDynData(smsRequest.getParams()); |
| | | // 手机号校验 |
| | | if(validator(phone)) { |
| | | // 发送邮件短信 |
| | | String dynSendMsg = SmsUtils.dynSendMethod(dynSMSSendRequest); |
| | | // 记录保存 |
| | | if (null != smsResult) { |
| | | SMSSendRequest smsSendRequest = new SMSSendRequest(); |
| | | smsSendRequest.setUserNumber(phone); |
| | | smsSendRequest.setMessageContent(smsRequest.getContent()); |
| | | smsSendRequest.setTemplateId(dynSMSSendRequest.getTemplateId()); |
| | | // 记录发送记录操作 |
| | | saveSendRecord(smsSendRequest, dynSendMsg,smsResult.getId()); |
| | | } |
| | | }else { |
| | | // 手机号有误记录 |
| | | // 记录保存 |
| | | SMSSendRequest smsSendRequest = new SMSSendRequest(); |
| | | smsSendRequest.setUserNumber(phone); |
| | | smsSendRequest.setMessageContent(smsRequest.getContent()); |
| | | smsSendRequest.setTemplateId(dynSMSSendRequest.getTemplateId()); |
| | | // 记录发送记录操作 |
| | | saveSendRecord(smsSendRequest, "手机号错误未发送...",null); |
| | | } |
| | | } |
| | | return R.status(true); |
| | | } |
| | | |
| | | /** |
| | | * 发送登录验证码 |
| | | * request 必须包含手机号 |
| | | * @param request |
| | | * @return |
| | | */ |
| | | @PostMapping("/sendCode") |
| | | public R test(@RequestBody SMSSendRequest request){ |
| | | public R sendCode(@RequestBody SMSSendRequest request){ |
| | | // 手机号码校验 |
| | | if(validatePhone(request.getUserNumber())) { |
| | | //设置模板相关信息 |