using System;
using System.Linq;
using System.Data;


using System.Collections.Generic;


namespace HRM.BO.Fund
{
    [Serializable]
    public class ESBDefinition : AuditTrailBase
    {
 

        #region Constructor
        public ESBDefinition()
        {
            IsConfirmedRequired = false;
            Description = string.Empty;
            Trading = 0.0;
            MaxServiceLength = 0.0;
            ProjectID = 0;
            UserID = 0;
        }
        #endregion

        #region Properties    

        #region Property IsConfirmedRequired : bool

        public bool IsConfirmedRequired
        {
            get;set;
        }

        #endregion Property IsConfirmedRequired : bool	

        #region Property Description : string
        public string Description
        {
            get; set;
        }

        #endregion Property Description : string

        #region Property Trading : double
        public double Trading
        {
            get; set;
        }

        #endregion Property Trading : double

        #region Property MaxServiceLength : double
        public double MaxServiceLength
        {
            get; set;
        }

        #endregion Property MaxServiceLength : double

        #region Property UserID : ID
        
        public int UserID
        {
            get; set;
        }

        #endregion Property UserID : ID

        #region Property ESBSlabs : List<ESBSlab>

        public List<ESBSlab> ESBSlabs { get; set; } = new List<ESBSlab>();
        #endregion Property ESBSlabs : List<ESBSlab>
	
        #region Property ProjectID : ID
        
          public int ProjectID
          {
            get;set;
          }

          #endregion Property ProjectID : ID
	
  		#endregion

          

         
    }
    public interface IESBDefinitionService
    {
        void Save(ESBDefinition def);
        void Delete(int defID);

        ESBDefinition Get(int defID);
        DataTable GetTable();
        List<ESBDefinition> Get();

    }
}