123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 |
- package com.szwl.service.impl;
- import com.alibaba.fastjson.JSONObject;
- import com.szwl.model.entity.TMessageCode;
- import com.szwl.mapper.TMessageCodeMapper;
- import com.szwl.model.utils.MailUtil;
- import com.szwl.model.utils.SampleMail;
- import com.szwl.model.utils.YunPianSms;
- import com.szwl.service.TMessageCodeService;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import org.apache.commons.lang.StringUtils;
- import org.elasticsearch.cluster.routing.RerouteService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import java.util.Date;
- /**
- * <p>
- * 短信验证码 服务实现类
- * </p>
- *
- * @author wuhs
- * @since 2022-04-14
- */
- @Service
- public class TMessageCodeServiceImpl extends ServiceImpl<TMessageCodeMapper, TMessageCode> implements TMessageCodeService {
- @Autowired
- TMessageCodeMapper tMessageCodeMapper;
- private static final String appid = "07784f5fedb508046c841b391005b7de";
- /*
- * 发送短信验证码
- * */
- @Override
- public String sentMessage(String type, String phone, String companyType) {
- String result = null;
- String retu = null;
- try {
- String code = addCode();
- result = YunPianSms.sendSms(appid, getMessage(companyType, code), phone);
- JSONObject sult = JSONObject.parseObject(result);
- Object msg = sult.get("msg");
- Object mobile = sult.get("mobile");
- retu = msg+":" + phone;
- if(mobile!=null){
- TMessageCode tMessageCode = new TMessageCode();
- tMessageCode.setType(type);
- tMessageCode.setCode(code);
- tMessageCode.setPhone(phone);
- tMessageCode.setModifyDate(new Date());
- tMessageCode.setCreateDate(new Date());
- tMessageCode.setStatus("0");
- int insert = tMessageCodeMapper.insert(tMessageCode);
- }
- int a= 0;
- } catch (Exception e) {
- }
- return retu;
- }
- /*
- * 发送邮箱验证码
- * */
- @Override
- public String sentEmail(String type, String email) {
- String code = addCode();
- // String subject = "Verification code message";
- String subject =getSubject(type);
- String contnet = "";
- contnet = getContnet(type,code);
- new MailUtil().send(email,subject,contnet);
- TMessageCode tMessageCode = new TMessageCode();
- tMessageCode.setType(type);
- tMessageCode.setCode(code);
- tMessageCode.setPhone(email);
- tMessageCode.setModifyDate(new Date());
- tMessageCode.setCreateDate(new Date());
- tMessageCode.setStatus("0");
- tMessageCodeMapper.insert(tMessageCode);
- return "发送成功";
- }
- @Override
- public String sendEmailAbroad(String type, String email) {
- String code = addCode();
- String contnet = "";
- contnet = getContnet(type,code);
- new SampleMail().sendAuthCode(email, contnet);
- TMessageCode tMessageCode = new TMessageCode();
- tMessageCode.setType(type);
- tMessageCode.setCode(code);
- tMessageCode.setPhone(email);
- tMessageCode.setModifyDate(new Date());
- tMessageCode.setCreateDate(new Date());
- tMessageCode.setStatus("0");
- tMessageCodeMapper.insert(tMessageCode);
- return "Send Success";
- }
- @Override
- public Date getLastSendTime(String phoneOrEmail) {
- if (StringUtils.isEmpty(phoneOrEmail)) {
- return null;
- }
- Date lastSendTime = tMessageCodeMapper.getLastSendTimeByEmailOrPhone(phoneOrEmail);
- return lastSendTime != null ? lastSendTime : new Date(0);
- }
- //邮件标题
- private String getSubject(String type) {
- String subject = "";
- if(type.equals("0")||type.equals("1")){
- subject = "Verification code message";
- }
- return subject;
- }
- //邮件内容
- private String getContnet(String type, String code) {
- StringBuffer contnet = new StringBuffer();
- if(type.equals("0")||type.equals("1")){
- String str1="Dear customer<br>" +
- "<br>" +
- "Hello, your verification code is: ";
- // String str2=",please enter it within 3 minutes.";
- contnet.append(str1).append(code);
- }
- return contnet.toString();
- }
- //生成6位随机数字
- private String addCode() {
- int code = (int) ((Math.random() * 9 + 1) * 100000);
- String retu = String.valueOf(code);
- return retu;
- }
- private String getMessage(String companyType, String code) {
- String message = "";
- if(StringUtils.isNotEmpty(companyType)&&companyType.equals("0")){
- message = "【申泽智能】您好,您的验证码是"+code+",请于3分钟内输入。";
- }
- if(StringUtils.isNotEmpty(companyType)&&companyType.equals("1")){
- message = "【七云科技】您好,您的验证码是"+code+",请于3分钟内输入。";
- }
- return message;
- }
- }
|