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

OA系统

开发平台:

Java

  1. package com.gforce.gfoa;
  2. import com.gforce.currency.database.*;
  3. import java.util.*;
  4. import com.gforce.currency.*;
  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. public class AssetManager
  15.     extends RecordManager
  16. {
  17.     public AssetManager()
  18.     {
  19.     }
  20.     protected final static String TableName = "AssetInfo"; //定义声明本类操作表名称
  21.     protected final static String IDFieldName = "ID"; //定义声明主键或者可以确定唯一记录的字段名称为“ID”,必须为自增整型
  22.     protected final static String[] NumericFieldsName =
  23.         {"AddUserID", "AssetTypeID"}; //声明数值型字段名称
  24.     protected final static String[] StringFieldsName =
  25.         {"AssetName","AssetNumber"}; //声明字符型字段名称
  26.     protected final static String[] DatetimeFieldsName =
  27.         {"AddTime"}; //声明日期时间型字段名称
  28.     protected final static String[] TextFieldsName =
  29.         {}; //声明大字符串型字段名称
  30.     /**
  31.      * 根据字段名称获取插入数据时表单元素名称
  32.      * @param strFieldName  字段名称
  33.      * @return  表单素名称
  34.      */
  35.     protected String InsertParament(String strFieldName)
  36.     {
  37.         return "" + strFieldName + ""; //可以根据需要加前缀、后缀
  38.     }
  39.     /**
  40.      * 根据字段名称获取修改数据时表单元素名称
  41.      * @param strFieldName  字段名称
  42.      * @return  表单素名称
  43.      */
  44.     protected String UpdateParament(String strFieldName)
  45.     {
  46.         return "" + strFieldName + ""; //可以根据需要加前缀、后缀
  47.     }
  48.     /**
  49.      * 获取本类操作表名称
  50.      * @return  表名称
  51.      */
  52.     public String getTableName()
  53.     { //获取本类操作表名称
  54.         return TableName;
  55.     }
  56.     protected String getIDFieldName()
  57.     { //获取主键或者可以确定唯一记录的字段名称
  58.         return IDFieldName;
  59.     }
  60.     protected String[] getNumericFieldsName()
  61.     { //获取数值型字段名称
  62.         return NumericFieldsName;
  63.     }
  64.     protected String[] getStringFieldsName()
  65.     { //获取字符型字段名称
  66.         return StringFieldsName;
  67.     }
  68.     protected String[] getDatetimeFieldsName()
  69.     { //获取日期时间型字段名称
  70.         return DatetimeFieldsName;
  71.     }
  72.     protected String[] getTextFieldsName()
  73.     { //获取大字符串型字段名称
  74.         return TextFieldsName;
  75.     }
  76.     /**
  77.      * 获取所有资产记录集
  78.      * @return 所有资产记录集
  79.      */
  80.     public static Vector getAllRecord()
  81.     {
  82.         Vector vt = SQLManager.GetResultSet("Select * from " + TableName);
  83.         return vt;
  84.     }
  85.     /**
  86.      * 获取指定ID地记录
  87.      * @param iAssetID 指定地记录ID
  88.      * @return 记录数据集
  89.      */
  90.     public static Vector getByIDRecord(int iAssetID)
  91.     {
  92.         Vector vt = SQLManager.GetResultSet("Select * from " + TableName + " WHERE ID ='" + iAssetID +
  93.                                             "'");
  94.         return vt;
  95.     }
  96.     /**
  97.      * 获取指定资产类型记录集
  98.      * @param iAssetTypeID  资产类型ID
  99.      * @return 指定资产类型记录集
  100.      */
  101.     public static Vector getByAssetTypeIDRecord(int iAssetTypeID)
  102.     {
  103.         return getByAssetTypeIDRecord(iAssetTypeID + "");
  104.     }
  105.     /**
  106.      * 获取指定资产类型记录集
  107.      * @param strAssetTypeIDs  资产类型ID
  108.      * @return 指定资产类型记录集
  109.      */
  110.     public static Vector getByAssetTypeIDRecord(String strAssetTypeIDs)
  111.     {
  112.         Vector vt = SQLManager.GetResultSet("Select * from " + TableName + " WHERE AssetTypeID in(" + strAssetTypeIDs + ")");
  113.         return vt;
  114.     }
  115.     /**
  116.      * 获取指定ID的资产名称
  117.      * @param iAssetID  资产ID
  118.      * @return  资产名称
  119.      */
  120.     public static String getAssetNameByID(int iAssetID)
  121.     {
  122.         String strReturnValue = "未知资产";
  123.         Vector vt = SQLManager.GetResultSet("Select AssetName from " + TableName + " where ID=" + iAssetID);
  124.         if (vt.size() == 1)
  125.         {
  126.             strReturnValue = ( (Vector) vt.get(0)).get(0).toString();
  127.         }
  128.         return strReturnValue;
  129.       }
  130.       /**
  131.        * 获取指定ID的资产编号
  132.        * @param iAssetID  资产ID
  133.        * @return  资产名称
  134.        */
  135.       public static String getAssetNumberByID(int iAssetID)
  136.       {
  137.           String strReturnValue = "未知编号";
  138.           Vector vt = SQLManager.GetResultSet("Select AssetNumber from " + TableName + " where ID=" + iAssetID);
  139.           if (vt.size() == 1)
  140.           {
  141.               strReturnValue = ( (Vector) vt.get(0)).get(0).toString();
  142.           }
  143.           return strReturnValue;
  144.       }
  145.     /**
  146.      * 增加资产
  147.      * @param m_request 增加资产的request参数
  148.      * @return 增加资产是否成功。资产的ID(大于等于1)或者错误代码(小于1)
  149.      */
  150.     public int InsertRecord(Request m_request)
  151.     {
  152.         int iReturnValue = super.InsertRecord(m_request); //文档信息表插入数据
  153.         int iTypesID = m_request.GetInt("TypesID");
  154.         Vector vt = AssetFieldsManager.getByAssetTypeRecord(iTypesID);
  155.         if (vt.size() > 0)
  156.         {
  157.             for (int i = 0; i < vt.size(); i++)
  158.             {
  159.                 String strFieldType = ( (Vector) vt.get(i)).get(3).toString();
  160.                 String strFieldID = ( (Vector) vt.get(i)).get(0).toString();
  161.                 String strFieldValue = m_request.GetString("Name" + strFieldID);
  162.                 //文档字段值表插入数据
  163.                 SQLManager.ExcuteSQL("Insert AssetFieldsValue (AssetID,FieldID,FieldValue) Values (" + iReturnValue + "," + strFieldID + ",'" + strFieldValue + "')");
  164.              }
  165.         }
  166.         return iReturnValue;
  167.     }
  168.     /**
  169.      * 通过ID删除记录和资产得字段值
  170.      * @param intID ID值
  171.      * @return 错误代码,如果小于1,说明删除错误
  172.      */
  173.     public int DeleteByID(int intID)
  174.     {
  175.         AssetFieldsValueManager manager = new AssetFieldsValueManager();
  176.         manager.DeleteBySQLWhere("AssetID = "+intID);
  177.         return super.DeleteByID(intID);
  178.     }
  179.     /**
  180.      * 资产记录地修改
  181.      * @param m_request 页面修改地参数
  182.      * @return 修改是否成功地值
  183.      */
  184.     public int UpdateRecord(Request m_request)
  185.     {
  186.         int iReturnValue = super.UpdateRecord(m_request); //资产信息表修改数据
  187.         int iTypesID = m_request.GetInt("TypesID");
  188.         Vector vt = AssetFieldsManager.getByAssetTypeRecord(iTypesID);
  189.         if (vt.size() > 0)
  190.         {
  191.             for (int i = 0; i < vt.size(); i++)
  192.             {
  193.                 String strFieldType = ( (Vector) vt.get(i)).get(3).toString();
  194.                 String strFieldID = ( (Vector) vt.get(i)).get(0).toString();
  195.                 String strFieldValue = m_request.GetString("Name" + strFieldID);
  196.                 String strAssetID = m_request.GetString("ID");
  197.                 Vector vt1 = new Vector();
  198.                 vt1 = SQLManager.GetResultSet("Select * from AssetFieldsValue where (AssetID=" + strAssetID + " and FieldID=" + strFieldID + ")");
  199.                 if (vt1.size() > 0)
  200.                 {
  201.                   SQLManager.ExcuteSQL("UPDATE AssetFieldsValue SET FieldValue='" + strFieldValue + "' where (AssetID=" + strAssetID + " and FieldID=" + strFieldID + ")");
  202.                 }
  203.                 else
  204.                 {
  205.                   SQLManager.ExcuteSQL("Insert AssetFieldsValue (AssetID,FieldID,FieldValue) Values (" + strAssetID + "," + strFieldID + ",'" + strFieldValue + "')");
  206.                 }
  207.              }
  208.         }
  209.         return iReturnValue;
  210.     }
  211. }