# 选人组件
# 使用示例
使用ctpui2.0、ctpui3.0、ctpui4.0的页面可以使用这种方式调用选人组件:
$.selectPeople({
// 选人参数
type:'selectPeople',
panels:'Department,Post,Team,Node,BusinessDepartment',
selectType:'Member,Node',
maxSize:1,
minSize:1,
params : {
// 已选数据回填
value: "Member|12121,Department|2313",
text:"树琦、信创中心"
},
callback:function(ret){
// 选人确定回调
}
})
前端JSP使用完整示例代码:
<%--
Author shuqi
Rev
Date: 2022-03-09 22:46
Copyright (C) 2022 Seeyon, Inc. All rights reserved.
This software is the proprietary information of Seeyon, Inc.
Use is subject to license terms.
@company seeyon.com
@since V5 V8.1SP1
@author shuqi
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html>
<head>
<%@include file="/WEB-INF/jsp/common/common_header.jsp" %>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="renderer" content="webkit|ie-comp|ie-stand">
<title>ctpui 选人测试代码</title>
</head>
<body>
</body>
<%@include file="/WEB-INF/jsp/common/common_footer.jsp" %>
<script>
$(function(){
$.selectPeople({
type:'selectPeople',//固定
panels:'Department,Post,Team,Role',//定义显示的页签
selectType:'Member,Department',//定义可以选择那些类型的数据
params : {
// 已选数据回填
value: "Member|12121,Department|2313",
text:"树琦、信创中心"
},
callback:function(ret){
// 选人确定回调
console.log(ret.text);//"树琦、信创中心"
console.log(ret.value);//"Member|12121,Department|2313"
}
})
});
</script>
</html>
# Comp组件
这种使用方式和上一种是一样,只是页面渲染、事件绑定有ctpui自动完成。同样如果你愿意也可以动态生成input框,设置好属性并使用$("jQuerySelector").compThis();
示例如下:
<input
type="text"
class="comp" //固定
comp="type:'selectPeople',panels:'Department,Post,Team,Role',selectType:'Member,Department'" // 传入选人参数
/>
动态组件示例:
$(function(){
var $input = $("<input type='text' id='selectorgDemo1'/>");
$input.addClass("comp");
$input.attr("comp","type:'selectPeople',panels:'Department,Post,Team,Role',selectType:'Member,Department'");
$("body").append($input);
$input.compThis();
});
完整的页面示例:
<%--
Author shuqi
Rev
Date: 2022-03-09 22:46
Copyright (C) 2022 Seeyon, Inc. All rights reserved.
This software is the proprietary information of Seeyon, Inc.
Use is subject to license terms.
@company seeyon.com
@since V5 V8.1SP1
@author shuqi
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html>
<head>
<%@include file="/WEB-INF/jsp/common/common_header.jsp" %>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="renderer" content="webkit|ie-comp|ie-stand">
<title>ctpui 选人测试代码</title>
</head>
<body>
<input
type="text"
class="comp"
comp="type:'selectPeople',panels:'Department,Post,Team,Role',selectType:'Member,Department'"
/>
</body>
<%@include file="/WEB-INF/jsp/common/common_footer.jsp" %>
<script>
$(function(){
var $input = $("<input type='text' id='selectorgDemo1'/>");
$input.addClass("comp");
$input.attr("comp","type:'selectPeople',panels:'Department,Post,Team,Role',selectType:'Member,Department'");
$("body").append($input);
$input.compThis();
});
</script>
</html>
# V3x框架使用
如果你的页面使用的是v3x老框架,同样也可以使用选人。PS:v3x属于过时的老页面,建议尽快改完新框架
1、引入v3x命名空间
<%@ taglib uri="http://v3x.seeyon.com/taglib/core" prefix="v3x"%>
2、申明选人组件
提供的参数不全,可以通过扩展参数的方式设置。
<v3x:selectPeople
id="manager"
showMe="true"
panels="Department,Post,Level,Team"
selectType="Department,Post,Level,Team"
memberId=""
departmentId=""
postId=""
levelId=""
maxSize="1"
minSize="1"
selectNode4EdocWorkflow=""
showAllAccount=""
include=""
originalElements="Member|123"
jsFunction="setBulPeopleFields(elements,'managerUserIds','managerUserNames')"
maxSize="50"
></v3x:selectPeople>
3、扩展参数
如果需要设置全部参数,可以添加全局变量:参数名_组件Id = xxx_
如var onlyLoginAccount_manager=true
//支持的扩展参数
['accountId', 'departmentId', 'memberId', 'postId', 'levelId', 'elements', 'showOriginalElement', 'excludeElements', 'isNeedCheckLevelScope', 'onlyLoginAccount', 'showAccountShortname', 'showConcurrentMember', 'hiddenPostOfDepartment', 'hiddenRoleOfDepartment', 'hiddenMetadataOfDepartment', 'onlyCurrentDepartment', 'showDeptPanelOfOutworker', 'unallowedSelectEmptyGroup', 'showTeamType', 'hiddenOtherMemberOfTeam', 'hiddenAccountIds', 'isCanSelectGroupAccount', 'showAllOuterDepartment', 'hiddenRootAccount', 'hiddenGroupLevel', 'showDepartmentsOfTree', 'showDepartmentsNoChildrenOfTree', 'hiddenSaveAsTeam', 'hiddenMultipleRadio', 'showAdminTypes', 'includeElements', 'extParameters', 'showSecondMember', 'isAllowContainsChildDept', 'isCheckInclusionRelations', 'showRecent', 'notShowAccountRole']
//示例
var onlyLoginAccount_manager=true;
# Vue场景
vue要使用选人需要引入:${contextpath}/common/js/selectOrgSdk.js
selectOrgSdk.showSelectOrg({
panels: 'Department,JoinOrganization',
selectType: 'Member',
minSize: 0,
onlyLoginAccount: true,
targetWindow: getA8Top(),
params: {
value: _selectRoleIds
},
callback: function(ret) {
// 选人确定回调
console.log(ret.text);//"树琦、信创中心"
console.log(ret.value);//"Member|12121,Department|2313"
}
});
# Vjoin使用
$.SeeyonSelectPeople({
panels: 'Department,JoinOrganization',
selectType: 'Member',
minSize: 0,
onlyLoginAccount: true,
targetWindow: getA8Top(),
params: {
value: _selectRoleIds
},
callback: function(ret) {
$(thisDom).val(ret.text);
$(thisDom).parent().children(":first").val(ret.value);
}
});
# 选人界面参数
参数 | 字段类型 | 备注 |
---|---|---|
panels | string | 控制选人界面panel,多个“,”分隔 |
selectType | string | 控制选人界面可选类型,多个“,”分隔 |
alwaysShowPanels | string | 切换单位一直显示页签,多个“,”分隔 |
hiddenOnChanageAccountForOrgTeam | boolean | 切换单位隐藏机构组 ,默认true |
hiddenOnChanageAccountForExchangeAccount | boolean | 切换单位隐藏公文交换,默认true |
hiddenGroupLevel | boolean | 不显示集团职务界别页签,参数控制不显示,默认值为false |
showAccountPanel | boolean | 是否显示单位页签,默认为true, |
showDeptPanelOfOutworker | boolean | 编外人员显示单位、岗位、职位级别、角色、主数据,默认为false |
onlyShowChildrenAccount | boolean | 是否只显示子单位,默认false都显示(切换单位和单位树 ) |
showAllAccount | boolean | 是否显示全部单位,默认false |
showAccountIds | string | 指定显示单位,多个以“,”分隔,默认null |
hiddenAccountIds | string | 指定显示单位,多个以“,”分隔,默认null[已废弃] |
showRecent | boolean | 是否显示最近页签,默认为true |
allowSeachGroup | boolean | 是否允许全集团查询人员,缺省允许 true |
onlyLoginAccount | boolean | 是否只定位到指定的(accountId或者登陆单位)单位 |
accountId | long | 指定默认单位Id |
departmentId | long | 是否显示查询全集团的按钮 |
defaultUnitType | String | 默认组织类型 |
showOriginalElement | boolean | 是否回显原有数据,默认为true |
hiddenSaveAsTeam | boolean | 隐藏“另存为组”,默认为false |
maxSize | int | 最大可选择,默认为1000 |
minSize | int | 最小可选择,默认为1 |
hiddenMetadataOfDepartment | boolean | 是否隐藏部门下的人员属性 |
hiddenMemberOfDepartment | boolean | 隐藏部门下的人员选择框 |
hiddenRoleOfDepartment | boolean | 是否隐藏部门下的角色 |
hiddenPostOfDepartment | boolean | 是否隐藏部门下的岗位 |
showTeamType | "1,2,3" | 需要显示的组类型1-个人,2-系统,3-项目, 默认"",表示所有 |
showAdminTypes_${id} | "SystemAdmin,AuditAdmin,GroupAdmin ,AccountAdministrator,AccountAdministrator _-81232345" | 需要显示的管理员,如果不指定,表示显示所有 |
notShowAccountRole | boolean | (相对角色,表单控件下) 不显示单位角色,默认按照集团管理员勾选‘选人界面’的设置来。默认false |
notShowMetadataRole | boolean | (相对角色,表单控件下) 不显示主数据下的角色。默认false |
extParameters | string | 选人业务扩展参数。默认"" |
showRoleType | string | Account,Department 角色页签下显示什么类型的角色,默认显示所有,可以单独设置显示单位角色还是部门角色 |
orgMetadataTagTypes | string | 主数据显示支持类型,默认"Account,Department,Post,Member" |
showAccountShortname | string | 是否只一直显示登录简称,默认auto |
showConcurrentMember | boolean | 是否显示兼职人员(只外单位),默认true |
showSecondMember | boolean | 是否显示副岗人员(只外单位),默认true |
unallowedSelectEmptyGroup | boolean | 不允许选择空的组、部门,默认false |
isCanSelectGroupAccount | boolean | 是否可以选择集团单位,默认true |
alwaysShowBusiness | boolean | 总是显示的多维组织的id |
showDepartmentsOfTree | string | 部门Id,部门树上可以显示的部门 |
showSearchFunction | boolean | 组织机构选人界面定义的是否显示搜索功能 |
unallowedChangeBusinessAccount | boolean | 是否允许切换多维组织单位,默认为false |
currentBusinessAccount | string | 默认显示的多维组织单位id |
SingleChoice | boolean | 控制单位树、组织机构树是否为单选 |
showChild | boolean | 是否显示子树 |
excludeElementsBeyondMemberSize | string | 指定类型的元素,该元素下的人员超过指定大小后,不允许选择 默认为null,Department |
showDepartmentsNoChildrenOfTree | string | 部门页签下,显示当前部门和父级部门 |
isNeedCheckLevelScope | boolean | 是否需要进行职务级别校验,部门可见性校验由其决定 |
params | object | 上个页面回填的数据,如{value:"Member|122",text:"树琦"} |
returnValueNeedType | boolean | 返回值是否需要带类型,默认true,如果false则只返回Id,只用于单一选择 |
isConfirmExcludeSubDepartment | boolean | 默认值true,选择部门时,是否提示“是否包含子部门”,默认false即包含子部门 |
hiddenAddExternalAccount | boolean | 显示增加外部单位连接,默认false |
isAllowContainsChildDept | boolean | 在部门面板选择部门时,是否允许同时选择父部门和子部门,默认为false,不允许 |
isCheckInclusionRelations | boolean | 是否检查已选数据的包含关系,默认true |
isNotShowNoMemberConfirm | boolean | 是否不显示“xxx部门下无人,是否继续选择”的提示语,默认false,即显示 |
isNotCheckDuplicateData | boolean | 是否不检查重复数据,默认false,即检查 |
returnMemberWithDept | string | true |
isShowCheckboxIntree | boolean | 是否展示的树,允许复选框勾选,缺省不允许 false.单位树不受此开关控制 |
memberWithDeptInfo | string | 人员返回部门信息 |
isSelectUserDepartment | boolean | 部门页签是否默认选中用户所在部门 |
disabledAccountSelectorForOrgTeam | boolean | 禁用机构组的单位选择 |
disabledAccountSelectorForExchangeAccount | boolean | 禁用外部单位的单位选择 |
preReturnValueFun | string | 选择完后,点击确定时,需要进行回调该方法,参数为:传入所选对象的id |
excludeElements | list | 不在被选框中显示 默认为null |
includeElements | list | Element[] 备选的数据范围 |
showAllOuterDepartment | boolean | 是否显示所有的外部部门,默认false(按照自己的访问权限来) |
showGroupRole | boolean | 是个显示集团角色,默认为false @since 8.2 |
# 基础panel类型
code | PanelType | 名称 | 备注 |
---|---|---|---|
OrgRecent | ORG_RECENT | 最近 | |
Account | ORG_ACCOUNT | 单位 | |
OcipOrganization | OCIP_ORGANIZATION | OCIP | 需要OCIP插件 |
Department | ORG_DEPARTMENT | 部门 | |
BusinessAccount | ORG_BUSINESSACCOUNT | 多维组织单位 | 需要多维组织插件 |
BusinessDepartment | ORG_BUSINESSDEPARTMENT | 多维组织部门 | 需要多维组织插件 |
Team | ORG_TEAM | 组 | |
OrgTeam | EDOC_ORGTEAM | 机构组 | |
Post | ORG_POST | 岗位 | |
Level | ORG_LEVEL | 职务级别 | |
Node | ORG_NODE | 相对角色 | |
Outworker | ORG_OUTWORKER | 编外人员 | |
FormField | FORM_FIELD | 表单字段 | |
OrgMetadataTag | ORG_METADATATAG | 组织属性 | |
RelatePeople | ORG_RELATEPEOPLE | 关联人员 | |
Role | ORG_ROLE | 角色 | |
BusinessRole | ORG_BUSINESSROLE | 多为组织角色 | 需要多维组织插件 |
Admin | ORG_ADMIN | 管理员 | |
ExchangeAccount | EDOC_EXCHANGEACCOUNT | 公文外部单位 | |
WFDynamicForm | WF_DYNAMICFORM | 动态表流程 | |
WfSuperNode | WF_SUPER_NODE | 超级节点 | |
Guest | ORG_GUEST | Guest账号 | |
AppProperty | APPLINK_APPPROPERTY | 应用属性 | |
JoinOrganization | VJOIN_ORGANIZATION | Vjoin组织 | 需要vjoin插件 |
JoinAccount | VJOIN_ACCOUNT | Vjoin部门 | 需要vjoin插件 |
JoinPost | VJOIN_POST | Vjoin岗位 | 需要vjoin插件 |
JoinAccountTag | VJOIN_ACCOUNTTAG | Vjoin组织属性 | 需要vjoin插件 |
GovRoleStdSystemAdmin | ORG_GovRoleStdSystemAdmin | 系统管理员 | |
GovRoleStdSecretAdmin | ORG_GovRoleStdSecretAdmin | 安全管理员 | |
GovRoleStdAuditAdmin | ORG_GovRoleStdAuditAdmin | 审计管理员 | |
econtractForm | ECONTRACT_FORM | 电子合同 | |
Unit | ORG_UNIT | 组织机构:中石油 | 中石油添加 |
MemberMetadataTag | ORG_MEMBERMETADATATAG | 人员主数据 |
# 基础selectType类型
code | 名称 | 备注 |
---|---|---|
Member | 人员 | |
Department | 部门 | |
Account | 单位 | |
Role | 角色 | |
Post | 岗位 | |
Department_Post | 部门岗 | |
Level | 职务级别 | |
Team | 组 | |
Admin | 管理员 | |
Guest | 特殊账号 | |
OrgMetadataTag | 组织属性 | |
Unit | 组织机构:中石油 | |
Node | 相对角色 | |
FormField | 表单字段 | |
JoinAccountTag | vjoin组织扩展 | |
BusinessAccount | 多维组织 | |
BusinessDepartment | 多维组织部门 | |
BusinessRole | 多维组织角色 | |
BusinessDepartment_BusinessRole | 多维组织部门下角色 | |
ExchangeAccount | 外部单位 | |
OrgTeam | 机构组 | |
doc | 文档 | |
meeting | 会议 | |
meetingsummary | 会议纪要 | |
bulletin | 公告 | |
news | 新闻 | |
WF_SUPER_NODE | 流程超级节点 | |
WFDynamicForm | 审批路径表 | |
GovRoleStdSystemAdmin | 系统管理员 | |
GovRoleStdSecretAdmin | 安全管理员 | |
GovRoleStdAuditAdmin | 审计管理员 | |
econtractForm | 电子合同 |
编撰人:admin、het
← 三方JS注入JSP方案 数据国际化 →
