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

📄 getorganizationinfodao.java

📁 公司自己开发的工作流引擎
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package cn.com.iaspec.workflow.organize.ext;

/**
 * <p>Title: 组织的实现类(二次开发)DAO </p>
 *
 * <p>Description: 深圳市劳动仲裁信息管理系统</p>
 *
 * <p>Copyright: Copyright (c) 2005</p>
 *
 * <p>Company: 永泰软件工程有限公司</p>
 *
 * @author syj
 * @version 1.0
 */
import java.sql.*;
import java.util.*;
import com.sunyard.sunflow.ext.organizationagent.participant.*;

public class GetOrganizationInfoDAO{

  /**
   * 得到组织的下一层子组织集
   * @param orgID String
   * @return Vector
   */
  public Vector getAllSubOrgsDAO(String orgID)
      throws GetOrganizationInfoException{
    Vector v=new Vector();
    ResultSet rs=null;
    java.sql.PreparedStatement prep=null;
    Connection conn=null;
    System.out.println("begin getAllSubOrgsDAO...");
    String sql="select * from wf_organization where up_org=?";
    try{
      conn=OrganizationDBControl.getConnection();
      prep=conn.prepareStatement(sql);
      prep.setString(1,orgID);
      rs=prep.executeQuery();
      while(rs.next()){
        ParticipantOrganization participantOrganization=new
            ParticipantOrganization(rs.getString("org_id"),
            rs.getString("org_name"),rs.getString("org_name"));
        v.add(participantOrganization);
      }

    }
    catch(SQLException e){
      e.printStackTrace();
      throw new GetOrganizationInfoException("得到组织的下一层子组织集异常。");
    }
    finally{
      OrganizationDBControl.releaseConnection(rs,prep,null,conn);
    }
    return v;
  }

  /**
   * 得到用户基本信息
   * @param userID String
   * @return UserInfo
   * @throws Exception
   * @throws GetUserInfoException
   */
  public UserInfo getHumanBasicInfoDAO(java.lang.String userId)
      throws GetUserInfoException,Exception{
    System.out.println("begin getHumanBasicInfoDAO...");
    System.out.println(" userId is:"+userId);
    ResultSet rs=null;
    java.sql.PreparedStatement prep=null;
    Connection conn=null;
    String user_id=null;
    String[] roleID=null; //个人拥有的角色集
    String[] orgID=null; //个人所属的组织集,包括父组织和祖先组织

    UserInfo userinfo=null;

    String sql="select * from wf_user where user_id=?";
    try{
      conn=OrganizationDBControl.getConnection();

      prep=conn.prepareStatement(sql);
      prep.setString(1,userId);
      rs=prep.executeQuery();
      while(rs.next()){
        user_id=rs.getString("user_id");
        roleID=(String[])getroleID(user_id,"Role_id");
        orgID=(String[])getroleID(user_id,"org_id");
        userinfo=new UserInfo(user_id,rs.getString("password"),
            rs.getString("user_name"),rs.getString("User_position"),"",
            rs.getString("rela_phone"),roleID,orgID,2l);
      }

    }
    catch(SQLException e){
      e.printStackTrace();
      throw new GetUserInfoException("得到用户基本信息异常。");
    }
    finally{
      OrganizationDBControl.releaseConnection(rs,prep,null,conn);

    }
    return userinfo;

  }

  /**
   * 取得个人拥有的角色集(组织集)
   * @param conn Connection
   * @param userID String
   * @return String[]
   */
  public String[] getroleID(String userID,String columnName)
      throws Exception{
    System.out.println("begin getroleID...");
    ResultSet rs=null;
    Connection conn=OrganizationDBControl.getConnection();
    PreparedStatement prep=null;
    String[] roleID=null;
    try{
      String sql="select * from wf_org_user_role where user_id=?";

      if(columnName.equals("Role_id")){
        sql="select * from wf_org_user_role where user_id=? and role_id!=0";
      }
      Vector v=new Vector();
      try{
        prep=conn.prepareStatement(sql);
        prep.setString(1,userID);
        rs=prep.executeQuery();
        while(rs.next()){
          v.add(rs.getString(columnName));
        }
        roleID=new String[v.size()];
        roleID=(String[])v.toArray(roleID);
      }
      catch(Exception e){
        e.printStackTrace();
        throw new GetUserInfoException("取得个人拥有的角色集(组织集)异常。");
      }
    }
    finally{
      OrganizationDBControl.releaseConnection(rs,prep,null,conn);
    }
    return roleID;
  }

  /**
   * 得到用户详细信息
   * @param userID String
   * @param pwd String
   * @return UserInfo
   * @throws Exception
   */
  public UserInfo getHumanDetailInfoDAO(java.lang.String login_id,
      java.lang.String pwd)
      throws java.lang.Exception{
    System.out.println("begin getHumanDetailInfoDAO...");
    System.out.println(" login_id is:"+login_id);
    ResultSet rs=null;
    java.sql.PreparedStatement prep=null;
    Connection conn=null;
    String userID="";
    String[] roleID=null; //个人拥有的角色集
    String[] orgID=null; //个人所属的组织集,包括父组织和祖先组织
    UserInfo userinfo=null;
    String sql="select * from wf_user where login_id=? and password=?";
    try{
      conn=OrganizationDBControl.getConnection();
      String md5Password=MD5Util.MD5Encode(login_id+pwd);
      prep=conn.prepareStatement(sql);
      prep.setString(1,login_id);
      prep.setString(2,md5Password);
      rs=prep.executeQuery();
      if(rs.next()){
        userID=rs.getString("user_id");
        roleID=(String[])getroleID(userID,"Role_id");
        orgID=(String[])getroleID(userID,"org_id");
        userinfo=new UserInfo(userID,rs.getString("password"),
            rs.getString("user_name"),rs.getString("User_position"),"@",
            rs.getString("rela_phone"),roleID,orgID,2l);
      }

    }
    catch(SQLException e){
      e.printStackTrace();
      throw new GetUserInfoException("得到用户详细信息异常。");
    }
    finally{
      OrganizationDBControl.releaseConnection(rs,prep,null,conn);

    }
    return userinfo;

  }

  /**
   * 得到某个组织下的直属角色集合
   * @par orgID String
           @return Vector
   * @throws Exception
   */
  public java.util.Vector getRolesByOrgDAO(java.lang.String orgID)
      throws java.lang.Exception{
    System.out.println("begin getRolesByOrgDAO...");
    Vector ve=new Vector();
    ResultSet rs=null;
    java.sql.PreparedStatement prep=null;

    Connection conn=null;

    String sql=
        "select * from wf_role where role_id in(select distinct role_id from"+
        "  wf_org_user_role where org_id=?)";
    try{
      conn=OrganizationDBControl.getConnection();
      prep=conn.prepareStatement(sql);
      prep.setString(1,orgID);
      rs=prep.executeQuery();
      while(rs.next()){
        ParticipantRole participantRole=new ParticipantRole(rs.getString(
            "role_id"),rs.getString("role_name"),rs.getString("role_desc"));
        ve.add(participantRole);
      }

    }
    catch(SQLException e){
      e.printStackTrace();
      throw new GetRoleInfoException("得到某个组织下的直属角色集合异常。");
    }
    finally{
      OrganizationDBControl.releaseConnection(rs,prep,null,conn);

    }

    return ve;
  }

  /**
   * 得到某个组织下的直属人员集合
   * @param orgID String
   * @return Vector
   * @throws Exception
   */
  public java.util.Vector getSubUsersByOrgDAO(java.lang.String orgID)
      throws java.lang.Exception{
    System.out.println("begin getSubUsersByOrgDAO...");
    Vector v=new Vector();
    ResultSet rs=null;
    java.sql.PreparedStatement prep=null;
    Connection conn=null;
    String sql="select * from wf_user  where user_id in(select user_id from"+
        " wf_org_user_role where org_id=? and role_id=0)";

    try{
      conn=OrganizationDBControl.getConnection();
      prep=conn.prepareStatement(sql);
      prep.setString(1,orgID);
      rs=prep.executeQuery();
      while(rs.next()){
        ParticipantHuman participantHuman=new ParticipantHuman(rs.getString(
            "user_id"),rs.getString("user_name"),rs.getString("User_position"),
            rs.getString("rela_phone"),"");
        v.add(participantHuman);
      }

    }
    catch(Exception e){
      e.printStackTrace();
      throw new GetUserInfoException("-得到某个组织下的直属人员集合异常。");
    }
    finally{
      OrganizationDBControl.releaseConnection(rs,prep,null,conn);

    }

    return v;
  }

  /**
   * 得到组织结构图中最顶层的组织列表,该接口为流程设计器所调用
   * @return Collection
   * @throws Exception
   */
  public java.util.Collection getTopLevelOrgsDAO()
      throws java.lang.Exception{
    System.out.println("begin getTopLevelOrgsDAO...");
    Vector v=new Vector();
    ResultSet rs=null;
    java.sql.PreparedStatement prep=null;
    Connection conn=null;
    String sql="select *  from wf_organization where up_org=0";

    try{

      conn=OrganizationDBControl.getConnection();
      prep=conn.prepareStatement(sql);
      rs=prep.executeQuery();
      while(rs.next()){
        ParticipantOrganization participantOrganization=new
            ParticipantOrganization(rs.getString("org_id"),
            rs.getString("org_name"),rs.getString("org_name"));
        v.add(participantOrganization);
      }

    }
    catch(Exception e){
      e.printStackTrace();
      throw new GetOrganizationInfoException("得到组织结构图中最顶层的组织列表异常。");
    }
    finally{
      OrganizationDBControl.releaseConnection(rs,prep,null,conn);

    }
    return v;
  }

  /**
   * 得到组织结构图中最顶层的组织列表,该接口为流程设计器所调用
   * @return Collection
   * @throws Exception
   */
  public java.util.Collection getDesignTopLevelOrgsDAO()
      throws java.lang.Exception{
    System.out.println("begin getTopLevelOrgsDAO...");
    Vector v=new Vector();
    //加入虚拟的部门,方便用户选择所有角色
    ParticipantOrganization parti=new ParticipantOrganization("-100","角色",
        "虚拟部门");
    v.add(parti);
    ResultSet rs=null;
    java.sql.PreparedStatement prep=null;
    Connection conn=null;
    String sql="select *  from wf_organization where up_org=0";

    try{

      conn=OrganizationDBControl.getConnection();
      prep=conn.prepareStatement(sql);
      rs=prep.executeQuery();
      while(rs.next()){
        ParticipantOrganization participantOrganization=new
            ParticipantOrganization(rs.getString("org_id"),
            rs.getString("org_name"),rs.getString("org_name"));
        v.add(participantOrganization);
      }

    }
    catch(Exception e){
      e.printStackTrace();
      throw new GetOrganizationInfoException("得到组织结构图中最顶层的组织列表异常。");
    }
    finally{
      OrganizationDBControl.releaseConnection(rs,prep,null,conn);

    }
    return v;
  }

⌨️ 快捷键说明

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