using Ease.Core.Model;


using System;
using System.Collections.Generic;
using System.Data;


namespace HRM.BO
{
    public class LTIncentivePlan : BasicBaseObject
    {
        #region Constructor
        public LTIncentivePlan()
        {
        }
        #endregion

        #region Properties

        #region EmpID : ID
        private int empID;

        public int EmpID
        {
            get { return empID; }
            set { empID = value; }
        }
        #endregion

        #region LTType : EnumLTType
        private EnumLTType lTType;

        public EnumLTType LTType
        {
            get { return lTType; }
            set { lTType = value; }
        }
        #endregion

        #region ShareYear : DateTime
        private DateTime shareYear;

        public DateTime ShareYear
        {
            get { return shareYear; }
            set { shareYear = value; }
        }
        #endregion

        #region AwardedShare : int
        private int awardedShare;

        public int AwardedShare
        {
            get { return awardedShare; }
            set { awardedShare = value; }
        }
        #endregion

        #region VestingPercent : double
        private double? vestingPercent;

        public double? VestingPercent
        {
            get { return vestingPercent; }
            set { vestingPercent = value; }
        }
        #endregion

        #region Remarks : string
        private string remarks;

        public string Remarks
        {
            get { return remarks; }
            set { remarks = value; }
        }
        #endregion

        #region VestedRemarks : string
        private string vestedRemarks;

        public string VestedRemarks
        {
            get { return vestedRemarks; }
            set { vestedRemarks = value; }
        }
        #endregion

        #region IsVestedDSBS : bool
        private bool ? isVestedDSBS;

        public bool ? IsVestedDSBS
        {
            get { return isVestedDSBS; }
            set { isVestedDSBS = value; }
        }
        #endregion

        #endregion

        //#region Service Factory
        //internal static ILTIncentivePlanService Service
        //{
        //    get { return Services.Factory.CreateService<ILTIncentivePlanService>(typeof(ILTIncentivePlanService)); }
        //}
        //#endregion

        //#region Functions

        //public static List<LTIncentivePlan> GetLTIP()
        //{
        //    List<LTIncentivePlan> lTIncentivePlans = null;

        //    lTIncentivePlans = LTIncentivePlan.Service.GetLTIP();

        //    return lTIncentivePlans;
        //}

        //public static List<LTIncentivePlan> GetDSBS()
        //{
        //    List<LTIncentivePlan> lTIncentivePlans = null;

        //    lTIncentivePlans = LTIncentivePlan.Service.GetDSBS();

        //    return lTIncentivePlans;
        //}

        //public static List<LTIncentivePlan> GetLTIP(int empID)
        //{
        //    List<LTIncentivePlan> lTIncentivePlans = null;

        //    lTIncentivePlans = LTIncentivePlan.Service.GetLTIP(empID);

        //    return lTIncentivePlans;
        //}

        //public static List<LTIncentivePlan> GetDSBS(int empID)
        //{
        //    List<LTIncentivePlan> lTIncentivePlans = null;

        //    lTIncentivePlans = LTIncentivePlan.Service.GetDSBS(empID);

        //    return lTIncentivePlans;
        //}

        //public void Save()
        //{
        //    this.SetAuditTrailProperties();
        //    LTIncentivePlan.Service.Save(this);
        //}

        //public void Delete(int id)
        //{
        //    LTIncentivePlan.Service.Delete(id);
        //}

        //#endregion
    }
    public interface ILTIncentivePlanService
    {
        List<LTIncentivePlan> GetLTIP();
        List<LTIncentivePlan> GetDSBS();
        List<LTIncentivePlan> GetLTIP(int empID);
        List<LTIncentivePlan> GetDSBS(int empID);
        void Save(LTIncentivePlan rewardStatement);
        void Delete(int id);
    }
}