From 39aea9fa06482f060eb6d1b939b2778156f028fc Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期三, 16 十月 2024 18:49:36 +0800
Subject: [PATCH] 代码初始化

---
 server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java   |    4 
 server/system_service/src/main/java/com/doumee/core/utils/SmsConstants.java                            |    2 
 server/meeting/meeting_service/src/main/java/com/doumee/dao/business/BookingsMapper.java               |    4 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java  |  190 ++++++++++++++++++++++++++++++++++++++++++++++-
 5 files changed, 193 insertions(+), 9 deletions(-)

diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/BookingsMapper.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/BookingsMapper.java
index 6aaf69e..2130b39 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/BookingsMapper.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/BookingsMapper.java
@@ -36,7 +36,9 @@
     @Select(" select a.id , a.START_TIME , a.END_TIME , b.`NAME` as roomName , a.`NAME` as meetingName  ,date_format(a.START_TIME,'%Y-%m-%d') as meetingDate , a.START_TIME as startTime, a.status ," +
             " CONCAT(date_format(a.START_TIME,'%H:%i') , ' ~ ',date_format(a.END_TIME,'%H:%i')) as meetingTime,  c.REALNAME as bookingUser ," +
             //" CASE WHEN a.START_TIME > now() AND a.`STATUS` = 0 THEN 1  WHEN ( (a.END_TIME < now()  AND a.`STATUS` = 0 ) or a.`STATUS` = 2 ) THEN 3 WHEN a.`STATUS` = 1 THEN 5 ELSE  2  END meetingStatus ," +
-            " CASE WHEN a.START_TIME_REAL IS NULL AND a.`STATUS` = 0 THEN 1  WHEN ( (a.END_TIME < now()  AND a.`STATUS` = 0 ) or a.`STATUS` = 2 ) THEN 3 WHEN a.`STATUS` = 1 THEN 5 ELSE  2  END meetingStatus ," +
+            " CASE WHEN a.START_TIME_REAL IS NULL AND a.`STATUS` = 0 THEN 1 " +
+//            " WHEN ( (a.END_TIME < now()  AND a.`STATUS` = 0 ) or a.`STATUS` = 2 ) THEN 3 " +
+            "WHEN a.`STATUS` = 1 THEN 5 ELSE  2  END meetingStatus ," +
             " b.IMGURL as imgUrl ," +
             " a.remark  " +
             " from meeting_book a inner join meeting_rooms b  on a.ROOM_ID = b.ID  " +
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
index 3f42bb6..db0499c 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
@@ -1204,7 +1204,9 @@
                 .eq("b.STATUS",MeetConstants.ZERO)
                 .eq("a.ISDELETED",MeetConstants.ZERO)
                 .eq("a.status",Constants.ZERO)
+                .ne("a.status",Constants.TWO)
                 .like("a.start_time",DateUtil.getCurrDate())
+                .apply(" not exists ( select 1  from  meeting_book mb where mb.END_TIME < now() and  mb.id = a.id and START_TIME_REAL is null  )   ")
                 .orderByAsc("a.start_time")
         );
         this.dealMeetingStatus(meetingList);
diff --git a/server/system_service/src/main/java/com/doumee/core/utils/SmsConstants.java b/server/system_service/src/main/java/com/doumee/core/utils/SmsConstants.java
index 84a8205..77c5611 100644
--- a/server/system_service/src/main/java/com/doumee/core/utils/SmsConstants.java
+++ b/server/system_service/src/main/java/com/doumee/core/utils/SmsConstants.java
@@ -94,7 +94,7 @@
      */
     public interface platformBookContent{
         //鐭俊閫氱煡妯℃澘锛堢粰澶勭悊浜猴級
-        String platformBookWaitAudit = "platformBookContent";
+        String platformBookWaitAudit = "platformBookWaitAudit";
         //鐗╂祦杞﹂绾�-瀹℃壒閫氳繃閫氱煡锛堢粰鐢宠浜猴級锛氥��
         String platformBookAuditSuccess = "platformBookAuditSuccess";
         //鐗╂祦杞﹂绾�-瀹℃壒椹冲洖鐭俊閫氱煡妯℃澘锛堢粰鐢宠浜猴級
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
index 1159f56..5417979 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
@@ -575,14 +575,14 @@
                 approve.setType(Constants.ZERO);
                 approveList.add(approve);
 
-                if(Constants.equalsInteger(approve.getStatus(),Constants.ONE)){
+                if(Constants.equalsInteger(approve.getStatus(),Constants.ONE) && StringUtils.isNotBlank(member.getPhone())){
                     //鍙戦�佺煭淇¢�氱煡
                     if(Constants.equalsInteger(noticeType,Constants.noticesObjectType.reason)){
                         //鐗╂祦杞﹂绾�
                         SmsEmailServiceImpl.sendPlatformBookSms(systemDictDataBiz,
                                 emayService,smsEmailMapper,smsConfigMapper,platformBooksMapper,businessId,
                                 SmsConstants.platformBookContent.platformBookWaitAudit,
-                                null,null
+                                null,Arrays.asList(member.getPhone().split(","))
                         );
                     }
                 }
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 01afdca..512150d 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
@@ -15,10 +15,7 @@
 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.*;
 import com.doumee.dao.business.model.*;
 import com.doumee.service.business.SmsEmailService;
 import com.doumee.service.business.third.EmayService;
@@ -256,9 +253,192 @@
         return smsEmailMapper.selectCount(wrapper);
     }
 
+    /**
+     * 璁垮鐢宠涓氬姟鐭俊閫氱煡
+     * @param systemDictDataBiz
+     * @param emayService
+     * @param smsEmailMapper
+     * @param smsConfigMapper
+     * @param visitsMapper
+     * @param objId
+     * @param objCode
+     * @param msg
+     * @param auditUser
+     */
+    public static void sendVisitSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , 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 "));
+            //寮�鍚煭淇¢�氱煡
+            if(Objects.nonNull(smsConfig) || Constants.equalsInteger(smsConfig.getStatus(),Constants.ZERO)){
+                String content = systemDictDataBiz.queryByCode(Constants.SMS,Constants.SMS_COMNAME).getCode() + smsConfig.getContent();
+                Visits visits = visitsMapper.selectById(objId);
+                if(Objects.nonNull(visits)){
+                    if(objCode.equals(SmsConstants.visitContent.visitAuditSuccess)){
+                        //鎮ㄧ殑銆愯瀹㈢敵璇枫�戝凡缁忓鎵归�氳繃锛岃浜巤棰勭害鍏ュ洯寮�濮嬫椂闂磢鍓嶅線闂ㄥ崼瀹よ瀹㈡満绛惧埌鍏ュ洯锛屽鏈夌枒闂紝璇疯仈绯昏璁夸汉
+                        content = content.replace("{棰勭害鍏ュ洯寮�濮嬫椂闂磢",DateUtil.getDate(visits.getStarttime(),"yyyy-MM-dd HH:mm"));
+                        sendBusinessSms(emayService,smsEmailMapper,
+                                Arrays.asList(visits.getPhone().split(",")),SmsConstants.visit,content,visits.getId());
+                    }else if(objCode.equals(SmsConstants.visitContent.visitAuditFail)){
+                        //鎮ㄧ殑銆愯瀹㈢敵璇枫�戝凡琚┏鍥烇紝椹冲洖鍘熷洜涓猴細{椹冲洖鍘熷洜}銆傚鏈夌枒闂紝璇疯仈绯昏璁夸汉銆�
+                        content = content.replace("{椹冲洖鍘熷洜}",msg);
+                        sendBusinessSms(emayService,smsEmailMapper,
+                                Arrays.asList(visits.getPhone().split(",")),SmsConstants.visit,content,visits.getId());
+                    }else if(objCode.equals(SmsConstants.visitContent.visitTimeOutSignOut)){
+                        //鎮ㄧ殑銆愯瀹㈢敵璇枫�戝凡浜巤鍒版湡鏃堕棿}鍒版湡锛岃鍙婃椂绂诲満骞跺墠寰�闂ㄥ崼瀹よ瀹㈡満绛剧锛屽鏈夌枒闂紝璇疯仈绯昏璁夸汉
+                        content = content.replace("{鍒版湡鏃堕棿}",DateUtil.getDate(visits.getEndtime(),"yyyy-MM-dd HH:mm"));
+                        sendBusinessSms(emayService,smsEmailMapper,
+                                Arrays.asList(visits.getPhone().split(",")),SmsConstants.visit,content,visits.getId());
+                    }else if(objCode.equals(SmsConstants.visitContent.visitTimeOutSignOutNum)) {
+                        //浠婃棩杩樻湁{鏈绂绘暟閲弣涓瀹㈡湭绛剧锛岃鍓嶅線PC绔煡鐪嬭缁嗕俊鎭��
+                        content = content.replace("{鏈绂绘暟閲弣",msg);
+                        sendBusinessSms(emayService,smsEmailMapper,
+                                Arrays.asList(visits.getPhone().split(",")),SmsConstants.visit,content,visits.getId());
+                    }else{
+                        //鎮ㄦ湁涓�鏉°�愯溅杈嗗叆鍥敵璇枫�戦渶瑕佸鐞嗭紝璇︾粏淇℃伅璇峰墠寰�寰俊鍏紬鍙锋煡鐪嬨��
+                        sendBusinessSms(emayService,smsEmailMapper,
+                                auditUser,SmsConstants.platformBook,content,visits.getId());
+                    }
+                }
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
 
     /**
-     * 鐢ㄨ溅鐢宠 鐭俊閫氱煡閰嶇疆
+     * 璁垮鎶ュ涓氬姟鐭俊閫氱煡
+     * @param systemDictDataBiz
+     * @param emayService
+     * @param smsEmailMapper
+     * @param smsConfigMapper
+     * @param visitsMapper
+     * @param objId
+     * @param objCode
+     * @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){
+        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();
+                Visits visits = visitsMapper.selectById(objId);
+                if(Objects.nonNull(visits)){
+                    if(objCode.equals(SmsConstants.visitReportingContent.visitReportingAuditSuccess)){
+                        // 鎮ㄧ殑銆愯瀹㈡姤澶囥�戝凡缁忓鎵归�氳繃锛岃閫氱煡璁垮浜巤棰勭害鍏ュ洯寮�濮嬫椂闂磢鍚庝箻鍧恵杞︾墝鍙穧鍏ュ洯锛屽鏈夌枒闂紝璇疯仈绯昏璁夸汉銆�
+                        content = content.replace("{棰勭害鍏ュ洯寮�濮嬫椂闂磢",DateUtil.getDate(visits.getStarttime(),"yyyy-MM-dd HH:mm"))
+                                .replace("{杞︾墝鍙穧",visits.getCarNos());
+                        sendBusinessSms(emayService,smsEmailMapper,
+                                Arrays.asList(visits.getPhone().split(",")),SmsConstants.visitReport,content,visits.getId());
+                    }else if(objCode.equals(SmsConstants.visitReportingContent.visitReportingAuditFail)){
+                        //鎮ㄧ殑銆愯瀹㈡姤澶囥�戝凡琚┏鍥烇紝椹冲洖鍘熷洜涓猴細{椹冲洖鍘熷洜}銆傚鏈夌枒闂紝璇疯仈绯诲鎵逛汉銆�
+                        content = content.replace("{椹冲洖鍘熷洜}",msg);
+                        sendBusinessSms(emayService,smsEmailMapper,
+                                Arrays.asList(visits.getPhone().split(",")),SmsConstants.visitReport,content,visits.getId());
+                    }else if(objCode.equals(SmsConstants.visitReportingContent.visitReportingTimeOutSignOut)){
+                        //鎮ㄧ殑銆愯瀹㈡姤澶囥�戝凡浜巤棰勭害鍏ュ洯缁撴潫鏃堕棿}鍒版湡锛岃鍙婃椂绂诲満锛屽鏈夌枒闂紝璇疯仈绯昏璁夸汉
+                        content = content.replace("{棰勭害鍏ュ洯缁撴潫鏃堕棿}",DateUtil.getDate(visits.getEndtime(),"yyyy-MM-dd HH:mm"));
+                        sendBusinessSms(emayService,smsEmailMapper,
+                                Arrays.asList(visits.getPhone().split(",")),SmsConstants.visitReport,content,visits.getId());
+                    }else if(objCode.equals(SmsConstants.visitReportingContent.visitReportingTimeOutSignOutNum)) {
+                        //浠婃棩杩樻湁{鏈绂绘暟閲弣涓瀹㈡姤澶囪溅杈嗘湭绂诲満锛岃鍓嶅線PC绔煡鐪嬭缁嗕俊鎭��
+                        content = content.replace("{鏈绂绘暟閲弣",msg);
+                        sendBusinessSms(emayService,smsEmailMapper,
+                                Arrays.asList(visits.getPhone().split(",")),SmsConstants.visitReport,content,visits.getId());
+                    }else{
+                        //鎮ㄦ湁涓�鏉°�愯溅杈嗗叆鍥敵璇枫�戦渶瑕佸鐞嗭紝璇︾粏淇℃伅璇峰墠寰�寰俊鍏紬鍙锋煡鐪嬨��
+                        sendBusinessSms(emayService,smsEmailMapper,
+                                auditUser,SmsConstants.platformBook,content,visits.getId());
+                    }
+                }
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
+
+    /**
+     * 闅愭偅闅忔墜鎷�
+     * @param systemDictDataBiz
+     * @param emayService
+     * @param smsEmailMapper
+     * @param smsConfigMapper
+     * @param hiddenDangerMapper
+     * @param objId
+     * @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){
+        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();
+                HiddenDanger hiddenDanger = hiddenDangerMapper.selectById(objId);
+                //鎮ㄦ湁涓�鏉°�愰殣鎮i殢鎵嬫媿-娑堥槻闅愭偅銆戦渶瑕佸鐞嗭紝璇︾粏淇℃伅璇峰墠寰�寰俊鍏紬鍙锋煡鐪�
+                //鎮ㄦ彁浜ょ殑銆愰殣鎮i殢鎵嬫媿-娑堥槻闅愭偅銆戝凡缁忓鐞嗗畬姣曪紝璇︾粏淇℃伅璇峰墠寰�寰俊鍏紬鍙锋煡鐪嬨��
+                if(Objects.nonNull(hiddenDanger)){
+                        sendBusinessSms(emayService,smsEmailMapper,
+                                auditUser,SmsConstants.platformBook,content,hiddenDanger.getId());
+                }
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
+
+
+    /**
+     * 鐢ㄨ溅鐢宠
+     * @param systemDictDataBiz
+     * @param emayService
+     * @param smsEmailMapper
+     * @param smsConfigMapper
+     * @param carUseBookMapper
+     * @param objId
+     * @param objCode
+     * @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){
+        //鎮ㄦ湁涓�鏉°�愮敤杞︾敵璇枫�戦渶瑕佸鐞嗭紝璇︾粏淇℃伅璇峰墠寰�寰俊鍏紬鍙锋煡鐪嬨��
+        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();
+                CarUseBook carUseBook = carUseBookMapper.selectById(objId);
+                if(Objects.nonNull(carUseBook)){
+                    if(objCode.equals(SmsConstants.carUseBookContent.carUseBookAuditSuccess)){
+                        //鎮ㄧ殑銆愮敤杞︾敵璇枫�戝凡缁忓鎵归�氳繃锛屽嚭鍙戞椂闂翠负{鎻愪氦鐨勫嚭鍙戞椂闂磢锛岃鎸夋椂鐢ㄨ溅銆傚鐢ㄨ溅璁″垝鏈夊彉锛岃鍙婃椂鑱旂郴娲捐溅鍛樸��
+                        content = content.replace("{鎻愪氦鐨勫嚭鍙戞椂闂磢",DateUtil.getDate(carUseBook.getStartTime(),"yyyy-MM-dd HH:mm"));
+                    }else if(objCode.equals(SmsConstants.carUseBookContent.carUseBookAuditFail) || objCode.equals(SmsConstants.carUseBookContent.carUseBookCancel)){
+                        //鎮ㄧ殑銆愮敤杞︾敵璇枫�戝凡琚┏鍥烇紝椹冲洖鍘熷洜涓猴細{椹冲洖鍘熷洜}銆傚鏈夌枒闂紝璇疯仈绯绘淳杞﹀憳銆�
+                        content = content.replace("{椹冲洖鍘熷洜}",msg);
+                        //鎮ㄧ殑銆愮敤杞︾敵璇枫�戝凡琚彇娑堬紝鍙栨秷鍘熷洜涓猴細{鍙栨秷鍘熷洜}銆傚鏈夌枒闂紝璇疯仈绯绘淳杞﹀憳銆�
+                        content = content.replace("{鍙栨秷鍘熷洜}",msg);
+                    }
+                    sendBusinessSms(emayService,smsEmailMapper,
+                            userList,SmsConstants.carUse,content,carUseBook.getId());
+                }
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
+
+
+    /**
+     * 鐗╂祦杞﹂绾� 鐭俊閫氱煡閰嶇疆
      * @param emayService
      * @param smsEmailMapper
      * @param smsConfigMapper

--
Gitblit v1.9.3