From 8b48c2084ec86a1a8ce542352275fb70f68a53c2 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期四, 12 十二月 2024 11:34:37 +0800 Subject: [PATCH] 代码初始化 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java | 165 ++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 122 insertions(+), 43 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java index c04756c..be1458c 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java @@ -1,6 +1,6 @@ package com.doumee.service.business.impl; -import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -8,29 +8,25 @@ 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.SmsConstants; -import com.doumee.core.utils.Utils; +import com.doumee.core.utils.*; import com.doumee.dao.business.*; +import com.doumee.dao.business.dao.SmsConfigMapper; +import com.doumee.dao.business.dao.SmsEmailMapper; import com.doumee.dao.business.model.*; +import com.doumee.dao.business.model.vo.ValidPhoneCodeVO; import com.doumee.service.business.SmsEmailService; 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.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; -import java.util.Arrays; +import java.util.*; import java.util.Date; -import java.util.List; -import java.util.Objects; /** * 鐭俊閭欢淇℃伅琛⊿ervice瀹炵幇 @@ -47,11 +43,13 @@ @Autowired @Lazy private EmayService emayService; + @Autowired + private SmsConfigMapper smsConfigMapper; @Value("${debug_model}") private boolean debugModel; - public static void isCaptcheValide(SmsEmailMapper smsEmailMapper, String phone, String captche) { + public static void isCaptcheValide(com.doumee.dao.business.dao.SmsEmailMapper smsEmailMapper, String phone, String captche) { SmsEmail model = smsEmailMapper.selectOne(new QueryWrapper<SmsEmail>().lambda() .eq(SmsEmail::getType, Constants.ZERO) .eq(SmsEmail::getPhone, phone) @@ -76,6 +74,12 @@ smsEmailMapper.updateById(model); } + + + @Override + public void validPhoneCaptcha(ValidPhoneCodeVO param){ + isCaptcheValide(smsEmailMapper,param.getPhone(),param.getCode()); + } @Override public Integer create(SmsEmail smsEmail) { smsEmailMapper.insert(smsEmail); @@ -95,27 +99,27 @@ )>=3){ throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝瓒呭嚭鍙戦�佹鏁帮紝璇风◢鍚庨噸璇曪紒"); } - String code = Constants.getRandom6Num(); - - 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(),"瀵逛笉璧凤紝鐭俊楠岃瘉鐮佸彂閫佸け璐ワ紝璇风◢鍚庨噸璇曪紒"); + SmsConfig smsConfig = smsConfigMapper.selectOne(new QueryWrapper<SmsConfig>().lambda().eq(SmsConfig::getObjType, + SmsConstants.inventCode).last(" limit 1 ")); + //寮�鍚煭淇¢�氱煡 + if(Objects.nonNull(smsConfig) || Constants.equalsInteger(smsConfig.getStatus(),Constants.ZERO)){ + if(StringUtils.isNotBlank(smsConfig.getContent())){ + String content = smsConfig.getContent().replace("{楠岃瘉鐮亇",code); + emayService.sendSmsByHk(smsEmail.getPhone(),content); + smsEmail.setRemark(code); + smsEmail.setIsdeleted(Constants.ZERO); + smsEmail.setCreateDate(new Date()); + smsEmail.setStatus(Constants.ZERO); + smsEmail.setType(Constants.ZERO); + smsEmail.setTitle("鐭俊楠岃瘉鐮�"); + smsEmail.setContent(content); + smsEmail.setObjType(Constants.ZERO+""); + smsEmailMapper.insert(smsEmail); + return smsEmail.getId(); + } } - - smsEmail.setRemark(code); - smsEmail.setIsdeleted(Constants.ZERO); - smsEmail.setCreateDate(new Date()); - smsEmail.setStatus(Constants.ZERO); - smsEmail.setType(Constants.ZERO); - smsEmail.setTitle("鐭俊楠岃瘉鐮�"); - smsEmail.setContent(content); - smsEmail.setObjType(Constants.ZERO+""); - smsEmailMapper.insert(smsEmail); - - return smsEmail.getId(); + return null; } @@ -252,6 +256,32 @@ QueryWrapper<SmsEmail> wrapper = new QueryWrapper<>(smsEmail); return smsEmailMapper.selectCount(wrapper); } + @Override + public void sendWaitingSmsNotice(){ + LambdaQueryWrapper<SmsEmail> wrapper = new LambdaQueryWrapper<SmsEmail>() + .eq(SmsEmail::getIsdeleted,Constants.ZERO) + .eq(SmsEmail::getStatus,Constants.TWO); + List<SmsEmail> smsEmails = smsEmailMapper.selectList(wrapper); + if(smsEmails!=null && smsEmails.size()>0){ + for(SmsEmail model : smsEmails){ + if(model.getPhone() == null){ + model.setStatus(Constants.THREE);//鍙戦�佸け璐� + model.setRemark("鎵嬫満鍙蜂负绌猴紝鍙栨秷浠诲姟鍙戦�侊紒"); + }else{ + try { + emayService.sendSmsByHk(model.getPhone(),model.getContent()); + model.setStatus(Constants.ONE);//鍙戦�佹垚鍔� + model.setRemark("鐭俊浠诲姟鍙戦�佹垚鍔�"); + }catch (Exception e){ + model.setStatus(Constants.THREE);//鍙戦�佸け璐� + model.setRemark("鐭俊浠诲姟鍙戦�佸け璐ワ紒"+e.getMessage()); + } + } + model.setEditDate(new Date()); + smsEmailMapper.updateById(model); + } + } + } /** * 璁垮鐢宠涓氬姟鐭俊閫氱煡 @@ -265,7 +295,7 @@ * @param msg * @param auditUser */ - public static void sendVisitSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, + public static void sendVisitSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , com.doumee.dao.business.dao.SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, VisitsMapper visitsMapper, Integer objId, String objCode, String msg, List<String> auditUser){ try{ SmsConfig smsConfig = smsConfigMapper.selectOne(new QueryWrapper<SmsConfig>().lambda().eq(SmsConfig::getCode, @@ -319,8 +349,8 @@ * @param msg * @param auditUser */ - public static void sendVisitReportSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, - VisitsMapper visitsMapper, Integer objId, String objCode, String msg, List<String> auditUser){ + public static void sendVisitReportSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , com.doumee.dao.business.dao.SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, + VisitsMapper visitsMapper, Integer objId, String objCode, String msg, List<String> auditUser){ try{ SmsConfig smsConfig = smsConfigMapper.selectOne(new QueryWrapper<SmsConfig>().lambda().eq(SmsConfig::getCode, objCode).last(" limit 1 ")); @@ -362,6 +392,53 @@ } } + public static void sendVisitReportTimeOutSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , com.doumee.dao.business.dao.SmsEmailMapper smsEmailMapper , + SmsConfigMapper smsConfigMapper, + String objCode, String msg,List<String> mobiles){ + try{ + SmsConfig smsConfig = smsConfigMapper.selectOne(new QueryWrapper<SmsConfig>().lambda().eq(SmsConfig::getCode, + objCode).last(" limit 1 ")); + //寮�鍚煭淇¢�氱煡 + if(Objects.nonNull(smsConfig) || Constants.equalsInteger(smsConfig.getStatus(),Constants.ZERO)){ + String content = systemDictDataBiz.queryByCode(Constants.SMS,Constants.SMS_COMNAME).getCode() + smsConfig.getContent(); + //瓒呮椂鐗规畩澶勭悊 + if(smsConfig.getCode().equals(SmsConstants.visitReportingContent.visitReportingTimeOutSignOutNum)){ + //浠婃棩杩樻湁{鏈绂绘暟閲弣涓瀹㈡姤澶囪溅杈嗘湭绂诲満锛岃鍓嶅線PC绔煡鐪嬭缁嗕俊鎭�� + content = content.replace("{鏈绂绘暟閲弣",msg); + sendBusinessSms(emayService,smsEmailMapper, + mobiles,SmsConstants.visitReport,content,0); + return; + } + } + }catch (Exception e){ + e.printStackTrace(); + } + } + + + public static void sendVisitTimeOutSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , com.doumee.dao.business.dao.SmsEmailMapper smsEmailMapper , + SmsConfigMapper smsConfigMapper, + String objCode, String msg,List<String> mobiles){ + try{ + SmsConfig smsConfig = smsConfigMapper.selectOne(new QueryWrapper<SmsConfig>().lambda().eq(SmsConfig::getCode, + objCode).last(" limit 1 ")); + //寮�鍚煭淇¢�氱煡 + if(Objects.nonNull(smsConfig) || Constants.equalsInteger(smsConfig.getStatus(),Constants.ZERO)){ + String content = systemDictDataBiz.queryByCode(Constants.SMS,Constants.SMS_COMNAME).getCode() + smsConfig.getContent(); + //瓒呮椂鐗规畩澶勭悊 + if(smsConfig.getCode().equals(SmsConstants.visitContent.visitTimeOutSignOutNum)){ + //浠婃棩杩樻湁{鏈绂绘暟閲弣涓瀹㈡姤澶囪溅杈嗘湭绂诲満锛岃鍓嶅線PC绔煡鐪嬭缁嗕俊鎭�� + content = content.replace("{鏈绂绘暟閲弣",msg); + sendBusinessSms(emayService,smsEmailMapper, + mobiles,SmsConstants.visit,content,0); + return; + } + } + }catch (Exception e){ + e.printStackTrace(); + } + } + /** * 闅愭偅闅忔墜鎷� * @param systemDictDataBiz @@ -373,8 +450,8 @@ * @param objCode * @param auditUser */ - public static void sendHiddenDangerSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, - HiddenDangerMapper hiddenDangerMapper, Integer objId, String objCode,List<String> auditUser){ + public static void sendHiddenDangerSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , com.doumee.dao.business.dao.SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, + HiddenDangerMapper hiddenDangerMapper, Integer objId, String objCode, List<String> auditUser){ try{ SmsConfig smsConfig = smsConfigMapper.selectOne(new QueryWrapper<SmsConfig>().lambda().eq(SmsConfig::getCode, objCode).last(" limit 1 ")); @@ -407,8 +484,8 @@ * @param msg * @param userList */ - public static void sendCarUseSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, - CarUseBookMapper carUseBookMapper, Integer objId, String objCode, String msg, List<String> userList){ + public static void sendCarUseSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , com.doumee.dao.business.dao.SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, + CarUseBookMapper carUseBookMapper, Integer objId, String objCode, String msg, List<String> userList){ //鎮ㄦ湁涓�鏉°�愮敤杞︾敵璇枫�戦渶瑕佸鐞嗭紝璇︾粏淇℃伅璇峰墠寰�寰俊鍏紬鍙锋煡鐪嬨�� try{ SmsConfig smsConfig = smsConfigMapper.selectOne(new QueryWrapper<SmsConfig>().lambda().eq(SmsConfig::getCode, @@ -423,6 +500,9 @@ content = content.replace("{鎻愪氦鐨勫嚭鍙戞椂闂磢",DateUtil.getFomartDate(carUseBook.getStartTime(),"yyyy-MM-dd HH:mm")); }else if(objCode.equals(SmsConstants.carUseBookContent.carUseBookAuditFail) || objCode.equals(SmsConstants.carUseBookContent.carUseBookCancel)){ //鎮ㄧ殑銆愮敤杞︾敵璇枫�戝凡琚┏鍥烇紝椹冲洖鍘熷洜涓猴細{椹冲洖鍘熷洜}銆傚鏈夌枒闂紝璇疯仈绯绘淳杞﹀憳銆� + if(StringUtils.isBlank(msg)){ + msg = "鍏朵粬鍘熷洜"; + } content = content.replace("{椹冲洖鍘熷洜}",msg); //鎮ㄧ殑銆愮敤杞︾敵璇枫�戝凡琚彇娑堬紝鍙栨秷鍘熷洜涓猴細{鍙栨秷鍘熷洜}銆傚鏈夌枒闂紝璇疯仈绯绘淳杞﹀憳銆� content = content.replace("{鍙栨秷鍘熷洜}",msg); @@ -448,8 +528,8 @@ * @param msg * @param auditUser */ - public static void sendPlatformBookSms(SystemDictDataBiz systemDictDataBiz,EmayService emayService ,SmsEmailMapper smsEmailMapper ,SmsConfigMapper smsConfigMapper, - PlatformBooksMapper platformBooksMapper,Integer objId,String objCode,String msg,List<String> auditUser){ + public static void sendPlatformBookSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , com.doumee.dao.business.dao.SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, + PlatformBooksMapper platformBooksMapper, Integer objId, String objCode, String msg, List<String> auditUser){ try{ SmsConfig smsConfig = smsConfigMapper.selectOne(new QueryWrapper<SmsConfig>().lambda().eq(SmsConfig::getCode, objCode).last(" limit 1 ")); @@ -493,8 +573,8 @@ * @param objCode * @param platformName */ - public static void sendPlatformJobSms(SystemDictDataBiz systemDictDataBiz,EmayService emayService , SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, - PlatformJobMapper platformJobMapper, Integer objId, String objCode, String platformName,String newPlatformName){ + public static void sendPlatformJobSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , com.doumee.dao.business.dao.SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, + PlatformJobMapper platformJobMapper, Integer objId, String objCode, String platformName, String newPlatformName){ //platformJobNewJob {杞︾墝鍙穧杞︿富鎮ㄥソ锛屾偍鏈変竴涓柊鐨勮繍杈撲换鍔★紝璇︾粏淇℃伅璇峰墠寰�寰俊鍏紬鍙锋煡鐪嬨�� //platformJobStopJob {杞︾墝鍙穧杞︿富鎮ㄥソ锛屾偍鐨勮繍杈撲换鍔″凡琚彇娑堬紝璇︾粏淇℃伅璇峰墠寰�寰俊鍏紬鍙锋煡鐪嬨�� //platformJobCallIn {杞︾墝鍙穧杞︿富鎮ㄥソ锛岃鍦�10鍒嗛挓鍐咃紝鍓嶅線鍥尯绛夊緟鍖虹瓑寰呭彨鍙蜂綔涓氥�� @@ -542,8 +622,7 @@ smsEmail.setObjType(objType); smsEmail.setObjId(objId); smsEmailMapper.insert(smsEmail); - emayService.sendSingleSms(phone,content); - + emayService.sendSmsByHk(phone,content); } } -- Gitblit v1.9.3