private BridgeDataModel CreateBridgeDataModel(PennDotBridgeData penndotBridgeDataRow, PennDotReportAData pennDotReportADataRow, SdRisk sdRiskRow) { return(new BridgeDataModel { BRKey = penndotBridgeDataRow.BRKEY, BridgeFamily = penndotBridgeDataRow.BRIDGE_FAMILY_ID, Age = penndotBridgeDataRow.CONDITION_BASED_AGE, BridgeID = pennDotReportADataRow.BRIDGE_ID, District = pennDotReportADataRow.DISTRICT, DeckArea = pennDotReportADataRow.DECK_AREA, BPN = pennDotReportADataRow.BUS_PLAN_NETWORK, FunctionalClass = pennDotReportADataRow.FUNC_CLASS, NHS = pennDotReportADataRow.NHS_IND == "1" ? "Y" : "N", YearBuilt = pennDotReportADataRow.YEAR_BUILT, ADTOverTenThousand = Convert.ToInt32(pennDotReportADataRow.ADTTOTAL) > 10000 ? "Y" : "N", RiskScore = Convert.ToDouble(sdRiskRow.SD_RISK) }); }
private BridgeDataModel CreateBridgeDataModel(PennDotBridgeData penndotBridgeDataRow, PennDotReportAData pennDotReportADataRow, ParametersModel parametersModel) { bool adtTotalHasValue = int.TryParse(pennDotReportADataRow.ADTTOTAL, out int adtTotal); bool isADTOverTenThousand = adtTotalHasValue ? adtTotal > 10000 : false; int.TryParse(penndotBridgeDataRow.BRIDGE_FAMILY_ID, out var familyId); double.TryParse(pennDotReportADataRow.DECK_AREA, out var deckArea); int.TryParse(pennDotReportADataRow.YEAR_BUILT, out var yearBuilt); int.TryParse(pennDotReportADataRow.StructureLength, out var structureLength); int.TryParse(pennDotReportADataRow.ADTTOTAL, out var ADTTotal); var age = DateTime.Today.Year - yearBuilt; if (structureLength > 20 && parametersModel.LengthGreaterThan20 != "Y") { parametersModel.LengthGreaterThan20 = "Y"; } if (structureLength >= 8 && structureLength <= 20 && parametersModel.LengthBetween8and20 != "Y") { parametersModel.LengthBetween8and20 = "Y"; } if (!parametersModel.FunctionalClass.Contains(pennDotReportADataRow.FUNC_CLASS)) { parametersModel.FunctionalClass.Add(pennDotReportADataRow.FUNC_CLASS); } return(new BridgeDataModel { BRKey = penndotBridgeDataRow.BRKEY, BridgeFamily = familyId, Age = age, BridgeCulvert = penndotBridgeDataRow.BridgeCulvert, BridgeID = pennDotReportADataRow.BRIDGE_ID, District = pennDotReportADataRow.DISTRICT, DeckArea = deckArea, BPN = pennDotReportADataRow.BUS_PLAN_NETWORK, FunctionalClass = pennDotReportADataRow.FUNC_CLASS, NHS = pennDotReportADataRow.NHS_IND == "1" ? "Y" : "N", YearBuilt = yearBuilt, StructureLength = structureLength, PlanningPartner = pennDotReportADataRow.PlanningPartner, StructureType = pennDotReportADataRow.StructureType, Posted = pennDotReportADataRow.Posted.ToLower() == "posted" ? "Y" : "N", AdtTotal = ADTTotal, P3 = pennDotReportADataRow.P3, ParallelBridge = pennDotReportADataRow.ParallelBridge, ADTOverTenThousand = isADTOverTenThousand ? "Y" : "N" }); }