From 92b286e238439c61b230a07f42b92c2328588d49 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期三, 22 十一月 2023 11:19:16 +0800
Subject: [PATCH] #全局短信验证:目前  规划单、核价、报价已添加

---
 src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java |   19 ++++++
 src/main/java/com/zy/crm/manager/controller/PlanController.java       |   20 +++++-
 src/main/java/com/zy/crm/manager/controller/PriQuoteController.java   |   11 +++
 src/main/java/com/zy/crm/manager/service/impl/SmsCodeServiceImpl.java |   30 +++++++++-
 src/main/java/com/zy/crm/manager/service/SmsCodeService.java          |    4 +
 src/main/java/com/zy/crm/common/entity/PhoneCodeTypeParam.java        |   42 ++++++++++++++
 src/main/java/com/zy/crm/manager/utils/SmsUtils.java                  |   11 ++-
 src/main/resources/application.yml                                    |   13 ++-
 8 files changed, 130 insertions(+), 20 deletions(-)

diff --git a/src/main/java/com/zy/crm/common/entity/PhoneCodeTypeParam.java b/src/main/java/com/zy/crm/common/entity/PhoneCodeTypeParam.java
new file mode 100644
index 0000000..819d5c9
--- /dev/null
+++ b/src/main/java/com/zy/crm/common/entity/PhoneCodeTypeParam.java
@@ -0,0 +1,42 @@
+package com.zy.crm.common.entity;
+
+public enum PhoneCodeTypeParam {
+
+    ALIYUN_M1ABAC630E(0, "銆愪腑鎵珛搴撱�戞湁鏂扮殑CRM娴佺▼闇�瑕佸鏍�","M1ABAC630E"),
+    ALIYUN_M6F3C81FE3(1, "銆愪腑鎵珛搴撱�戝垎閰嶄簡鏂扮殑瑙勫垝鐢宠鍗曚换鍔★紒","M6F3C81FE3"),
+    ;
+
+    public Integer id;
+    public String code;
+    public String templateId;
+    PhoneCodeTypeParam(Integer id,String code, String templateId) {
+        this.id = id;
+        this.code = code;
+        this.templateId = templateId;
+    }
+
+    public static PhoneCodeTypeParam get(Short id) {
+        if (null == id) {
+            return null;
+        }
+        for (PhoneCodeTypeParam type : PhoneCodeTypeParam.values()) {
+            if (type.id.equals(id.intValue())) {
+                return type;
+            }
+        }
+        return null;
+    }
+
+    public static PhoneCodeTypeParam get(PhoneCodeTypeParam type) {
+        if (null == type) {
+            return null;
+        }
+        for (PhoneCodeTypeParam crnLiftPosType : PhoneCodeTypeParam.values()) {
+            if (crnLiftPosType == type) {
+                return crnLiftPosType;
+            }
+        }
+        return null;
+    }
+
+}
diff --git a/src/main/java/com/zy/crm/manager/controller/PlanController.java b/src/main/java/com/zy/crm/manager/controller/PlanController.java
index 4e77bb0..3865da3 100644
--- a/src/main/java/com/zy/crm/manager/controller/PlanController.java
+++ b/src/main/java/com/zy/crm/manager/controller/PlanController.java
@@ -9,6 +9,7 @@
 import com.core.common.*;
 import com.core.domain.KeyValueVo;
 import com.core.exception.CoolException;
+import com.zy.crm.common.entity.PhoneCodeTypeParam;
 import com.zy.crm.common.model.SettleDto;
 import com.zy.crm.common.service.OssService;
 import com.zy.crm.common.utils.FileSaveExampleUtil;
@@ -205,6 +206,10 @@
             throw new CoolException("淇濇寔澶辫触锛岃閲嶈瘯");
         }
 
+        if (!smsCodeService.sendSmsCodeText(planLeader.getMobile(), PhoneCodeTypeParam.ALIYUN_M1ABAC630E)) {
+            return R.ok("鍒涘缓鎴愬姛浣嗙煭淇″彂閫佸け璐�!");
+        }
+
         return R.ok();
     }
 
@@ -289,6 +294,9 @@
         hostPlan.setHostPlanId(hostPlanId);
         if (!planService.updateById(hostPlan)) {
             throw new CoolException("鏇存柊澶辫触锛岃閲嶈瘯");
+        }
+        if (!smsCodeService.sendSmsCodeText(planLeader.getMobile(), PhoneCodeTypeParam.ALIYUN_M1ABAC630E)) {
+            return R.ok("鍒涘缓鎴愬姛浣嗙煭淇″彂閫佸け璐�!");
         }
         return R.ok("淇濆瓨鎴愬姛");
     }
@@ -584,11 +592,6 @@
                 plan.setUpdateBy(getUserId());
                 plan.setUpdateTime(new Date());
 
-                boolean sendSmsCode = smsCodeService.sendSmsCodeText(planner.getMobile());
-                if (!sendSmsCode) {
-                    System.out.println("鐭俊鍙戦�佸け璐ワ紒");
-                }
-
                 if (!planService.updateById(plan)) {
                     throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
                 }
@@ -599,6 +602,10 @@
                 planFoll.setUserId(planner.getId());
                 if (!planFollService.insert(planFoll)) {
                     throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
+                }
+
+                if (!smsCodeService.sendSmsCodeText(planner.getMobile(), PhoneCodeTypeParam.ALIYUN_M6F3C81FE3)) {
+                    return R.ok("瀹℃牳鎴愬姛浣嗙煭淇″彂閫佸け璐�!");
                 }
                 break;
             case 2:
@@ -646,6 +653,9 @@
                 if (!planService.updateById(plan)) {
                     throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
                 }
+                if (!smsCodeService.sendSmsCodeText(salesman.getMobile(), PhoneCodeTypeParam.ALIYUN_M1ABAC630E)) {
+                    return R.ok("瀹℃牳鎴愬姛浣嗙煭淇″彂閫佸け璐�!");
+                }
                 break;
             case 3:
                 // 涓氬姟鍛�
diff --git a/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java b/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java
index 123ebe9..66985c7 100644
--- a/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java
+++ b/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java
@@ -12,6 +12,7 @@
 import com.core.common.R;
 import com.core.domain.KeyValueVo;
 import com.core.exception.CoolException;
+import com.zy.crm.common.entity.PhoneCodeTypeParam;
 import com.zy.crm.common.model.SettleDto;
 import com.zy.crm.common.web.BaseController;
 import com.zy.crm.manager.entity.*;
@@ -59,6 +60,9 @@
 
     @Autowired
     private PriOnline2FollService priOnline2FollService;
+
+    @Autowired
+    private SmsCodeService smsCodeService;
 
     String PZH = " 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� ";
 
@@ -672,10 +676,19 @@
 
         if (user.getId().equals(priOnline2.getUserId())) {
             if (priOnline2.getAssistantHostSign()==0){
+                User manager = new User();
+                try {
+                    manager = userService.getDeptManager(getHostId(), getUser().getDeptId());        // 鑾峰彇閮ㄩ棬棰嗗
+                } catch (Exception e) {
+                    manager = getUser();
+                }
                 try {
                     priQuoteAdd(priOnline2.getId(), plannerId);
                 } catch (Exception e) {
                     return R.error("鑷姩鐢熸垚鎶ヤ环鍗曞け璐�");
+                }
+                if (!smsCodeService.sendSmsCodeText(manager.getMobile(), PhoneCodeTypeParam.ALIYUN_M1ABAC630E)) {
+                    return R.ok("瀹℃壒鎴愬姛浣嗙煭淇″彂閫佸け璐�!");
                 }
             }else {
                 try {
@@ -686,7 +699,11 @@
                     return R.error("鏇存柊涓昏〃澶辫触");
                 }
             }
-
+        }else {
+            User phoneUser = userService.selectById(nextUserId);
+            if (!smsCodeService.sendSmsCodeText(phoneUser.getMobile(), PhoneCodeTypeParam.ALIYUN_M1ABAC630E)) {
+                return R.ok("瀹℃壒鎴愬姛浣嗙煭淇″彂閫佸け璐�!");
+            }
         }
 
         return R.ok("瀹℃壒鎴愬姛");
diff --git a/src/main/java/com/zy/crm/manager/controller/PriQuoteController.java b/src/main/java/com/zy/crm/manager/controller/PriQuoteController.java
index 5bbb6fa..04612bb 100644
--- a/src/main/java/com/zy/crm/manager/controller/PriQuoteController.java
+++ b/src/main/java/com/zy/crm/manager/controller/PriQuoteController.java
@@ -13,6 +13,7 @@
 import com.core.common.R;
 import com.core.domain.KeyValueVo;
 import com.core.exception.CoolException;
+import com.zy.crm.common.entity.PhoneCodeTypeParam;
 import com.zy.crm.common.model.SettleDto;
 import com.zy.crm.common.web.BaseController;
 import com.zy.crm.manager.entity.*;
@@ -54,6 +55,9 @@
 
     @Autowired
     private PlanTypeService planTypeService;
+
+    @Autowired
+    private SmsCodeService smsCodeService;
 
     String PZH=" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� ";
 
@@ -508,6 +512,9 @@
                     if (!priQuoteService.updateById(priQuote)) {
                         throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
                     }
+                    if (!smsCodeService.sendSmsCodeText(planLeader.getMobile(), PhoneCodeTypeParam.ALIYUN_M1ABAC630E)) {
+                        return R.ok("瀹℃壒鎴愬姛浣嗙煭淇″彂閫佸け璐�!");
+                    }
 
                 } else {
                     return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄�");
@@ -553,6 +560,10 @@
                 if (!priQuoteService.updateById(priQuote)) {
                     throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
                 }
+                User phoneUser = userService.selectById(priQuote.getUserId());
+                if (!smsCodeService.sendSmsCodeText(phoneUser.getMobile(), PhoneCodeTypeParam.ALIYUN_M1ABAC630E)) {
+                    return R.ok("瀹℃壒鎴愬姛浣嗙煭淇″彂閫佸け璐�!");
+                }
                 break;
             case 3:
                 // 涓氬姟鍛�
diff --git a/src/main/java/com/zy/crm/manager/service/SmsCodeService.java b/src/main/java/com/zy/crm/manager/service/SmsCodeService.java
index b839c03..eb540d7 100644
--- a/src/main/java/com/zy/crm/manager/service/SmsCodeService.java
+++ b/src/main/java/com/zy/crm/manager/service/SmsCodeService.java
@@ -1,5 +1,6 @@
 package com.zy.crm.manager.service;
 
+import com.zy.crm.common.entity.PhoneCodeTypeParam;
 import com.zy.crm.manager.entity.SmsCode;
 import com.baomidou.mybatisplus.service.IService;
 
@@ -8,7 +9,8 @@
     SmsCode selectByPhone(String phone);
 
     boolean sendSmsCode(String phone);
-    boolean sendSmsCodeText(String phone);
+//    boolean sendSmsCodeText(String phone);
+    boolean sendSmsCodeText(String phone, PhoneCodeTypeParam param);
 
     boolean verifySmsCode(String phone, String code);
 
diff --git a/src/main/java/com/zy/crm/manager/service/impl/SmsCodeServiceImpl.java b/src/main/java/com/zy/crm/manager/service/impl/SmsCodeServiceImpl.java
index f16f8f1..367e233 100644
--- a/src/main/java/com/zy/crm/manager/service/impl/SmsCodeServiceImpl.java
+++ b/src/main/java/com/zy/crm/manager/service/impl/SmsCodeServiceImpl.java
@@ -2,6 +2,7 @@
 
 import com.core.common.DateUtils;
 import com.core.common.R;
+import com.zy.crm.common.entity.PhoneCodeTypeParam;
 import com.zy.crm.manager.mapper.SmsCodeMapper;
 import com.zy.crm.manager.entity.SmsCode;
 import com.zy.crm.manager.service.SmsCodeService;
@@ -42,9 +43,32 @@
         return true;
     }
 
+//    @Override
+//    public boolean sendSmsCodeText(String phone) {
+//        String randomNum = "鍒嗛厤浜嗘柊鐨勮鍒掔敵璇峰崟浠诲姟锛�" ;//鑾峰彇鍏綅闅忔満鏁�
+//        SmsCode smsCode = new SmsCode();
+//        smsCode.setPhone(phone);
+//        smsCode.setCode(randomNum);
+//        smsCode.setStatus(0);
+//        smsCode.setCreateTime(new Date());
+//        if (this.baseMapper.insert(smsCode) <= 0) {
+//            return false;
+//        }
+//
+//        boolean sendSmsCode = SmsUtils.sendSmsCodeText(phone, "");
+//        if (!sendSmsCode) {
+//            return false;
+//        }
+//
+//        smsCode.setSendTime(new Date());
+//        smsCode.setStatus(1);
+//        this.baseMapper.updateById(smsCode);
+//        return true;
+//    }
+
     @Override
-    public boolean sendSmsCodeText(String phone) {
-        String randomNum = "鍒嗛厤浜嗘柊鐨勮鍒掔敵璇峰崟浠诲姟锛�" ;//鑾峰彇鍏綅闅忔満鏁�
+    public boolean sendSmsCodeText(String phone, PhoneCodeTypeParam param) {
+        String randomNum = param.code;
         SmsCode smsCode = new SmsCode();
         smsCode.setPhone(phone);
         smsCode.setCode(randomNum);
@@ -54,7 +78,7 @@
             return false;
         }
 
-        boolean sendSmsCode = SmsUtils.sendSmsCodeText(phone, "");
+        boolean sendSmsCode = SmsUtils.sendSmsCodeText(phone, param);
         if (!sendSmsCode) {
             return false;
         }
diff --git a/src/main/java/com/zy/crm/manager/utils/SmsUtils.java b/src/main/java/com/zy/crm/manager/utils/SmsUtils.java
index 2a16160..3c92050 100644
--- a/src/main/java/com/zy/crm/manager/utils/SmsUtils.java
+++ b/src/main/java/com/zy/crm/manager/utils/SmsUtils.java
@@ -8,6 +8,7 @@
 import com.aliyun.sdk.service.dysmsapi20170525.models.SendSmsRequest;
 import com.aliyun.sdk.service.dysmsapi20170525.models.SendSmsResponse;
 import com.aliyun.sdk.service.dysmsapi20170525.models.SendSmsResponseBody;
+import com.zy.crm.common.entity.PhoneCodeTypeParam;
 import darabonba.core.client.ClientOverrideConfiguration;
 
 import java.util.*;
@@ -55,7 +56,7 @@
     /**
      * 闃块噷浜戝競鍦篈PI  鍒嗛厤浜嗘柊鐨勮鍒掔敵璇峰崟浠诲姟锛佽娉ㄦ剰鏌ユ敹锛�
      */
-    private static boolean aliyun_2(String phone, String code) {
+    private static boolean aliyun_2(String phone, PhoneCodeTypeParam phoneCodeTypeParam) {
         try {
             HashMap<String, Object> headers = new HashMap<>();
             HashMap<String, Object> param = new HashMap<>();
@@ -63,9 +64,9 @@
             String APPCODE = "15ce5d8be5e348c7b680dfd7cfb8307e";
             headers.put("Authorization", "APPCODE " + APPCODE);
 
-            param.put("templateId", "M6F3C81FE3");
+            param.put("templateId", phoneCodeTypeParam.templateId);
             param.put("receive", phone);
-            param.put("tag", code);
+            param.put("tag", "");
 
             String response = new HttpHandler.Builder()
                     .setUri("https://smkjdxtzjk.market.alicloudapi.com")
@@ -155,8 +156,8 @@
     /**
      * 鍙戦�佺煭淇�-闃块噷浜戝師鐢�
      */
-    public static boolean sendSmsCodeText(String phone, String code) {
-        return aliyun_2(phone, code);
+    public static boolean sendSmsCodeText(String phone, PhoneCodeTypeParam param) {
+        return aliyun_2(phone, param);
     }
 
     /**
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 6f7d3c7..1e094e9 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -17,12 +17,15 @@
     name: @pom.build.finalName@
   datasource:
     driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
-#    url: jdbc:sqlserver://192.168.4.15:1433;databasename=zy_crm
-#    username: sa
-#    password: sa@123
-    url: jdbc:sqlserver://47.97.1.152:51433;databasename=zy_crm
+    url: jdbc:sqlserver://192.168.4.15:1433;databasename=zy_crm
     username: sa
-    password: Zoneyung@zy56$
+    password: sa@123
+#    url: jdbc:sqlserver://127.0.0.1:51433;databasename=zy_crm
+#    username: sa
+#    password: Zoneyung@zy56$
+#    url: jdbc:sqlserver://47.97.1.152:51433;databasename=zy_crm
+#    username: sa
+#    password: Zoneyung@zy56$
   mvc:
     static-path-pattern: /**
   redis:

--
Gitblit v1.9.1