FlowTacheInfoManager.java
上传用户:mingda
上传日期:2017-06-20
资源大小:27691k
文件大小:8k
源码类别:

OA系统

开发平台:

Java

  1. package com.gforce.gfoa;
  2. /**
  3.  * <p>Title: 吉力科技办公自动化系统</p>
  4.  * <p>Description: 吉力科技办公自动化系统</p>
  5.  * <p>Copyright: 版权所有 2003 (c) 西安吉力科技发展有限公司  Copyright (c) 2003 GForce Sceince & Technology</p>
  6.  * <p>Company: 西安吉力科技发展有限公司 (GForce Sceince & Technology)</p>
  7.  * @author 常兵
  8.  * @version 2.0
  9.  * DATE : 2003-12-10
  10.  * 流程环节信息管理类
  11.  */
  12. import com.gforce.currency.database.*;
  13. import java.util.*;
  14. import com.gforce.currency.*;
  15. public class FlowTacheInfoManager extends RecordManager
  16. {
  17.   public FlowTacheInfoManager()
  18.   {}
  19.   protected final static String TableName = "FlowTacheInfo"; //定义声明本类操作表名称
  20.   protected final static String IDFieldName = "ID"; //定义声明主键或者可以确定唯一记录的字段名称为“ID”,必须为自增整型
  21.   protected final static String[] NumericFieldsName = {"FlowID","UpdateUserID","IsRecordRead","RemindInterval","MaxWaitTime",
  22.                                                        "IsFromDefault","IsFinishedByRead"}; //声明数值型字段名称
  23.   protected final static String[] DatetimeFieldsName = {"UpdateTime"}; //声明日期时间型字段名称
  24.   protected final static String[] StringFieldsName = {"TacheName","FromTacheID","TacheStatus","TacheDescription",
  25.                                                       "ApproveUserIDs","TacheType","UpdateFromIP"}; //声明字符型字段名称
  26.   protected final static String[] TextFieldsName = {}; //声明大字符串型字段名称
  27.   /* * 根据字段名称获取插入数据时表单元素名称
  28.    * @param strFieldName  字段名称
  29.    * @return  表单素名称
  30.    */
  31.   protected String InsertParament(String strFieldName)
  32.   {
  33.       return "" + strFieldName + ""; //可以根据需要加前缀、后缀
  34.   }
  35.   /**
  36.    * 根据字段名称获取修改数据时表单元素名称
  37.    * @param strFieldName  字段名称
  38.    * @return  表单素名称
  39.    */
  40.   protected String UpdateParament(String strFieldName)
  41.   {
  42.       return "" + strFieldName + ""; //可以根据需要加前缀、后缀
  43.   }
  44.   /**
  45.    * 获取本类操作表名称
  46.    * @return  表名称
  47.    */
  48.   public String getTableName()
  49.   { //获取本类操作表名称
  50.       return TableName;
  51.   }
  52.   protected String getIDFieldName()
  53.   { //获取主键或者可以确定唯一记录的字段名称
  54.       return IDFieldName;
  55.   }
  56.   protected String[] getNumericFieldsName()
  57.   { //获取数值型字段名称
  58.       return NumericFieldsName;
  59.   }
  60.   protected String[] getStringFieldsName()
  61.   { //获取字符型字段名称
  62.       return StringFieldsName;
  63.   }
  64.   protected String[] getDatetimeFieldsName()
  65.   { //获取日期时间型字段名称
  66.       return DatetimeFieldsName;
  67.   }
  68.   protected String[] getTextFieldsName()
  69.   { //获取大字符串型字段名称
  70.       return TextFieldsName;
  71.   }
  72.   /**
  73.     * 获取符合指定条件的流程环节信息字段记录集
  74.     * @param strID 流程环节信息唯一标识
  75.     * @param strTacheName 环节名称
  76.     * @param strFromTacheID 来自环节ID
  77.     * @param strTacheStatus 环节状态
  78.     * @param strTacheDescription 环节描述
  79.     * @param strApproveUserIDs 审批用户IDs
  80.     * @param strTacheType 环节类型
  81.     * @param strFlowID 流程ID
  82.     * @param strFlowName 流程名称
  83.     * @param strUpdateUserName 更新用户ID
  84.     * @param strUpdateFromIP 更新来源IP地址
  85.     * @param strIsRecordRead 是否记录查阅
  86.     * @param strRemindInterval 提醒时间间隔
  87.     * @param strMaxWaitTime 最大停留时间
  88.     * @param strIsFromDefault 是否环节默认
  89.     * @param strIsFinishedByRead 查阅是否自动完成该环节
  90.     * @param strOrderBy 排序字段
  91.     * @param strIsDesc 是否降序排序
  92.     * @return 符合条件记录向量集
  93.   */
  94.  public static Vector getRecordBySearch(String strID,String strTacheName,String strFromTacheID,
  95.                                         String strTacheStatus,String strTacheDescription,
  96.                                         String strApproveUserIDs,String strTacheType,String strFlowID,String strFlowName,
  97.                                         String strUpdateUserName,String strUpdateFromIP,String strIsRecordRead,
  98.                                         String strRemindInterval,String strMaxWaitTime,String strIsFromDefault,
  99.                                         String strIsFinishedByRead,String strOrderBy,String strIsDesc)
  100.  {
  101.    String strSQL = "SELECT a.[ID],a.[TacheName],a.[FromTacheID],a.[TacheStatus],a.[TacheDescription]," +
  102.                    "a.[ApproveUserIDs],a.[TacheType],a.[FlowID],a.[UpdateUserID],a.[UpdateTime]," +
  103.                    "a.[UpdateFromIP],a.[IsRecordRead],a.[RemindInterval],a.[MaxWaitTime],a.[IsFromDefault]," +
  104.                    "a.[IsFinishedByRead],b.[FlowName],d.[Name] FROM [" + TableName + "] as a left outer join" +
  105.                    " [MoveFlowInfo] as b on (a.FlowID = b.ID) left outer join [UserInfo] as c on (a.UpdateUserID=c.ID)" +
  106.                   " left outer join [PersonnelInfo] as d on (c.PersonnelID=d.ID) WHERE a.[ID] > 0";
  107.    if (strID.trim().length()>0)
  108.     {
  109.       strSQL += " and (a.[ID] IN (" + strID + "))";
  110.     }
  111.    if (strTacheName.trim().length()>0)
  112.    {
  113.      strSQL += " and a.[TacheName] LIKE '%" + strTacheName + "%'";
  114.    }
  115.    if (strFromTacheID.trim().length()>0)
  116.    {
  117.      strSQL += " and a.[FromTacheID] LIKE '%" + strFromTacheID + "%'";
  118.    }
  119.    if (strTacheStatus.trim().length()>0)
  120.    {
  121.      strSQL += " and a.[TacheStatus] LIKE '%" + strTacheStatus + "%'";
  122.    }
  123.    if (strTacheDescription.trim().length()>0)
  124.    {
  125.      strSQL += " and a.[TacheDescription] LIKE '%" + strTacheDescription + "%'";
  126.    }
  127.    if (strApproveUserIDs.trim().length()>0)
  128.    {
  129.      strSQL += " and a.[ApproveUserIDs] LIKE '%" + strApproveUserIDs + "%'";
  130.    }
  131.    if (strTacheType.trim().length()>0)
  132.    {
  133.      strSQL += " and a.[TacheType] LIKE '%" + strTacheType + "%'";
  134.    }
  135.    if (strFlowID.trim().length()>0)
  136.    {
  137.      strSQL += " and (a.[FlowID] IN (" + strFlowID + "))";
  138.    }
  139.    if (strFlowName.trim().length()>0)
  140.    {
  141.      strSQL += " and b.[FlowName] LIKE '%" + strFlowName + "%'";
  142.    }
  143.    if (strUpdateUserName.trim().length()>0)
  144.    {
  145.      strSQL += " and (d.[Name] LIKE '%" + strUpdateUserName + "%')";
  146.    }
  147.    if (strUpdateFromIP.trim().length()>0)
  148.    {
  149.      strSQL += " and a.[UpdateFromIP] LIKE '%" + strUpdateFromIP + "%'";
  150.    }
  151.    if (strIsRecordRead.trim().length()>0)
  152.    {
  153.      if (strIsRecordRead.equalsIgnoreCase("True"))
  154.        strSQL += " and a.[IsRecordRead] = 1";
  155.      else if (strIsRecordRead.equalsIgnoreCase("False"))
  156.        strSQL += " and a.[IsRecordRead] = 0";
  157.    }
  158.    if (strRemindInterval.trim().length()>0)
  159.    {
  160.      strSQL += " and (a.[RemindInterval] IN (" + strRemindInterval + "))";
  161.    }
  162.    if (strMaxWaitTime.trim().length()>0)
  163.    {
  164.      strSQL += " and (a.[MaxWaitTime] IN (" + strMaxWaitTime + "))";
  165.    }
  166.    if (strIsFromDefault.trim().length()>0)
  167.    {
  168.      if (strIsFromDefault.equalsIgnoreCase("True"))
  169.        strSQL += " and a.[IsFromDefault] = 1";
  170.      else if (strIsFromDefault.equalsIgnoreCase("False"))
  171.        strSQL += " and a.[IsFromDefault] = 0";
  172.    }
  173.    if (strIsFinishedByRead.trim().length()>0)
  174.    {
  175.      if (strIsFinishedByRead.equalsIgnoreCase("True"))
  176.        strSQL += " and a.[IsFinishedByRead] = 1";
  177.      else if (strIsFinishedByRead.equalsIgnoreCase("False"))
  178.        strSQL += " and a.[IsFinishedByRead] = 0";
  179.    }
  180.    if (strOrderBy.trim().length() > 0)
  181.     {
  182.       if (strIsDesc.equalsIgnoreCase("True"))
  183.         strSQL += " Order by " + strOrderBy + " desc";
  184.       else
  185.         strSQL += " Order by " + strOrderBy + "";
  186.     }
  187.    Vector vt = SQLManager.GetResultSet(strSQL);
  188.    return vt;
  189.  }
  190.  /**
  191.   * 获取符合指定条件的流程环节信息字段记录集(重载getRecordBySearch方法,按ID主键返回)
  192.   * @param strID 流程环节信息唯一标识
  193.   * @return 符合条件记录向量集
  194.   */
  195.  public static Vector getRecordBySearch(String strID)
  196.  {
  197.    Vector vt = getRecordBySearch(strID,"","","","","","","","","","","","","","","","","");
  198.    return vt;
  199.  }
  200. }