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

OA系统

开发平台:

Java

  1. package com.gforce.gfoa;
  2. import com.gforce.currency.database.*;
  3. import com.gforce.currency.*;
  4. import java.util.*;
  5. /**
  6.  *
  7.  * <p>Title: 吉力科技办公自动化系统</p>
  8.  * <p>Description: 吉力科技办公自动化系统</p>
  9.  * <p>Copyright: 版权所有 2003 (c) 西安吉力科技发展有限公司  Copyright (c) 2003 GForce Sceince & Technology</p>
  10.  * <p>Company: 西安吉力科技发展有限公司 (GForce Sceince & Technology)</p>
  11.  * @author 王江涛
  12.  * @version 1.0
  13.  * 申请记录管理类
  14.  * Date 2003/09/03
  15.  */
  16. public class ApproveRecordManager
  17.     extends RecordManager {
  18.     public ApproveRecordManager() {
  19.     }
  20.     protected final static String TableName = "ApproveRecord"; //定义声明本类操作表名称
  21.     protected final static String IDFieldName = "ID"; //定义声明主键或者可以确定唯一记录的字段名称为“ID”,必须为自增整型
  22.     protected final static String[] NumericFieldsName = {"RecordID","ApproveUserID","IsAgreed","ApproveLevel"}; //声明数值型字段名称
  23.     protected final static String[] StringFieldsName = {"ApproveUserID","Content"}; //声明字符型字段名称
  24.     protected final static String[] DatetimeFieldsName = {"ApproveTime"}; //声明日期时间型字段名称
  25.     protected final static String[] TextFieldsName =     {}; //声明大字符串型字段名称
  26.     /**
  27.      * 根据字段名称获取插入数据时表单元素名称
  28.      * @param strFieldName  字段名称
  29.      * @return  表单素名称
  30.      */
  31.     protected String InsertParament(String strFieldName) {
  32.         return "" + strFieldName + ""; //可以根据需要加前缀、后缀
  33.     }
  34.     /**
  35.      * 根据字段名称获取修改数据时表单元素名称
  36.      * @param strFieldName  字段名称
  37.      * @return  表单素名称
  38.      */
  39.     protected String UpdateParament(String strFieldName) {
  40.         return "" + strFieldName + ""; //可以根据需要加前缀、后缀
  41.     }
  42.     /**
  43.      * 获取本类操作表名称
  44.      * @return  表名称
  45.      */
  46.     public String getTableName() { //获取本类操作表名称
  47.         return TableName;
  48.     }
  49.     protected String getIDFieldName() { //获取主键或者可以确定唯一记录的字段名称
  50.         return IDFieldName;
  51.     }
  52.     protected String[] getNumericFieldsName() { //获取数值型字段名称
  53.         return NumericFieldsName;
  54.     }
  55.     protected String[] getStringFieldsName() { //获取字符型字段名称
  56.         return StringFieldsName;
  57.     }
  58.     protected String[] getDatetimeFieldsName() { //获取日期时间型字段名称
  59.         return DatetimeFieldsName;
  60.     }
  61.     protected String[] getTextFieldsName() { //获取大字符串型字段名称
  62.         return TextFieldsName;
  63.     }
  64.     /**
  65.      * 获取所有的记录并按“RecordID”排序
  66.      *  @return 所有记录的数据集
  67.      */
  68.     public static Vector getAllRecord()
  69.     {
  70.         Vector vt = SQLManager.GetResultSet("SELECT * FROM " + TableName +
  71.                                             " ORDER BY RecordID");
  72.         return vt;
  73.     }
  74.     /**
  75.      * 根据用户获取审计记录
  76.      * @param iUserID 指定的用户ID
  77.      * @return 待审批数据集
  78.      */
  79.     public static Vector getRecordByUserID(int iUserID)
  80.     {
  81.       Vector vt = SQLManager.GetResultSet("SELECT * FROM " + TableName +
  82.                                           " Where (ApproveUserID = "+ iUserID +")And(ApproveTime is Null) ORDER BY ID");
  83.       return vt;
  84.     }
  85.     /**
  86.      * 获取指定申请记录的审批记录
  87.      * @param iRecordID  指定记录
  88.      * @param strApproveType 批准类型
  89.      * @return 审批记录数据集
  90.      */
  91.     public static Vector getRecordByRecordID(int iRecordID,String strApproveType)
  92.     {
  93.       Vector vt = SQLManager.GetResultSet("SELECT * FROM " + TableName +
  94.                                           " Where (RecordID = "+ iRecordID +") and ApproveType='" + strApproveType+ "' ORDER BY ID");
  95.       return vt;
  96.     }
  97.     /**
  98.      * 获取指定的申请记录是否已经有人审批
  99.      * @param iRecordID 指定的申请记录ID
  100.      * @return 是否已经审批。false:没有人审批;true:已有人审批。
  101.      */
  102.     public static boolean getISConfirmByRecordID(String strApproveType, int iRecordID)
  103.     {
  104.       boolean ISConfirm = false;
  105.       Vector vt = SQLManager.GetResultSet("SELECT * FROM " + TableName +
  106.                                           " Where (RecordID = " + iRecordID + ") And(ApproveType = '" + strApproveType + "') And (Not(ApproveTime is Null)) ORDER BY ID");
  107.         if (vt.size() > 0) ISConfirm = true;
  108.       return ISConfirm;
  109.     }
  110.     /**
  111.      * 增加审批记录
  112.      * @param strApproveType 审批类型
  113.      * @param iRecordID 记录ID
  114.      * @param iUserID 审批用户ID
  115.      * @param iApproveLevel 审批级别
  116.      * @return 错误代码
  117.      */
  118.     public static int insertApproveRecord(String strApproveType,int iRecordID,int iUserID,int iApproveLevel)
  119.     {
  120.       return SQLManager.ExcuteSQL("insert into " + TableName + " (ApproveType,RecordID,ApproveUserID,ApproveLevel) values('" + strApproveType + "'," + iRecordID + "," + iUserID + "," + iApproveLevel + ")");
  121.     }
  122.     /**
  123.      * 审批申请
  124.      * @param iRecordID 要审批的记录ID
  125.      * @param iUserID 审批用户
  126.      * @param iIsAgreed 是否同意
  127.      * @param strContent 审批意见
  128.      * @return 错误代码
  129.      */
  130.     public static int ExamineAndApprove(String strApproveType, int iRecordID,int iUserID, int iIsAgreed, String strContent)
  131.     {
  132.       java.util.Date t_Date = new java.util.Date();
  133.       String strConfirmDateTime = StringNew.GetDateString(t_Date, "yyyy-MM-dd HH:mm:ss");
  134.       return SQLManager.ExcuteSQL("UPDATE " + TableName + " SET IsAgreed = " + iIsAgreed + ", Content = '" + strContent
  135.                                   + "', ApproveTime = '" + strConfirmDateTime +
  136.                                   "' WHERE (RecordID = " + iRecordID + ")AND(ApproveUserID = " + iUserID + ")AND(ApproveType = '" + strApproveType +"')");
  137.     }
  138.     /**
  139.      * 删除指定父级记录ID和审批类型的审批记录
  140.      * @param iRecordID 父级记录ID
  141.      * @param strApproveType 审批类型
  142.      */
  143.     public static void delApproveRecord(int iRecordID,String strApproveType)
  144.     {
  145.       SQLManager.ExcuteSQL("Delete from " + TableName + " where RecordID=" + iRecordID + " and ApproveType='" + strApproveType + "'");
  146.     }
  147. }