| | |
| | | import cn.gistack.alerts.notice.util.FormatUtil; |
| | | import cn.gistack.alerts.sms.constant.MinConstant; |
| | | import cn.gistack.alerts.sms.entity.SmsRecord; |
| | | import cn.gistack.alerts.sms.entity.SmsRequest; |
| | | import cn.gistack.alerts.sms.entity.SmsResult; |
| | | import cn.gistack.alerts.sms.entity.SmsTemplate; |
| | | import cn.gistack.alerts.sms.excel.SendRainSmsExcel; |
| | |
| | | import cn.gistack.alerts.sms.service.SmsService; |
| | | import cn.gistack.alerts.sms.util.SmsUtils; |
| | | import cn.gistack.alerts.sms.vo.SmsRequestTemplate; |
| | | import cn.gistack.alerts.sms.vo.SmsResponseVO; |
| | | import cn.gistack.sm.intelligentCall.entity.CallNotFillRecord; |
| | | import cn.gistack.sm.intelligentCall.feign.OutCallClient; |
| | | import cn.gistack.sm.sjztmd.feign.IAttResManagePersonClient; |
| | |
| | | List<ComResult<SMSSendDataResult>> list = new ArrayList<>(); |
| | | if (phoneNumbers.size()>0){ |
| | | // 先保存结果记录 |
| | | SmsResult smsResult = saveSendResult(request, phoneNumbers.size()); |
| | | SmsResult smsResult = saveSendResult(null,request, phoneNumbers.size()); |
| | | // 遍历发送 |
| | | for (String phone : phoneNumbers) { |
| | | request.setUserNumber(phone); |
| | |
| | | request.setTemplateId(smsTemplate.getTemplateId()); |
| | | List<List<String>> templateContent = smsRequestTemplate.getTemplateContent(); |
| | | // 先保存结果记录 |
| | | SmsResult smsResult = saveSendResult(request, templateContent.size()); |
| | | SmsResult smsResult = saveSendResult(null,request, templateContent.size()); |
| | | List<SmsRecord> smsRecordList = new ArrayList<>(); |
| | | // 遍历处理 |
| | | for (List<String> list : templateContent) { |
| | |
| | | request.setTemplateId(smsTemplate.getTemplateId()); |
| | | List<List<String>> templateContent = smsRequestTemplate.getTemplateContent(); |
| | | // 先保存结果记录 |
| | | SmsResult smsResult = saveSendResult(request, templateContent.size()); |
| | | SmsResult smsResult = saveSendResult(null,request, templateContent.size()); |
| | | List<SmsRecord> smsRecordList = new ArrayList<>(); |
| | | // 遍历处理 |
| | | for (List<String> list : templateContent) { |
| | |
| | | |
| | | /** |
| | | * 发送记录保存 |
| | | * @param smsResponse 响应消息 |
| | | * @param request 发送信息 |
| | | * @param number 号码个数 |
| | | */ |
| | | @Override |
| | | public SmsResult saveSendResult(SMSSendRequest request,Integer number) { |
| | | public SmsResult saveSendResult(SmsResponseVO smsResponse, SMSSendRequest request, Integer number) { |
| | | // 先保存结果表 |
| | | SmsResult smsResult = new SmsResult(); |
| | | smsResult.setTemplateId(request.getTemplateId()); |
| | | smsResult.setContent(request.getMessageContent()); |
| | | smsResult.setNumber(number); |
| | | if (null!= smsResponse) { |
| | | smsResult.setResCode(smsResponse.getCode()); |
| | | smsResult.setResMsg(smsResponse.getMsg()); |
| | | } |
| | | //插入记录 |
| | | boolean save = smsResultService.save(smsResult); |
| | | if (save){ |
| | |
| | | dyns[rowNum++] = cols; |
| | | } |
| | | ComResult<DynSMSSendDataResult> resultComResult = sendDynSMSSendDataResultComResult(templateId, dyns); |
| | | SmsResult smsResult = getSaveSmsResult(templateId, rows, ""); |
| | | SmsResponseVO smsResponse = new SmsResponseVO(); |
| | | smsResponse.setCode(resultComResult.getCode().toString()); |
| | | smsResponse.setMsg(resultComResult.getMsg()); |
| | | SmsResult smsResult = getSaveSmsResult(smsResponse,templateId, rows, ""); |
| | | if (null != smsResult) { |
| | | List<SmsRecord> smsRecordList = new ArrayList<>(); |
| | | Pattern compile = Pattern.compile("[^0-9]"); |
| | |
| | | |
| | | /** |
| | | * 保存短信发送结果 |
| | | * @param smsResponse |
| | | * @param templateId |
| | | * @param rows |
| | | * @param content |
| | | * @return |
| | | */ |
| | | private SmsResult getSaveSmsResult(String templateId, String[] rows, String content) { |
| | | private SmsResult getSaveSmsResult(SmsResponseVO smsResponse,String templateId, String[] rows, String content) { |
| | | SMSSendRequest request = new SMSSendRequest(); |
| | | request.setTemplateId(templateId); |
| | | request.setMessageContent(content); |
| | | request.setUserNumber(""); |
| | | // 先保存结果记录 |
| | | return saveSendResult(request, rows.length); |
| | | return saveSendResult(smsResponse,request, rows.length); |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | //请求参数 |
| | | ComResult<DynSMSSendDataResult> resultComResult = sendDynSMSSendDataResultComResult(smsTemplate.getTemplateId(), dyns); |
| | | SmsResult smsResult = getSaveSmsResult(smsTemplate.getTemplateId(), rows, ""); |
| | | SmsResponseVO smsResponse = new SmsResponseVO(); |
| | | smsResponse.setCode(resultComResult.getCode().toString()); |
| | | smsResponse.setMsg(resultComResult.getMsg()); |
| | | SmsResult smsResult = getSaveSmsResult(smsResponse,smsTemplate.getTemplateId(), rows, ""); |
| | | // 异步记录发送记录 |
| | | asyncService.batchSaveSendRecord(smsResult,rows,smsTemplate,resultComResult); |
| | | // 返回 |
| | |
| | | return map; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 发送邮件提醒短信 |
| | | * @param list |
| | | */ |
| | | @Override |
| | | public void sendEmailMsg(List<String> list, SmsRequest smsRequest) { |
| | | String templateId = "2431012165299"; |
| | | // 获取水库个数 |
| | | List<String> errPhones = new ArrayList<>(); |
| | | // 去重 |
| | | Set<String> hashSet = new HashSet<>(list); |
| | | // 查询短信模板 |
| | | SmsTemplate smsTemplate = smsTemplateService.getOne(new QueryWrapper<SmsTemplate>().eq("template_id", templateId)); |
| | | String param = smsRequest.getContent(); |
| | | // 拼接短信标题数组 |
| | | String [] titleArr = getSmsTitleArr(smsTemplate); |
| | | // 批量发送短信 |
| | | Map<String, Object> batchSendSmsMap = batchSendSms(hashSet, titleArr, param, smsTemplate,errPhones); |
| | | } |
| | | } |