Browse Source

:bug: #1331 修复小程序获取订阅消息公共模板标题Result不匹配的问题

ArBing 5 years ago
parent
commit
1d50acace7

+ 2 - 2
weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/WxMaSubscribeService.java

@@ -1,6 +1,6 @@
 package cn.binarywang.wx.miniapp.api;
 
-import cn.binarywang.wx.miniapp.bean.template.WxMaTemplateLibraryListResult;
+import cn.binarywang.wx.miniapp.bean.template.WxMaPubTemplateTitleListResult;
 import lombok.Data;
 import me.chanjar.weixin.common.error.WxErrorException;
 
@@ -57,7 +57,7 @@ public interface WxMaSubscribeService {
    * @return .
    * @throws WxErrorException .
    */
-  WxMaTemplateLibraryListResult getPubTemplateTitleList(String[] ids, int start, int limit) throws WxErrorException;
+  WxMaPubTemplateTitleListResult getPubTemplateTitleList(String[] ids, int start, int limit) throws WxErrorException;
 
   /**
    * <pre>

+ 3 - 3
weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/impl/WxMaSubscribeServiceImpl.java

@@ -2,7 +2,7 @@ package cn.binarywang.wx.miniapp.api.impl;
 
 import cn.binarywang.wx.miniapp.api.WxMaService;
 import cn.binarywang.wx.miniapp.api.WxMaSubscribeService;
-import cn.binarywang.wx.miniapp.bean.template.WxMaTemplateLibraryListResult;
+import cn.binarywang.wx.miniapp.bean.template.WxMaPubTemplateTitleListResult;
 import cn.binarywang.wx.miniapp.util.json.WxMaGsonBuilder;
 import com.google.common.base.Joiner;
 import com.google.common.collect.ImmutableMap;
@@ -24,12 +24,12 @@ public class WxMaSubscribeServiceImpl implements WxMaSubscribeService {
   private WxMaService wxMaService;
 
   @Override
-  public WxMaTemplateLibraryListResult getPubTemplateTitleList(String[] ids, int start, int limit) throws WxErrorException {
+  public WxMaPubTemplateTitleListResult getPubTemplateTitleList(String[] ids, int start, int limit) throws WxErrorException {
     ImmutableMap<String, ? extends Serializable> params = ImmutableMap.of("ids", StringUtils.join(ids, ","),
       "start", start, "limit", limit);
     String responseText = this.wxMaService.get(GET_PUB_TEMPLATE_TITLE_LIST_URL,
       Joiner.on("&").withKeyValueSeparator("=").join(params));
-    return WxMaTemplateLibraryListResult.fromJson(responseText);
+    return WxMaPubTemplateTitleListResult.fromJson(responseText);
   }
 
   @Override

+ 32 - 0
weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/bean/template/WxMaPubTemplateTitleListResult.java

@@ -0,0 +1,32 @@
+package cn.binarywang.wx.miniapp.bean.template;
+
+import lombok.Data;
+import me.chanjar.weixin.common.util.json.WxGsonBuilder;
+
+import java.io.Serializable;
+import java.util.List;
+
+@Data
+public class WxMaPubTemplateTitleListResult implements Serializable {
+  private static final long serialVersionUID = -7718911668757837527L;
+
+  private int count;
+
+  private List<TemplateItem> data;
+
+  public static WxMaPubTemplateTitleListResult fromJson(String json) {
+    return WxGsonBuilder.create().fromJson(json, WxMaPubTemplateTitleListResult.class);
+  }
+
+  @Data
+  public static class TemplateItem {
+
+    private Integer type;
+
+    private Integer tid;
+
+    private String categoryId;
+
+    private String title;
+  }
+}

+ 4 - 1
weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/api/impl/WxMaSubscribeServiceImplTest.java

@@ -2,6 +2,7 @@ package cn.binarywang.wx.miniapp.api.impl;
 
 import cn.binarywang.wx.miniapp.api.WxMaService;
 import cn.binarywang.wx.miniapp.api.WxMaSubscribeService;
+import cn.binarywang.wx.miniapp.bean.template.WxMaPubTemplateTitleListResult;
 import cn.binarywang.wx.miniapp.test.ApiTestModule;
 import com.google.common.collect.Lists;
 import com.google.inject.Inject;
@@ -27,7 +28,9 @@ public class WxMaSubscribeServiceImplTest {
 
   @Test
   public void testGetPubTemplateTitleList() throws WxErrorException {
-    this.wxService.getSubscribeService().getPubTemplateTitleList(new String[]{"2", "616"}, 0, 1);
+    WxMaPubTemplateTitleListResult result = this.wxService.getSubscribeService().getPubTemplateTitleList(new String[]{"2", "616"}, 0, 30);
+    System.out.println(result);
+
   }
 
   @Test