微信开发八 用户管理
来源:互联网 发布:免费的音乐软件 编辑:程序博客网 时间:2024/05/18 19:47
本例中有些引用的类与方法不做过多介绍,之后会提供完整源码下载,请自行查看。
本篇根据开发者文档-用户管理编写。请对照查看,一些传入与返回参数就不过多介绍。地址为:https://mp.weixin.qq.com/wiki/4/e3427b8e5bd66cfad337af43c8875f14.html
开发者可以使用接口,对公众平台的分组进行查询、创建、修改、删除等操作,也可以使用接口在需要时移动用户到某个分组。
public class UserGroup { private String openid; //用户的OpenID private String to_groupid; //分组id private List<String> openid_list; //分组名字(30个字符以内) private Group group; //分组 private String remark; //新的备注名,长度必须小于30字符 private List<User> user_list; //分组名字(30个字符以内) public String getOpenid() { return openid; } public void setOpenid(String openid) { this.openid = openid; } public String getTo_groupid() { return to_groupid; } public void setTo_groupid(String to_groupid) { this.to_groupid = to_groupid; } public List<String> getOpenid_list() { if(openid_list == null) openid_list = new ArrayList<String>(); return openid_list; } public void setOpenid_list(List<String> openid_list) { this.openid_list = openid_list; } public Group getGroup() { return group; } public void setGroup(Group group) { this.group = group; } public String getRemark() { return remark; } public void setRemark(String remark) { this.remark = remark; } public List<User> getUser_list() { if(user_list == null) user_list = new ArrayList<User>(); return user_list; } public void setUser_list(List<User> user_list) { this.user_list = user_list; } public class Group { private String id; //分组id private String name; //分组名字(30个字符以内) public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } public class User { private String openid ; //用户的标识,对当前公众号唯一 private String lang ; //国家地区语言版本,zh_CN 简体,zh_TW 繁体,en 英语,默认为zh-CN public String getOpenid() { return openid; } public void setOpenid(String openid) { this.openid = openid; } public String getLang() { return lang; } public void setLang(String lang) { this.lang = lang; } }}
public interface UserGroupService { //创建分组 public String createUserGroup(UserGroup userGroup); //查询所有分组 public String getAllGroup(); //查询用户所在分组 public String getGroupIdByOpenId(UserGroup userGroup); //修改分组名 public String updateGroupName(UserGroup userGroup); //移动用户分组 public String mobieUserInGroup(UserGroup userGroup); //批量移动用户分组 public String mobieUsersInGroup(UserGroup userGroup); //删除分组 public String deleteGroup(UserGroup userGroup); //设置备注名 public String setUserRemark(UserGroup userGroup); //获取用户基本信息(包括UnionID机制) public String getUserInfo(String unionID); //批量获取用户基本信息 public String getMostUserInfo(UserGroup userGroup); //获取用户列表 public String getUserList(String next_openid );}
@Service("userGroupService")public class UserGroupServiceImpl implements UserGroupService { private static final Logger logger = Logger.getLogger(UserGroupServiceImpl.class); @Override public String createUserGroup(UserGroup userGroup) { logger.info("==========createUserGroup==========="); String url = WeChatInterface.CREATE_USER_GROUP.replace("ACCESS_TOKEN", WeChatCertificate.WECHAT_ACCESSTOKEN); return JsonUtil.getResp(url, "POST", new Gson().toJson(userGroup)); } @Override public String getAllGroup() { logger.info("==========getAllGroup==========="); String url = WeChatInterface.GET_ALL_GROUP.replace("ACCESS_TOKEN", WeChatCertificate.WECHAT_ACCESSTOKEN); return HttpUtil.getStringByGet(url); } @Override public String getGroupIdByOpenId(UserGroup userGroup) { logger.info("==========getGroupIdByOpenId==========="); String url = WeChatInterface.GET_GROUPID_BY_OPENID.replace("ACCESS_TOKEN", WeChatCertificate.WECHAT_ACCESSTOKEN); return JsonUtil.getResp(url, "POST", new Gson().toJson(userGroup)); } @Override public String updateGroupName(UserGroup userGroup) { logger.info("==========updateGroupName==========="); String url = WeChatInterface.UPDATE_GROUP_NAME.replace("ACCESS_TOKEN", WeChatCertificate.WECHAT_ACCESSTOKEN); return JsonUtil.getResp(url, "POST", new Gson().toJson(userGroup)); } @Override public String mobieUserInGroup(UserGroup userGroup) { logger.info("==========mobieUserInGroup==========="); String url = WeChatInterface.MOBIE_USER_IN_GROUP.replace("ACCESS_TOKEN", WeChatCertificate.WECHAT_ACCESSTOKEN); return JsonUtil.getResp(url, "POST", new Gson().toJson(userGroup)); } @Override public String mobieUsersInGroup(UserGroup userGroup) { logger.info("==========mobieUsersInGroup==========="); String url = WeChatInterface.MOBIE_USERS_IN_GROUP.replace("ACCESS_TOKEN", WeChatCertificate.WECHAT_ACCESSTOKEN); return JsonUtil.getResp(url, "POST", new Gson().toJson(userGroup)); } @Override public String deleteGroup(UserGroup userGroup) { logger.info("==========deleteGroup==========="); String url = WeChatInterface.DELETE_GROUP.replace("ACCESS_TOKEN", WeChatCertificate.WECHAT_ACCESSTOKEN); return JsonUtil.getResp(url, "POST", new Gson().toJson(userGroup)); } @Override public String setUserRemark(UserGroup userGroup) { logger.info("==========setUserRemark==========="); String url = WeChatInterface.SET_USER_REMARK.replace("ACCESS_TOKEN", WeChatCertificate.WECHAT_ACCESSTOKEN); return JsonUtil.getResp(url, "POST", new Gson().toJson(userGroup)); } @Override public String getUserInfo(String unionID) { logger.info("==========getUserInfo==========="); String url = WeChatInterface.GET_USER_INFO.replace("ACCESS_TOKEN", WeChatCertificate.WECHAT_ACCESSTOKEN).replace("OPENID", unionID); return HttpUtil.getStringByGet(url); } @Override public String getMostUserInfo(UserGroup userGroup) { logger.info("==========getMostUserInfo==========="); String url = WeChatInterface.GET_MOST_USER_INFO.replace("ACCESS_TOKEN", WeChatCertificate.WECHAT_ACCESSTOKEN); return JsonUtil.getResp(url, "POST", new Gson().toJson(userGroup)); } @Override public String getUserList(String next_openid) { logger.info("==========getUserList==========="); String url = WeChatInterface.GET_USER_LIST.replace("ACCESS_TOKEN", WeChatCertificate.WECHAT_ACCESSTOKEN).replace("NEXT_OPENID", next_openid); return HttpUtil.getStringByGet(url); }}
@RunWith(SpringJUnit4ClassRunner.class) // 表示继承了 SpringJUnit4ClassRunner 类@ContextConfiguration("classpath:spring-mybatis.xml")public class TestWXUserGroup { @Resource private UserGroupService userGroupService;// @Test public void createUserGroup() { UserGroup userGroup = new UserGroup(); UserGroup.Group group = userGroup.new Group(); group.setName("测试一"); userGroup.setGroup(group); System.out.println(">>>"+userGroupService.createUserGroup(userGroup)); }// @Test public void getAllGroup() { System.out.println(">>>"+userGroupService.getAllGroup()); }// @Test public void getGroupIdByOpenId() { UserGroup userGroup = new UserGroup(); userGroup.setOpenid(WeChatCertificate.OPENID1); System.out.println(">>>"+userGroupService.getGroupIdByOpenId(userGroup)); }// @Test public void updateGroupName() { UserGroup userGroup = new UserGroup(); UserGroup.Group group = userGroup.new Group(); group.setId("101"); group.setName("测试一"); userGroup.setGroup(group); System.out.println(">>>"+userGroupService.updateGroupName(userGroup)); }// @Test public void mobieUserInGroup() { UserGroup userGroup = new UserGroup(); userGroup.setOpenid(WeChatCertificate.OPENID1); userGroup.setTo_groupid("101"); System.out.println(">>>"+userGroupService.mobieUserInGroup(userGroup)); }// @Test public void mobieUsersInGroup() { UserGroup userGroup = new UserGroup(); userGroup.getOpenid_list().add(WeChatCertificate.OPENID1); userGroup.getOpenid_list().add(WeChatCertificate.OPENID2); userGroup.setTo_groupid("102"); System.out.println(">>>"+userGroupService.mobieUsersInGroup(userGroup)); }// @Test public void deleteGroup() { UserGroup userGroup = new UserGroup(); UserGroup.Group group = userGroup.new Group(); group.setId("100"); userGroup.setGroup(group); System.out.println(">>>"+userGroupService.deleteGroup(userGroup)); }// @Test public void setUserRemark() { UserGroup userGroup = new UserGroup(); userGroup.setOpenid(WeChatCertificate.OPENID1); userGroup.setRemark("伪君子"); System.out.println(">>>"+userGroupService.setUserRemark(userGroup)); }// @Test public void getUserInfo() { System.out.println(">>>"+userGroupService.getUserInfo(WeChatCertificate.OPENID1)); }// @Test public void getMostUserInfo() { UserGroup userGroup = new UserGroup(); UserGroup.User user1 = userGroup.new User(); user1.setOpenid(WeChatCertificate.OPENID1); user1.setLang("zh-CN"); userGroup.getUser_list().add(user1); UserGroup.User user2 = userGroup.new User(); user2.setOpenid(WeChatCertificate.OPENID2); user2.setLang("zh-CN"); userGroup.getUser_list().add(user2); System.out.println(">>>"+userGroupService.getMostUserInfo(userGroup)); }// @Test public void getUserList() { System.out.println(">>>"+userGroupService.getUserList("")); }}
0 0
- 微信开发八 用户管理
- 微信公众号开发(八)用户管理
- 微信公众号用户管理开发
- 微信公众平台开发(74) 用户分组管理
- 微信公众平台开发(74) 用户分组管理
- 微信公众平台开发文档 用户分组管理
- java微信开发API解析(五)-用户管理
- 微信公众号开发教程[013]-用户管理
- 飞哥教你微信公众号开发-6-用户管理
- 使用golang快速开发微信公众平台(八):获取用户二维码
- Java微信公众平台开发之用户管理(用户基本信息和关注列表)
- 获取微信公众号用户分组-php开发管理公众号用户
- Linux(八)用户管理
- PHP微信公众开发笔记(八)
- C#开发微信门户及应用(4)--关注用户列表及详细信息管理
- Senparc.Weixin.MP 微信公众平台开发教程(3) 用户管理
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(75)-微信公众平台开发-用户管理
- 微信开发笔记之-用户绑定
- SSM杰信商务平台项目day04
- Android-6.0之PMS安装APK上篇
- 数学之美系列好文,强烈推荐
- 文章标题
- Asking The Right Questions -- Note One: Find the issue and conclusion.
- 微信开发八 用户管理
- Django学习4-模板表达式
- Linux Ubuntu/Centos7 定时备份mysql数据库
- 用jq写轮播图(目前只是半成品)
- 如何用好 github 中的 watch、star、fork,转载mark
- bzoj 1079: [SCOI2008]着色方案 (记忆化搜索)
- Android-xml根布局-参数失效原因
- spring mvc 返回json实例
- 超级素数幂