Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
package me.chanjar.weixin.mp.api.impl;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import me.chanjar.weixin.common.bean.menu.WxMenu;
import me.chanjar.weixin.common.exception.WxErrorException;
import me.chanjar.weixin.common.util.http.SimpleGetRequestExecutor;
Expand All @@ -12,6 +15,7 @@
*/
public class WxMpMenuServiceImpl implements WxMpMenuService {
private static final String API_URL_PREFIX = "https://api.weixin.qq.com/cgi-bin/menu";
private static Logger log = LoggerFactory.getLogger(WxMpMenuServiceImpl.class);

private WxMpService wxMpService;

Expand All @@ -21,25 +25,29 @@ public WxMpMenuServiceImpl(WxMpService wxMpService) {

@Override
public void menuCreate(WxMenu menu) throws WxErrorException {
String menuJson = menu.toJson();
String url = API_URL_PREFIX + "/create";
if (menu.getMatchRule() != null) {
String url = API_URL_PREFIX + "/addconditional";
this.wxMpService.execute(new SimplePostRequestExecutor(), url, menu.toJson());
} else {
String url = API_URL_PREFIX + "/create";
this.wxMpService.execute(new SimplePostRequestExecutor(), url, menu.toJson());
}
url = API_URL_PREFIX + "/addconditional";
}
log.trace("开始创建菜单:{}", menuJson);

String result = this.wxMpService.execute(new SimplePostRequestExecutor(), url,menuJson);
log.debug("创建菜单:{},结果:{}", menuJson, result);
}

@Override
public void menuDelete() throws WxErrorException {
String url = API_URL_PREFIX + "/delete";
this.wxMpService.execute(new SimpleGetRequestExecutor(), url, null);
String result = this.wxMpService.execute(new SimpleGetRequestExecutor(), url, null);
log.debug("删除菜单结果:{}", result);
}

@Override
public void menuDelete(String menuid) throws WxErrorException {
String url = API_URL_PREFIX + "/delconditional";
this.wxMpService.execute(new SimpleGetRequestExecutor(), url, "menuid=" + menuid);
String result = this.wxMpService.execute(new SimpleGetRequestExecutor(), url, "menuid=" + menuid);
log.debug("根据MeunId({})删除菜单结果:{}", menuid,result);
}

@Override
Expand Down