From 5e7341ad54041a1c17a60fc4269eb71f44529476 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期二, 05 三月 2024 14:30:22 +0800 Subject: [PATCH] 111 --- server/service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java | 29 ++++++++++++++++++++++++++--- 1 files changed, 26 insertions(+), 3 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java index 78a3a64..32a4157 100644 --- a/server/service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java @@ -3,12 +3,14 @@ import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; +import com.doumee.core.model.LoginUserInfo; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.SmsEmailMapper; +import com.doumee.dao.business.model.Company; import com.doumee.dao.business.model.SmsEmail; import com.doumee.service.business.SmsEmailService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -18,6 +20,7 @@ import com.doumee.service.business.third.EmailService; import com.doumee.service.business.third.EmayService; import org.apache.commons.lang3.StringUtils; +import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -25,6 +28,7 @@ import java.util.Date; import java.util.List; +import java.util.Objects; /** * 鐭俊閭欢淇℃伅琛⊿ervice瀹炵幇 @@ -56,7 +60,8 @@ if(!Constants.equalsInteger(model.getStatus(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝楠岃瘉鐮佸凡澶辨晥锛岃閲嶆柊鍙戦�佸啀璇曪紒"); } - if(model.getCreateDate() !=null && System.currentTimeMillis() - model.getCreateDate().getTime() > 3*60*100){ + if(model.getCreateDate() !=null && + System.currentTimeMillis() - model.getCreateDate().getTime() > 3*60*1000){ model.setStatus(Constants.ONE); model.setEditDate(new Date()); smsEmailMapper.updateById(model); @@ -103,8 +108,12 @@ )>=3){ throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝瓒呭嚭鍙戦�佹鏁帮紝璇风◢鍚庨噸璇曪紒"); } + String code = Constants.getRandom6Num(); - boolean result= emayService.sendSingleSms(smsEmail.getPhone(),code); + + String content = systemDictDataBiz.queryByCode(Constants.SMS,Constants.SMS_COMNAME).getCode()+"楠岃瘉鐮佷负锛�"+code+"锛屾楠岃瘉鐮佹湁鏁堜负3鍒嗛挓銆傝鍕挎硠闇�"; + + boolean result= emayService.sendSingleSms(smsEmail.getPhone(),content); if(!result){ throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鐭俊楠岃瘉鐮佸彂閫佸け璐ワ紝璇风◢鍚庨噸璇曪紒"); } @@ -115,13 +124,27 @@ smsEmail.setStatus(Constants.ZERO); smsEmail.setType(Constants.ZERO); smsEmail.setTitle("鐭俊楠岃瘉鐮�"); - smsEmail.setContent(systemDictDataBiz.queryByCode(Constants.SMS,Constants.SMS_COMNAME).getCode()+"楠岃瘉鐮佷负锛�"+code+"锛屾楠岃瘉鐮佹湁鏁堜负3鍒嗛挓銆傝鍕挎硠闇�"); + smsEmail.setContent(content); smsEmailMapper.insert(smsEmail); return smsEmail.getId(); } + + @Override + public void validateCode(String code) { + if(StringUtils.isBlank(code)){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); + if(!loginUserInfo.getType().equals(Constants.ONE)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛绫诲埆閿欒"); + }; + Company company = loginUserInfo.getCompany(); + SmsEmailServiceImpl.isCaptcheValide(smsEmailMapper,company.getPhone(),code); + } + @Override public void deleteById(Integer id) { smsEmailMapper.deleteById(id); -- Gitblit v1.9.3