133 lines
5.0 KiB
C#
133 lines
5.0 KiB
C#
using System;
|
|
using HRM.BO;
|
|
using Ease.Core.DataAccess;
|
|
using System.Data;
|
|
|
|
namespace HRM.DA
|
|
{
|
|
internal class DepartmentDA
|
|
{
|
|
private DepartmentDA()
|
|
{
|
|
}
|
|
|
|
#region Insert function
|
|
|
|
internal static void Insert(TransactionContext tc, Department item)
|
|
{
|
|
tc.ExecuteNonQuery(
|
|
"INSERT INTO Department(DepartmentID, code, description, parentID, parentsID, CreatedBy, CreationDate, SequenceNo, Status,TIRE, CostCenter,PayrollTypeID)" +
|
|
" VALUES(%n, %s, %s, %n, %s, %n, %d, %n, %n,%n, %s,%n)", item.ID, item.Code, item.Name, item.ParentID,
|
|
item.ParentsID, item.CreatedBy,
|
|
item.CreatedDate, item.Sequence, item.Status, item.Tier, item.CostCenter, item.PayrollTypeID);
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region Update function
|
|
|
|
internal static void Update(TransactionContext tc, Department item)
|
|
{
|
|
string sql = string.Empty;
|
|
sql = SQLParser.MakeSQL(
|
|
@"UPDATE Department SET code=%s, description=%s, parentID=%n, parentsID=%s, ModifiedBy=%n, ModifiedDate=%d, SequenceNo=%n, Status=%n,TIRE=%n, CostCenter=%s
|
|
WHERE DepartmentID=%n", item.Code, item.Name, item.ParentID, item.ParentsID, item.ModifiedBy,
|
|
item.ModifiedDate, item.Sequence, item.Status, item.Tier, item.CostCenter, item.ID);
|
|
tc.ExecuteNonQuery(sql);
|
|
}
|
|
|
|
internal static void UpdateCode(TransactionContext tc, Department item, string sCode)
|
|
{
|
|
string sSQL = SQLParser.MakeSQL("UPDATE Department Set code = %s Where DepartmentID = %n", sCode, item.ID);
|
|
tc.ExecuteNonQuery(sSQL);
|
|
}
|
|
|
|
internal static void UpdateCostCenter(TransactionContext tc, Department item)
|
|
{
|
|
string sSQL = SQLParser.MakeSQL("UPDATE Department Set CostCenter = %s Where DepartmentID = %n",
|
|
item.CostCenter.Trim(), item.ID);
|
|
tc.ExecuteNonQuery(sSQL);
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region GetFunction
|
|
|
|
internal static IDataReader GetParent(TransactionContext tc, EnumStatus status, int payrollTypeID)
|
|
{
|
|
if (EnumStatus.Active == status || EnumStatus.Inactive == status)
|
|
{
|
|
string sql =
|
|
SQLParser.MakeSQL(
|
|
"SELECT * FROM Department Where parentid is null and Status=%n Order By DESCRIPTION", status,
|
|
payrollTypeID);
|
|
return tc.ExecuteReader(sql);
|
|
}
|
|
else
|
|
{
|
|
return tc.ExecuteReader("SELECT * FROM Department Where parentid is null Order By DESCRIPTION",
|
|
payrollTypeID);
|
|
}
|
|
}
|
|
|
|
internal static IDataReader Get(TransactionContext tc, EnumStatus status, int payrollTypeID)
|
|
{
|
|
if (EnumStatus.Active == status || EnumStatus.Inactive == status)
|
|
{
|
|
return tc.ExecuteReader(
|
|
@"SELECT d.* FROM Department d where d.status=%n and d.PayrollTypeID=%n order by d.Description",
|
|
status, payrollTypeID);
|
|
}
|
|
else
|
|
{
|
|
return tc.ExecuteReader(
|
|
@"SELECT d.* FROM Department d Where d.PayrollTypeID=%n order by d.Description", payrollTypeID);
|
|
}
|
|
}
|
|
|
|
internal static IDataReader GetAllDepartment(TransactionContext tc, int payrollTypeID, EnumStatus status,
|
|
string code, string name)
|
|
{
|
|
string sqlClause = string.Empty;
|
|
sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("PayrollTypeID = %n", payrollTypeID);
|
|
if (EnumStatus.Active == status || EnumStatus.Inactive == status)
|
|
{
|
|
sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("status = %n", status);
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(code))
|
|
{
|
|
sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("Code = %s", code);
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(name))
|
|
{
|
|
sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("Name LIKE %s", ("%" + name + "%"));
|
|
}
|
|
|
|
return tc.ExecuteReader("SELECT * FROM Department %q order by Description", sqlClause);
|
|
}
|
|
|
|
internal static IDataReader Get(TransactionContext tc, int ID)
|
|
{
|
|
return tc.ExecuteReader("SELECT * FROM Department WHERE DepartmentID=%n", ID);
|
|
}
|
|
|
|
internal static IDataReader GetByDeptIds(TransactionContext tc, string deptIds)
|
|
{
|
|
return tc.ExecuteReader("SELECT * FROM Department where departmentId IN (%q)", deptIds);
|
|
}
|
|
|
|
internal static IDataReader GetAll(TransactionContext tc)
|
|
{
|
|
return tc.ExecuteReader("SELECT * FROM Department");
|
|
}
|
|
|
|
#endregion
|
|
|
|
internal static void Delete(TransactionContext tc, int ID)
|
|
{
|
|
tc.ExecuteNonQuery("DELETE FROM Department WHERE DepartmentID=%n", ID);
|
|
}
|
|
}
|
|
} |