134 lines
5.4 KiB
C#
134 lines
5.4 KiB
C#
|
using HRM.BO;
|
|||
|
using Ease.Core.DataAccess;
|
|||
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Data;
|
|||
|
|
|||
|
namespace HRM.DA
|
|||
|
{
|
|||
|
internal class SurveyDA
|
|||
|
{
|
|||
|
#region Constructor
|
|||
|
|
|||
|
private SurveyDA()
|
|||
|
{
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
#region Survey
|
|||
|
|
|||
|
#region Insert function
|
|||
|
|
|||
|
internal static void Insert(TransactionContext tc, Survey item)
|
|||
|
{
|
|||
|
tc.ExecuteNonQuery(
|
|||
|
"INSERT INTO Survey(SurveyID, CategoryID, Title, Description, FromDate, ToDate,IsForCelyStoped,IsPublished,CreatedBy,CreationDate,PublishDate,SurveyType,EstimatedTime,ActualTime,PASSMARK)" +
|
|||
|
" VALUES(%n, %n, %s, %s, %d, %d, %b,%b,%n,%d,%d,%n,%n,%n,%n)", item.ID, item.CategoryID, item.Title,
|
|||
|
item.Description, item.FromDate, item.ToDate, item.IsForCelyStoped, item.IsPublished, item.CreatedBy,
|
|||
|
item.CreatedDate, DataReader.GetNullValue(item.PublishDate), item.SurveyType,item.EstimatedTime,item.ActualTime,item.PassMark);
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
#region Update function
|
|||
|
|
|||
|
internal static void Update(TransactionContext tc, Survey item)
|
|||
|
{
|
|||
|
tc.ExecuteNonQuery(
|
|||
|
"UPDATE Survey SET CategoryID=%n, Title=%s, Description=%s, FromDate=%d, ToDate=%d,IsForCelyStoped=%b,IsPublished=%b,ModifiedBy=%n,ModifiedDate=%d,PublishDate=%d,SurveyType=%n" +
|
|||
|
" WHERE SurveyID=%n", item.CategoryID, item.Title, item.Description, item.FromDate, item.ToDate,
|
|||
|
item.IsForCelyStoped, item.IsPublished, item.ModifiedBy, item.ModifiedDate,
|
|||
|
DataReader.GetNullValue(item.PublishDate), item.SurveyType, item.ID);
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
#region Get Function
|
|||
|
|
|||
|
public static IDataReader Get(TransactionContext tc)
|
|||
|
{
|
|||
|
return tc.ExecuteReader("SELECT * FROM Survey");
|
|||
|
}
|
|||
|
|
|||
|
public static IDataReader GetByCategory(TransactionContext tc, int nCategoryId)
|
|||
|
{
|
|||
|
return tc.ExecuteReader("SELECT * FROM Survey WHERE CategoryId=%n", nCategoryId);
|
|||
|
}
|
|||
|
|
|||
|
public static IDataReader Get(TransactionContext tc, DateTime today)
|
|||
|
{
|
|||
|
return tc.ExecuteReader(
|
|||
|
"SELECT * from Survey WHERE %d BETWEEN FromDate AND ToDate AND IsPublished=1 AND IsForcelyStoped=0",
|
|||
|
today);
|
|||
|
}
|
|||
|
|
|||
|
//public static IDataReader Get(TransactionContext tc, Employee oEmp)
|
|||
|
//{
|
|||
|
// return tc.ExecuteReader("SELECT * from Survey");
|
|||
|
//}
|
|||
|
public static IDataReader GetByCategory(TransactionContext tc, int nCategoryId, DateTime fromDT, DateTime toDT)
|
|||
|
{
|
|||
|
return tc.ExecuteReader(
|
|||
|
"SELECT * FROM Survey WHERE CategoryId=%n and (FromDate>= %d and FromDate<= %d) OR( ToDate>= %d and ToDate<= %d)",
|
|||
|
nCategoryId, fromDT, toDT, fromDT, toDT);
|
|||
|
}
|
|||
|
|
|||
|
public static IDataReader GetByCategory(TransactionContext tc, DateTime fromDT, DateTime toDT)
|
|||
|
{
|
|||
|
return tc.ExecuteReader(
|
|||
|
"SELECT * FROM Survey WHERE (FromDate>= %d and FromDate<= %d) OR( ToDate>= %d and ToDate<= %d)", fromDT,
|
|||
|
toDT, fromDT, toDT);
|
|||
|
}
|
|||
|
|
|||
|
public static IDataReader GetQuestionsByCategoryId(TransactionContext tc,int categoryId)
|
|||
|
{
|
|||
|
return tc.ExecuteReader(
|
|||
|
"SELECT s.*,sc.DESCRIPTION SurveyCategory FROM SURVEY s INNER JOIN SURVEYCATEGORY sc ON sc.CATEGORYID = s.CATEGORYID WHERE s.categoryId=%n", categoryId);
|
|||
|
}
|
|||
|
|
|||
|
public static IDataReader GetIncompleteSurveys(TransactionContext tc, int empID, EnumSurveyType type,
|
|||
|
DateTime fromDT, DateTime toDT)
|
|||
|
{
|
|||
|
//if (type == EnumSurveyType.Self || type == EnumSurveyType.Managerial)
|
|||
|
// return tc.ExecuteReader("SELECT S.* FROM Survey S,SurveyEmployee SE WHERE SE.EmployeeId=%n and S.SurveyType=%n and S.SurveyId=SE.SurveyId and S.PublishFromDate between %d and %d", empID, (int)type, fromDT, toDT);
|
|||
|
//else
|
|||
|
return tc.ExecuteReader(
|
|||
|
"SELECT S.* FROM Survey S,SurveyEmployee SE WHERE SE.EmployeeId=%n and S.SurveyId=SE.SurveyId and S.PublishDate between %d and %d",
|
|||
|
empID, fromDT, toDT);
|
|||
|
}
|
|||
|
|
|||
|
public static IDataReader Get(TransactionContext tc, int nSurveyId)
|
|||
|
{
|
|||
|
return tc.ExecuteReader("SELECT * FROM Survey WHERE SurveyId=%n", nSurveyId);
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
#region Delete function
|
|||
|
|
|||
|
public static void Delete(TransactionContext tc, int nSurveyId)
|
|||
|
{
|
|||
|
SurveyQuestionDA.DeleteSurveyQuestion(tc, nSurveyId);
|
|||
|
SurveyEmployeeDA.DeleteSurveyEmployee(tc, nSurveyId);
|
|||
|
SurveyOrganizationDA.DeleteSurveyOrganization(tc, nSurveyId);
|
|||
|
tc.ExecuteNonQuery("DELETE FROM Survey WHERE SurveyId=%n", nSurveyId);
|
|||
|
}
|
|||
|
|
|||
|
public static void Publish(TransactionContext tc, Survey survey)
|
|||
|
{
|
|||
|
tc.ExecuteNonQuery("UPDATE Survey SET PublishDate=%d,IsPublished=%b WHERE SurveyId=%n",
|
|||
|
survey.PublishDate.Value, survey.IsPublished, survey.ID);
|
|||
|
}
|
|||
|
|
|||
|
public static void Stop(TransactionContext tc, Survey survey)
|
|||
|
{
|
|||
|
tc.ExecuteNonQuery("UPDATE Survey SET PublishDate=%d,IsPublished=%b,IsForCelyStoped=%b WHERE SurveyId=%n",
|
|||
|
DataReader.GetNullValue(survey.PublishDate), survey.IsPublished, survey.IsForCelyStoped, survey.ID);
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
#endregion
|
|||
|
}
|
|||
|
}
|