using System.Collections.Generic;

using BS.Shared;

namespace BeWo.Data.Entities
{
    public class GroupOfPeople : BeWoEntityBase
    {
        private IList<Employee> _EmployeeList;
        private IList<Customer> _CustomerList;
        private IList<SupportConcept> _SupportConceptList;
        private IList<CostBearer2SupportConcept> _CostBearer2SupportConceptList;

        public GroupOfPeople()
        {
            this._Tid = TableID.GroupOfPeople;
        }

        public virtual GroupTypeId GroupType { get; set; }
        public virtual string Name { get; set; }
        public virtual long CreatedByEmployeeOid { get; set; }

        public virtual IList<Employee> EmployeeList
        {
            get { return this._EmployeeList ?? (this._EmployeeList = new List<Employee>()); }
            set { this._EmployeeList = value; }
        }

        public virtual IList<Customer> CustomerList
        {
            get { return this._CustomerList ?? (this._CustomerList = new List<Customer>()); }
            set { this._CustomerList = value; }
        }

        public virtual IList<SupportConcept> SupportConceptList
        {
            get { return this._SupportConceptList ?? (this._SupportConceptList = new List<SupportConcept>()); }
            set { this._SupportConceptList = value; }
        }
        public virtual IList<CostBearer2SupportConcept> CostBearer2SupportConceptList
        {
            get { return this._CostBearer2SupportConceptList ?? (this._CostBearer2SupportConceptList = new List<CostBearer2SupportConcept>()); }
            set { this._CostBearer2SupportConceptList = value; }
        }
    }
}