import me.chanjar.weixin.mp.bean.result.WxMpUserList; //导入依赖的package包/类
/**
* 拉取公众平台用户列表
*/
public static void getMpUserList() throws WxErrorException {
MainWindow.mainWindow.getMemberTabImportProgressBar().setIndeterminate(true);
WxMpService wxMpService = PushManage.getWxMpService();
WxMpUserList wxMpUserList = wxMpService.getUserService().userList(null);
PushManage.console("关注该公众账号的总用户数:" + wxMpUserList.getTotal());
PushManage.console("拉取的OPENID个数:" + wxMpUserList.getCount());
MainWindow.mainWindow.getMemberTabImportProgressBar().setIndeterminate(false);
MainWindow.mainWindow.getMemberTabImportProgressBar().setMaximum((int) wxMpUserList.getTotal());
int importedCount = 0;
List openIds = wxMpUserList.getOpenids();
PushData.allUser = Collections.synchronizedList(new ArrayList<>());
PushData.allUser.addAll(openIds);
importedCount += wxMpUserList.getCount();
MainWindow.mainWindow.getMemberTabCountLabel().setText(String.valueOf(importedCount));
MainWindow.mainWindow.getMemberTabImportProgressBar().setValue(importedCount);
while (StringUtils.isNotEmpty(wxMpUserList.getNextOpenid())) {
wxMpUserList = wxMpService.getUserService().userList(wxMpUserList.getNextOpenid());
PushManage.console("拉取的OPENID个数:" + wxMpUserList.getCount());
if (wxMpUserList.getCount() == 0) {
break;
}
openIds = wxMpUserList.getOpenids();
PushData.allUser.addAll(openIds);
importedCount += wxMpUserList.getCount();
MainWindow.mainWindow.getMemberTabCountLabel().setText(String.valueOf(importedCount));
MainWindow.mainWindow.getMemberTabImportProgressBar().setValue(importedCount);
}
MainWindow.mainWindow.getMemberTabImportProgressBar().setValue((int) wxMpUserList.getTotal());
}