📄 paymanager.java
字号:
package com.gforce.gfoa;
import com.gforce.currency.database.*;
import java.util.*;
import com.gforce.currency.*;
/**
*
* <p>Title: 吉力科技办公自动化系统</p>
* <p>Description: 吉力科技办公自动化系统</p>
* <p>Copyright: 版权所有 2003 (c) 西安吉力科技发展有限公司 Copyright (c) 2003 GForce Sceince & Technology</p>
* <p>Company: 西安吉力科技发展有限公司 (GForce Sceince & Technology)</p>
* @author 王江涛
* @version 1.0
*/
public class PayManager
extends RecordManager
{
public PayManager()
{
}
protected final static String TableName = "PayInfo"; //定义声明本类操作表名称
protected final static String IDFieldName = "ID"; //定义声明主键或者可以确定唯一记录的字段名称为“ID”,必须为自增整型
protected final static String[] NumericFieldsName =
{"PersonnelID", "PayTypeID","PayYear","PayMonth","IsConfirmed","Pay"}; //声明数值型字段名称
protected final static String[] StringFieldsName =
{"ConfirmInfo"}; //声明字符型字段名称
protected final static String[] DatetimeFieldsName =
{}; //声明日期时间型字段名称
protected final static String[] TextFieldsName =
{}; //声明大字符串型字段名称
/**
* 根据字段名称获取插入数据时表单元素名称
* @param strFieldName 字段名称
* @return 表单素名称
*/
protected String InsertParament(String strFieldName)
{
return "" + strFieldName + ""; //可以根据需要加前缀、后缀
}
/**
* 根据字段名称获取修改数据时表单元素名称
* @param strFieldName 字段名称
* @return 表单素名称
*/
protected String UpdateParament(String strFieldName)
{
return "" + strFieldName + ""; //可以根据需要加前缀、后缀
}
/**
* 获取本类操作表名称
* @return 表名称
*/
public String getTableName()
{ //获取本类操作表名称
return TableName;
}
protected String getIDFieldName()
{ //获取主键或者可以确定唯一记录的字段名称
return IDFieldName;
}
protected String[] getNumericFieldsName()
{ //获取数值型字段名称
return NumericFieldsName;
}
protected String[] getStringFieldsName()
{ //获取字符型字段名称
return StringFieldsName;
}
protected String[] getDatetimeFieldsName()
{ //获取日期时间型字段名称
return DatetimeFieldsName;
}
protected String[] getTextFieldsName()
{ //获取大字符串型字段名称
return TextFieldsName;
}
/**
* 获取所有资产记录集
* @return 所有资产记录集
*/
public static Vector getAllRecord()
{
Vector vt = SQLManager.GetResultSet("Select * from " + TableName);
return vt;
}
/**
* 获取指定ID地记录
* @param iAssetID 指定地记录ID
* @return 记录数据集
*/
public static Vector getByIDRecord(int iAssetID)
{
Vector vt = SQLManager.GetResultSet("Select * from " + TableName + " WHERE ID ='" + iAssetID +
"'");
return vt;
}
/**
* 获取指定资产类型记录集
* @param iAssetTypeID 资产ID
* @return 指定资产类型记录集
*/
public static Vector getByAssetTypeIDRecord(int iAssetTypeID)
{
Vector vt = SQLManager.GetResultSet("Select * from " + TableName + " WHERE AssetTypeID ='" + iAssetTypeID +
"'");
return vt;
}
/**
* 获取工资表的年份月份
* @return 记录集
*/
public static Vector getYearMonthRecord()
{
Vector vt = SQLManager.GetResultSet("select distinct PayYear,PayMonth from "+ TableName +" order by PayYear,PayMonth");
return vt;
}
/**
* 获取工资类别指定年度、指定月份总和的统计
* @param iYear 年度
* @param iMonth 月份
* @return 统计结果
*/
public static Vector getSUMPayRecord(int iYear,int iMonth)
{
Vector vt = SQLManager.GetResultSet("Select SUM(Pay) as SumPay,PayTypeID from " + TableName + " Where (PayYear= "+ iYear +")and(PayMonth= "+ iMonth +") Group By PayTypeID Order By (Select OrderNumber From PayTypeInfo Where "+TableName+".PayTypeID = PayTypeInfo.ID) ");
return vt;
}
/**
* 生成月工资
* @param iYear 年份
* @param iMonth 月份
* @return 返回参数等于小于0失败,大于0成功。
*/
public static int BuildPay(int iYear,int iMonth)
{
int iReturn = 0;
String strPayYear = iYear + "";
String strPayMonth = iMonth + "";
String strIsConfirmed = "0";
String strConfirmInfo = "''";
Vector vBasePay = SQLManager.GetResultSet("select * from BasePayInfo");
if (vBasePay.size()>0)
{
for (int i=0;i<vBasePay.size();i++)
{
String strPersonnelID = ((Vector)vBasePay.get(i)).get(1).toString();
String strPayTypeID = ((Vector)vBasePay.get(i)).get(2).toString();
String strPay = ((Vector)vBasePay.get(i)).get(3).toString();
Vector vt = SQLManager.GetResultSet("select ID From " + TableName + " Where (PersonnelID = " + strPersonnelID
+ ") And (PayTypeID =" + strPayTypeID + ") And (PayYear=" + strPayYear
+ ") And (PayMonth=" + strPayMonth + ")");
if (vt.size() > 0)
{
//****************已有记录更新记录
iReturn = SQLManager.ExcuteSQL("UPDATE "+ TableName +" SET Pay = "+ strPay +" Where (PersonnelID = " + strPersonnelID
+ ") And (PayTypeID =" + strPayTypeID + ") And (PayYear=" + strPayYear
+ ") And (PayMonth=" + strPayMonth + ")");
}
else
{
//****************没有记录插入记录
iReturn = SQLManager.ExcuteSQL("Insert "+ TableName +" (PersonnelID,PayTypeID,Pay,PayYear,PayMonth,IsConfirmed,ConfirmInfo) Values ("
+ strPersonnelID +","+ strPayTypeID +","+ strPay +","+ strPayYear +","+ strPayMonth +","
+ strIsConfirmed +","+ strConfirmInfo +")");
}
}
}
return iReturn;
}
/**
* 获取指定员工、指定年度、指定月份的工资记录集
* @param iPersonnelID 员工ID
* @param iYear 年度
* @param iMonth 月份
* @return 工资记录集
*/
public static Vector getRecordByYearMonth(int iPersonnelID,int iYear,int iMonth)
{
Vector vt = SQLManager.GetResultSet("Select * from " + TableName + " Where (PayYear = "+iYear+") and (PayMonth= "+ iMonth +") and (PersonnelID= " + iPersonnelID + ") Order By (Select OrderNumber From PayTypeInfo Where "+TableName+".PayTypeID = PayTypeInfo.ID) ");
return vt;
}
/**
* 获取指定年度、指定月份所有员工工资记录集
* @param iYear 年度
* @param iMonth 月份
* @return 工资记录集
*/
public static Vector getRecordByYearMonth(int iYear,int iMonth)
{
Vector vt = SQLManager.GetResultSet("Select a.*,b.Number,b.Name from " + TableName + " as a left outer join PersonnelInfo as b on(a.PersonnelID=b.ID) left outer join PayTypeInfo as c on(a.PayTypeID=c.ID) Where (a.PayYear = "+iYear+") and (a.PayMonth= "+ iMonth +") Order By b.Number,c.OrderNumber");
return vt;
}
/**
* 清空所有记录
* @return 错误代码
*/
public static int DeleteAllPay()
{
int iReturn = 0;
iReturn = SQLManager.ExcuteSQL("Delete "+ TableName +"");
return iReturn;
}
/**
* 确认指定员工、指定年月工资
* @param iPersonnelID 员工ID
* @param iPayYear 工资年度
* @param iPayMonth 工资月份
* @param iIsConfirm 是否确认
* @param strConfirmInfo 确认信息
* @return 错误代码,大于0代表确认成功
*/
public static int confirmPay(int iPersonnelID,int iPayYear,int iPayMonth,int iIsConfirm,String strConfirmInfo)
{
Vector vt=SQLManager.GetResultSet("Select Top 1 * from " + TableName + " where PersonnelID=" + iPersonnelID + " and PayYear=" + iPayYear + " and PayMonth=" + iPayMonth + "");
if(vt.size()>0)
{
if(((Vector)vt.get(0)).get(6).toString().equalsIgnoreCase("true"))
{
/**
* 该月份工资已经确认
*/
return -7;
}
else
{
return SQLManager.ExcuteSQL("Update " + TableName + " set IsConfirmed = " + iIsConfirm + ", ConfirmInfo='"
+ strConfirmInfo + "' where PersonnelID=" + iPersonnelID + " and PayYear="
+ iPayYear
+ " and PayMonth=" + iPayMonth + "");
}
}
else
{
/**
* 要确认的工资不存在
*/
return -3;
}
}
/**
* 获取指定用户工资记录信息
* @param iUserID 用户ID
* @return 指定用户工资记录信息
*/
public static Vector getUserPay(int iUserID)
{
return SQLManager.GetResultSet("Select a.* from " + TableName + " as a left outer join UserInfo as b on (a.PersonnelID=b.PersonnelID) left outer join PayTypeInfo as c on(a.PayTypeID=c.ID) where b.ID = " + iUserID + " order by a.PayYear,a.PayMonth,c.OrderNumber");
}
/**
* 删除指定年度、指定月份所有员工工资记录集
* @param iYear 年度
* @param iMonth 月份
* @return 错误代码
*/
public static int delPayByYearMonth(int iYear,int iMonth)
{
return SQLManager.ExcuteSQL("Delete from " + TableName + " Where (PayYear = "+iYear+") and (PayMonth= "+ iMonth +")");
}
/**
* 将指定年度、指定月份所有员工工资记录保存为员工工资信息
* @param iYear 年度
* @param iMonth 月份
* @return 错误代码
*/
public static int updateBasePayByYearMonth(int iYear,int iMonth)
{
return SQLManager.ExcuteSQL("update BasePayInfo set Pay=b.Pay from BasePayInfo as a,PayInfo as b where a.PersonnelID=b.PersonnelID and a.PayTypeID=b.PayTypeID and b.PayMonth="+ iMonth +" and b.PayYear="+iYear+"");
}
/**
* 数据初始化
* @return 是否成功
*/
public static int Initalize()
{
int iOk = 1;
Vector vt = SQLManager.GetResultSet("Select ID from PayTypeInfo where ID Not in(select DISTINCT PayTypeID from " + TableName + ")");
if (vt.size()>0)
{
Vector vtPersonnel = PersonnelManager.getAllRecord();
for(int i=0;i<vt.size();i++)
{
for (int j = 0; j < vtPersonnel.size(); j++)
{
SQLManager.ExcuteSQL("Insert Into " + TableName + " (PayTypeID,PersonnelID,Pay) VALUES ("
+ ( (Vector) vt.get(i)).get(0).toString() + ","
+ ( (Vector) vtPersonnel.get(j)).get(0).toString() + ",0)");
}
}
}
return iOk;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -