From 3d6cc6bf2bdad1714c98c820dc1805b89d594141 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期六, 12 十月 2024 16:27:02 +0800
Subject: [PATCH] 最新版本
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java | 126 +++++++++++++++++++++++++++++++++++++++++-
1 files changed, 123 insertions(+), 3 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 c8798f8..01afdca 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,5 +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.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -12,21 +13,27 @@
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.dao.business.PlatformBooksMapper;
+import com.doumee.dao.business.PlatformJobMapper;
+import com.doumee.dao.business.SmsConfigMapper;
import com.doumee.dao.business.SmsEmailMapper;
-import com.doumee.dao.business.model.Company;
-import com.doumee.dao.business.model.SmsEmail;
+import com.doumee.dao.business.model.*;
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.Date;
import java.util.List;
+import java.util.Objects;
/**
* 鐭俊閭欢淇℃伅琛⊿ervice瀹炵幇
@@ -41,6 +48,7 @@
@Autowired
private SystemDictDataBiz systemDictDataBiz;
@Autowired
+ @Lazy
private EmayService emayService;
@Value("${debug_model}")
@@ -107,10 +115,10 @@
smsEmail.setType(Constants.ZERO);
smsEmail.setTitle("鐭俊楠岃瘉鐮�");
smsEmail.setContent(content);
+ smsEmail.setObjType(Constants.ZERO+"");
smsEmailMapper.insert(smsEmail);
return smsEmail.getId();
-
}
@@ -247,4 +255,116 @@
QueryWrapper<SmsEmail> wrapper = new QueryWrapper<>(smsEmail);
return smsEmailMapper.selectCount(wrapper);
}
+
+
+ /**
+ * 鐢ㄨ溅鐢宠 鐭俊閫氱煡閰嶇疆
+ * @param emayService
+ * @param smsEmailMapper
+ * @param smsConfigMapper
+ * @param platformBooksMapper
+ * @param objId
+ * @param objCode
+ * @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){
+ 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();
+ PlatformBooks platformBooks = platformBooksMapper.selectById(objId);
+ if(Objects.nonNull(platformBooks)){
+ if(objCode.equals(SmsConstants.platformBookContent.platformBookAuditSuccess)){
+ //鎮ㄧ殑銆愯溅杈嗗叆鍥敵璇枫�戝凡缁忓鎵归�氳繃锛屽叆鍥椂闂翠负{鍏ュ洯鏃堕棿}锛岃鎻愬墠30鍒嗛挓鍓嶅線鐜板満绛惧埌銆傚璁″垝鏈夊彉锛岃鍙婃椂鑱旂郴瀹℃牳浜哄憳銆�
+ content = content.replace("{鍏ュ洯鏃堕棿}",DateUtil.getDate(platformBooks.getArriveDate(),"yyyy-MM-dd HH:mm"));
+ sendBusinessSms(emayService,smsEmailMapper,
+ Arrays.asList(platformBooks.getDriverPhone().split(",")),SmsConstants.platformBook,content,platformBooks.getId());
+ }else if(objCode.equals(SmsConstants.platformBookContent.platformBookAuditFail) || objCode.equals(SmsConstants.platformBookContent.platformBookCancel)){
+ //鎮ㄧ殑銆愯溅杈嗗叆鍥敵璇枫�戝凡琚┏鍥烇紝椹冲洖鍘熷洜涓猴細{椹冲洖鍘熷洜}銆傚鏈夌枒闂紝璇疯仈绯诲鏍镐汉鍛樸��
+ content = content.replace("{椹冲洖鍘熷洜}",msg);
+ //鎮ㄧ殑銆愯溅杈嗗叆鍥敵璇枫�戝凡琚彇娑堬紝鍙栨秷鍘熷洜涓猴細{鍙栨秷鍘熷洜}銆傚鏈夌枒闂紝璇疯仈绯诲鏍镐汉鍛樸��
+ content = content.replace("{鍙栨秷鍘熷洜}",msg);
+ sendBusinessSms(emayService,smsEmailMapper,
+ Arrays.asList(platformBooks.getDriverPhone().split(",")),SmsConstants.platformBook,content,platformBooks.getId());
+ }else{
+ //鎮ㄦ湁涓�鏉°�愯溅杈嗗叆鍥敵璇枫�戦渶瑕佸鐞嗭紝璇︾粏淇℃伅璇峰墠寰�寰俊鍏紬鍙锋煡鐪嬨��
+ sendBusinessSms(emayService,smsEmailMapper,
+ auditUser,SmsConstants.platformBook,content,platformBooks.getId());
+ }
+ }
+ }
+ }catch (Exception e){
+ e.printStackTrace();
+ }
+ }
+
+
+ /**
+ * 鐢ㄨ溅鐢宠 鐭俊閫氱煡閰嶇疆
+ * @param emayService
+ * @param smsEmailMapper
+ * @param smsConfigMapper
+ * @param platformJobMapper
+ * @param objId
+ * @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){
+ //platformJobNewJob {杞︾墝鍙穧杞︿富鎮ㄥソ锛屾偍鏈変竴涓柊鐨勮繍杈撲换鍔★紝璇︾粏淇℃伅璇峰墠寰�寰俊鍏紬鍙锋煡鐪嬨��
+ //platformJobStopJob {杞︾墝鍙穧杞︿富鎮ㄥソ锛屾偍鐨勮繍杈撲换鍔″凡琚彇娑堬紝璇︾粏淇℃伅璇峰墠寰�寰俊鍏紬鍙锋煡鐪嬨��
+ //platformJobCallIn {杞︾墝鍙穧杞︿富鎮ㄥソ锛岃鍦�10鍒嗛挓鍐咃紝鍓嶅線鍥尯绛夊緟鍖虹瓑寰呭彨鍙蜂綔涓氥��
+ //platformJobSingIn {杞︾墝鍙穧杞︿富鎮ㄥソ锛岃鍦�10鍒嗛挓鍐咃紝鍓嶅線{鏈堝彴鍚嶇О}杩涜浣滀笟銆�
+ //platformJobOverNum {杞︾墝鍙穧杞︿富鎮ㄥソ锛屾偍鐨勪换鍔″凡杩囧彿锛岃閲嶆柊绛惧埌鎺掗槦绛夊緟銆�
+ //platformJobWorking {杞︾墝鍙穧杞︿富鎮ㄥソ锛屾偍鐨勮溅杈嗗凡鍦▄鏈堝彴鍚嶇О}寮�濮嬩綔涓氾紝璇烽殢鏃跺叧娉ㄤ綔涓氭儏鍐点��
+ //platformJobFinish {杞︾墝鍙穧杞︿富鎮ㄥソ锛屾偍鐨勮溅杈嗗凡鍦▄鏈堝彴鍚嶇О}瀹屾垚浣滀笟锛岃鍙婃椂椹剁鏈堝彴銆�
+ //platformJobError {杞︾墝鍙穧杞︿富鎮ㄥソ锛屾偍鍦▄鏈堝彴鍚嶇О}鐨勪綔涓氫换鍔″凡缁忚寮傚父鎸傝捣锛岃鍙婃椂鍏虫敞鍏蜂綋鎯呭喌銆�
+ //platformJobMove {杞︾墝鍙穧杞︿富鎮ㄥソ锛屾偍鍦▄鏈堝彴鍚嶇О}鐨勪綔涓氫换鍔″凡缁忓凡琚浆绉昏嚦{杞Щ鍚庢湀鍙板悕绉皚锛岃鍙婃椂鍏虫敞鍙彿鎯呭喌銆�
+ //platformJobTimeOut {杞︾墝鍙穧杞︿富鎮ㄥソ锛屾偍鍦▄鏈堝彴鍚嶇О}宸插仠闈犺秴鏃讹紝璇峰敖蹇┒绂讳互鍏嶅奖鍝嶅悗缁綔涓氥��
+ 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();
+ PlatformJob platformJob = platformJobMapper.selectById(objId);
+ if(Objects.nonNull(platformJob)){
+ content = content.replace("{杞︾墝鍙穧",platformJob.getCarCodeFront());
+ if(StringUtils.isNotBlank(platformName)&&content.indexOf("{鏈堝彴鍚嶇О}")>=Constants.ZERO){
+ content = content.replace("{鏈堝彴鍚嶇О}",platformName);
+ }
+ if(StringUtils.isNotBlank(newPlatformName)&&content.indexOf("{杞Щ鍚庢湀鍙板悕绉皚")>=Constants.ZERO){
+ content = content.replace("{杞Щ鍚庢湀鍙板悕绉皚",newPlatformName);
+ }
+ sendBusinessSms(emayService,smsEmailMapper,
+ Arrays.asList(platformJob.getDrivierPhone().split(",")),SmsConstants.platformJob,content,platformJob.getId());
+ }
+ }
+ }catch (Exception e){
+ e.printStackTrace();
+ }
+ }
+
+ public static void sendBusinessSms(EmayService emayService, SmsEmailMapper smsEmailMapper, List<String> phoneList, String objType, String content, Integer objId){
+ for (String phone:phoneList) {
+ SmsEmail smsEmail = new SmsEmail();
+ smsEmail.setIsdeleted(Constants.ZERO);
+ smsEmail.setCreateDate(new Date());
+ smsEmail.setStatus(Constants.ONE);
+ smsEmail.setType(Constants.ZERO);
+ smsEmail.setTitle("涓氬姟鐭俊");
+ smsEmail.setPhone(phone);
+ smsEmail.setContent(content);
+ smsEmail.setObjType(objType);
+ smsEmail.setObjId(objId);
+ smsEmailMapper.insert(smsEmail);
+ emayService.sendSingleSms(phone,content);
+
+ }
+ }
+
}
--
Gitblit v1.9.3