获取在线用户

来源:互联网 发布:淘宝图文详情模板 编辑:程序博客网 时间:2024/05/21 16:58

//获取在线用户
    UserInfo userInfo = SysContext.getSysContext().getCurrentUserInfo();
    IObjectPK userPK = new ObjectUuidPK(userInfo.getId());
//根据组织范围获取在线用户
    List orgList = OrgRangeService.getCUOrgRange(null, userPK);

   OrgRangeService-》PermissionRangeHelper的getCUOrgRange方法
   public static List getCUOrgRange(Context ctx, IObjectPK userPK)
    throws BOSException, EASBizException
   {
    return getUserOrgId(ctx, userPK, OrgRangeType.BIZ_ORG_TYPE);
   }
   //获取用户组织范围
   public static List getUserOrgId(Context ctx, IObjectPK userPK, OrgRangeType orgType)
    throws BOSException, EASBizException
  {
    OrgRangeCollection fullOrgCol = getUserOrgRange(ctx, userPK, orgType);
List cuIdList = ToolUtils.transCol2ListByPeroperty(fullOrgCol, new IObjectCol2List()
    {
      public String getList(Object obj) {
        OrgRangeInfo orgInfo = (OrgRangeInfo)obj;
        return orgInfo.getOrg().getId().toString();
      }
    });
    return cuIdList;
  }

//获取在线用户集合UMRegistryCollection
 
  protected IUserMonitor getBizInterface() throws EASBizException {
    return UserMonitorFactory.getRemoteInstance();
  }
  UserMonitorFactory.getRemoteInstance()
如果ui的话,remote
;
如果facade,local
  UMRegistryCollection regs = ((UMRegistryCollection)getBizInterface().getCollectionByOrgRange(SysContext.getSysContext().getDcName(), orgList));
//UMRegistryCollection是UMRegistryInfo的集合
//UMRegistryInfo是在线用户 里面有用户Id,用户名称等等信息。

原创粉丝点击