天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 2065|回复: 0

[源码] 修改用户默认部门【源码-用户默认部门】

[复制链接]
kimi 发表于 2013-9-22 08:28:53 | 显示全部楼层 |阅读模式
Q:用代码把用户的默认部门改成别的部门,例如把张三的默认部门行政部改为财务部
A:您好,您可以参考类似如下代码实现:

  1. var user=getUserByLoginno("aaaa");//根据用户帐号获取用户对象
  2. println(user+"     ======user=====");
  3. var udd =user.getDefaultDepartment(); //获取用户默认部门
  4. println(udd+"       =====udd用户默认部门======");
  5. var ndeptid =getCurrentDocument().getItemValueAsString("部门")//用户新默认部门id
  6. var userProcess =getUserProcess();
  7. var userid=new Array();
  8. userid[0]=user.getId();
  9. //首先要根据获取用户所属部门,如果已经有要添加到部门,那就不进行添加了。
  10. var detps=user.getDepartments(); //获取用户所属部门
  11. var value1="";
  12. for(var iter = datas.iterator();iter.hasNext();){
  13.         var dept1 = iter.next();
  14.                 if(dept1!=null){
  15.                      value1+=dept1.getId()+";";
  16.                 }
  17. }
  18. println(value1+"      ==========value1======");
  19. var rtn=value1.indexOf(ndeptid); //判断用户所属部门是否包含了新设置的默认部门
  20. println(rtn+"        =========rtn======");
  21. if(rtn==-1)
  22. {
  23.         println("11111111111");
  24.         userProcess.addUserToDept(userid,ndeptid);
  25.         println("2222222222");
  26. }
  27. if(ndeptid.trim().length()>0){
  28.       var user2= getUserById(user.getId());  //根据用户id获取最新属性的用户对象
  29.       user2.setDefaultDepartment(ndeptid);  //设置用户新的默认部门
  30.       println(user2+"         =======user2======");
  31.       userProcess.doUpdate(user2);
  32.      var userProcessWS=new Packages.cn.myapps.webservice.UserService();
  33.      var rtn2=userProcessWS.removeDepartment(user2.getId(),udd);  // 用户所属部门中,从旧的默认部门中移除
  34. }
复制代码

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 15:03

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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