OThinker.Organization.IOrganization

类:OThinker.Organization.IOrganization

说明:
组织结构接口,用于增删改查组织结构信息,整个组织结构的索引是完全建立在内存索引的基础上的,所以相应会非常快

方法:GetUnit(System.String)

方法说明:
获取组织机构单元

名称

说明

UnitID

组织机构单元UnitID

返回值:
返回组织对象

方法:GetUserByCode(System.String)

方法说明:
根据用户编码获取用户信息

名称

说明

Code

用户编码

返回值:
返回用户

方法:.GetJobByCode(System.String)

方法说明:
根据角色编码获取角色信息

名称

说明

Code

角色编码

返回值:
返回角色

方法:.GetCalendarReferences(System.String)

方法说明:
获取所有工作日历的组织单元

名称

说明

CalendarID

工作日历ID

返回值:
组织机构单元集合

方法:.GetCategoryReferences(System.String)

方法说明:
根据类型编码获取绑定的组织单元集合

名称

说明

CategoryCode

组织类型编码

返回值:
返回组织单元集合

方法:.GetAllUnits(OThinker.Organization.UnitType)

方法说明:
获取所有组织

名称

说明

UnitType

组织机构类型

返回值:

方法:.GetAllAdministrators

方法说明:
获取所有管理员

名称

说明

返回值:

方法:AddUnit(System.String,OThinker.Organization.Unit)

方法说明:
增加组织机构单元

名称

说明

Modifier

请求变更的人

Unit

组织机构单元对象

返回值:
返回添加结果

方法:UpdateUnit(System.String,OThinker.Organization.Unit)

方法说明:
更新组织机构单元

名称

说明

Modifier

请求变更的人

Unit

组织机构单元对象

返回值:
返回更新结果

方法:RemoveUnit(System.String,OThinker.Organization.Unit)

方法说明:
移除组织机构

名称

说明

Modifier

请求变更的人

Unit

组织机构单元对象

返回值:
返回移除结果

方法: SetUserIsAdministrator(System.String,System.String,System.Boolean)

方法说明:
设置用户是否管理员

名称

说明

Modifier

请求变更的人

UserID

用户ID

IsAdministrator

是否管理员

方法:GetUnits(System.String[])

方法说明:
获取组织单元集合

名称

说明

UnitIDs

组织ID集合

返回值:
返回组织对象

方法: GetNames(System.String[])

方法说明:
获取组织的显示名称

名称

说明

UnitIDs

组织ID集合

返回值:
返回Dictionary{组织ID, 组织名称}的集合

方法: GetUnitLevel(System.String)

方法说明:
获取组织层级

名称

说明

UnitID

组织UnitID

返回值:
组织的层级

方法: GetFullNames(System.String[])

方法说明:
获取组织机构完整显示名称

名称

说明

UnitIDs

组织单元ID集合(只接受OU)

返回值:
返回组织机构完整显示名称

方法: GetName(System.String)

方法说明:
获取组织的显示名称

名称

说明

UnitID

组织UnitID

返回值:
组织的显示名称

方法: GetFullName(System.String)

方法说明:
获取完整的显示名称

名称

说明

UnitID

组织UnitID(只接受OU)

返回值:
组织的完整名称

方法:IsAncestor(System.String,System.String)

方法说明:
判断某一个单元是否是另外一个单元的祖先

名称

说明

ChildID

子孙ID

AncestorID

祖先ID

返回值:
如果是祖先关系则返回true,否则返回false

方法: GetParentUnit(System.String)

方法说明:
获得父对象

名称

说明

UnitID

组织的UnitID

返回值:
父组织

方法: GetParentUnitByLevel(System.String,System.Int32)

方法说明:
通过层次获得父对象

名称

说明

UnitID

子对象UnitID

Level

层次

返回值:
父对象

方法: GetParentUnitByCategoryCode(System.String,System.String)

方法说明:
通过组织类型获取父级组织

名称

说明

UnitID

子对象UnitID

CategoryCode

组织类型编码

返回值:
返回指定类型的父级组织单元

方法: QueryUserByParentID(System.String,OThinker.Organization.State,System.String,System.Int32)

方法说明:
查找用户

名称

说明

Keyword

搜索关键字

State

用户状态

ParentID

父节点ID

RowCount

返回最大结果数

返回值:
查询出的用户集合

方法: QueryUser(System.String,OThinker.Organization.State,System.Int32)

方法说明:
查找用户

名称

说明

Keyword

搜索关键字

State

用户状态

RowCount

返回最大结果数

返回值:
查询出的用户集合

方法:GetWorkflowCode(System.String)

方法说明:
获得某个组织对应的流程编码

名称

说明

UnitID

组织的UnitID

返回值:
流程实例的流水号的编码

方法:GetParents(System.String,OThinker.Organization.UnitType,System.Boolean,OThinker.Organization.State)

方法说明:
获取组织对象的上级对象(包含自己)

名称

说明

UnitID

组织对象UnitID

ParentUnitType

父级组织类型

Recursive

是否递归获取上级

State

父组织状态

返回值:
返回指定组织的上级组织ID集合

方法:GetParentUnits(System.String,OThinker.Organization.UnitType,System.Boolean,OThinker.Organization.State)

方法说明:
获取组织对象的上级对象(包含自己)

名称

说明

UnitID

组织对象ObjectID

ParentUnitType

父级组织类型

Recursive

是否递归获取上级

State

父组织状态

返回值:
返回指定组织的上级组织集合

方法:GetChildren(System.String,OThinker.Organization.UnitType,System.Boolean,OThinker.Organization.State)

方法说明:
获取子级OU信息(不包含自己)

名称

说明

UnitID

父级对象UnitID

ChildUnitType

子级组织类型

Recursive

是否递归获取

State

子组织状态

返回值:
返回指定组织的子级ID集合

方法:GetChildUnits(System.String,OThinker.Organization.UnitType,System.Boolean,OThinker.Organization.State)

方法说明:
获取子级OU信息(不包含自己该方法只适用于OUUserGroup

名称

说明

UnitID

父级对象UnitID

ChildUnitType

子级对象类型

Recursive

是否递归获取

State

子对象状态

返回值:
返回指定对象的子级

方法:GetMembers(System.String[],OThinker.Organization.State)

方法说明:
获取指定父组织下的所有成员

名称

说明

Parents

父组织的ID集合

State

状态条件,如果要所有状态的组织,可以使用Unspecified

返回值:
隶属于父组织的成员

方法:GetMemberUsers(System.String[],OThinker.Organization.State)

方法说明:
获取指定组织下的所有用户集合

名称

说明

Parents

父组织的ID集合

State

组织状态

返回值:
返回子成员用户集合

方法:GetOUManager(System.String)

方法说明:
获取指定组织对象所在OUOU经理

名称

说明

UnitID

指定组织UnitID(OU/User/Group)

返回值:
返回组织对象所在的OU经理

方法:GetOUManagers(System.String[])

方法说明:
获取指定组织对象所在OUOU经理集合

名称

说明

UnitIDs

指定组织ID(OU/User/Group)

返回值:
返回组织对象所在的OU经理

方法:GetManager(System.String)

方法说明:
获取指定组织对象的经理

名称

说明

UnitID

指定组织UnitID(OU/User/Group)

返回值:
返回组织对象的经理

方法:GetManagers(System.String[])

方法说明:
获取组织集合的经理

名称

说明

UnitIDs

组织ID集合

返回值:
返回组织集合的经理

方法:GetParent(System.String)

方法说明:
获取组织对象所在OUID(如果是OU,那么返回上级OUID)

名称

说明

UnitID

组织机构单元

返回值:
返回组织对象所在OUID

方法:GetManagerByUnitLevel(System.String,System.Int32)

方法说明:
获取指定组织层级的经理

名称

说明

UnitID

组织ID

Level

组织层级

返回值:
返回指定组织层级的经理

方法: GetManagersByUnitLevel(System.String[],System.Int32)

方法说明:
获取指定组织层级的经理集合

名称

说明

UnitIDs

组织ID集合

Level

组织层级

返回值:
返回指定组织层级的经理集合

方法: GetManagersByEmployeeRank(System.String[],System.Int32)

方法说明:
获取指定员工级别的经理(批量获取)

名称

说明

UnitIDs

组织ID集合

Level

员工级别

返回值:
返回指定员工级别的经理集合

方法:GetManagerByEmployeeRank(System.String,System.Int32)

方法说明:
获取指定员工级别的经理(单个)

名称

说明

UnitID

组织ID

Level

员工级别

返回值:
返回指定员工级别的经理集合

方法:GetManagersUntilLevel(System.String,System.Int32)

方法说明:
查找上级经理到满足某个指定的级别 例如职级是从小到大,当A职级是3时,找到职级是6的经理,那么会返回用户上级经理中职级是456的人员,当6级经理不存在,则返回职级是7的经理 职级是从大到小时,那么A的职级是3,找到职级是1的经理时,返回上级经理中职级是21的经理,如果1没有找到,那么返回职级是0的经理

名称

说明

UserID

查找的组织对象起点

EndLevel

结束的用户职级

返回值:
返回指定满足条件的上级经理集合

方法:GetSecretaryByUserID(System.String)

方法说明:
获取指定用户的秘书

名称

说明

UserID

指定的用户ID

返回值:
返回用户的秘书

方法:GetCalendarByUnitId(System.String)

方法说明:
获取组织单元工作日历,当前组织机构工作日历为空时则继续找父组织

名称

说明

UnitId

组织单元ID

返回值:
返回组织机构使用的工作日历

方法:IsAdministrator(System.String)

方法说明:
获取某个用户是否系统管理员

名称

说明

UserID

用户ID

返回值:
返回是否是系统管理员

方法:GetUsersByJobCode(System.String,System.String,System.String)

方法说明:
根据组织UnitID和角色编码获取到相关用户

名称

说明

UnitID

组织对象ID

JobCode

角色编码

CategoryCode

限定查找范围

返回值:
返回指定角色下的用户ID集合

方法:GetParentJobUsers(System.String,System.String,System.String)

方法说明:
根据用户角色编码获取上级角色用户

名称

说明

UserID

用户ID

JobCode

职务编码

CategoryCode

限定查找范围

返回值:
返回指定角色下的用户ID集合

方法:GetParentJobUsersUnitlLevel(System.String,System.String,System.Int32,System.String)

方法说明:
获取上级职务直到某个职务层级的用户集合

名称

说明

UserID

用户ID

JobCode

职务编码

EndLevel

结束的职务层级

CategoryCode

限定查找范围

返回值:
返回上级职务直到某个职务层级的用户集合

方法:GetParentJobUsersByLevelRange(System.String,System.String,System.Int32,System.Int32,System.String)

方法说明:
获取上级职务满足某个职务级别范围的职务用户集合

名称

说明

UserID

查找的组织对象起点

JobCode

职务编码

StartLevel

开始级别

EndLevel

结束级别

CategoryCode

限定查找范围

返回值:
返回指定用户级别范围的上级职务用户集合

方法: GetManagerByCategoryCode(System.String,System.String)

方法说明:
获取指定组织类型的经理

名称

说明

UnitID

组织ID

CategoryCode

组织类型编码

返回值:
返回经理集合

方法:GetManagersByCategoryCode(System.String[],System.String)

方法说明:
获取指定组织类型的经理集合

名称

说明

UnitIDs

组织ID集合

CategoryCode

组织类型编码

返回值:
返回指定类型组织的经理集合

方法:GetCategoryCodeByUnitID(System.String)

方法说明:
根据组织机构ID获取类型编码

名称

说明

UnitID

组织ID

返回值:

方法:.Reload

方法说明:
组织机构内存重载(注意:该方法会锁住整个引擎访问)

名称

说明

方法:.GetManagerByCategoryCode(System.String,System.String)

方法说明:
获取指定组织类型的经理

名称

说明

UnitID

组织ID

CategoryCode

组织类型编码

返回值:
返回经理集合

方法:.GetManagersByCategoryCode(System.String[],System.String)

方法说明:
获取指定组织类型的经理集合

名称

说明

UnitIDs

组织ID集合

CategoryCode

组织类型编码

返回值:
返回指定类型组织的经理集合

方法:.AddSignature(OThinker.Organization.Signature)

方法说明:
添加签章

名称

说明

Signature

签章

返回值:
如果添加成功,则返回true,否则返回false

方法:.RemoveSignature(System.String)

方法说明:
删除签章

名称

说明

SignatureId

签章的ID

方法:.SetSignatureState(System.String,OThinker.Organization.State)

方法说明:
设置签章的状态

名称

说明

SignatureId

签章ID

State

状态

方法:.SetDefaultSignature(System.String,System.Boolean)

方法说明:
设置为默认的签章

名称

说明

SignatureId

签章的ID

Default

是否是默认的

方法:.GetSignature(System.String)

方法说明:
获得签章

名称

说明

SignatureId

签章的ID

返回值:
签章信息

方法:.GetSignatures(System.String[])

方法说明:
获得签章

名称

说明

SignatureIds

签章的ID

返回值:
签章

方法:.GetSignaturesByUnit(System.String)

方法说明:
获得用户的所有签章

名称

说明

UnitId

组织的ID

返回值:
签章

方法:.GetSignatureByName(System.String,System.String)

方法说明:
通过名字获得签章

名称

说明

UnitId

组织的ID

Name

签章名称

返回值:
签章

方法:.GetSignatureNames(System.String)

方法说明:
获得用户所有签章的名称

名称

说明

UnitId

组织的ID

返回值:
签章

方法:.GetDefaultSignature(System.String)

方法说明:
获得默认的签章

名称

说明

UnitId

组织的ID

返回值:
默认签章的ID

方法:.GetAllOrgCategories

方法说明:
获取组织机构类型集合

名称

说明

返回值:
组织机构类型集合

方法:.AddOrgCategory(OThinker.Organization.OrgCategory)

方法说明:
增加组织机构类型

名称

说明

Category

组织类型

返回值:
返回创建是否成功

方法:.RemoveOrgCategory(System.String)

方法说明:
删除组织机构类型

名称

说明

CategoryID

组织类型ID

返回值:
返回删除是否成功

方法:.UpdateOrgCategory(OThinker.Organization.OrgCategory)

方法说明:
更新组织机构类型

名称

说明

Category

组织类型

返回值:
返回更新是否成功

方法:.ExistsOrgCategory(System.String)

方法说明:
获取组织类型名称是否已经存在

名称

说明

CategoryCode

组织类型编码

返回值:

方法:.Sync(System.String[],System.String,System.String,System.DateTime)

方法说明:
AD
组织同步

名称

说明

ADPathes

AD路径集合

ADUser

可读取AD权限的用户帐号

ADPassword

可读取AD权限的用户密码

LastSyncTime

上一次同步时间

返回值:
返回同步结果

方法:.AddFrequentlyUsedComment(OThinker.Organization.FrequentlyUsedComment)

方法说明:
增加用户的常用意见

名称

说明

Comment

常用意见

返回值:
返回创建是否成功

方法:.UpdateFrequentlyUsedComment(OThinker.Organization.FrequentlyUsedComment)

方法说明:
更新用户的常用意见

名称

说明

Comment

常用意见

返回值:
返回更新是否成功

方法:.RemoveFrequentlyUsedComment(System.String)

方法说明:
删除用户的常用意见

名称

说明

ObjectID

意见ID

返回值:

方法:.GetFrequentlyUsedComment(System.String)

方法说明:
获取单个意见信息

名称

说明

ObjectID

意见ID

返回值:
常用意见

方法:.GetFrequentlyUsedCommentsByUser(System.String)

方法说明:
获取用户的常用意见集合

名称

说明

UserID

用户ID

返回值:
常用意见集合

方法:.GetFrequentlyUsedCommentTextsByUser(System.String)

方法说明:
获取指定用户的常用意见集合

名称

说明

UserID

用户ID

返回值:
常用意见集合

方法:.GetCategoryByCode(System.String)

方法说明:
获取组织机构类型

名称

说明

CategoryCode

组织机构类型编码

返回值:
返回组织机构类型

方法:.GetCategoryByUnitID(System.String)

方法说明:
获取组织机构类型

名称

说明

UnitID

组织ID(用户、组或者OU)

返回值:
返回组织机构类型

方法:.SetOrganizationDim

方法说明:
填充组织机构平铺表,填充前需要删除数据

名称

说明