From 7ce62de81b26207f20406a378f3281b0a2135868 Mon Sep 17 00:00:00 2001
From: 935090232@qq.com <ak473600000>
Date: Thu, 28 Oct 2021 00:39:06 +0800
Subject: [PATCH] 短信改造1

---
 zq-erp/src/main/java/com/matrix/system/hive/hievEnum/PayMethodEnum.java         |    2 
 zq-erp/src/main/java/com/matrix/core/enums/EnumsShowVo.java                     |   25 +++++
 zq-erp/src/main/java/com/matrix/system/hiveErp/action/SysSmsTemplateAction.java |    1 
 zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java                      |   41 ++++++++
 zq-erp/pom.xml                                                                  |    5 +
 zq-erp/src/main/java/com/matrix/core/enums/EnumsManager.java                    |   24 ++++
 zq-erp/src/main/java/com/matrix/core/enums/ApiShowAble.java                     |   24 ++++
 zq-erp/src/main/resources/templates/views/admin/shop/parameterSetting-form.html |    8 
 zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java       |   24 ++++
 zq-erp/src/main/java/com/matrix/system/hive/bean/SysSmsTemplate.java            |   17 ++
 zq-erp/src/main/java/com/matrix/system/hive/hievEnum/SmsPlatformEnum.java       |   52 ++++++++++
 zq-erp/src/main/java/com/matrix/system/common/actions/CommonDataAction.java     |   27 +++++
 12 files changed, 242 insertions(+), 8 deletions(-)

diff --git a/zq-erp/pom.xml b/zq-erp/pom.xml
index 661933d..b23716b 100644
--- a/zq-erp/pom.xml
+++ b/zq-erp/pom.xml
@@ -393,6 +393,11 @@
             <artifactId>hutool-all</artifactId>
             <version>5.3.1</version>
         </dependency>
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+            <version>26.0-jre</version>
+        </dependency>
     </dependencies>
     <build>
         <resources>
diff --git a/zq-erp/src/main/java/com/matrix/core/enums/ApiShowAble.java b/zq-erp/src/main/java/com/matrix/core/enums/ApiShowAble.java
new file mode 100644
index 0000000..90c6410
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/core/enums/ApiShowAble.java
@@ -0,0 +1,24 @@
+package com.matrix.core.enums;
+
+import java.util.List;
+
+/**
+ * 通过统一获取key,value的能力
+ */
+public interface ApiShowAble {
+
+
+    /**
+     * 获取枚举的唯一编码
+     * @return
+     */
+    String getEnumCode();
+
+    /**
+     * 获取枚举对外展示对象列表
+     * @return
+     */
+    List<EnumsShowVo> getEnumsShowVos();
+
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/core/enums/EnumsManager.java b/zq-erp/src/main/java/com/matrix/core/enums/EnumsManager.java
new file mode 100644
index 0000000..47e8869
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/core/enums/EnumsManager.java
@@ -0,0 +1,24 @@
+package com.matrix.core.enums;
+
+import com.matrix.system.hive.hievEnum.SmsPlatformEnum;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * TODO 这里后期改成自动扫描包下面的特定注解,而不是硬编码注册
+ */
+public class EnumsManager {
+
+    static Map<String,List<EnumsShowVo>> showAbleMap =new HashMap<>();
+
+    static {
+        showAbleMap.put(SmsPlatformEnum.values()[0].getEnumCode(),SmsPlatformEnum.values()[0].getEnumsShowVos());
+    }
+
+    public static List<EnumsShowVo> getShowEnum(String emumCode){
+        return showAbleMap.get(emumCode);
+    }
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/core/enums/EnumsShowVo.java b/zq-erp/src/main/java/com/matrix/core/enums/EnumsShowVo.java
new file mode 100644
index 0000000..38a96f5
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/core/enums/EnumsShowVo.java
@@ -0,0 +1,25 @@
+package com.matrix.core.enums;
+
+import lombok.Builder;
+import lombok.Data;
+
+/**
+ * 枚举值展示对象
+ */
+@Builder
+@Data
+public class EnumsShowVo {
+
+    /**
+     * 展示名称
+     */
+    private String displayName;
+
+    /**
+     * 提交值
+     */
+    private String value;
+
+
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/common/actions/CommonDataAction.java b/zq-erp/src/main/java/com/matrix/system/common/actions/CommonDataAction.java
new file mode 100644
index 0000000..fa4bfc9
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/common/actions/CommonDataAction.java
@@ -0,0 +1,27 @@
+package com.matrix.system.common.actions;
+
+import com.matrix.core.enums.EnumsManager;
+import com.matrix.core.pojo.AjaxResult;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author 姜友瑶
+ * @description 管理员总action
+ * @email 935090232@qq.com
+ * @date 2016-06-26
+ */
+@RestController
+@RequestMapping(value = "commondata")
+public class CommonDataAction {
+
+
+    @GetMapping("/getEnums/{enumCode}")
+    public AjaxResult getEnums(@PathVariable String enumCode) throws ClassNotFoundException {
+        return AjaxResult.buildSuccessInstance(EnumsManager.getShowEnum(enumCode));
+    }
+
+
+}
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java b/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java
index 5fecc8b..c7f7075 100644
--- a/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java
+++ b/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java
@@ -594,6 +594,30 @@
     public static final String WX_ORDER_NOTICE_DINGDING_TOKEN = "wxOrderNoticeDingdingToken";
 
 
+    /**
+     * 阿里云短信-accessKeyId
+     */
+    public static final String ALI_SMS_ACCESSKEYID = "ALI_SMS_ACCESSKEYID";
+    /**
+     * 阿里云短信-秘钥
+     */
+    public static final String ALI_SMS_ACCESSKEYSECRET=  "ALI_SMS_ACCESSKEYSECRET";
+
+    /**
+     * 阿里云短信-区域
+     */
+    public static final String ALI_SMS_REGIONID=  "ALI_SMS_REGIONID";
+
+    /**
+     * 阿里云短信-签名
+     */
+    public static final String ALI_SMS_SIGNNAME=  "ALI_SMS_SIGNNAME";
+
+
+
+
+
+
 
 
 
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysSmsTemplate.java b/zq-erp/src/main/java/com/matrix/system/hive/bean/SysSmsTemplate.java
index e3987e7..469dfbf 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysSmsTemplate.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/bean/SysSmsTemplate.java
@@ -2,6 +2,7 @@
 
 import com.matrix.core.pojo.EntityDTO;
 import com.matrix.core.anotations.Extend;
+import com.matrix.system.hive.hievEnum.SmsPlatformEnum;
 
 /**
  * @description 短信模板表
@@ -74,7 +75,12 @@
 	 * 模板名称
 	 */
 	private String  stName;
-			
+
+	/**
+	 * 短信平台
+	 */
+	private String smsPlatform;
+
 	
 	/**
 	 * 模板内容
@@ -171,8 +177,13 @@
    	public void setStReason(String stReason) {
 		this.stReason=stReason;
 	}
-   	
 
 
-  
+	public String getSmsPlatform() {
+		return smsPlatform;
+	}
+
+	public void setSmsPlatform(String smsPlatform) {
+		this.smsPlatform = smsPlatform;
+	}
 }
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/hievEnum/PayMethodEnum.java b/zq-erp/src/main/java/com/matrix/system/hive/hievEnum/PayMethodEnum.java
index a98aae4..fce3ff0 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/hievEnum/PayMethodEnum.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/hievEnum/PayMethodEnum.java
@@ -1,5 +1,7 @@
 package com.matrix.system.hive.hievEnum;
 
+import org.springframework.stereotype.Component;
+
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/hievEnum/SmsPlatformEnum.java b/zq-erp/src/main/java/com/matrix/system/hive/hievEnum/SmsPlatformEnum.java
new file mode 100644
index 0000000..0728af7
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/hive/hievEnum/SmsPlatformEnum.java
@@ -0,0 +1,52 @@
+package com.matrix.system.hive.hievEnum;
+
+import com.google.common.collect.Lists;
+import com.matrix.core.enums.ApiShowAble;
+import com.matrix.core.enums.EnumsManager;
+import com.matrix.core.enums.EnumsShowVo;
+
+import java.util.List;
+import java.util.stream.Collectors;
+
+
+public enum SmsPlatformEnum implements ApiShowAble {
+
+
+    ALIBABA("aliyun", "阿里云短信"),
+    HUYIWUXIAN("huyiwuxian", "互亿无线");
+
+    private  String value;
+
+    private  String displayName;
+
+
+    SmsPlatformEnum(String value, String displayName) {
+        this.value = value;
+        this.displayName = displayName;
+    }
+
+
+
+    @Override
+    public String getEnumCode() {
+        return "smsPlatform";
+    }
+
+    @Override
+    public List<EnumsShowVo> getEnumsShowVos() {
+        return Lists.newArrayList(values()).stream().map(item ->
+                EnumsShowVo.builder()
+                        .displayName(item.getDisplayName())
+                        .value(item.value)
+                        .build()
+        ).collect(Collectors.toList());
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public String getDisplayName() {
+        return displayName;
+    }
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/hiveErp/action/SysSmsTemplateAction.java b/zq-erp/src/main/java/com/matrix/system/hiveErp/action/SysSmsTemplateAction.java
index e9a313e..f1ad139 100644
--- a/zq-erp/src/main/java/com/matrix/system/hiveErp/action/SysSmsTemplateAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/hiveErp/action/SysSmsTemplateAction.java
@@ -56,7 +56,6 @@
         }
         SysUsers users = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
         sysSmsTemplate.setCompanyId(users.getCompanyId());
-        QueryUtil.setQueryLimitCom(sysSmsTemplate);
         List<SysSmsTemplate> dataList = sysSmsTemplateDao.selectInPage(sysSmsTemplate, pageVo);
 
         if (CollectionUtils.isNotEmpty(dataList)) {
diff --git a/zq-erp/src/main/resources/templates/views/admin/shop/parameterSetting-form.html b/zq-erp/src/main/resources/templates/views/admin/shop/parameterSetting-form.html
index 751099b..c263f8e 100644
--- a/zq-erp/src/main/resources/templates/views/admin/shop/parameterSetting-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/shop/parameterSetting-form.html
@@ -53,9 +53,9 @@
                             <el-select v-model="paramSetting.userValue" placeholder="请选择">
                                 <el-option
                                         v-for="item in paramSetting.value"
-                                        :key="item"
-                                        :label="item"
-                                        :value="item">
+                                        :key="item.value"
+                                        :label="item.key"
+                                        :value="item.value">
                                 </el-option>
                             </el-select>
                         </div>
@@ -169,7 +169,7 @@
                                     paramSettings[i].userValue = paramSettings[i].userValue.split(",");
                                 }
                             } else if (paramSettings[i].type == 2) {
-                                paramSettings[i].value = paramSettings[i].value.split(",");
+                                paramSettings[i].value =  JSON.parse(paramSettings[i].value);
 
                             }
                         }
diff --git a/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java b/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java
index a3fab25..2b4c64c 100644
--- a/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java
+++ b/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java
@@ -1,6 +1,9 @@
 package com.matrix;
 
 import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.json.JSONArray;
+import cn.hutool.json.JSONObject;
+import cn.hutool.json.JSONUtil;
 import com.matrix.system.common.bean.BusParameterSettings;
 import com.matrix.system.common.bean.SysCompany;
 import com.matrix.system.common.constance.AppConstance;
@@ -105,6 +108,35 @@
 		newSetting8.setCategory("店务配置");
 		newSettings.add(newSetting8);
 
+		ParameterSettings newSetting9=new ParameterSettings();
+		newSetting9.setCode(AppConstance.ALI_SMS_ACCESSKEYID);
+		newSetting9.setName("阿里云短信accessKeyId");
+		newSetting9.setType(1);
+		newSetting9.setCategory("第三方应用参数配置");
+		newSettings.add(newSetting9);
+
+		ParameterSettings newSetting10=new ParameterSettings();
+		newSetting10.setCode(AppConstance.ALI_SMS_ACCESSKEYSECRET);
+		newSetting10.setName("阿里云短信accessKeySecret");
+		newSetting10.setType(1);
+		newSetting10.setCategory("第三方应用参数配置");
+		newSettings.add(newSetting10);
+
+		ParameterSettings newSetting11=new ParameterSettings();
+		newSetting11.setCode(AppConstance.ALI_SMS_SIGNNAME);
+		newSetting11.setName("阿里云短信signName");
+		newSetting11.setType(1);
+		newSetting11.setCategory("第三方应用参数配置");
+		newSettings.add(newSetting11);
+
+		ParameterSettings newSetting12=new ParameterSettings();
+		newSetting12.setCode(AppConstance.ALI_SMS_REGIONID);
+		newSetting12.setName("阿里云短信regionId");
+		newSetting12.setType(1);
+		newSetting12.setCategory("第三方应用参数配置");
+		newSettings.add(newSetting12);
+
+
 
 		for (ParameterSettings newSetting : newSettings) {
 			List<ParameterSettings> parameterSettings = parameterSettingsDao.selectByModel(newSetting);
@@ -142,4 +174,13 @@
 	}
 
 
+	@Test
+	public  void testJson(){
+		JSONArray array = JSONUtil.createArray();
+		array.add(JSONUtil.createObj().putOpt("key", "是").putOpt("value", "是"));
+		array.add(JSONUtil.createObj().putOpt("key", "否").putOpt("value", "否"));
+		System.out.println(JSONUtil.toJsonStr(array));
+	}
+
+
 }

--
Gitblit v1.9.1