diff --git a/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/WeixinProxy.java b/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/WeixinProxy.java
index 24bbac24..4866b112 100644
--- a/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/WeixinProxy.java
+++ b/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/WeixinProxy.java
@@ -1,6 +1,5 @@
package com.foxinmy.weixin4j.mp;
-import java.io.File;
import java.io.InputStream;
import java.util.Date;
import java.util.List;
@@ -135,8 +134,8 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.util.Weixin4jSettings
*/
public WeixinProxy(Weixin4jSettings settings) {
- this(new TokenHolder(new WeixinTokenCreator(settings.getWeixinAccount()
- .getId(), settings.getWeixinAccount().getSecret()),
+ this(new TokenHolder(
+ new WeixinTokenCreator(settings.getWeixinAccount().getId(), settings.getWeixinAccount().getSecret()),
settings.getTokenStorager0()));
this.settings = settings;
}
@@ -188,8 +187,7 @@ public class WeixinProxy {
* @return
*/
public TokenHolder getTicketHolder(TicketType ticketType) {
- return new TokenHolder(new WeixinTicketCreator(getWeixinAccount()
- .getId(), ticketType, this.tokenHolder),
+ return new TokenHolder(new WeixinTicketCreator(getWeixinAccount().getId(), ticketType, this.tokenHolder),
this.settings.getTokenStorager0());
}
@@ -205,8 +203,7 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.MediaApi
* @throws WeixinException
*/
- public String uploadImage(InputStream is, String fileName)
- throws WeixinException {
+ public String uploadImage(InputStream is, String fileName) throws WeixinException {
return mediaApi.uploadImage(is, fileName);
}
@@ -229,13 +226,14 @@ public class WeixinProxy {
* 高级群发
* @see com.foxinmy.weixin4j.tuple.MpVideo
*/
- public MpVideo uploadVideo(InputStream is, String fileName, String title,
- String description) throws WeixinException {
+ public MpVideo uploadVideo(InputStream is, String fileName, String title, String description)
+ throws WeixinException {
return mediaApi.uploadVideo(is, fileName, title, description);
}
/**
- * 上传媒体文件 此接口只包含图片、语音、缩略图、视频(临时)四种媒体类型的上传
+ * 上传媒体文件
+ * 此接口只包含图片、语音、缩略图、视频(临时)四种媒体类型的上传
*
* 正常情况下返回{"type":"TYPE","media_id":"MEDIA_ID","created_at":123456789},
* 否则抛出异常.
@@ -259,8 +257,7 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.MediaApi
* @throws WeixinException
*/
- public MediaUploadResult uploadMedia(boolean isMaterial, InputStream is,
- String fileName) throws WeixinException {
+ public MediaUploadResult uploadMedia(boolean isMaterial, InputStream is, String fileName) throws WeixinException {
return mediaApi.uploadMedia(isMaterial, is, fileName);
}
@@ -275,13 +272,14 @@ public class WeixinProxy {
* @throws WeixinException
* @see com.foxinmy.weixin4j.mp.api.MediaApi
* @see com.foxinmy.weixin4j.model.MediaDownloadResult
- * @see 下载临时媒体素材
- * @see 下载永久媒体素材
+ * @see
+ * 下载临时媒体素材
+ * @see
+ * 下载永久媒体素材
*/
- public MediaDownloadResult downloadMedia(String mediaId, boolean isMaterial)
- throws WeixinException {
+ public MediaDownloadResult downloadMedia(String mediaId, boolean isMaterial) throws WeixinException {
return mediaApi.downloadMedia(mediaId, isMaterial);
}
@@ -302,8 +300,7 @@ public class WeixinProxy {
* "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1444738729&token=&lang=zh_CN">
* 上传永久媒体素材
*/
- public String uploadMaterialArticle(List articles)
- throws WeixinException {
+ public String uploadMaterialArticle(List articles) throws WeixinException {
return mediaApi.uploadMaterialArticle(articles);
}
@@ -318,8 +315,7 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.tuple.MpArticle
* @see com.foxinmy.weixin4j.mp.api.MediaApi
*/
- public List downloadArticle(String mediaId)
- throws WeixinException {
+ public List downloadArticle(String mediaId) throws WeixinException {
return mediaApi.downloadArticle(mediaId);
}
@@ -340,8 +336,8 @@ public class WeixinProxy {
* "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1444738732&token=&lang=zh_CN">
* 更新永久图文素材
*/
- public JsonResult updateMaterialArticle(String mediaId, int index,
- List articles) throws WeixinException {
+ public JsonResult updateMaterialArticle(String mediaId, int index, List articles)
+ throws WeixinException {
return mediaApi.updateMaterialArticle(mediaId, index, articles);
}
@@ -357,8 +353,7 @@ public class WeixinProxy {
* "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1444738731&token=&lang=zh_CN">
* 删除永久媒体素材
*/
- public JsonResult deleteMaterialMedia(String mediaId)
- throws WeixinException {
+ public JsonResult deleteMaterialMedia(String mediaId) throws WeixinException {
return mediaApi.deleteMaterialMedia(mediaId);
}
@@ -380,13 +375,14 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.MediaApi
* @throws WeixinException
*/
- public String uploadMaterialVideo(InputStream is, String fileName,
- String title, String introduction) throws WeixinException {
+ public String uploadMaterialVideo(InputStream is, String fileName, String title, String introduction)
+ throws WeixinException {
return mediaApi.uploadMaterialVideo(is, fileName, title, introduction);
}
/**
- * 获取永久媒体素材的总数 .图片和图文消息素材(包括单图文和多图文)的总数上限为5000,其他素材的总数上限为1000
+ * 获取永久媒体素材的总数
+ * .图片和图文消息素材(包括单图文和多图文)的总数上限为5000,其他素材的总数上限为1000
*
* @return 总数对象
* @throws WeixinException
@@ -419,8 +415,7 @@ public class WeixinProxy {
* "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1444738734&token=&lang=zh_CN">
* 获取素材列表
*/
- public MediaRecord listMaterialMedia(MediaType mediaType, Pageable pageable)
- throws WeixinException {
+ public MediaRecord listMaterialMedia(MediaType mediaType, Pageable pageable) throws WeixinException {
return mediaApi.listMaterialMedia(mediaType, pageable);
}
@@ -434,8 +429,7 @@ public class WeixinProxy {
* @see {@link #listMaterialMedia(MediaType, Pageable)}
* @throws WeixinException
*/
- public List listAllMaterialMedia(MediaType mediaType)
- throws WeixinException {
+ public List listAllMaterialMedia(MediaType mediaType) throws WeixinException {
return mediaApi.listAllMaterialMedia(mediaType);
}
@@ -472,8 +466,7 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.tuple.News
* @see com.foxinmy.weixin4j.mp.api.NotifyApi
*/
- public JsonResult sendNotify(NotifyMessage notify, String kfAccount)
- throws WeixinException {
+ public JsonResult sendNotify(NotifyMessage notify, String kfAccount) throws WeixinException {
return notifyApi.sendNotify(notify, kfAccount);
}
@@ -490,12 +483,11 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.CustomApi
* @see 查询客服聊天记录
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044854&token=&lang=zh_CN">
* 查询客服聊天记录
* @throws WeixinException
*/
- public List getCustomRecord(Date startTime, Date endTime,
- Pageable pageable) throws WeixinException {
+ public List getKfChatRecord(Date startTime, Date endTime, Pageable pageable) throws WeixinException {
return customApi.getKfChatRecord(startTime, endTime, pageable);
}
@@ -510,16 +502,13 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.CustomApi
* @see 获取客服基本信息
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044813&token=&lang=zh_CN">
* 获取客服基本信息
* @see 获取在线客服接待信息
- * @see
* 获取在线客服接待信息
* @throws WeixinException
*/
- public List listKfAccount(boolean isOnline)
- throws WeixinException {
+ public List listKfAccount(boolean isOnline) throws WeixinException {
return customApi.listKfAccount(isOnline);
}
@@ -536,15 +525,12 @@ public class WeixinProxy {
* @return 处理结果
* @throws WeixinException
* @see com.foxinmy.weixin4j.mp.api.CustomApi
- * @see
* 客服管理接口返回码
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044813&token=&lang=zh_CN">
* 新增客服账号
*/
- public JsonResult createKfAccount(String id, String name, String pwd)
- throws WeixinException {
+ public JsonResult createKfAccount(String id, String name, String pwd) throws WeixinException {
return customApi.createKfAccount(id, name, pwd);
}
@@ -562,14 +548,10 @@ public class WeixinProxy {
* @throws WeixinException
* @see com.foxinmy.weixin4j.mp.api.CustomApi
* @see
- * 客服管理接口返回码
- * @see
- * 新增客服账号
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044813&token=&lang=zh_CN">
+ * 更新客服账号
*/
- public JsonResult updateKfAccount(String id, String name, String pwd)
- throws WeixinException {
+ public JsonResult updateKfAccount(String id, String name, String pwd) throws WeixinException {
return customApi.updateKfAccount(id, name, pwd);
}
@@ -589,8 +571,7 @@ public class WeixinProxy {
* >邀请绑定客服帐号
* @throws WeixinException
*/
- public JsonResult inviteKfAccount(String kfAccount, String inviteAccount)
- throws WeixinException {
+ public JsonResult inviteKfAccount(String kfAccount, String inviteAccount) throws WeixinException {
return customApi.inviteKfAccount(kfAccount, inviteAccount);
}
@@ -607,14 +588,10 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.CustomApi
* @throws WeixinException
* @see
- * 客服管理接口返回码
- * @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044813&token=&lang=zh_CN">
* 上传客服头像
*/
- public JsonResult uploadKfAvatar(String accountId, InputStream is,
- String fileName) throws WeixinException {
+ public JsonResult uploadKfAvatar(String accountId, InputStream is, String fileName) throws WeixinException {
return customApi.uploadKfAvatar(accountId, is, fileName);
}
@@ -627,10 +604,7 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.CustomApi
* @throws WeixinException
* @see
- * 客服管理接口返回码
- * @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044813&token=&lang=zh_CN">
* 删除客服账号
*/
public JsonResult deleteKfAccount(String id) throws WeixinException {
@@ -654,11 +628,10 @@ public class WeixinProxy {
* @throws WeixinException
* @see com.foxinmy.weixin4j.mp.api.CustomApi
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044813&token=&lang=zh_CN">
* 创建会话
*/
- public JsonResult createKfSession(String userOpenId, String kfAccount,
- String text) throws WeixinException {
+ public JsonResult createKfSession(String userOpenId, String kfAccount, String text) throws WeixinException {
return customApi.createKfSession(userOpenId, kfAccount, text);
}
@@ -675,11 +648,10 @@ public class WeixinProxy {
* @throws WeixinException
* @see com.foxinmy.weixin4j.mp.api.CustomApi
* @see
- * 创建会话
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044820&token=&lang=zh_CN">
+ * 关闭会话
*/
- public JsonResult closeKfSession(String userOpenId, String kfAccount,
- String text) throws WeixinException {
+ public JsonResult closeKfSession(String userOpenId, String kfAccount, String text) throws WeixinException {
return customApi.closeKfSession(userOpenId, kfAccount, text);
}
@@ -693,7 +665,7 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.CustomApi
* @see com.foxinmy.weixin4j.mp.model.KfSession
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044820&token=&lang=zh_CN">
* 获取会话状态
*/
public KfSession getKfSession(String userOpenId) throws WeixinException {
@@ -710,28 +682,27 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.CustomApi
* @see com.foxinmy.weixin4j.mp.model.KfSession
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044820&token=&lang=zh_CN">
* 获取客服的会话列表
*/
- public List listKfSession(String kfAccount)
- throws WeixinException {
+ public List listKfSession(String kfAccount) throws WeixinException {
return customApi.listKfSession(kfAccount);
}
/**
- * 获取未接入会话列表:获取当前正在等待队列中的会话列表,此接口最多返回最早进入队列的100个未接入会话。 缺陷:没有count字段
+ * 获取未接入会话列表:获取当前正在等待队列中的会话列表,此接口最多返回最早进入队列的100个未接入会话。
+ * 缺陷:没有count字段
*
* @return 会话列表
* @throws WeixinException
* @see com.foxinmy.weixin4j.mp.api.CustomApi
* @see com.foxinmy.weixin4j.mp.model.KfSession
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044820&token=&lang=zh_CN">
* 获取客服的会话列表
*/
- public List listKfSessionWait() throws WeixinException {
- return customApi.listKfSessionWait();
+ public List listKfWaitSession() throws WeixinException {
+ return customApi.listKfWaitSession();
}
/**
@@ -742,13 +713,12 @@ public class WeixinProxy {
* @return 媒体ID
* @throws WeixinException
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140549&token=&lang=zh_CN">
* 上传图文素材
* @see com.foxinmy.weixin4j.tuple.MpArticle
* @see com.foxinmy.weixin4j.mp.api.MassApi
*/
- public String uploadMassArticle(List articles)
- throws WeixinException {
+ public String uploadMassArticle(List articles) throws WeixinException {
return massApi.uploadArticle(articles);
}
@@ -776,13 +746,12 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.tuple.MpNews
* @see com.foxinmy.weixin4j.mp.api.MassApi
* @see com.foxinmy.weixin4j.tuple.MassTuple
- * @see {@link com.foxinmy.weixin4j.mp.api.GroupApi#getGroups()}
+ * @see {@link #getGroups()}
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140549&token=&lang=zh_CN">
* 根据分组群发
*/
- public String[] massByGroupId(MassTuple tuple, boolean isToAll, int groupId)
- throws WeixinException {
+ public String[] massByGroupId(MassTuple tuple, boolean isToAll, int groupId) throws WeixinException {
return massApi.massByGroupId(tuple, isToAll, groupId);
}
@@ -796,13 +765,12 @@ public class WeixinProxy {
* @return 第一个元素为消息发送任务的ID,第二个元素为消息的数据ID,该字段只有在群发图文消息时,才会出现,可以用于在图文分析数据接口中
* @see {@link #massByGroupId(Tuple,int)}
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140549&token=&lang=zh_CN">
* 根据分组群发
* @see com.foxinmy.weixin4j.tuple.MpArticle
* @throws WeixinException
*/
- public String[] massArticleByGroupId(List articles, int groupId)
- throws WeixinException {
+ public String[] massArticleByGroupId(List articles, int groupId) throws WeixinException {
return massApi.massArticleByGroupId(articles, groupId);
}
@@ -829,13 +797,11 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.MassApi
* @see com.foxinmy.weixin4j.tuple.MassTuple
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140549&token=&lang=zh_CN">
* 根据openid群发
- * @see {@link com.foxinmy.weixin4j.mp.api.MediaApi#uploadMedia(File)}
- * @see {@link com.foxinmy.weixin4j.mp.api.UserApi#getUser(String)}
+ * @see {@link #getUser(String)}
*/
- public String[] massByOpenIds(MassTuple tuple, String... openIds)
- throws WeixinException {
+ public String[] massByOpenIds(MassTuple tuple, String... openIds) throws WeixinException {
return massApi.massByOpenIds(tuple, openIds);
}
@@ -848,14 +814,13 @@ public class WeixinProxy {
* openId列表
* @return 第一个元素为消息发送任务的ID,第二个元素为消息的数据ID,该字段只有在群发图文消息时,才会出现,可以用于在图文分析数据接口中
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140549&token=&lang=zh_CN">
* 根据openid群发
* @see {@link #massByOpenIds(Tuple,String...)}
* @see com.foxinmy.weixin4j.tuple.MpArticle
* @throws WeixinException
*/
- public String[] massArticleByOpenIds(List articles,
- String... openIds) throws WeixinException {
+ public String[] massArticleByOpenIds(List articles, String... openIds) throws WeixinException {
return massApi.massArticleByOpenIds(articles, openIds);
}
@@ -869,7 +834,7 @@ public class WeixinProxy {
* 发送出去的消息ID
* @throws WeixinException
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140549&token=&lang=zh_CN">
* 删除群发
* @see com.foxinmy.weixin4j.mp.api.MassApi
* @see {@link #massByGroupId(Tuple, int)}
@@ -881,7 +846,8 @@ public class WeixinProxy {
}
/**
- * 预览群发消息 开发者可通过该接口发送消息给指定用户,在手机端查看消息的样式和排版
+ * 预览群发消息
+ * 开发者可通过该接口发送消息给指定用户,在手机端查看消息的样式和排版
*
* @param toUser
* 接收用户的openID
@@ -894,11 +860,10 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.MassApi
* @see com.foxinmy.weixin4j.tuple.MassTuple
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140549&token=&lang=zh_CN">
* 预览群发消息
*/
- public JsonResult previewMassNews(String toUser, String toWxName,
- MassTuple tuple) throws WeixinException {
+ public JsonResult previewMassNews(String toUser, String toWxName, MassTuple tuple) throws WeixinException {
return massApi.previewMassNews(toUser, toWxName, tuple);
}
@@ -911,7 +876,7 @@ public class WeixinProxy {
* @throws WeixinException
* @see com.foxinmy.weixin4j.mp.api.MassApi
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140549&token=&lang=zh_CN">
* 查询群发状态
*/
public String getMassNewStatus(String msgId) throws WeixinException {
@@ -994,8 +959,7 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.UserApi
* @throws WeixinException
*/
- public List getUsers(Lang lang, String... openIds)
- throws WeixinException {
+ public List getUsers(Lang lang, String... openIds) throws WeixinException {
return userApi.getUsers(lang, openIds);
}
@@ -1033,8 +997,7 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.UserApi
* @see com.foxinmy.weixin4j.mp.model.Following
*/
- public Following getFollowingOpenIds(String nextOpenId)
- throws WeixinException {
+ public Following getFollowingOpenIds(String nextOpenId) throws WeixinException {
return userApi.getFollowingOpenIds(nextOpenId);
}
@@ -1094,8 +1057,7 @@ public class WeixinProxy {
* 设置用户备注名
* @see com.foxinmy.weixin4j.mp.api.UserApi
*/
- public JsonResult remarkUserName(String openId, String remark)
- throws WeixinException {
+ public JsonResult remarkUserName(String openId, String remark) throws WeixinException {
return userApi.remarkUserName(openId, remark);
}
@@ -1107,7 +1069,7 @@ public class WeixinProxy {
* @return group对象
* @throws WeixinException
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN">
* 创建分组
* @see com.foxinmy.weixin4j.mp.model.Group
* @see com.foxinmy.weixin4j.mp.model.Group#toCreateJson()
@@ -1123,7 +1085,7 @@ public class WeixinProxy {
* @return 组集合
* @throws WeixinException
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN">
* 查询所有分组
* @see com.foxinmy.weixin4j.mp.model.Group
* @see com.foxinmy.weixin4j.mp.api.GroupApi
@@ -1140,7 +1102,7 @@ public class WeixinProxy {
* @return 组ID
* @throws WeixinException
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN">
* 查询用户所在分组
* @see com.foxinmy.weixin4j.mp.model.Group
* @see com.foxinmy.weixin4j.mp.api.GroupApi
@@ -1158,13 +1120,12 @@ public class WeixinProxy {
* 组名称
* @throws WeixinException
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN">
* 修改分组名
* @see com.foxinmy.weixin4j.mp.model.Group
* @see com.foxinmy.weixin4j.mp.api.GroupApi
*/
- public JsonResult modifyGroup(int groupId, String name)
- throws WeixinException {
+ public JsonResult modifyGroup(int groupId, String name) throws WeixinException {
return groupApi.modifyGroup(groupId, name);
}
@@ -1177,13 +1138,12 @@ public class WeixinProxy {
* 用户对应的ID
* @throws WeixinException
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN4">
* 移动分组
* @see com.foxinmy.weixin4j.mp.model.Group
* @see com.foxinmy.weixin4j.mp.api.GroupApi
*/
- public JsonResult moveGroup(int groupId, String openId)
- throws WeixinException {
+ public JsonResult moveGroup(int groupId, String openId) throws WeixinException {
return groupApi.moveGroup(groupId, openId);
}
@@ -1196,13 +1156,12 @@ public class WeixinProxy {
* 用户ID列表(不能超过50个)
* @throws WeixinException
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN">
* 批量移动分组
* @see com.foxinmy.weixin4j.mp.model.Group
* @see com.foxinmy.weixin4j.mp.api.GroupApi
*/
- public JsonResult moveGroup(int groupId, String... openIds)
- throws WeixinException {
+ public JsonResult moveGroup(int groupId, String... openIds) throws WeixinException {
return groupApi.moveGroup(groupId, openIds);
}
@@ -1213,7 +1172,7 @@ public class WeixinProxy {
* 组ID
* @throws WeixinException
* @see
+ * "https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN">
* 删除用户分组
* @see com.foxinmy.weixin4j.mp.model.Group
* @see com.foxinmy.weixin4j.mp.api.GroupApi
@@ -1302,8 +1261,7 @@ public class WeixinProxy {
* @see com.foxinmy.weixin4j.mp.api.MenuApi
* @see com.foxinmy.weixin4j.model.Button
*/
- public String createCustomMenu(List