1.List lstAdminOrg = PermissionRangeHelper.getUserOrgId(null, new ObjectStringPK(userInfo.getId().toString()), OrgRangeType.BIZ_ORG_TYPE);
此方法可查询用户的业务组织,行政组织,管辖组织,合并范围四种类型的组织范围,通常利用String userOrg = ToolUtils.aryToStr(lstAdminOrg);转化为sql语句in后面的过滤条件拼接到sql 语句后使用。
此方法缺点是无法单独取财务组织,库存组织等具体到某一类的组织范围,如果用业务组织或行政组织,会查询出很多无用的数据,拼接到SQL语句后,会严重影响性能。
2.select forgid from t_pm_orgrange where fuserid = 'kQIeBngQSqS/JAcy2QpXeRO33n8=' and forgid in(select fid from T_ORG_Company)
此方法可以查询单独取到财务组织,库存组织等具体到某一类的组织范围,可以直接把上述语句拼接到sql语句in后面的过滤条件。能大大提高性能。