diff --git a/src/main/java/com/zeekling/solo/wechat/conf/WeChatBeans.java b/src/main/java/com/zeekling/solo/wechat/conf/WeChatBeans.java index 016de06..e764fc0 100644 --- a/src/main/java/com/zeekling/solo/wechat/conf/WeChatBeans.java +++ b/src/main/java/com/zeekling/solo/wechat/conf/WeChatBeans.java @@ -42,6 +42,6 @@ public class WeChatBeans { return service; } -// public WxMpInMemoryConfigStorage + } diff --git a/src/main/java/com/zeekling/solo/wechat/conf/WeXinConfigure.java b/src/main/java/com/zeekling/solo/wechat/conf/WeXinConfigure.java index 264616e..1b1413c 100644 --- a/src/main/java/com/zeekling/solo/wechat/conf/WeXinConfigure.java +++ b/src/main/java/com/zeekling/solo/wechat/conf/WeXinConfigure.java @@ -20,6 +20,8 @@ public class WeXinConfigure { private String aesKey; + private String menuFilePath; + public String getAppId() { return appId; } @@ -53,4 +55,13 @@ public class WeXinConfigure { public void setAesKey(String aesKey) { this.aesKey = aesKey; } + + public String getMenuFilePath() { + return menuFilePath; + } + + @Value("${menu.file_path}") + public void setMenuFilePath(String menuFilePath) { + this.menuFilePath = menuFilePath; + } } diff --git a/src/main/java/com/zeekling/solo/wechat/controller/WeXinController.java b/src/main/java/com/zeekling/solo/wechat/controller/WeXinController.java index 65e3415..ee51019 100644 --- a/src/main/java/com/zeekling/solo/wechat/controller/WeXinController.java +++ b/src/main/java/com/zeekling/solo/wechat/controller/WeXinController.java @@ -45,4 +45,6 @@ public class WeXinController { } + + } diff --git a/src/main/java/com/zeekling/solo/wechat/service/WeChatService.java b/src/main/java/com/zeekling/solo/wechat/service/WeChatMenuService.java similarity index 63% rename from src/main/java/com/zeekling/solo/wechat/service/WeChatService.java rename to src/main/java/com/zeekling/solo/wechat/service/WeChatMenuService.java index a7fdf66..1878073 100644 --- a/src/main/java/com/zeekling/solo/wechat/service/WeChatService.java +++ b/src/main/java/com/zeekling/solo/wechat/service/WeChatMenuService.java @@ -3,10 +3,11 @@ package com.zeekling.solo.wechat.service; /** * @author zeekling [lingzhaohui@zeekling.cn] * @version 1.0 - * @apiNote + * @apiNote 微信菜单相关处理 * @since 2020-03-18 */ -public interface WeChatService { +public interface WeChatMenuService { + } diff --git a/src/main/java/com/zeekling/solo/wechat/service/WeChatMenuServiceImpl.java b/src/main/java/com/zeekling/solo/wechat/service/WeChatMenuServiceImpl.java new file mode 100644 index 0000000..81161fa --- /dev/null +++ b/src/main/java/com/zeekling/solo/wechat/service/WeChatMenuServiceImpl.java @@ -0,0 +1,16 @@ +package com.zeekling.solo.wechat.service; + +import org.springframework.stereotype.Service; + + +/** + * @author zeekling [lingzhaohui@zeekling.cn] + * @version 1.0 + * @apiNote + * @since 2020-03-21 + */ +@Service +public class WeChatMenuServiceImpl implements WeChatMenuService { + + +} diff --git a/src/main/java/com/zeekling/solo/wechat/util/FileUtils.java b/src/main/java/com/zeekling/solo/wechat/util/FileUtils.java index 1687b05..5416f01 100644 --- a/src/main/java/com/zeekling/solo/wechat/util/FileUtils.java +++ b/src/main/java/com/zeekling/solo/wechat/util/FileUtils.java @@ -1,10 +1,63 @@ package com.zeekling.solo.wechat.util; +import org.apache.commons.lang3.text.StrBuilder; +import org.json.JSONObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.*; + /** * @author zeekling [lingzhaohui@zeekling.cn] * @version 1.0 - * @apiNote + * @apiNote 主要用来操作文件相关 * @since 2020-03-21 */ -public class FileUtils { +public final class FileUtils { + + + private static final Logger LOG = LoggerFactory.getLogger(FileUtils.class); + + private FileUtils() { + } + + /** + * 读取文件 + * + * @param filePath 文件地址 + * @return 文件内容 + */ + public String readFile(String filePath) { + StrBuilder sb = new StrBuilder(); + byte[] buffer = new byte[1024]; + try { + FileInputStream inputStream = new FileInputStream(filePath); + BufferedInputStream bufferedInputStream = new BufferedInputStream(inputStream); + int idx = -1; + while ((idx = bufferedInputStream.read(buffer)) != -1) { + sb.append(new String(buffer, 0, idx)); + } + } catch (IOException e) { + LOG.warn("file read error,fileName:{}, error:{}", filePath, e); + } + return sb.toString(); + } + + /** + * 读取文件,并且将文件转换成json对象 + * + * @param filePath 文件路径 + * @return 转换后的json对象 + */ + public JSONObject readJsonFile(String filePath) { + String str = readFile(filePath); + + try { + return new JSONObject(str); + } catch (Exception e) { + LOG.warn("str to json error,str:{}, error:{}", str, e); + } + return null; + } + } diff --git a/src/main/resources/application-dev.properties b/src/main/resources/application-dev.properties index 99525af..cf35830 100644 --- a/src/main/resources/application-dev.properties +++ b/src/main/resources/application-dev.properties @@ -5,4 +5,6 @@ logging.file=/home/zeek/project/solo-weixin/logs/weixin.log wx.mp.appId=wxa1de154d148ffc9e wx.mp.secret=3b988f265ea9d5056657b5f5fc3ad566 wx.mp.token=zeekling -wx.mp.aesKey=MhHpsysI44QIZkEPTiIvTf96XbEJY3QAGUHyxF1Vp9W \ No newline at end of file +wx.mp.aesKey=MhHpsysI44QIZkEPTiIvTf96XbEJY3QAGUHyxF1Vp9W + +menu.file_path = /home/zeek/project/solo-weixin/src/main/resources/menu.json \ No newline at end of file