343 lines
10 KiB
C#
343 lines
10 KiB
C#
using System;
|
|
using Ease.Core.Model;
|
|
using Ease.Core.DataAccess;
|
|
using Ease.Core.Utility;
|
|
using System.Collections.Generic;
|
|
using HRM.BO;
|
|
using System.Data;
|
|
|
|
namespace HRM.DA
|
|
{
|
|
public class ReportColumnDefinitionService : ServiceTemplate
|
|
{
|
|
#region Constructor
|
|
|
|
public ReportColumnDefinitionService()
|
|
{
|
|
}
|
|
|
|
#endregion
|
|
|
|
private void MapObject(ReportColumnDefinition oReportColumnDefinition, DataReader dr)
|
|
{
|
|
base.SetObjectID(oReportColumnDefinition, dr.GetInt32("ReportColumnDefinitionId").Value);
|
|
oReportColumnDefinition.TableName = dr.GetString("TableName");
|
|
oReportColumnDefinition.ColumnName = dr.GetString("ColumnName");
|
|
oReportColumnDefinition.ColumnCode = dr.GetString("ColumnCode");
|
|
oReportColumnDefinition.Aggregate = dr.GetString("Aggregate");
|
|
oReportColumnDefinition.DataType = (ColumnDataTypeEnum)int.Parse(dr.GetString("DataType"));
|
|
oReportColumnDefinition.ColumnOrderBy = (OrderByEnum)int.Parse(dr.GetString("ColumnOrderBy"));
|
|
|
|
this.SetObjectState(oReportColumnDefinition, Ease.Core.ObjectState.Saved);
|
|
}
|
|
|
|
protected override T CreateObject<T>(DataReader dr)
|
|
{
|
|
ReportColumnDefinition oReportColumnDefinition = new ReportColumnDefinition();
|
|
MapObject(oReportColumnDefinition, dr);
|
|
return oReportColumnDefinition as T;
|
|
}
|
|
|
|
#region Comments
|
|
|
|
#endregion
|
|
|
|
#region Service Implementation
|
|
|
|
public void Save(ReportColumnDefinition rc)
|
|
{
|
|
try
|
|
{
|
|
TransactionContext tc = null;
|
|
try
|
|
{
|
|
#region Saving data
|
|
|
|
tc = TransactionContext.Begin(true);
|
|
|
|
if (rc.IsNew)
|
|
{
|
|
int newID = ReportColumnDefinitionDA.GenID(tc);
|
|
base.SetObjectID(rc, (newID));
|
|
ReportColumnDefinitionDA.Insert(tc, rc);
|
|
foreach (PickerDependancy dependancy in rc.Dependancys)
|
|
{
|
|
int newchildID = ReportColumnDefinitionDA.GenChildID(tc);
|
|
base.SetObjectID(dependancy, (newchildID));
|
|
ReportColumnDefinitionDA.InsertChild(tc, dependancy);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
ReportColumnDefinitionDA.Update(tc, rc);
|
|
ReportColumnDefinitionDA.DeleteByReportColumnID(tc, rc.ID);
|
|
foreach (PickerDependancy dependancy in rc.Dependancys)
|
|
{
|
|
int newchildID = ReportColumnDefinitionDA.GenChildID(tc);
|
|
base.SetObjectID(dependancy, (newchildID));
|
|
ReportColumnDefinitionDA.InsertChild(tc, dependancy);
|
|
}
|
|
}
|
|
|
|
tc.End();
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
#region Handle Exception
|
|
|
|
if (tc != null)
|
|
tc.HandleError();
|
|
|
|
throw new ServiceException(e.Message, e);
|
|
|
|
#endregion
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
throw new ServiceException(e.Message, e);
|
|
}
|
|
}
|
|
|
|
public void Delete(int columnID)
|
|
{
|
|
{
|
|
try
|
|
{
|
|
TransactionContext tc = null;
|
|
try
|
|
{
|
|
#region Deleting data
|
|
|
|
tc = TransactionContext.Begin(true);
|
|
ReportColumnDefinitionDA.DeleteByReportColumnID(tc, columnID);
|
|
ReportColumnDefinitionDA.Delete(tc, columnID);
|
|
|
|
tc.End();
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
#region Handle Exception
|
|
|
|
if (tc != null)
|
|
tc.HandleError();
|
|
|
|
throw new ServiceException(e.Message, e);
|
|
|
|
#endregion
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
throw new ServiceException(e.Message, e);
|
|
}
|
|
}
|
|
}
|
|
|
|
public ReportColumnDefinition Get(int columnID)
|
|
{
|
|
ReportColumnDefinition column;
|
|
|
|
TransactionContext tc = null;
|
|
try
|
|
{
|
|
#region Retrieving data
|
|
|
|
ConnectionContext ctx = new ConnectionContext("reportConnectionHandler1");
|
|
tc = TransactionContext.Begin(ctx);
|
|
|
|
DataReader iReader = new DataReader(ReportColumnDefinitionDA.Get(tc, columnID));
|
|
column = this.CreateObject<ReportColumnDefinition>(iReader);
|
|
iReader.Close();
|
|
iReader = new DataReader(ReportColumnDefinitionDA.GetChild(tc, column.ID));
|
|
column.Dependancys = this.CreateObjects<PickerDependancy>(iReader);
|
|
tc.End();
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
#region Handle Exception
|
|
|
|
if (tc != null)
|
|
tc.HandleError();
|
|
|
|
throw new ServiceException(e.Message, e);
|
|
|
|
#endregion
|
|
}
|
|
|
|
return column;
|
|
}
|
|
|
|
public List<ReportColumnDefinition> Get()
|
|
{
|
|
List<ReportColumnDefinition> items = null;
|
|
|
|
TransactionContext tc = null;
|
|
try
|
|
{
|
|
#region Retrieving data
|
|
|
|
tc = TransactionContext.Begin();
|
|
|
|
DataReader iReader = new DataReader(ReportColumnDefinitionDA.Get(tc));
|
|
items = this.CreateObjects<ReportColumnDefinition>(iReader);
|
|
iReader.Close();
|
|
foreach (ReportColumnDefinition column in items)
|
|
{
|
|
iReader = new DataReader(ReportColumnDefinitionDA.GetChild(tc, column.ID));
|
|
column.Dependancys = this.CreateObjects<PickerDependancy>(iReader);
|
|
iReader.Close();
|
|
}
|
|
|
|
tc.End();
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
#region Handle Exception
|
|
|
|
if (tc != null)
|
|
tc.HandleError();
|
|
|
|
throw new ServiceException(e.Message, e);
|
|
|
|
#endregion
|
|
}
|
|
|
|
return items;
|
|
}
|
|
|
|
public List<ReportColumnDefinition> SearchRCD(string searchString)
|
|
{
|
|
List<ReportColumnDefinition> items;
|
|
|
|
TransactionContext tc = null;
|
|
try
|
|
{
|
|
#region Retrieving data
|
|
|
|
tc = TransactionContext.Begin();
|
|
DataReader iReader = new DataReader(ReportColumnDefinitionDA.SearchRCD(tc, searchString));
|
|
items = this.CreateObjects<ReportColumnDefinition>(iReader);
|
|
iReader.Close();
|
|
foreach (ReportColumnDefinition column in items)
|
|
{
|
|
iReader = new DataReader(ReportColumnDefinitionDA.GetChild(tc, column.ID));
|
|
column.Dependancys = this.CreateObjects<PickerDependancy>(iReader);
|
|
iReader.Close();
|
|
}
|
|
|
|
tc.End();
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
#region Handle Exception
|
|
|
|
if (tc != null)
|
|
tc.HandleError();
|
|
|
|
throw new ServiceException(e.Message, e);
|
|
|
|
#endregion
|
|
}
|
|
|
|
return items;
|
|
}
|
|
|
|
public List<ReportColumnDefinition> GetBySubGroup(int subGroupID)
|
|
{
|
|
List<ReportColumnDefinition> items;
|
|
|
|
TransactionContext tc = null;
|
|
try
|
|
{
|
|
#region Retrieving data
|
|
|
|
tc = TransactionContext.Begin();
|
|
|
|
DataReader iReader = new DataReader(ReportColumnDefinitionDA.GetBySubGroup(tc, subGroupID));
|
|
items = this.CreateObjects<ReportColumnDefinition>(iReader);
|
|
iReader.Close();
|
|
foreach (ReportColumnDefinition column in items)
|
|
{
|
|
iReader = new DataReader(ReportColumnDefinitionDA.GetChild(tc, column.ID));
|
|
column.Dependancys = this.CreateObjects<PickerDependancy>(iReader);
|
|
iReader.Close();
|
|
}
|
|
|
|
tc.End();
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
#region Handle Exception
|
|
|
|
if (tc != null)
|
|
tc.HandleError();
|
|
|
|
throw new ServiceException(e.Message, e);
|
|
|
|
#endregion
|
|
}
|
|
|
|
return items;
|
|
}
|
|
|
|
public List<ReportColumnDefinition> GetByReport(int reportID)
|
|
{
|
|
List<ReportColumnDefinition> items;
|
|
|
|
TransactionContext tc = null;
|
|
try
|
|
{
|
|
#region Retrieving data
|
|
|
|
tc = TransactionContext.Begin();
|
|
|
|
DataReader iReader = new DataReader(ReportColumnDefinitionDA.GetByReport(tc, reportID));
|
|
items = this.CreateObjects<ReportColumnDefinition>(iReader);
|
|
|
|
tc.End();
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
#region Handle Exception
|
|
|
|
if (tc != null)
|
|
tc.HandleError();
|
|
|
|
throw new ServiceException(e.Message, e);
|
|
|
|
#endregion
|
|
}
|
|
|
|
return items;
|
|
}
|
|
|
|
//public void SetIDOfAllItem(IndexedBusinessObjects objects)
|
|
//{
|
|
// if (objects.Count > 0)
|
|
// {
|
|
// int i = 0;
|
|
// foreach (BusinessObject bo in objects)
|
|
// {
|
|
// base.SetObjectID(bo, (++i));
|
|
// }
|
|
// }
|
|
//}
|
|
|
|
#endregion
|
|
}
|
|
} |