using System; using System.Collections.Generic; using System.Linq; using System.Text; using HRM.BO; namespace Payroll.BO { [Serializable] public class ClaimPaymentNew : BasicBaseObject, IworkflowInterface { private EnumFinancialApproveType _type; private DateTime _month; #region Constructor public ClaimPaymentNew() { PaymentIssueDate = DateTime.MinValue; Name = string.Empty; Remarks = string.Empty; Amount = 0; WFStatus = enumwfStatus.Not_yet_Initiated; } #endregion #region Properties public DateTime PaymentIssueDate { get; set;} public string Name { get; set; } public double Amount { get; set; } public enumwfStatus WFStatus { get; set; } public string Remarks { get; set; } public EnumFinancialApproveType Type { get; set; } public DateTime Month { get; set;} public int ItemID { get; set; } public List ClaimPaymentDetails { get; set; } #endregion #region Functions //private ObjectsTemplate _ClaimPaymentDetails; //public ObjectsTemplate ClaimPaymentDetails //{ // get // { // if (this.ID != null && _ClaimPaymentDetails == null) // { // _ClaimPaymentDetails = ClaimPaymentNew.Service.GetClaimPaymentDetails(this.ID); // } // return _ClaimPaymentDetails; // } // set // { // _ClaimPaymentDetails = value; // } //} //public static void InsertChild(Ease.CoreV35.DataAccess.TransactionContext tc, ClaimPaymentDetail item) //{ // tc.ExecuteNonQuery("INSERT INTO ClaimPaymentDetail(ClaimPaymentDetailID, ClaimID, ClaimPaymentNewID)" + // " VALUES(%n, %n, %n)", item.ID.Integer, Convert.ToInt32(item.ClaimID.ToString()), item.ClaimPaymentID.Integer); //} //public static ObjectsTemplate Get() //{ // #region Cache Header // ObjectsTemplate oClaimPaymentNews = _cache["Get"] as ObjectsTemplate; // if (oClaimPaymentNews != null) // return oClaimPaymentNews; // #endregion // try // { // oClaimPaymentNews = Service.Get(); // } // catch (ServiceException e) // { // throw new Exception(e.Message, e); // } // #region Cache Footer // _cache.Add(oClaimPaymentNews, "Get"); // #endregion // return oClaimPaymentNews; //} //public static ClaimPaymentNew Get(ID nID) //{ // ClaimPaymentNew oClaimPaymentNew = null; // #region Cache Header // oClaimPaymentNew = (ClaimPaymentNew)_cache["Get", nID]; // if (oClaimPaymentNew != null) // return oClaimPaymentNew; // #endregion // oClaimPaymentNew = ClaimPaymentNew.Service.Get(nID); // #region Cache Footer // _cache.Add(oClaimPaymentNew, "Get", nID); // #endregion // return oClaimPaymentNew; //} //public static ObjectsTemplate Get(EnumStatus status) //{ // #region Cache Header // ObjectsTemplate oClaimPaymentNews = _cache["Get", status] as ObjectsTemplate; // if (oClaimPaymentNews != null) // return oClaimPaymentNews; // #endregion // try // { // oClaimPaymentNews = Service.Get(status, SystemInformation.CurrentSysInfo.PayrollTypeID.Integer); // } // catch (ServiceException e) // { // throw new Exception(e.Message, e); // } // #region Cache Footer // _cache.Add(oClaimPaymentNews, "Get", status); // #endregion // return oClaimPaymentNews; //} //public void Save(ObjectsTemplate oClaimPaymentNews) //{ // oClaimPaymentNews.ForEach(o => o.SetAuditTrailProperties()); // ClaimPaymentNew.Service.Save(oClaimPaymentNews); //} //public ID Save() //{ // this.SetAuditTrailProperties(); // return ClaimPaymentNew.Service.Save(this); //} //public void Delete(ID id) //{ // ClaimPaymentNew.Service.Delete(ID); //} #endregion //#region Service Factory IClaimPaymentService : IClaimPaymentService //internal static IClaimPaymentNewService Service //{ // get { return Services.Factory.CreateService(typeof(IClaimPaymentNewService)); } //} //#endregion #region IworkflowInterface Members /// /// this property is used for work flow, which return leave description /// public string ObjectDescription { get { string str = ""; str = this.Name + " " + "- Claim JV of the month " + Convert.ToDateTime(this.PaymentIssueDate).ToString("dd MMMM yyyy") + " has been initiated";//" for " + PayrollType.Get(SystemInformation.CurrentSysInfo.PayrollTypeID).Name; return str; } } /// /// this property is used for work flow, it's a constant value /// public int SetupID { get { int payrollTypeId = 0;// SystemInformation.CurrentSysInfo.PayrollTypeID.Integer; if (payrollTypeId == 1) return 16; else return 16; } } /// /// this property is used for work flow, which return leave entry id /// public int ObjectID { get { return this.ID; } } //public List GetDetails() //{ // // DataTable dt = Service.GetPendingJobDetail(this.ID); // List opJobsDetail = new List(); // //if (dt.Rows.Count > 0) // //{ // // opJobsDetail.Add(new PendingJobDetail() { Type = "Applier:", Value = dt.Rows[0]["Applier"].ToString() }); // // opJobsDetail.Add(new PendingJobDetail() { Type = "Leave Type:", Value = dt.Rows[0]["Leave"].ToString() }); // // opJobsDetail.Add(new PendingJobDetail() { Type = "From Date:", Value = dt.Rows[0]["FromDate"].ToString() }); // // opJobsDetail.Add(new PendingJobDetail() { Type = "To Date:", Value = dt.Rows[0]["ToDate"].ToString() }); // // opJobsDetail.Add(new PendingJobDetail() { Type = "Total Days:", Value = dt.Rows[0]["TotalDays"].ToString() }); // // opJobsDetail.Add(new PendingJobDetail() { Type = "Remarks:", Value = dt.Rows[0]["Remarks"].ToString() }); // //} // return opJobsDetail; //} //public string WFDesciption() //{ // string sDescription; // sDescription = this.ObjectDescription; // //sDescription = " " + this.Employee.Name + ", " + this.Employee.Designation.Name // // + " has applied for " + this.Leave.Description + " From " + this.AppliedFromDate.ToString("dd MMM yyyy") // // + " To " + this.AppliedToDate.ToString("dd MMM yyyy") // // + " Total " + this.ApprovedTotalDays.ToString() // // + " Reason " + this.Remarks; // return sDescription; //} //public int GetStatusbyWf(enumwfStatus wfstatus) //{ // EnumLeaveStatus lvstatus; // switch (wfstatus) // { // case enumwfStatus.Exception: // case enumwfStatus.Received: // case enumwfStatus.Passed: // case enumwfStatus.Revert: // lvstatus = EnumLeaveStatus.OnApproval; // break; // case enumwfStatus.Decline: // lvstatus = EnumLeaveStatus.Declined; // break; // case enumwfStatus.Approve: // lvstatus = EnumLeaveStatus.Approved; // break; // case enumwfStatus.End: // lvstatus = EnumLeaveStatus.Approved; // break; // default: // lvstatus = EnumLeaveStatus.OnApproval; // break; // } // return (int)lvstatus; //} #endregion //public static ClaimPaymentNew GetByClaimIDs(string _claimIds) //{ // ClaimPaymentNew oClaimPaymentNew = null; // #region Cache Header // oClaimPaymentNew = (ClaimPaymentNew)_cache["Get", _claimIds]; // if (oClaimPaymentNew != null) // return oClaimPaymentNew; // #endregion // oClaimPaymentNew = ClaimPaymentNew.Service.GetByClaimIDs(_claimIds); // #region Cache Footer // _cache.Add(oClaimPaymentNew, "Get", _claimIds); // #endregion // return oClaimPaymentNew; //} //public static ObjectsTemplate Get(DateTime fromDate, DateTime todate) //{ // #region Cache Header // ObjectsTemplate oClaimPaymentNews = _cache["Get", fromDate, todate] as ObjectsTemplate; // if (oClaimPaymentNews != null) // return oClaimPaymentNews; // #endregion // try // { // oClaimPaymentNews = Service.Get(fromDate, todate, SystemInformation.CurrentSysInfo.PayrollTypeID.Integer); // } // catch (ServiceException e) // { // throw new Exception(e.Message, e); // } // #region Cache Footer // _cache.Add(oClaimPaymentNews, "Get", fromDate, todate); // #endregion // return oClaimPaymentNews; //} } #region ClaimPaymentNewService public interface IClaimPaymentNewService { void Save(List oClaimPayments); ClaimPaymentNew Get(int id); List Get(EnumStatus status, int iD); int Save(ClaimPaymentNew item); void Delete(int id); List GetClaimPaymentDetails(int iD); List Get(); ClaimPaymentNew GetByClaimIDs(string _claimIds); List Get(DateTime fromDate, DateTime todate, int payrollTypeID); } #endregion }