| | |
| | | package com.yami.trading.service.impl; |
| | | |
| | | import com.yami.trading.bean.log.domain.CodeLog; |
| | | import com.yami.trading.common.manager.sms.SmsSendUtil; |
| | | import com.yami.trading.service.EmailSendService; |
| | | import com.yami.trading.service.IdentifyingCodeService; |
| | | import com.yami.trading.service.IdentifyingCodeTimeWindowService; |
| | |
| | | @Override |
| | | public void send(String target, String ip, String userId) { |
| | | |
| | | String code; |
| | | /** |
| | | * 短信发送签名 |
| | | */ |
| | | // String smsbao_sign = sysparaService.find("smsbao_sign").getValue(); |
| | | //短信发送 |
| | | if (!target.contains("@")) { |
| | | |
| | | // 短信发送文本[TEST]code is :{0} |
| | | String send_code_text = this.sysparaService.find("send_code_text").getSvalue(); |
| | | if (null == send_code_text || (send_code_text = send_code_text.trim()).isEmpty()) { |
| | | logger.error("send_code_text 未配置"); |
| | | return; |
| | | } |
| | | |
| | | //是否每次发送的code都不一样 |
| | | boolean send_code_always_new = this.sysparaService.find("send_code_always_new").getBoolean(); |
| | | |
| | | Object object = this.identifyingCodeTimeWindowService.getAuthCode(target); |
| | | if (object == null || send_code_always_new) { |
| | | Random random = new Random(); |
| | | code = String.valueOf(random.nextInt(999999) % 900000 + 100000); |
| | | } else { |
| | | code = String.valueOf(object); |
| | | } |
| | | |
| | | try { |
| | | String code; |
| | | /** |
| | | * 发送的短信接口类型 tiantian---天天---smsSendService--->>>>-- |
| | | * moduyun---摩杜云---smsSingleSender |
| | | * 短信发送签名 |
| | | */ |
| | | String send_code_type = this.sysparaService.find("send_code_type").getSvalue(); |
| | | if (null == send_code_type || (send_code_type = send_code_type.trim()).isEmpty()) { |
| | | logger.error("send_code_type 未配置"); |
| | | return; |
| | | } |
| | | // String smsbao_sign = sysparaService.find("smsbao_sign").getValue(); |
| | | //短信发送 |
| | | if (!target.contains("@")) { |
| | | |
| | | if ("tiantian".equals(send_code_type)) { |
| | | smsSendService.send(target, MessageFormat.format(send_code_text, code)); |
| | | logger.info(MessageFormat.format("tiangtian--target:{0},code:{1},ip:{2}", target, code, ip)); |
| | | } |
| | | // 短信发送文本[TEST]code is :{0} |
| | | String send_code_text = this.sysparaService.find("send_code_text").getSvalue(); |
| | | if (null == send_code_text || (send_code_text = send_code_text.trim()).isEmpty()) { |
| | | logger.error("send_code_text 未配置"); |
| | | return; |
| | | } |
| | | |
| | | //是否每次发送的code都不一样 |
| | | boolean send_code_always_new = this.sysparaService.find("send_code_always_new").getBoolean(); |
| | | |
| | | Object object = this.identifyingCodeTimeWindowService.getAuthCode(target); |
| | | if (object == null || send_code_always_new) { |
| | | Random random = new Random(); |
| | | code = String.valueOf(random.nextInt(999999) % 900000 + 100000); |
| | | } else { |
| | | code = String.valueOf(object); |
| | | } |
| | | |
| | | /** |
| | | * 发送的短信接口类型 tiantian---天天---smsSendService--->>>>-- |
| | | * moduyun---摩杜云---smsSingleSender |
| | | */ |
| | | String send_code_type = this.sysparaService.find("send_code_type").getSvalue(); |
| | | if (null == send_code_type || (send_code_type = send_code_type.trim()).isEmpty()) { |
| | | logger.error("send_code_type 未配置"); |
| | | return; |
| | | } |
| | | |
| | | if ("tiantian".equals(send_code_type)) { |
| | | smsSendService.send(target, MessageFormat.format(send_code_text, code)); |
| | | logger.info(MessageFormat.format("tiangtian--target:{0},code:{1},ip:{2}", target, code, ip)); |
| | | } |
| | | |
| | | // else if ("moduyun".equals(send_code_type)) { |
| | | // // -- 摩杜云短信签名的Id--accesskey,secretkey,signId,templateId |
| | |
| | | // } |
| | | // } |
| | | // } |
| | | else if ("smsbao".equals(send_code_type)) { |
| | | smsSendService.send(target, MessageFormat.format(send_code_text, code)); |
| | | logger.info(MessageFormat.format("smsbao--target:{0},code:{1},ip:{2}", target, code, ip)); |
| | | } |
| | | else if ("smsbao".equals(send_code_type)) { |
| | | smsSendService.send(target, MessageFormat.format(send_code_text, code)); |
| | | logger.info(MessageFormat.format("smsbao--target:{0},code:{1},ip:{2}", target, code, ip)); |
| | | } |
| | | |
| | | } else { |
| | | else if ("smszh".equals(send_code_type)) { |
| | | SmsSendUtil.sendSms(target, MessageFormat.format(send_code_text, code), null, null); |
| | | logger.info(MessageFormat.format("smszh--target:{0},code:{1},ip:{2}", target, code, ip)); |
| | | } |
| | | |
| | | //邮件发送 |
| | | String send_code_text_content = this.sysparaService.find("send_code_text_content").getSvalue(); |
| | | if (null == send_code_text_content || (send_code_text_content = send_code_text_content.trim()).isEmpty()) { |
| | | logger.error("send_code_text_content 未配置"); |
| | | return; |
| | | } |
| | | //是否每次发送的code都不一样 |
| | | boolean send_code_always_new = this.sysparaService.find("send_code_always_new").getBoolean(); |
| | | |
| | | Object object = this.identifyingCodeTimeWindowService.getAuthCode(target); |
| | | if (object == null || send_code_always_new) { |
| | | Random random = new Random(); |
| | | code = String.valueOf(random.nextInt(999999) % 900000 + 100000); |
| | | |
| | | } else { |
| | | code = String.valueOf(object); |
| | | |
| | | //邮件发送 |
| | | String send_code_text_content = this.sysparaService.find("send_code_text_content").getSvalue(); |
| | | if (null == send_code_text_content || (send_code_text_content = send_code_text_content.trim()).isEmpty()) { |
| | | logger.error("send_code_text_content 未配置"); |
| | | return; |
| | | } |
| | | //是否每次发送的code都不一样 |
| | | boolean send_code_always_new = this.sysparaService.find("send_code_always_new").getBoolean(); |
| | | |
| | | Object object = this.identifyingCodeTimeWindowService.getAuthCode(target); |
| | | if (object == null || send_code_always_new) { |
| | | Random random = new Random(); |
| | | code = String.valueOf(random.nextInt(999999) % 900000 + 100000); |
| | | } else { |
| | | code = String.valueOf(object); |
| | | } |
| | | |
| | | String content = MessageFormat.format("code is :{0}", code); |
| | | String send_content_text = this.sysparaService.find("send_content_text").getSvalue(); |
| | | if (0 != (send_content_text = send_content_text.trim()).length()) { |
| | | content = MessageFormat.format(send_content_text, code); |
| | | } |
| | | |
| | | emailSendService.sendEmail(target, MessageFormat.format(send_code_text_content, code), content); |
| | | logger.info(MessageFormat.format("email--target:{0},code:{1},ip:{2}", target, code, ip)); |
| | | } |
| | | |
| | | String content = MessageFormat.format("code is :{0}", code); |
| | | String send_content_text = this.sysparaService.find("send_content_text").getSvalue(); |
| | | if (0 != (send_content_text = send_content_text.trim()).length()) { |
| | | content = MessageFormat.format(send_content_text, code); |
| | | } |
| | | |
| | | emailSendService.sendEmail(target, MessageFormat.format(send_code_text_content, code), content); |
| | | logger.info(MessageFormat.format("email--target:{0},code:{1},ip:{2}", target, code, ip)); |
| | | this.identifyingCodeTimeWindowService.putAuthCode(target, code); |
| | | CodeLog codeLog = new CodeLog(); |
| | | codeLog.setTarget(target); |
| | | codeLog.setUserId(userId); |
| | | codeLog.setLog("发送地址:" + target + ",验证码:" + code + ",ip地址:" + ip); |
| | | codeLog.setCreateTime(new Date()); |
| | | codeLogService.save(codeLog); |
| | | }catch (Exception e) { |
| | | throw new RuntimeException(); |
| | | } |
| | | |
| | | this.identifyingCodeTimeWindowService.putAuthCode(target, code); |
| | | CodeLog codeLog = new CodeLog(); |
| | | codeLog.setTarget(target); |
| | | codeLog.setUserId(userId); |
| | | codeLog.setLog("发送地址:" + target + ",验证码:" + code + ",ip地址:" + ip); |
| | | codeLog.setCreateTime(new Date()); |
| | | codeLogService.save(codeLog); |
| | | } |
| | | |
| | | } |