using System;
using System.Collections.Generic;
using BS.Shared;

namespace BeWo.Data.Entities
{
	public class Wohnheim : BeWoEntityBase
	{
		       
		public static string PropertyName_WohnheimName = "WohnheimName";

        public static string PropertyName_Wohnheim = "Wohnheim";

		public static string PropertyName_Strasse= "Strasse";

		public static string PropertyName_PlZ = "PLZ";

        public static string PropertyName_Ort = "Ort";

		public static string PropertyName_Bemerkung = "Bemerkung";

        private IList<Employee2Wohnheim> _Employee2WohnheimList;

        private IList<Customer2Wohnheim> _Customer2WohnheimList;

        public virtual string WohnheimName { get; set; }

        public virtual string Strasse { get; set; }

        public virtual string PLZ { get; set; }

        public virtual string Ort { get; set; }

        public virtual string Bemerkung { get; set; }


        public virtual IList<Employee2Wohnheim> Employee2WohnheimList
        {
            get { return _Employee2WohnheimList ?? (_Employee2WohnheimList = new List<Employee2Wohnheim>()); }

            set
            {
                if (AreDifferent(_Employee2WohnheimList, value))
                {
                    _Employee2WohnheimList = value;
                }
            }
        }

        public virtual IList<Customer2Wohnheim> Customer2WohnheimList
        {
            get { return _Customer2WohnheimList ?? (_Customer2WohnheimList = new List<Customer2Wohnheim>()); }

            set
            {
                if (AreDifferent(_Customer2WohnheimList, value))
                {
                    _Customer2WohnheimList = value;
                }
            }
        }

		public override string ToString()
		{
            return "Wohnheim Name: " + WohnheimName + "\n" + "Strasse: " + Strasse + "\n" + "PLZ: " + PLZ + "\n" + "Ort: "+ Ort +"\n" + "Bemerkung: " + Bemerkung;
		}
	}
}