public override void LoadHomeData(LoadHomeDataCallBack a_processResult, string a_directory) { string s_message = ""; GetSettingGroupAverageConsumption(); if (DataLoaded == false) { s_message = LoadData(a_directory); if (string.IsNullOrEmpty(s_message)) { DataLoaded = true; } } else { ResetAllProperties(); } if (string.IsNullOrEmpty(s_message)) { VoltAnalyzerMessage.Send <string>(MessageConstants.SetBusyMessage, ManageLanguage.GetLanguageString("Home$ProcessingBusyMessage", ManageLanguage.LanguageSelected)); AverageConsumptionResponce avr_result = AverrageConsumption(); a_processResult(true, "", avr_result.ModelToViewModel()); } else { a_processResult(false, s_message, null); } }
public static CarInfoVM ModelToViewModel(this AverageConsumptionResponce a_averageConsumption) { return(new CarInfoVM { AverageFuelConsumption = Decimal.Round(a_averageConsumption.FuelConsumption, 3), AverageCombinedConsumption = Decimal.Round(a_averageConsumption.WholeConsumption, 3), AverageEVKM = Decimal.Round(a_averageConsumption.AverageEVKM, 3), AverageEVConsumption = Decimal.Round(a_averageConsumption.EVConsumption, 3), BestFuelConsumption = Decimal.Round(a_averageConsumption.BestFuelConsumption, 3), WorstFuelConsumption = Decimal.Round(a_averageConsumption.WorstFuelConsumption, 3), BestEVConsumption = Decimal.Round(a_averageConsumption.BestEVConsumption, 3), WorstEVConsumption = Decimal.Round(a_averageConsumption.WorstEVConsumption, 3), TotalCharging = Decimal.Round(a_averageConsumption.TotalCharging, 2), TotalFuelUsed = Decimal.Round(a_averageConsumption.TotalFuelUsed, 2), TotalKM = Decimal.Round(a_averageConsumption.TotalKM, 2), AverageSpeed = decimal.Round(((a_averageConsumption.AverageSpeed * 36) / 10), 2), FuelConsumptionList = a_averageConsumption.FuelConsumptionList, DateFuelConsumption = a_averageConsumption.DateFuelConsumption, TotalRegen = decimal.Round(a_averageConsumption.TotalRegen, 2), EVConsumptionList = a_averageConsumption.EVConsumptionList, DateEVConsumption = a_averageConsumption.DateEVConsumption, }); }
private AverageConsumptionResponce AverrageConsumption() { BothConsumption(); decimal d_EVAverrage = 0; if (TotalEVKM != 0) { d_EVAverrage = (TotalkwUsed / TotalEVKM) * 100; } decimal d_FuelAverrage = 0; if (TotalFuelKM != 0) { d_FuelAverrage = (TotalFuel / TotalFuelKM) * 100; } decimal d_TotalAverrage = 0; if ((TotalEVKM + TotalFuelKM) != 0) { d_TotalAverrage = (TotalFuel / (TotalEVKM + TotalFuelKM)) * 100; } if (TotalCharging / 1000 > 0) { TotalCharging = TotalCharging / 1000; } decimal TotalAverageEVKM = 0; if (ValidAmountEVKM != 0) { TotalAverageEVKM = AverageEVKM / ValidAmountEVKM; } decimal AverageS = 0; if (AmountValuesSpeed != 0) { AverageS = AverageSpeed / AmountValuesSpeed; } AverageConsumptionResponce acr_responce = new AverageConsumptionResponce(); acr_responce.EVConsumptionList = EVConsumptionList; acr_responce.DateEVConsumption = DateEVConsumption; acr_responce.FuelConsumptionList = FuelConsumptionList; acr_responce.DateFuelConsumption = DateFuelConsumption; acr_responce.AverageSpeed = AverageS; acr_responce.EVConsumption = d_EVAverrage; acr_responce.FuelConsumption = d_FuelAverrage; acr_responce.WholeConsumption = d_TotalAverrage; acr_responce.WorstEVConsumption = WorstEVConsumption; acr_responce.BestEVConsumption = BestEVConsumption; acr_responce.WorstFuelConsumption = WorstFuelConsumption; acr_responce.BestFuelConsumption = BestFuelConsumption; acr_responce.TotalKM = TotalEVKM + TotalFuelKM; acr_responce.TotalCharging = TotalCharging; acr_responce.TotalFuelUsed = TotalFuel; acr_responce.AverageEVKM = TotalAverageEVKM; acr_responce.TotalRegen = TotalRegen; return(acr_responce); }