using Ease.Core.Model; using System; using System.Collections.Generic; using System.Data; namespace HRM.BO { #region FSTran public class FSTran : AuditTrailBase { #region Declarations private double _changeTaxAmount; private DateTime _discontinueDate; private int _employeeID; private DateTime? _lastSalaryPaidMonth; private double _netAmount; private DateTime _noticeDate; private string _remarks; private DateTime _settlementDate; private double _taxAmount; private bool _isMaximumInvestment; private int _shortNoticePeriod; private bool _isSubmit; #endregion #region Constructor public FSTran() { _changeTaxAmount = 0.0; _employeeID = 0; _lastSalaryPaidMonth = null; _netAmount = 0.0; _remarks = ""; _taxAmount = 0.0; _isMaximumInvestment = false; _isSubmit = false; _shortNoticePeriod = 0; } #endregion #region Properties #region ShortNoticePeriod : int public int ShortNoticePeriod { get { return _shortNoticePeriod; } set { _shortNoticePeriod = value; } } #endregion #region ChangeTaxAmount : double public double ChangeTaxAmount { get { return _changeTaxAmount; } set {_changeTaxAmount = value; } } #endregion #region DiscontinueDate : DateTime public DateTime DiscontinueDate { get { return _discontinueDate; } set { _discontinueDate = value; } } #endregion #region EmployeeID public int EmployeeID { get { return _employeeID; } set { _employeeID = value; } } #endregion #region LastSalaryPaidMonth : DateTime public DateTime? LastSalaryPaidMonth { get { return _lastSalaryPaidMonth; } set { _lastSalaryPaidMonth = value; } } #endregion #region NoticeDate : DateTime public DateTime NoticeDate { get { return _noticeDate; } set { _noticeDate = value; } } #endregion #region SettlementDate : DateTime public DateTime SettlementDate { get { return _settlementDate; } set { _settlementDate = value; } } #endregion #region Remarks : string public string Remarks { get { return _remarks; } set { _remarks = value; } } #endregion #region NetAmount : double public double NetAmount { get { return _netAmount; } set { _netAmount = value; } } #endregion #region TaxAmount : double public double TaxAmount { get { return _taxAmount; } set { _taxAmount = value; } } private List _incomeTax = null; public List IncomeTaxcoll { get { return _incomeTax; } set { _incomeTax = value; } } #endregion #region IsMaximumInvestment : bool public bool IsMaximumInvestment { get { return _isMaximumInvestment; } set { _isMaximumInvestment = value; } } #endregion #region IsSubmit : bool public bool IsSubmit { get { return _isSubmit; } set { _isSubmit = value; } } #endregion public List Details { get; set; } public int? EssEntryEmpID { get; set; } public string EmployeeNo { get; set; } public string EmployeeName { get; set; } public int ResignationReqId { get; set; } //#region Tran Detail : Tran Detail //private List _details; //public List Details //{ // get // { // // _details = new List(); // if (_details == null) // { // _details = new List(); // _details = FSTranDetail.GetDetail(this.ID); // } // return _details; // } // set // { // _details = value; // } //} //#endregion //#region Service Factory IFSTranService : IFSTranService //internal static IFSTranService Service //{ // get { return Services.Factory.CreateService(typeof(IFSTranService)); } //} //#endregion #endregion //#region Functions //public static FSTran Get(int nID) //{ // FSTran oFSTran = null; // #region Cache Header // oFSTran = (FSTran)_cache["Get", nID]; // if (oFSTran != null) // return oFSTran; // #endregion // oFSTran = FSTran.Service.Get(nID); // #region Cache Footer // _cache.Add(oFSTran, "Get", nID); // #endregion // return oFSTran; //} //public static FSTran Get(int nEmpID) //{ // FSTran oFSTran = null; // #region Cache Header // oFSTran = (FSTran)_cache["Get", nEmpID]; // if (oFSTran != null) // return oFSTran; // #endregion // oFSTran = FSTran.Service.Get(nEmpID); // #region Cache Footer // _cache.Add(oFSTran, "Get", nEmpID); // #endregion // return oFSTran; //} //public static List Get() //{ // #region Cache Header // List FSTrans = _cache["Get"] as List; // if (FSTrans != null) // return FSTrans; // #endregion // try // { // FSTrans = Service.Get(); // } // catch (ServiceException e) // { // throw new Exception(e.Message, e); // } // #region Cache Footer // _cache.Add(FSTrans, "Get"); // #endregion // return FSTrans; //} //public static List Get(DateTime dFromDate, DateTime dToDate) //{ // #region Cache Header // List FSTrans = _cache["Get", dFromDate, dToDate] as List; // if (FSTrans != null) // return FSTrans; // #endregion // try // { // FSTrans = Service.Get(dFromDate, dToDate); // } // catch (ServiceException e) // { // throw new Exception(e.Message, e); // } // #region Cache Footer // _cache.Add(FSTrans, "Get", dFromDate, dToDate); // #endregion // return FSTrans; //} //public static List Get(EnumStatus status) //{ // #region Cache Header // List FSTrans = _cache["Get", status] as List; // if (FSTrans != null) // return FSTrans; // #endregion // try // { // FSTrans = Service.Get(status); // } // catch (ServiceException e) // { // throw new Exception(e.Message, e); // } // #region Cache Footer // _cache.Add(FSTrans, "Get", status); // #endregion // return FSTrans; //} //public static List Get(string sEmpIDs) //{ // #region Cache Header // List FSTrans = _cache["Get", sEmpIDs] as List; // if (FSTrans != null) // return FSTrans; // #endregion // try // { // FSTrans = Service.Get(sEmpIDs); // } // catch (ServiceException e) // { // throw new Exception(e.Message, e); // } // #region Cache Footer // _cache.Add(FSTrans, "Get", sEmpIDs); // #endregion // return FSTrans; //} //public int Save() //{ // this.SetAuditTrailProperties(); // return FSTran.Service.Save(this); //} //public double GetAmount(EnumFSItemCode fsCode) //{ // double nAmount=0; // foreach (FSTranDetail odetail in this.Details) // { // if (odetail.ItemCode == fsCode) // { // if(odetail.Side == EnumSide.Add) // nAmount = nAmount + odetail.Amount; // else // nAmount = nAmount - odetail.Amount; // } // } // return nAmount; //} //public double GetAmount(EnumFSItemCode fsCode, int nItemID) //{ // double nAmount = 0; // foreach (FSTranDetail odetail in this.Details) // { // if (odetail.ItemCode == fsCode && nItemID== odetail.ItemID) // { // if (odetail.AmountType == EnumValueType.Amount) // { // if (odetail.Side == EnumSide.Add) // nAmount = nAmount + odetail.Amount; // else // nAmount = nAmount - odetail.Amount; // } // } // } // return nAmount; //} //public double GetLeaveAmount(EnumFSItemCode fsCode) //{ // double nAmount = 0; // foreach (FSTranDetail odetail in this.Details) // { // if (odetail.ItemCode == fsCode) // { // if (odetail.AmountType == EnumValueType.Amount) // { // if (odetail.Side == EnumSide.Add) // nAmount = nAmount + odetail.ChangedValue; // else // nAmount = nAmount - odetail.ChangedValue; // } // } // } // return nAmount; //} //public double GetLFAAmount(EnumFSItemCode fsCode, int nItemID) //{ // double nAmount = 0; // foreach (FSTranDetail odetail in this.Details) // { // if (odetail.ItemCode == fsCode) // { // if (odetail.AmountType == EnumValueType.Amount) // { // if (odetail.Side == EnumSide.Add) // nAmount = nAmount + odetail.ChangedValue; // else // nAmount = nAmount - odetail.ChangedValue; // } // } // } // return nAmount; //} //public void Delete(int id) //{ // FSTran.Service.Delete(id); //} //public static double GetPFAmount(string sEmployeeNo) //{ // return Service.GetPFAmount(sEmployeeNo); //} //#endregion } #endregion public class ProportionateSalaryFill { public string AllowanceItemID { get; set; } public string AllowanceName { get; set; } public double AllowanceFracValue { get; set; } public double AllowanceActualFracValue { get; set; } public string DeductItemID { get; set; } public string DeductName { get; set; } public double FracDeductValue { get; set; } public double ActualFracDeductValue{ get; set; } } public class GrossSalaryList { public string AllowanceItemID { get; set; } public string AllowanceName { get; set; } public double AllowanceGrossValue { get; set; } public double ActualGrossValue { get; set; } public string DeductItemID { get; set; } public string DeductName { get; set; } public double DeductGrossValue { get; set; } public double ActualGrossDeductValue { get; set; } } public class GratuityCount { public string GratuityAmount { get; set; } public string ServiceLength { get; set; } } public class PFCount { public string PFAmount { get; set; } public string CPFAmount { get; set; } public string PFLoan { get; set; } public string PFLoanInterest { get; set; } public string PFLaps { get; set; } public string WPPFAmount { get; set; } public string WPPFTaxAmount { get; set; } } #region IFSTran Service public interface IFSTranService { FSTran Get(int id); FSTran GetWithEmpID(int nEmpID); List Get(); List Get(EnumStatus status); List Get(DateTime dFromDate, DateTime dToDate, bool withDetail); List Get(string sEmpIDs); int Save(FSTran item); void Delete(int id); double GetPFAmount(string sEmployeeNo); FSTran GetByEmpdId(int nEmpID); DataSet GetEmpPaymentAdvice(int settlementAdviceId); List CalculateTax(FSTran otran, int userID, int payrolltypeid); List GetByEmpIdForRegEmployee(int empid); } #endregion }