diff --git a/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/api/MenuApi.java b/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/api/MenuApi.java index 65a07af3..9d99d4d7 100644 --- a/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/api/MenuApi.java +++ b/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/api/MenuApi.java @@ -18,6 +18,7 @@ import com.foxinmy.weixin4j.mp.model.Menu; import com.foxinmy.weixin4j.mp.model.MenuMatchRule; import com.foxinmy.weixin4j.token.TokenManager; import com.foxinmy.weixin4j.type.ButtonType; +import com.foxinmy.weixin4j.util.StringUtil; /** * 菜单相关API @@ -59,16 +60,15 @@ public class MenuApi extends MpApi { JSON.toJSONString(data, new NameFilter() { @Override public String process(Object object, String name, Object value) { - if (object instanceof Button && name.equals("content")) { + if (object instanceof Button && name.equals("content") + && StringUtil.isNotBlank(((Button) object).getType())) { ButtonType buttonType = ButtonType.valueOf(((Button) object).getType()); - if (buttonType != null) { - if (ButtonType.view == buttonType || ButtonType.miniprogram == buttonType) { - return "url"; - } else if (ButtonType.media_id == buttonType || ButtonType.view_limited == buttonType) { - return "media_id"; - } else { - return "key"; - } + if (ButtonType.view == buttonType || ButtonType.miniprogram == buttonType) { + return "url"; + } else if (ButtonType.media_id == buttonType || ButtonType.view_limited == buttonType) { + return "media_id"; + } else { + return "key"; } } return name; diff --git a/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/api/MenuApi.java b/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/api/MenuApi.java index cd9e0542..131d81a4 100644 --- a/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/api/MenuApi.java +++ b/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/api/MenuApi.java @@ -16,6 +16,7 @@ import com.foxinmy.weixin4j.model.Button; import com.foxinmy.weixin4j.model.Token; import com.foxinmy.weixin4j.token.TokenManager; import com.foxinmy.weixin4j.type.ButtonType; +import com.foxinmy.weixin4j.util.StringUtil; /** * 菜单相关API @@ -28,100 +29,99 @@ import com.foxinmy.weixin4j.type.ButtonType; */ public class MenuApi extends QyApi { - private final TokenManager tokenManager; + private final TokenManager tokenManager; - public MenuApi(TokenManager tokenManager) { - this.tokenManager = tokenManager; - } + public MenuApi(TokenManager tokenManager) { + this.tokenManager = tokenManager; + } - /** - * 自定义菜单(管理员须拥有应用的管理权限 并且应用必须设置在回调模式) - * - * @param agentid - * 应用ID - * - * @param buttons - * 菜单列表 - * @throws WeixinException - * @see - * 创建自定义菜单 - * @see com.foxinmy.weixin4j.model.Button - */ - public ApiResult createMenu(int agentid, List