| | |
| | | import com.ycl.dto.message.MessageParam; |
| | | import com.ycl.entity.message.Message; |
| | | import com.ycl.exception.ApiException; |
| | | import com.ycl.service.message.ISmsAuditService; |
| | | import com.ycl.service.message.Sender; |
| | | import com.ycl.service.user.UmsAdminService; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | public void setPropertyValueUtil(PropertyValueUtil propertyValueUtil) { |
| | | MailSender.propertyValueUtil = propertyValueUtil; |
| | | } |
| | | private static ISmsAuditService iSmsAuditService; |
| | | @Autowired |
| | | public void setISmsAuditService(ISmsAuditService iSmsAuditService) { |
| | | MailSender.iSmsAuditService = iSmsAuditService; |
| | | } |
| | | |
| | | private static UmsAdminService adminService; |
| | | @Autowired |
| | | public void setUmsAdminService(UmsAdminService adminService) { |
| | | MailSender.adminService = adminService; |
| | | } |
| | | |
| | | @Override |
| | | public Message sendMessage(MessageParam messageParam) { |
| | | |
| | | //入库保存 |
| | | Message message = innerSender.sendMessage(messageParam); |
| | | //发起审核 |
| | | iSmsAuditService.startAuditSms(message); |
| | | //id换成邮箱号 |
| | | String targetToMail = adminService.getTargetTo(messageParam.getTargetTo(), messageParam.getChannelCode()); |
| | | message.setTargetTo(targetToMail); |
| | | //发送邮件 |
| | | sendMail(message); |
| | | return message; |
| | | } |
| | | |
| | | public Message sendMail(Message message) { |
| | | //组装邮件发送 |
| | | JavaMailSenderImpl sender = new JavaMailSenderImpl(); |
| | | sender.setHost(propertyValueUtil.getHost()); |
| | | sender.setUsername(propertyValueUtil.getUsername()); |
| | | sender.setPassword(propertyValueUtil.getAuthorizationCode()); |
| | | |
| | | String[] mailUrls = messageParam.getTargetTo().split(","); |
| | | SimpleMailMessage[] messageList = new SimpleMailMessage[mailUrls.length]; |
| | | String[] mails = message.getTargetTo().split(","); |
| | | SimpleMailMessage[] messageList = new SimpleMailMessage[mails.length]; |
| | | for (int i=0;i<messageList.length;i++) { |
| | | SimpleMailMessage messageTo = new SimpleMailMessage(); |
| | | messageTo.setFrom(messageParam.getTargetFrom()); |
| | | messageTo.setTo(mailUrls[i]); |
| | | messageTo.setSubject(messageParam.getHead()); |
| | | messageTo.setFrom(propertyValueUtil.getUsername()); |
| | | messageTo.setTo(mails[i]); |
| | | messageTo.setSubject(message.getHead()); |
| | | messageTo.setText(message.getBody()); |
| | | messageList[i] = messageTo; |
| | | } |