我的部门领导脚本如下:
(function(){
var doc = getCurrentDocument();
var userId = getWebUser().getId();
println(userId);
var process = getDepartmentProcess();
println(process);
var rolename="办公室主任;副主席;副总经济师;主任;副主任;副部长;副总经理;总经理";//角色名称
var rolenames = rolename.split(";");
println(rolenames);
var deptname = doc.getItemValueAsString("申请部门2");
var userlist = createObject("java.util.ArrayList");
println(userlist);
var deptlist = process.getDepartmentByName(deptname,getDomainid());
println(deptlist);
for(var iter = deptlist.iterator();iter.hasNext();){
var dept = iter.next();
println(dept);
var deptid = dept.getId();
println(deptid);
for (var i = 0; i < rolenames.length; i++) {
var roleid=getRoleIdByName(rolenames); //根据角色名称获取角色id
println(roleid);
var users = getUsersByDptIdAndRoleId(deptid,roleid);
println(users);
for (var it=users.iterator(); it.hasNext();){
var user = it.next();
if(user!=null){
userlist.add(user);
}
}
}
}
return userlist;
})()
脚本改一下:var deptname = doc.getItemValueAsString("申请部门2"); 这里打印出来是什么,如果是部门ID的话,就不需要执行getDepartmentByName这个了。
(function(){
var doc = getCurrentDocument();
var userId = getWebUser().getId();
println(userId);
var process = getDepartmentProcess();
println(process);
var rolename="角色上级;角色1;角色2";//角色名称
var rolenames = rolename.split(";");
println(rolenames);
var deptname = doc.getItemValueAsString("xlk");
println("获取选中表单的部门---》"+deptname);
var userlist = createObject("java.util.ArrayList");
//var deptlist = process.getDepartmentByName(deptname,getDomainid());
//println("打印deptlist---》"+deptlist);
//for(var iter = deptlist.iterator();iter.hasNext();){
//var dept = iter.next();
//println(dept);
//var deptid = dept.getId();
//println("根据角色名称获取角色id--->"+deptid);
for (var i = 0; i < rolenames.length; i++) {
var roleid=getRoleIdByName(rolenames); //根据角色名称获取角色id
println("根据角色名称获取角色id--->"+roleid);
var users = getUsersByDptIdAndRoleId(deptname,roleid);
println("打印getUsersByDptIdAndRoleId的ID---》"+users);
for (var it=users.iterator(); it.hasNext();){
var user = it.next();
if(user!=null){
userlist.add(user);
}
}
}
//}
return userlist;
})()