using System; using System.Data; using System.Linq; using Ease.CoreV35; using Ease.CoreV35.DataAccess; using System.Collections.Generic; using Ease.Core.Model; using HRM.BO; using Ease.Core.DataAccess; using Ease.Core; using Ease.Core.Utility; using Payroll.Service; namespace HRM.DA { #region PeerAppraisal Service public class PeerAppraisalService : ServiceTemplate { public PeerAppraisalService() { } private void MapObject(PeerAppraisal oPeerAppraisal, DataReader oReader) { base.SetObjectID(oPeerAppraisal, oReader.GetInt32("PeerAppraisalID").Value); oPeerAppraisal.EmployeeID = oReader.GetInt32("EmployeeID", 0); oPeerAppraisal.PMPYearID = oReader.GetInt32("PMPYearID", 0); oPeerAppraisal.AppraiserID = oReader.GetInt32("AppraiserID", 0); oPeerAppraisal.Competency = oReader.GetInt32("Competency").Value; oPeerAppraisal.Cooparation = oReader.GetInt32("Cooparation").Value; oPeerAppraisal.Resourcefulness = oReader.GetInt32("Resourcefulness").Value; oPeerAppraisal.Productivity = oReader.GetInt32("Productivity").Value; oPeerAppraisal.Leadership = oReader.GetInt32("Leadership").Value; oPeerAppraisal.OverallRating = oReader.GetDouble("OverallRating").Value; oPeerAppraisal.Remarks = oReader.GetString("Remarks"); oPeerAppraisal.AppraisalDate = oReader.GetDateTime("AppraisalDate") == null ? DateTime.MinValue : oReader.GetDateTime("AppraisalDate").Value; oPeerAppraisal.CreatedBy = oReader.GetInt32("CreatedBy", 0); oPeerAppraisal.CreatedDate = oReader.GetDateTime("CreationDate").Value; oPeerAppraisal.ModifiedBy = oReader.GetInt32("ModifiedBy", 0); oPeerAppraisal.ModifiedDate = oReader.GetDateTime("ModifiedDate"); this.SetObjectState(oPeerAppraisal, ObjectState.Saved); } private void EmployeeMapObject(Employee oEmployee, DataReader oReader) { base.SetObjectID(oEmployee, oReader.GetInt32("EmployeeID").Value); oEmployee.GlobalID = oReader.GetString("globalID"); oEmployee.EmployeeNo = oReader.GetString("employeeNo"); oEmployee.Name = oReader.GetString("name"); oEmployee.Gender = (EnumGender)oReader.GetInt32("gender").Value; //oEmployee.IsManager = oReader.GetBoolean("IsManager").Value; oEmployee.BirthDate = oReader.GetDateTime("birthDate").Value; oEmployee.JoiningDate = oReader.GetDateTime("joiningDate").Value; oEmployee.EndOfContractDate = oReader.GetDateTime( "endOfContractDate"); // ? oReader.GetDateTime("endOfContractDate").Value : DateTime.MinValue; oEmployee.CardDate = oReader.GetDateTime("CardDate"); oEmployee.EmailAddress = oReader.GetString("emailAddress"); oEmployee.MobileNo = oReader.GetString("mobileNo"); oEmployee.TinNo = oReader.GetString("tinNo"); oEmployee.CategoryID = oReader.GetInt32("categoryID", 0); oEmployee.ForeignExPat = oReader.GetBoolean("foreignExPat").Value; oEmployee.ContinueGratuity = oReader.GetDouble("continueGratuity").HasValue ? oReader.GetDouble("continueGratuity").Value : 0.0; // oEmployee.TaxCircle = (EnumTaxCircle)oReader.GetInt32("taxCircle").Value; //oEmployee.TaxCircle = oReader.GetString("taxCircle"); oEmployee.IsConfirmed = oReader.GetBoolean("isConfirmed").Value; oEmployee.Status = (EnumEmployeeStatus)oReader.GetInt32("status").Value; oEmployee.IsShownInTaxSheet = oReader.GetBoolean("isShownInTaxSheet").Value; oEmployee.PFMemberType = (EnumPFMembershipType)oReader.GetInt32("pFMemberType").Value; oEmployee.PFMemberShiptDate = oReader.GetDateTime("pfMemberShipDt").HasValue ? oReader.GetDateTime("pfMemberShipDt").Value : DateTime.Now; oEmployee.BranchID = oReader.GetInt32("branchID", 0); oEmployee.AccountNo = oReader.GetString("accountNo"); oEmployee.OutPayBranchID = oReader.GetInt32("OUTPAYBRANCHID", 0); oEmployee.OutPayAccountNo = oReader.GetString("outPayAccountNo"); oEmployee.DepartmentID = oReader.GetInt32("departmentID", 0); oEmployee.LocationID = oReader.GetInt32("locationID", 0); oEmployee.ReligionID = oReader.GetInt32("religionID", 0); oEmployee.MaritalStatus = (EnumMaritalStatus)oReader.GetInt32("maritalStatusID").Value; oEmployee.DesignationID = oReader.GetInt32("designationID", 0); oEmployee.GradeID = oReader.GetInt32("gradeID", 0); oEmployee.BasicSalary = oReader.GetDouble("basicSalary").Value; oEmployee.PrevBasic = oReader.GetDouble("prevBasic").Value; oEmployee.PaymentMode = (EnumPaymentMode)oReader.GetInt32("paymentMode").Value; oEmployee.PaymentMode = (EnumPaymentMode)oReader.GetInt32("paymentMode").Value; oEmployee.OutPayPaymentMode = (EnumPaymentMode)oReader.GetInt32("OutPayPaymentMode").Value; oEmployee.FatherName = oReader.GetString("fatherName"); oEmployee.IsEligibleOT = oReader.GetBoolean("isEligibleOT").Value; oEmployee.DescriptionText = oReader.GetString("desigDescription"); oEmployee.DesktopUserPass = oReader.GetString("desktopUserPass"); oEmployee.PayrollTypeID = oReader.GetInt32("payrollTypeID", 0); oEmployee.IsAutoProcess = oReader.GetBoolean("IsAutoProcess").Value; oEmployee.CardID = oReader.GetInt32("cardID", 0); oEmployee.GrossSalary = oReader.GetDouble("grossSalary").Value; oEmployee.PhotoPath = oReader.GetString("PhotoPath"); oEmployee.PayScaleId = oReader.GetInt32("payScaleId", 0); oEmployee.TaxAmount = oReader.GetDouble("taxAmount").Value; oEmployee.CurrentHistoryID = oReader.GetInt32("EmpHistoryID", 0); oEmployee.MonthStatusUpdate = oReader.GetInt32("MonthStatusUpdate").HasValue ? (EnumEmployeeStatus)oReader.GetInt32("MonthStatusUpdate") : EnumEmployeeStatus.Live; //Diu to few clients already gets 0 default values; if (oEmployee.MonthStatusUpdate == 0) oEmployee.MonthStatusUpdate = EnumEmployeeStatus.Live; oEmployee.ConfirDate = oReader.GetDateTime("dateOfConfirmation").HasValue ? oReader.GetDateTime("dateOfConfirmation").Value : DateTime.MinValue; oEmployee.DiscontinueDate = oReader.GetDateTime("dateOfExpiry") != null ? oReader.GetDateTime("dateOfExpiry").Value : DateTime.MinValue; oEmployee.VendorCode = oReader.GetString("VendorCode"); oEmployee.Role = (EnumRoleType)oReader.GetInt32("Role").Value; //oEmployee.Role = oReader.GetBoolean("Role").Value; oEmployee.CreatedBy = oReader.GetInt32("CreatedBy").Value; oEmployee.CreatedDate = oReader.GetDateTime("CreationDate").Value; oEmployee.ModifiedBy = oReader.GetInt32("ModifiedBy", 0); oEmployee.ModifiedDate = oReader.GetDateTime("ModifiedDate"); oEmployee.PersonType = (EnumPersonType)oReader.GetInt32("PersonType").Value; oEmployee.LineManagerID = oReader.GetInt32("LineManagerID", 0); oEmployee.SecondLineManagerID = oReader.GetInt32("SecondLineManagerID", 0); this.SetObjectState(oEmployee, ObjectState.Saved); } protected override T CreateObject(DataReader oReader) { PeerAppraisal oPeerAppraisal = new PeerAppraisal(); MapObject(oPeerAppraisal, oReader); return oPeerAppraisal as T; } protected PeerAppraisal CreateObject(DataReader oReader) { PeerAppraisal oPeerAppraisal = new PeerAppraisal(); MapObject(oPeerAppraisal, oReader); return oPeerAppraisal; } protected List CreateEmployeeObjects(DataReader oReader) { List employees = new List(); while (oReader.Read()) { employees.Add(CreateEmployeeObject(oReader)); } return employees; } protected Employee CreateEmployeeObject(DataReader oReader) { Employee oEmployee = new Employee(); EmployeeMapObject(oEmployee, oReader); return oEmployee; } #region Service implementation public PeerAppraisal Get(int id) { PeerAppraisal oPeerAppraisal = new PeerAppraisal(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(PeerAppraisalDA.Get(tc, id)); if (oreader.Read()) { oPeerAppraisal = 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 oPeerAppraisal; } public List GetByEmployeeID(int id) { List oPeerAppraisal = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(PeerAppraisalDA.GetByEmployeeID(tc, id)); oPeerAppraisal = this.CreateObjects(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 oPeerAppraisal; } public List GetEmployeeByPeerAppraisalsEmpId(int id, int pmpYearID) { List oPeerAppraisal = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader oreader = new DataReader(PeerAppraisalDA.GetEmployeeByPeerAppraisalsEmpId(tc, id, pmpYearID)); oPeerAppraisal = this.CreateEmployeeObjects(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 oPeerAppraisal; } public List GetByPmpYearId(int pmpYearId) { TransactionContext tc = null; List oPeerAppraisal = new List(); try { tc = TransactionContext.Begin(); DataReader dr = new DataReader(PeerAppraisalDA.GetByPmpYearId(tc, pmpYearId)); oPeerAppraisal = 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 oPeerAppraisal; } public List Get() { List oPeerAppraisal = new List(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader dr = new DataReader(PeerAppraisalDA.Get(tc)); if (dr.Read()) { oPeerAppraisal = 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 oPeerAppraisal; } public List GetByAppraiserId(int appraisalID, int pMPYearID) { List oPeerAppraisal = null; TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader dr = new DataReader(PeerAppraisalDA.GetByAppraiserId(tc, appraisalID, pMPYearID)); oPeerAppraisal = 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 oPeerAppraisal; } public PeerAppraisal Get(int EmployeeID, int AppraisalID, int PMPYearID) { PeerAppraisal oPeerAppraisal = new PeerAppraisal(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader dr = new DataReader(PeerAppraisalDA.Get(tc, EmployeeID, AppraisalID, PMPYearID)); if (dr.Read()) { oPeerAppraisal = 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 oPeerAppraisal; } public PeerAppraisal GetByEmpIdAppraiserId(int EmployeeID, int AppraisalID, int PmpYearID) { PeerAppraisal oPeerAppraisal = new PeerAppraisal(); TransactionContext tc = null; try { tc = TransactionContext.Begin(); DataReader dr = new DataReader(PeerAppraisalDA.GetByEmpIdAppraiserId(tc, EmployeeID, AppraisalID, PmpYearID)); if (dr.Read()) { oPeerAppraisal = 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 oPeerAppraisal; } public int Save(PeerAppraisal oPeerAppraisal) { TransactionContext tc = null; try { tc = TransactionContext.Begin(true); if (oPeerAppraisal.IsNew) { int id = tc.GenerateID("PeerAppraisal", "PeerAppraisalID"); base.SetObjectID(oPeerAppraisal, id); PeerAppraisalDA.Insert(tc, oPeerAppraisal); } else { PeerAppraisalDA.Update(tc, oPeerAppraisal); } tc.End(); return oPeerAppraisal.ID; } catch (Exception e) { #region Handle Exception if (tc != null) tc.HandleError(); ExceptionLog.Write(e); throw new ServiceException(e.Message, e); #endregion } } public void SavePeerApprisals(List oPeerApprisals) { TransactionContext tc = null; try { tc = TransactionContext.Begin(true); int id = tc.GenerateID("PeerAppraisal", "PeerAppraisalID"); foreach (PeerAppraisal oPeerAppraisal in oPeerApprisals) { PeerAppraisalDA.Delete(tc, oPeerAppraisal.PMPYearID, oPeerAppraisal.EmployeeID); } foreach (PeerAppraisal oPeerAppraisal in oPeerApprisals) { base.SetObjectID(oPeerAppraisal, id); PeerAppraisalDA.Insert(tc, oPeerAppraisal); 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 Delete(int id) { TransactionContext tc = null; try { tc = TransactionContext.Begin(true); PeerAppraisalDA.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 } #endregion }