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

This commit is contained in:
ArBing 2019-12-24 17:37:01 +08:00 committed by Binary Wang
parent 45f3e54526
commit 1d50acace7
4 changed files with 41 additions and 6 deletions

View File

@ -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>

View File

@ -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

View File

@ -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;
}
}

View File

@ -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