using Ease.Core.DataAccess; using Ease.Core.Model; using Ease.Core.Utility; using System; using System.Collections.Generic; using System.Data; using System.Linq; using HRM.BO; namespace HRM.DA { public class TranElementService : ServiceTemplate //, ITranElementService { public TranElementService() { } private void MapObject(TranElement tranElement, DataReader dr) { base.SetObjectID(tranElement, dr.GetInt32("TranElementID").Value); tranElement.Name = dr.GetString("TranElementName"); tranElement.Source = dr.GetString("SourceTableName"); tranElement.ElementType = (EnumElementType)(dr.GetInt16("ElementType")); tranElement.WhereCluse = dr.GetString("WhereCluse"); tranElement.CreatedBy = dr.GetInt32("CreatedBy").Value; tranElement.CreatedDate = dr.GetDateTime("CreatedDate").Value; tranElement.ModifiedBy = dr.GetInt32("ModifiedBy"); tranElement.ModifiedDate = dr.GetDateTime("ModifiedDate"); tranElement.ProjectID = dr.GetInt32("ProjectID") .Value; //Ease.CoreV35.Model.ID.FromInteger(User.CurrentUser.ProjectID.Integer); base.SetObjectState(tranElement, Ease.Core.ObjectState.Saved); } protected override T CreateObject(DataReader dr) { TranElement tranElement = new TranElement(); MapObject(tranElement, dr); return tranElement as T; } protected TranElement CreateObject(DataReader oReader) { TranElement tranElement = new TranElement(); MapObject(tranElement, oReader); return tranElement; } #region Service Implementation #region Insert public void Save(TranElement tranElement) { TranElement oTranElement = new TranElement(); oTranElement = tranElement; TransactionContext tc = null; try { tc = TransactionContext.Begin(true); if (oTranElement.IsNew) { int id = tc.GenerateID("TranElement", "TranElementID"); base.SetObjectID(oTranElement, id); TranElementDA.Insert(tc, oTranElement); } else { TranElementDA.Update(tc, oTranElement); } tc.End(); } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } } #endregion #region Delete public void Delete(int id) { TransactionContext tc = null; try { tc = TransactionContext.Begin(true); TranElementDA.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 } } #endregion #region Get(By TranElementID) public TranElement Get(int tranElementID) { TranElement tranElement = null; TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader dr = new DataReader(TranElementDA.Get(tc, tranElementID)); if (dr.Read()) { tranElement = this.CreateObject(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 tranElement; } #endregion #region Get() public List Get() { List tranElements = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader dr = new DataReader(TranElementDA.Get(tc)); tranElements = 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 tranElements; } public List Get(string Source) { List tranElements = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader dr = new DataReader(TranElementDA.Get(tc, Source)); tranElements = 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 tranElements; } public List Get(string Source, EnumElementType ntype) { List tranElements = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader dr = new DataReader(TranElementDA.Get(tc, Source, ntype)); tranElements = 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 tranElements; } #endregion #region GetTable public DataTable GetTable() { DataTable dTbl = new DataTable("TranElement"); return dTbl; } #endregion #endregion } }