using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace Sleis.Models { public class ProcessEmissionListItem : ListItemModel { public virtual UnitProcessListItem UnitProcess { get; set; } public virtual EpaProcessEmissionCalculationUom ParameterUom { get; set; } public virtual EpaProcessEmissionCalculationParameterType ParameterType { get; set; } public virtual EpaProcessEmissionCalculationMaterialType MaterialType { get; set; } public virtual decimal? Value { get; set; } public virtual bool IsOperational(int reportYear) { /* Process Emission List Page * Assuming 2.1-2.4 can be done, hide (do not retrieve) the Unit Process/Process Emission record if the parent Facility Status <> 'OP' when StatusYear <= reporting year of report * Assuming 2.1-2.4 can be done, hide (do not retrieve) the Unit Process/Process Emission record if the parent Emission Unit Status <> 'OP' when StatusYear <= reporting year of report * Assuming 2.1-2.4 can be done, hide (do not retrieve) the Unit Process/Process Emission record if the parent Unit Process Final/Last Inventory Year < reporting year of report */ /*TODO: Old logic.....not sure if this will be used yet. Need to determine /*return String.Equals(this.UnitProcess.EmissionUnit.StatusCode, "OP", StringComparison.OrdinalIgnoreCase) || ( (String.Equals(this.UnitProcess.EmissionUnit.StatusCode, "TP", StringComparison.OrdinalIgnoreCase) || String.Equals(this.UnitProcess.EmissionUnit.StatusCode, "PS", StringComparison.OrdinalIgnoreCase) ) && this.UnitProcess.EmissionUnit.StatusEffectiveDate.Value.Year == reportYear ); * */ return (this.UnitProcess.EmissionUnit.Facility.FacilityStatus.ToUpper() =="OP" && this.UnitProcess.EmissionUnit.Facility.FacilityStatusAsOfDate.Value.Year <= reportYear) || (this.UnitProcess.EmissionUnit.StatusCode.ToUpper() == "OP" && this.UnitProcess.EmissionUnit.StatusEffectiveDate.Value.Year <= reportYear) || (this.UnitProcess.LastEmissionsYear < reportYear); } public override string Identifier { get { return UnitProcess.Identifier; } } public override string Description { get { return UnitProcess.Description; } } } public class AgencyProcessEmissionListItem : ProcessEmissionListItem { } public class PublicProcessEmissionListItem : ProcessEmissionListItem { } }