⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 orgusermanageaction.java

📁 公司自己开发的工作流引擎
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
      throws Exception{
    WfUser user=new WfUser();
    user.setUserOrder(0);
    request.setAttribute("user_info",user);
    return mapping.findForward("user_manage");
  }

  /**
   * 修改用户
   */
  public ActionForward modifyUser(ActionMapping mapping,ActionForm form,
      HttpServletRequest request,HttpServletResponse response)
      throws Exception{

    Map extValueMap = new HashMap();
    String userId=request.getParameter("user_id")==null?"0":
        request.getParameter("user_id");

    WfUser userInfo = queryUser(userId,extValueMap);

    request.setAttribute("user_info",userInfo);
    request.setAttribute("ext_field_value_map",extValueMap);

    return mapping.findForward("user_manage");
  }

  /**
   * 删除用户,并未真正删除用户,只是置无效标志,将用户与部门、角色的关联删除
   */
  public ActionForward deleteUser(ActionMapping mapping,ActionForm form,
      HttpServletRequest request,HttpServletResponse response)
      throws Exception{
    String userId=request.getParameter("user_id")==null?"0":
        request.getParameter("user_id");
    SysManageHelper helper=new SysManageHelper();
    helper.deleteUser(userId);
    return mapping.findForward("user_delete_message");
  }

  /**
   * 将用户从当前部门中移出,只是将用户与部门的关联删除
   */
  public ActionForward deleteUserFromOrg(ActionMapping mapping,ActionForm form,
      HttpServletRequest request,HttpServletResponse response)
      throws Exception{
    String userId=request.getParameter("user_id")==null?"0":
        request.getParameter("user_id");
    String orgId=request.getParameter("org_id");
    SysManageHelper helper=new SysManageHelper();
    helper.deleteUserFromOrg(userId,orgId);
    return mapping.findForward("user_delete_from_org_message");
  }

  /**
   * 保存用户
   */
  public ActionForward saveUser(ActionMapping mapping,ActionForm form,
      HttpServletRequest request,HttpServletResponse response)
      throws Exception{
    try{
      SysManageHelper helper=new SysManageHelper();
      WfUser user=new WfUser();

      String userId=request.getParameter("user_id")==null?"":
          request.getParameter("user_id");
      String orgId=request.getParameter("org_id");
      String loginId=request.getParameter("login_id")==null?"":
          request.getParameter("login_id");
      String password=request.getParameter("password")==null?"":
          request.getParameter("password");
      String userCode=request.getParameter("user_code");
      String userName=request.getParameter("user_name");
      String userPosition=request.getParameter("user_position");
      String relaPhone=request.getParameter("rela_phone");
      String userOrder=request.getParameter("user_order")==null?"0":
          request.getParameter("user_order");
      String description=request.getParameter("description");
      String email=request.getParameter("e_mail");
      UserInfo userInfo = (UserInfo)request.getSession(false).getAttribute(FlowWebKeys.USER_SESSION);
      String creator = userInfo.getUserId();

      //================扩充用户字段====================
      List userExtFieldList = helper.getExtFieldList("user");
      fillInputValue(userExtFieldList,request);

      user.setExtFieldList(userExtFieldList);
      //==============================================

      user.setUserId(userId);
      user.setLoginId(loginId);
      user.setPassword(password);
      user.setUserCode(userCode);
      user.setUserName(userName);
      user.setUserPosition(userPosition);
      user.setRelaPhone(relaPhone);
      user.setUserOrder(Long.parseLong(userOrder));
      user.setDescription(description);
      user.setEmail(email);
      user.setCreator(creator);

      //若是新增用户,则先判断该用户是否已经存在
      if(user.getUserId() == null || "".equals(user.getUserId())){

        WfOrgRoleDAOAgent agent = new WfOrgRoleDAOAgent();
        WfCheckExistsResult checkResult = agent.checkWfUserExists(user);
        boolean isExists = checkResult.isIsExists();
        String resultDesc = checkResult.getResultDesc();
        WfUser existsUser = checkResult.getExistsUser();

        //若存在相同对象,则提示操作员
        if(isExists == true){
          request.getSession(false).setAttribute("current_input_user",user);
          request.getSession(false).setAttribute("exists_user",existsUser);
          request.getSession(false).setAttribute("input_org_id",orgId);

          request.setAttribute("user_info",existsUser);
          request.setAttribute("check_description",resultDesc);

          return mapping.findForward("exists_same_user");
        }
      }
      //若不存在相同用户,保存数据
      helper.saveUser(user,orgId);
    }
    catch(LoginIdConflictException ex){
      request.setAttribute("error_info",ex.getMessage());
    }
    return mapping.findForward("user_save_message");
  }

  /**
   * 取得选择用户主页面
   */
  public ActionForward addUserToOrg(ActionMapping mapping,ActionForm form,
      HttpServletRequest request,HttpServletResponse response)
      throws Exception{
    String orgId=request.getParameter("org_id");
    String selectedUserIds=request.getParameter("selected_user_ids")==null?"":
        request.getParameter("selected_user_ids");
    String[] ids=selectedUserIds.split(";");
    if(ids!=null&&ids.length>0){
      List userList=new ArrayList();
      for(int i=0;i<ids.length;i++){
        WfUser user=new WfUser();
        user.setUserId(ids[i]);
        userList.add(user);
      }
      SysManageHelper helper=new SysManageHelper();
      //保存数据
      helper.addUserToOrg(userList,orgId);
    }
    return mapping.findForward("add_user_to_org_message");
  }

  /**
   * 选择上级组织
   */
  public ActionForward selectParentOrg(ActionMapping mapping,ActionForm form,
      HttpServletRequest request,HttpServletResponse response)
      throws Exception{
    return mapping.findForward("select_parent_org");
  }

  private WfUser queryUser(String userId,Map extValueMap)throws Exception{
    SysManageHelper helper = new SysManageHelper();
    WfUser userInfo = helper.queryUserById(userId);

    if(userInfo != null){
      //保存扩展字段内容
      List extFieldList = userInfo.getExtFieldList();
      WfExtField extField = null;

      if(extFieldList != null && extFieldList.size() > 0){
        for(int i=0;i<extFieldList.size();i++){
          extField = (WfExtField)extFieldList.get(i);
          extValueMap.put(extField.getInputObjName(),extField.getFieldValue());
        }
      }
    }

    return userInfo;
  }

  public WfOrganization queryOrg(String orgId,Map extValueMap)throws Exception{
    SysManageHelper helper = new SysManageHelper();
    WfOrganization orgInfo = helper.queryOrgById(orgId);

    if(orgInfo != null){
      //保存扩展字段内容
      List extFieldList = orgInfo.getExtFieldList();
      WfExtField extField = null;

      if(extFieldList != null && extFieldList.size() > 0){
        for(int i=0;i<extFieldList.size();i++){
          extField = (WfExtField)extFieldList.get(i);
          extValueMap.put(extField.getInputObjName(),extField.getFieldValue());
        }
      }
    }

    return orgInfo;
  }

  /**
   *
   */
  public ActionForward confirmSaveUser(ActionMapping mapping,ActionForm form,
      HttpServletRequest request,HttpServletResponse response)
      throws Exception{
    String action = request.getParameter("action");
    String forward = "";

    if("look_current".equals(action)){       //查看最新录入的用户信息

      WfUser userInfo = (WfUser)request.getSession(false).getAttribute("current_input_user");
      Map extFieldValMap = this.getUserExtValMap(userInfo);

      request.setAttribute("user_info",userInfo);
      request.setAttribute("ext_field_value_map",extFieldValMap);

      forward = "user_info";
    }else if("look_history".equals(action)){  //查看历史存在的用户信息

      WfUser userInfo = (WfUser)request.getSession(false).getAttribute("exists_user");
      Map extFieldValMap = this.getUserExtValMap(userInfo);

      request.setAttribute("user_info",userInfo);
      request.setAttribute("ext_field_value_map",extFieldValMap);

      forward = "user_info";
    }else if("save_current".equals(action)){  //按最新录入的用户信息保存

      WfUser userInfo = (WfUser)request.getSession(false).getAttribute("current_input_user");
      String orgId = (String)request.getSession(false).getAttribute("input_org_id");

      logger.debug("confirm_org_id = " + orgId);

      SysManageHelper helper = new SysManageHelper();
      helper.saveUser(userInfo,orgId);

      forward = "user_save_message";
    }else if("save_history".equals(action)){

      //不做修改
    }

    return mapping.findForward(forward);
  }

  private Map getUserExtValMap(WfUser userInfo)throws Exception{
    Map extValueMap = new HashMap();

    if(userInfo != null){
      //保存扩展字段内容
      List extFieldList = userInfo.getExtFieldList();
      WfExtField extField = null;

      if(extFieldList != null && extFieldList.size() > 0){
        for(int i=0;i<extFieldList.size();i++){
          extField = (WfExtField)extFieldList.get(i);
          extValueMap.put(extField.getInputObjName(),extField.getFieldValue());
        }
      }
    }

    return extValueMap;
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -