using System; using System.Collections.Generic; using System.Linq; using System.Text; using Ease.Core.DataAccess; using Ease.Core.Model; using Ease.Core.Utility; using HRM.BO; namespace HRM.DA { [Serializable] public class DAMasterService :ServiceTemplate, IDAMasterService { #region Map Functions private void MapObject(DAMaster oDAMaster, DataReader oReader) { base.SetObjectID(oDAMaster, oReader.GetInt32("DAMasterID").Value); oDAMaster.DACNote = oReader.GetString("DACNote"); oDAMaster.DACOMFileName = oReader.GetString("DACOMFileName"); oDAMaster.DAMCode = oReader.GetString("DAMCode"); oDAMaster.DAMDate = (oReader.GetDateTime("DAMDate") ?? DateTime.MinValue); oDAMaster.DAMFileName = oReader.GetString("DAMFileName"); oDAMaster.DAMNote = oReader.GetString("DAMNote"); oDAMaster.DAPRIFileName = oReader.GetString("DAPRIFileName"); oDAMaster.DCDate = (oReader.GetDateTime("DCDate") ?? DateTime.MinValue); oDAMaster.DPRIDate = (oReader.GetDateTime("DPRIDate") ?? DateTime.MinValue); oDAMaster.DACSheetFileName = oReader.GetString("DACSheetFileName"); oDAMaster.DACSheetNote = oReader.GetString("DACSheetNote"); oDAMaster.DCSheetDate = (oReader.GetDateTime("DCSheetDate") ?? DateTime.MinValue); this.SetObjectState(oDAMaster, Ease.Core.ObjectState.Saved); } protected override T CreateObject(DataReader oReader) { DAMaster oDAMaster = new DAMaster(); MapObject(oDAMaster, oReader); return oDAMaster as T; } #region Child Map #region DAEmployee Map private List CreateDAEmployeeObjects(DataReader oReader) { List oDAEmployees = new List(); while (oReader.Read()) { DAEmployee oDAEmployee = new DAEmployee(); MapDAEmployeeObject(oDAEmployee, oReader); oDAEmployees.Add(oDAEmployee); } return oDAEmployees; } private void MapDAEmployeeObject(DAEmployee oDaEmployee, DataReader oReader) { base.SetObjectID(oDaEmployee, oReader.GetInt32("DAEMPID").Value); oDaEmployee.NAME = oReader.GetString("NAME"); oDaEmployee.EMPLOYEENO = oReader.GetString("EMPLOYEENO"); oDaEmployee.DESIGNATION = oReader.GetString("DESIGNATION"); this.SetObjectState(oDaEmployee, Ease.Core.ObjectState.Saved); } #endregion #region DAComplain Map private List CreateDAComplainObjects(DataReader oReader) { List oDAComplains = new List(); while (oReader.Read()) { DAComplain oDAComplain = new DAComplain(); MapDAComplainObject(oDAComplain, oReader); oDAComplains.Add(oDAComplain); } return oDAComplains; } private void MapDAComplainObject(DAComplain oDaComplain, DataReader oReader) { base.SetObjectID(oDaComplain, oReader.GetInt32("DACompID").Value); oDaComplain.DAID = oReader.GetInt32("DAID").Value; oDaComplain.ComplainID = oReader.GetInt32("ComplainID").Value; this.SetObjectState(oDaComplain, Ease.Core.ObjectState.Saved); } #endregion #region DAEmpExplanation Map private List CreateDAEmpExplanationObjects(DataReader oReader) { List oDAEmpExplanations = new List(); while (oReader.Read()) { DAEmpExplanation oDAEmpExplanation = new DAEmpExplanation(); MapDAEmpExplanationObject(oDAEmpExplanation, oReader); oDAEmpExplanations.Add(oDAEmpExplanation); } return oDAEmpExplanations; } private void MapDAEmpExplanationObject(DAEmpExplanation oDAEmpExplanation, DataReader oReader) { base.SetObjectID(oDAEmpExplanation, oReader.GetInt32("DAExpID").Value); oDAEmpExplanation.DAID = oReader.GetInt32("DAID").Value; oDAEmpExplanation.DAEXNote = oReader.GetString("DAEXNote"); oDAEmpExplanation.DAEXDate = oReader.GetDateTime("DAEXDate").Value; oDAEmpExplanation.EmployeeID = oReader.GetInt32("EmployeeID").Value; oDAEmpExplanation.FileName = oReader.GetString("FileName"); this.SetObjectState(oDAEmpExplanation, Ease.Core.ObjectState.Saved); } #endregion #region DAPunishment Map private List CreateDAPunishmentObjects(DataReader oReader) { List oDAPunishments = new List(); while (oReader.Read()) { DAPunishment oDAPunishment = new DAPunishment(); MapDAPunishmentObject(oDAPunishment, oReader); oDAPunishments.Add(oDAPunishment); } return oDAPunishments; } private void MapDAPunishmentObject(DAPunishment oDAPunishment, DataReader oReader) { base.SetObjectID(oDAPunishment, oReader.GetInt32("DAPID").Value); oDAPunishment.DAID = oReader.GetInt32("DAID").Value; oDAPunishment.DAPDate = oReader.GetDateTime("DAPDate").Value; oDAPunishment.DAPFromDate = oReader.GetDateTime("DAPFromDate").Value; oDAPunishment.DAPNote = oReader.GetString("DAPNote"); oDAPunishment.DAPToDate = oReader.GetDateTime("DAPToDate").Value; oDAPunishment.EmployeeID = oReader.GetInt32("EmployeeID").Value; oDAPunishment.DAPFileName = oReader.GetString("DAPFileName"); this.SetObjectState(oDAPunishment, Ease.Core.ObjectState.Saved); } #endregion #region DAComEmp Map private List CreateDAComEmpObjects(DataReader oReader) { List oDAComEmps = new List(); while (oReader.Read()) { DAComEmp oDAComEmp = new DAComEmp(); MapDAComEmpObject(oDAComEmp, oReader); oDAComEmps.Add(oDAComEmp); } return oDAComEmps; } private void MapDAComEmpObject(DAComEmp oDAComEmp, DataReader oReader) { base.SetObjectID(oDAComEmp, oReader.GetInt32("DACEID").Value); oDAComEmp.DAID = oReader.GetInt32("DAID").Value; oDAComEmp.EmployeeID = oReader.GetInt32("EMPLOYEEID").Value; this.SetObjectState(oDAComEmp, Ease.Core.ObjectState.Saved); } #endregion #region DAPEmployee Map private List CreateDAPEmployeeObjects(DataReader oReader) { List oDAPEmployees = new List(); while (oReader.Read()) { DAPEmployee oDAPEmployee = new DAPEmployee(); MapDAPEmployeeObject(oDAPEmployee, oReader); oDAPEmployees.Add(oDAPEmployee); } return oDAPEmployees; } private void MapDAPEmployeeObject(DAPEmployee oDAPEmployee, DataReader oReader) { base.SetObjectID(oDAPEmployee, oReader.GetInt32("DAPEID").Value); oDAPEmployee.DAID = oReader.GetInt32("DAID").Value; oDAPEmployee.EmpID = oReader.GetInt32("EmpID").Value; oDAPEmployee.PID = oReader.GetInt32("PID").Value; oDAPEmployee.PunishmentID = oReader.GetInt32("PunishmentID").Value; this.SetObjectState(oDAPEmployee, Ease.Core.ObjectState.Saved); } #endregion #region DAPRIEmp Map private List CreateDAPRIEmpObjects(DataReader oReader) { List oDAPRIEmps = new List(); while (oReader.Read()) { DAPRIEmp oDAPRIEmp = new DAPRIEmp(); MapDAPRIEmpObject(oDAPRIEmp, oReader); oDAPRIEmps.Add(oDAPRIEmp); } return oDAPRIEmps; } private void MapDAPRIEmpObject(DAPRIEmp oDAPRIEmp, DataReader oReader) { base.SetObjectID(oDAPRIEmp, oReader.GetInt32("DAPRIID").Value); oDAPRIEmp.DAID = oReader.GetInt32("DAID").Value; oDAPRIEmp.EmployeeID = oReader.GetInt32("EmployeeID").Value; this.SetObjectState(oDAPRIEmp, Ease.Core.ObjectState.Saved); } #endregion #endregion #endregion #region Implementation of IDAMasterService public DAMaster Get(int id) { DAMaster oDAMaster = new DAMaster(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(DAMasterDA.Get(tc, id)); if (oreader.Read()) { oDAMaster = this.CreateObject(oreader); } oreader.Close(); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } return oDAMaster; } public DAMaster Get(string code) { DAMaster oDAMaster = new DAMaster(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(DAMasterDA.Get(tc, code)); if (oreader.Read()) { oDAMaster = this.CreateObject(oreader); } oreader.Close(); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } return oDAMaster; } public List GetDAMasters(DateTime? fromDate, DateTime? toDate, string daCode) { List DAMasters = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader dr = new DataReader(DAMasterDA.GetDAMasterList(tc, fromDate, toDate, daCode)); DAMasters = this.CreateObjects(dr); dr.Close(); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } return DAMasters; } public List GetDAs(string sql) { #region List daMasters = new List(); if (daMasters != null) return daMasters; #endregion TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader dr = new DataReader(DAMasterDA.GetDAs(tc,sql)); daMasters = this.CreateObjects(dr); dr.Close(); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } return daMasters; } public int Save(DAMaster oDAMaster) { TransactionContext tc = null; try { tc = TransactionContext.Begin(true); if (oDAMaster.IsNew) { if(DAMasterDA.CheckDAMasterDuplicateCode(tc,oDAMaster.DAMCode)) { Exception exception=new Exception("Duplicate DAMaster Code found.Try another Code"); throw exception; } int id = tc.GenerateID("DAMaster", "DAMasterID"); base.SetObjectID(oDAMaster, id); DAMasterDA.Insert(tc, oDAMaster); } else { DAMasterDA.Update(tc, oDAMaster); #region Delete Childs DAMasterDA.DeleteDAEmployee(tc,oDAMaster.ID); DAMasterDA.DeleteDAComplains(tc, oDAMaster.ID); DAMasterDA.DeleteDAEmpExplanations(tc, oDAMaster.ID); DAMasterDA.DeleteDAPEmployees(tc, oDAMaster.ID); DAMasterDA.DeleteDAPunishments(tc, oDAMaster.ID); DAMasterDA.DeleteDAComEmps(tc, oDAMaster.ID); DAMasterDA.DeleteDAPRIEmps(tc, oDAMaster.ID); #endregion } #region Insert Childs foreach (DAEmployee dAEmployee in oDAMaster.DAEmployees) { dAEmployee.DAID = oDAMaster.ID; base.SetObjectID(dAEmployee, tc.GenerateID("DAEmployee", "DAEMPID")); DAMasterDA.InsertDAEmployee(tc,dAEmployee); } foreach (DAComplain dAComplain in oDAMaster.DAComplains) { dAComplain.DAID = oDAMaster.ID; base.SetObjectID(dAComplain,tc.GenerateID("DAComplain", "DACompID")); DAMasterDA.InsertDAComplain(tc,dAComplain); } foreach (DAEmpExplanation dAEmpExplanation in oDAMaster.DAEmpExplanations) { dAEmpExplanation.DAID = oDAMaster.ID; base.SetObjectID(dAEmpExplanation, tc.GenerateID("DAEmpExplanation", "DAExpID")); DAMasterDA.InsertDAEmpExplanation(tc, dAEmpExplanation); } foreach (DAPunishment dAPunishment in oDAMaster.DAPunishments) { dAPunishment.DAID = oDAMaster.ID; base.SetObjectID(dAPunishment, tc.GenerateID("DAPunishment", "DAPID")); DAMasterDA.InsertDAPunishment(tc,dAPunishment); foreach (DAPEmployee dAPEmployee in dAPunishment.DAPEmployees) { dAPEmployee.DAID = oDAMaster.ID; dAPEmployee.PID = dAPunishment.ID; base.SetObjectID(dAPEmployee, tc.GenerateID("DAPEmployee", "DAPEID")); DAMasterDA.InsertDAPEmployee(tc, dAPEmployee); } } foreach (DAComEmp dAComEmp in oDAMaster.DAComEmps) { dAComEmp.DAID = oDAMaster.ID; base.SetObjectID(dAComEmp, tc.GenerateID("DAComEmp", "DACEID")); DAMasterDA.InsertDAComEmp(tc,dAComEmp); } foreach (DAPRIEmp dAPRIEmp in oDAMaster.DAPRIEmps) { dAPRIEmp.DAID = oDAMaster.ID; base.SetObjectID(dAPRIEmp, tc.GenerateID("DAPRIEmp", "DAPRIID")); DAMasterDA.InsertDAPRIEmp(tc,dAPRIEmp); } #endregion tc.End(); return oDAMaster.ID; } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } } public void Delete(int id) { TransactionContext tc = null; try { tc = TransactionContext.Begin(true); #region Delete Childs DAMasterDA.DeleteDAEmployee(tc, id); DAMasterDA.DeleteDAComplains(tc, id); DAMasterDA.DeleteDAEmpExplanations(tc, id); DAMasterDA.DeleteDAPEmployees(tc, id); DAMasterDA.DeleteDAPunishments(tc, id); DAMasterDA.DeleteDAComEmps(tc, id); DAMasterDA.DeleteDAPRIEmps(tc, id); #endregion DAMasterDA.Delete(tc, id); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } } public void DeleteDAEmployee(int id) { TransactionContext tc = null; try { tc = TransactionContext.Begin(true); #region Delete Childs DAMasterDA.DeleteDAEmployee(tc, id); #endregion DAMasterDA.Delete(tc, id); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } } #region Child Class Functions public List GetDAEmployees(int id) { List oDAEmployees = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(DAMasterDA.GetDAEmployees(tc, id)); oDAEmployees = this.CreateDAEmployeeObjects(oreader); oreader.Close(); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } return oDAEmployees; } public List GetDAComplains(int id) { List oDAComplains = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(DAMasterDA.GetDAComplains(tc, id)); //if (oreader.Read()) //{ oDAComplains = this.CreateDAComplainObjects(oreader); //} oreader.Close(); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } return oDAComplains; } public List GetDAEmpExplanations(int id) { List oDAEmpExplanations = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(DAMasterDA.GetDAEmpExplanations(tc, id)); //if (oreader.Read()) //{ oDAEmpExplanations = this.CreateDAEmpExplanationObjects(oreader); //} oreader.Close(); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } return oDAEmpExplanations; } public List GetDAPunishments(int id) { List oDAPunishments = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(DAMasterDA.GetDAPunishments(tc, id)); //if (oreader.Read()) //{ oDAPunishments = this.CreateDAPunishmentObjects(oreader); //} oreader.Close(); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } return oDAPunishments; } public List GetDAComEmps(int id) { List oDAComEmps = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(DAMasterDA.GetDAComEmps(tc, id)); //if (oreader.Read()) //{ oDAComEmps = this.CreateDAComEmpObjects(oreader); //} oreader.Close(); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } return oDAComEmps; } public List GetDAPEmployees(int id) { List oDAPEmployees = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(DAMasterDA.GetDAPEmployees(tc, id)); if (oreader.Read()) { oDAPEmployees = this.CreateDAPEmployeeObjects(oreader); } oreader.Close(); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } return oDAPEmployees; } public List GetDAPRIEmps(int id) { List oDAPRIEmps = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(DAMasterDA.GetDAPRIEmps(tc, id)); if (oreader.Read()) { oDAPRIEmps = this.CreateDAPRIEmpObjects(oreader); } oreader.Close(); tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } return oDAPRIEmps; } #endregion #endregion } }