From 05683f2b2bdbdbe21cf17ad523c21ab338bd1c54 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期二, 19 七月 2022 21:49:55 +0800
Subject: [PATCH] 优化添加设备 功能

---
 java110-core/src/main/java/com/java110/core/factory/AliSendMessageFactory.java |   76 +++++++++++++++++++++++++++++--------
 1 files changed, 59 insertions(+), 17 deletions(-)

diff --git a/java110-core/src/main/java/com/java110/core/factory/AliSendMessageFactory.java b/java110-core/src/main/java/com/java110/core/factory/AliSendMessageFactory.java
old mode 100644
new mode 100755
index ac77e64..10f448b
--- a/java110-core/src/main/java/com/java110/core/factory/AliSendMessageFactory.java
+++ b/java110-core/src/main/java/com/java110/core/factory/AliSendMessageFactory.java
@@ -8,8 +8,11 @@
 import com.aliyuncs.exceptions.ServerException;
 import com.aliyuncs.http.MethodType;
 import com.aliyuncs.profile.DefaultProfile;
+import com.java110.dto.smsConfig.SmsConfigDto;
+import com.java110.utils.cache.MappingCache;
+import com.java110.vo.ResultVo;
 import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import com.java110.core.log.LoggerFactory;
 
 import java.util.Random;
 /*
@@ -20,6 +23,7 @@
   <version>4.0.3</version>
 </dependency>
 */
+
 /**
  * Created by wuxw on 2019/3/23.
  */
@@ -31,52 +35,90 @@
 
     public final static int DEFAULT_MESSAGE_CODE_LENGTH = 6;
 
+    public final static String ALI_SMS_DOMAIN = "ALI_SMS";
+
 
     /**
      * 鐢熸垚6浣嶇煭淇$爜
+     *
      * @return
      */
-    public static String generateMessageCode(){
+    public static String generateMessageCode() {
         return generateMessageCode(DEFAULT_MESSAGE_CODE_LENGTH);
     }
 
     /**
      * 鐢熸垚楠岃瘉鐮�
+     *
      * @param limit 浣嶆暟
      * @return
      */
-    public static String generateMessageCode(int limit){
+    public static String generateMessageCode(int limit) {
         Random random = new Random();
-        String result="";
-        for (int i=0;i<limit;i++)
-        {
-            result+=random.nextInt(10);
+        String result = "";
+        for (int i = 0; i < limit; i++) {
+            result += (random.nextInt(9) + 1);
         }
         return result;
     }
 
-    public static void sendMessage(String tel,String code) {
+    public static void sendMessage(String tel, String code) {
 
         //寮�濮嬪彂閫侀獙璇佺爜
-        logger.debug("鍙戦�佸彿鐮佷负{}锛岀煭淇$爜涓簕}",tel,code);
-        DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", "<accessKeyId>", "<accessSecret>");
+        logger.debug("鍙戦�佸彿鐮佷负{}锛岀煭淇$爜涓簕}", tel, code);
+        DefaultProfile profile = DefaultProfile.getProfile(MappingCache.getValue(ALI_SMS_DOMAIN, "region"),
+                MappingCache.getValue(ALI_SMS_DOMAIN, "accessKeyId"),
+                MappingCache.getValue(ALI_SMS_DOMAIN, "accessSecret"));
         IAcsClient client = new DefaultAcsClient(profile);
 
         CommonRequest request = new CommonRequest();
-        //request.setProtocol(ProtocolType.HTTPS);
-        request.setMethod(MethodType.POST);
-        request.setDomain("dysmsapi.aliyuncs.com");
-        request.setVersion("2017-05-25");
-        request.setAction("SendSms");
-        request.putQueryParameter("RegionId", "cn-hangzhou");
+        request.setSysMethod(MethodType.POST);
+        request.setSysDomain("dysmsapi.aliyuncs.com");
+        request.setSysVersion("2017-05-25");
+        request.setSysAction("SendSms");
+        request.putQueryParameter("RegionId", MappingCache.getValue(ALI_SMS_DOMAIN, "region"));
         request.putQueryParameter("PhoneNumbers", tel);
+        request.putQueryParameter("SignName", MappingCache.getValue(ALI_SMS_DOMAIN, "signName"));
+        request.putQueryParameter("TemplateCode", MappingCache.getValue(ALI_SMS_DOMAIN, "TemplateCode"));
+        request.putQueryParameter("TemplateParam", "{\"code\":" + code + "}");
+
         try {
             CommonResponse response = client.getCommonResponse(request);
-            logger.debug("鍙戦�侀獙璇佺爜淇℃伅锛歿}",response.getData());
+            logger.debug("鍙戦�侀獙璇佺爜淇℃伅锛歿}", response.getData());
         } catch (ServerException e) {
             e.printStackTrace();
         } catch (ClientException e) {
             e.printStackTrace();
         }
     }
+
+    public static ResultVo sendOweFeeSms(String tel, Object param, SmsConfigDto smsConfigDto) {
+        //寮�濮嬪彂閫侀獙璇佺爜
+        DefaultProfile profile = DefaultProfile.getProfile(smsConfigDto.getRegion().trim(),
+                smsConfigDto.getAccessKeyId().trim(),
+                smsConfigDto.getAccessSecret().trim());
+        IAcsClient client = new DefaultAcsClient(profile);
+
+        CommonRequest request = new CommonRequest();
+        request.setSysMethod(MethodType.POST);
+        request.setSysDomain("dysmsapi.aliyuncs.com");
+        request.setSysVersion("2017-05-25");
+        request.setSysAction("SendSms");
+        request.putQueryParameter("RegionId", smsConfigDto.getRegion().trim());
+        request.putQueryParameter("PhoneNumbers", tel);
+        request.putQueryParameter("SignName", smsConfigDto.getSignName().trim());
+        request.putQueryParameter("TemplateCode", smsConfigDto.getTemplateCode().trim());
+        request.putQueryParameter("TemplateParam", param.toString());
+
+        try {
+            CommonResponse response = client.getCommonResponse(request);
+            logger.debug("鍙戦�佹瑺璐逛俊鎭細{}", response.getData());
+        } catch (ServerException e) {
+            e.printStackTrace();
+        } catch (ClientException e) {
+            e.printStackTrace();
+        }
+
+        return new ResultVo(ResultVo.CODE_OK,ResultVo.MSG_OK);
+    }
 }

--
Gitblit v1.8.0