起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4407|回复: 8

[结贴] findOrgParentsByLevel 用法

[复制链接]

532

主题

2107

帖子

4308

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4308
发表于 2017-6-8 09:45:13 | 显示全部楼层 |阅读模式
版本: 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
微信截图_20170608094126.png
设置了level
比如目前我是3级部门(/江苏省电力设计院/信息部/计算机室/计算机)下的人。
我想获取当前人的一级部门名称(信息部)
首先得获取到组织机构OrgUnit
我用了:findOrgParentsByLevel(currentDeptID(),1,'=',false,false) 获取到了list
然后通过list获取名称。
但是效果不对,不能获取到信息部
firstOrgUnitFName(findOrgParentsByLevel(currentDeptID(),1,'=',false,false)) 我知道这里是sFNAME,不是sName。但关键是仍然不能获取正确层级的父。

是我用法有错?
及时结贴是个好习惯

532

主题

2107

帖子

4308

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4308
 楼主| 发表于 2017-6-8 09:56:06 | 显示全部楼层
本帖最后由 江苏院-吴昊 于 2017-6-8 10:22 编辑


我知道错误了。最后一个参数应该设为true。获取所有父。。

先不结贴,我又遇到问题了。
及时结贴是个好习惯
回复 支持 反对

使用道具 举报

532

主题

2107

帖子

4308

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4308
 楼主| 发表于 2017-6-8 10:26:47 | 显示全部楼层
有个函数叫firstOrgUnitFName
微信截图_20170608102419.png
我自定义一个firstOrgUnitName 微信截图_20170608102456.png

能过OrgUnit这个类的getFName获取fName
但是其getAttirbuteValue('sName'),获取的是null

我看api中OrgNode有个getName方法。
orgUnit能否转换为orgNode。我看api,这两个没有父子关系吧。

或者orgUnit怎么获取其他属性
及时结贴是个好习惯
回复 支持 反对

使用道具 举报

532

主题

2107

帖子

4308

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4308
 楼主| 发表于 2017-6-8 10:28:47 | 显示全部楼层
我也知道可以通过字符串截取fName来获取name,但这不是优雅的做法
及时结贴是个好习惯
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36069
发表于 2017-6-8 11:41:46 | 显示全部楼层
OrgUtils中提供了getNameByFName(String fid, String fname, String kind)
从下向上找,获取FName中指定节点类型的Name

有OrgUtil可以获取到fID,fName
然后获取Name
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

532

主题

2107

帖子

4308

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4308
 楼主| 发表于 2017-6-8 11:54:11 | 显示全部楼层
jishuang 发表于 2017-6-8 11:41
OrgUtils中提供了getNameByFName(String fid, String fname, String kind)
从下向上找,获取FName中指定节 ...

这个函数是查数据库,还是说字符串计算
及时结贴是个好习惯
回复 支持 反对

使用道具 举报

532

主题

2107

帖子

4308

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4308
 楼主| 发表于 2017-6-8 13:40:59 | 显示全部楼层
微信截图_20170608133644.png
微信截图_20170608133634.png

执行者表达式,如何获取岗位的人员成员?
例如信息部下有两个岗位信息部主任和副主任,我希望执行者表达式直接找到岗位下的两个人。
findOrgChildren2(firstOrgUnitFID(findOrgParentsByLevel(currentDeptID(),1,'=',false,true)),'org.sOrgKindID=''pos''',null,false,false,true)

我实现获取本部门的ID,然后通过level获取 一级部门(信息部)的OrgUnit,再取第一个Unit的Fid,然后给findOrgChildren函数,获取信息部下的子。
这里我指定了类型是pos,但是指定psm的话,会选出所有人吧

及时结贴是个好习惯
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36069
发表于 2017-6-8 14:10:26 | 显示全部楼层
findOrgUnitsHasCActivity
描述: 获取拥有当前环节权限的组织单元
        参数: {Object} inOrg 组织范围


        返回的组织单元必须在组织范围内; 允许三种情况:
        空值, 表示不限制范围;
        单个组织单元ID或FID(String类型);
        多个组织单元ID或FID(String类型)形成的List;
       
        参数: {Boolean} isPersonMember 是否取到人员成员
        返回值: {List<com.justep.system.opm.OrgUnit>}
        案例:
                        findOrgUnitsHasCActivity('', true);
                        findOrgUnitsHasCActivity('组织单元ID', false);
                        findOrgUnitsHasCActivity('组织单元FID', true);
                        findOrgUnitsHasCActivity(list('组织单元ID', '组织单元FID'), true);
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

532

主题

2107

帖子

4308

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4308
 楼主| 发表于 2017-6-13 10:56:47 | 显示全部楼层
jishuang 发表于 2017-6-8 14:10
findOrgUnitsHasCActivity
描述: 获取拥有当前环节权限的组织单元
        参数: {Object} inOrg 组织范围

结贴
及时结贴是个好习惯
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-25 12:37 , Processed in 0.065801 second(s), 27 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表