using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.ComponentModel.DataAnnotations; using Sleis.Validation.Attribute; using Sleis.ViewModels; namespace Sleis.Models { public abstract class FacilityModel : BaseAuthoredModel, IIdentifiable { private string _FacilityIdentifier; public virtual string FacilityIdentifier { get { return _FacilityIdentifier; } set { _FacilityIdentifier = value; } } public virtual string Identifier { get { return _FacilityIdentifier; } set { _FacilityIdentifier = value; } } public virtual string FacName { get; set; } public virtual string Org { get; set; } public virtual string Naics { get; set; } public virtual EpaFacilityNaics FacNaics { get; set; } public virtual string Description { get; set; } public virtual string FacilityStatus { get; set; } public virtual SimpleLookupItem Status { get; set; } public virtual string FacilityCategory { get; set; } public virtual SimpleLookupItem Category { get; set; } public virtual DateTime? FacilityStatusAsOfDate { get; set; } public virtual GeographicLocation Location { get; set; } public virtual string Comment { get; set; } public virtual int? ReportId { get; set; } public virtual List Contacts { get; set; } public virtual FacilityAddressModel SiteAddress { get; set; } public virtual FacilityAddressModel MailAddress { get; set; } public FacilityModel() { SiteAddress = new PublicFacilitySiteAddressModel(); MailAddress = new PublicFacilityMailAddressModel(); } public override void SetContext(string parentContext) { ValidationContxt = String.Format("{0} Facility: {1}", parentContext, Identifier); base.SetContext(ValidationContxt); if (Location != null) Location.SetContext(ValidationContxt); } } }