From 6895d2060d23e7e61b9eec984d69b8746d482384 Mon Sep 17 00:00:00 2001 From: "DESKTOP-GENO133\\IvanPlex" Date: Mon, 15 Jan 2024 09:21:15 -0700 Subject: [PATCH 1/5] FIxed bug caused by doubling of upgrade sums. made table headers sticky so that they stay in position when scrolled past. --- Controllers/VehicleController.cs | 1 - Views/Admin/Index.cshtml | 4 ++-- Views/Vehicle/_CollisionRecords.cshtml | 2 +- Views/Vehicle/_Gas.cshtml | 2 +- Views/Vehicle/_Notes.cshtml | 2 +- Views/Vehicle/_ReminderRecords.cshtml | 2 +- Views/Vehicle/_ServiceRecords.cshtml | 2 +- Views/Vehicle/_TaxRecords.cshtml | 2 +- Views/Vehicle/_UpgradeRecords.cshtml | 2 +- 9 files changed, 9 insertions(+), 10 deletions(-) diff --git a/Controllers/VehicleController.cs b/Controllers/VehicleController.cs index fb773c09..f31c3eb4 100644 --- a/Controllers/VehicleController.cs +++ b/Controllers/VehicleController.cs @@ -634,7 +634,6 @@ public IActionResult GetReportPartialView(int vehicleId) allCosts.AddRange(_reportHelper.GetServiceRecordSum(serviceRecords, 0)); allCosts.AddRange(_reportHelper.GetRepairRecordSum(collisionRecords, 0)); allCosts.AddRange(_reportHelper.GetUpgradeRecordSum(upgradeRecords, 0)); - allCosts.AddRange(_reportHelper.GetUpgradeRecordSum(upgradeRecords, 0)); allCosts.AddRange(_reportHelper.GetGasRecordSum(gasRecords, 0)); allCosts.AddRange(_reportHelper.GetTaxRecordSum(taxRecords, 0)); viewModel.CostForVehicleByMonth = allCosts.GroupBy(x => new { x.MonthName, x.MonthId }).OrderBy(x => x.Key.MonthId).Select(x => new CostForVehicleByMonth diff --git a/Views/Admin/Index.cshtml b/Views/Admin/Index.cshtml index f1019723..9d2a950f 100644 --- a/Views/Admin/Index.cshtml +++ b/Views/Admin/Index.cshtml @@ -37,7 +37,7 @@ - + @@ -62,7 +62,7 @@ Users
Token Issued To
- + diff --git a/Views/Vehicle/_CollisionRecords.cshtml b/Views/Vehicle/_CollisionRecords.cshtml index b84ef619..81b4eda3 100644 --- a/Views/Vehicle/_CollisionRecords.cshtml +++ b/Views/Vehicle/_CollisionRecords.cshtml @@ -40,7 +40,7 @@
Username Email
- + diff --git a/Views/Vehicle/_Gas.cshtml b/Views/Vehicle/_Gas.cshtml index 233d29a9..9d0eec32 100644 --- a/Views/Vehicle/_Gas.cshtml +++ b/Views/Vehicle/_Gas.cshtml @@ -69,7 +69,7 @@
Date Odometer
- + diff --git a/Views/Vehicle/_Notes.cshtml b/Views/Vehicle/_Notes.cshtml index d85a3a2b..9cbd6e40 100644 --- a/Views/Vehicle/_Notes.cshtml +++ b/Views/Vehicle/_Notes.cshtml @@ -17,7 +17,7 @@
Date Refueled Odometer(@(distanceUnit))
- + diff --git a/Views/Vehicle/_ReminderRecords.cshtml b/Views/Vehicle/_ReminderRecords.cshtml index 893e1e98..6b2622ac 100644 --- a/Views/Vehicle/_ReminderRecords.cshtml +++ b/Views/Vehicle/_ReminderRecords.cshtml @@ -21,7 +21,7 @@
Description Note
- + diff --git a/Views/Vehicle/_ServiceRecords.cshtml b/Views/Vehicle/_ServiceRecords.cshtml index c657262e..f77fb3d1 100644 --- a/Views/Vehicle/_ServiceRecords.cshtml +++ b/Views/Vehicle/_ServiceRecords.cshtml @@ -40,7 +40,7 @@
Urgency Metric
- + diff --git a/Views/Vehicle/_TaxRecords.cshtml b/Views/Vehicle/_TaxRecords.cshtml index 296a6783..2a4a2e94 100644 --- a/Views/Vehicle/_TaxRecords.cshtml +++ b/Views/Vehicle/_TaxRecords.cshtml @@ -40,7 +40,7 @@
Date Odometer
- + diff --git a/Views/Vehicle/_UpgradeRecords.cshtml b/Views/Vehicle/_UpgradeRecords.cshtml index 2bc9b2cb..87bc7404 100644 --- a/Views/Vehicle/_UpgradeRecords.cshtml +++ b/Views/Vehicle/_UpgradeRecords.cshtml @@ -40,7 +40,7 @@
Date Description
- + From 6ffa856795916b8ed9c155506110e93747dddcef Mon Sep 17 00:00:00 2001 From: "DESKTOP-GENO133\\IvanPlex" Date: Mon, 15 Jan 2024 09:32:15 -0700 Subject: [PATCH 2/5] defaults input to today's date but only if there aren't any dates provided. --- Models/Collision/CollisionRecordInput.cs | 2 +- Models/GasRecord/GasRecordInput.cs | 2 +- Models/ServiceRecord/ServiceRecordInput.cs | 2 +- Models/TaxRecord/TaxRecordInput.cs | 2 +- Models/Upgrades/UpgradeReportInput.cs | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Models/Collision/CollisionRecordInput.cs b/Models/Collision/CollisionRecordInput.cs index 21a54e43..a07cb172 100644 --- a/Models/Collision/CollisionRecordInput.cs +++ b/Models/Collision/CollisionRecordInput.cs @@ -4,7 +4,7 @@ public class CollisionRecordInput { public int Id { get; set; } public int VehicleId { get; set; } - public string Date { get; set; } + public string Date { get; set; } = DateTime.Now.ToShortDateString(); public int Mileage { get; set; } public string Description { get; set; } public decimal Cost { get; set; } diff --git a/Models/GasRecord/GasRecordInput.cs b/Models/GasRecord/GasRecordInput.cs index 3a7ae19d..2a5243cf 100644 --- a/Models/GasRecord/GasRecordInput.cs +++ b/Models/GasRecord/GasRecordInput.cs @@ -4,7 +4,7 @@ public class GasRecordInput { public int Id { get; set; } public int VehicleId { get; set; } - public string Date { get; set; } + public string Date { get; set; } = DateTime.Now.ToShortDateString(); /// /// American moment /// diff --git a/Models/ServiceRecord/ServiceRecordInput.cs b/Models/ServiceRecord/ServiceRecordInput.cs index 19d92c1e..f904ab18 100644 --- a/Models/ServiceRecord/ServiceRecordInput.cs +++ b/Models/ServiceRecord/ServiceRecordInput.cs @@ -4,7 +4,7 @@ public class ServiceRecordInput { public int Id { get; set; } public int VehicleId { get; set; } - public string Date { get; set; } + public string Date { get; set; } = DateTime.Now.ToShortDateString(); public int Mileage { get; set; } public string Description { get; set; } public decimal Cost { get; set; } diff --git a/Models/TaxRecord/TaxRecordInput.cs b/Models/TaxRecord/TaxRecordInput.cs index e600484d..cbe33c50 100644 --- a/Models/TaxRecord/TaxRecordInput.cs +++ b/Models/TaxRecord/TaxRecordInput.cs @@ -4,7 +4,7 @@ public class TaxRecordInput { public int Id { get; set; } public int VehicleId { get; set; } - public string Date { get; set; } + public string Date { get; set; } = DateTime.Now.ToShortDateString(); public string Description { get; set; } public decimal Cost { get; set; } public string Notes { get; set; } diff --git a/Models/Upgrades/UpgradeReportInput.cs b/Models/Upgrades/UpgradeReportInput.cs index a59abc67..b3e11b37 100644 --- a/Models/Upgrades/UpgradeReportInput.cs +++ b/Models/Upgrades/UpgradeReportInput.cs @@ -4,7 +4,7 @@ public class UpgradeRecordInput { public int Id { get; set; } public int VehicleId { get; set; } - public string Date { get; set; } + public string Date { get; set; } = DateTime.Now.ToShortDateString(); public int Mileage { get; set; } public string Description { get; set; } public decimal Cost { get; set; } From bd3b8212262fc651468bda659f12224726885987 Mon Sep 17 00:00:00 2001 From: "DESKTOP-GENO133\\IvanPlex" Date: Mon, 15 Jan 2024 09:54:05 -0700 Subject: [PATCH 3/5] added missedfuelup and partialfuelup to csv export and import. --- Controllers/VehicleController.cs | 16 +++++++++++++--- Helper/GasHelper.cs | 8 ++++++-- MapProfile/FuellyMappers.cs | 2 +- Models/GasRecord/GasRecordViewModel.cs | 2 ++ Models/ImportModel.cs | 2 ++ wwwroot/css/site.css | 4 ++++ 6 files changed, 28 insertions(+), 6 deletions(-) diff --git a/Controllers/VehicleController.cs b/Controllers/VehicleController.cs index f31c3eb4..4f051885 100644 --- a/Controllers/VehicleController.cs +++ b/Controllers/VehicleController.cs @@ -235,7 +235,15 @@ public IActionResult ExportFromVehicleToCsv(int vehicleId, ImportMode mode) bool useUKMPG = _config.GetUserConfig(User).UseUKMPG; vehicleRecords = vehicleRecords.OrderBy(x => x.Date).ThenBy(x => x.Mileage).ToList(); var convertedRecords = _gasHelper.GetGasRecordViewModels(vehicleRecords, useMPG, useUKMPG); - var exportData = convertedRecords.Select(x => new GasRecordExportModel { Date = x.Date.ToString(), Cost = x.Cost.ToString(), FuelConsumed = x.Gallons.ToString(), FuelEconomy = x.MilesPerGallon.ToString(), Odometer = x.Mileage.ToString() }); + var exportData = convertedRecords.Select(x => new GasRecordExportModel { + Date = x.Date.ToString(), + Cost = x.Cost.ToString(), + FuelConsumed = x.Gallons.ToString(), + FuelEconomy = x.MilesPerGallon.ToString(), + Odometer = x.Mileage.ToString(), + IsFillToFull = x.IsFillToFull.ToString(), + MissedFuelUp = x.MissedFuelUp.ToString() + }); using (var writer = new StreamWriter(fullExportFilePath)) { using (var csv = new CsvWriter(writer, CultureInfo.InvariantCulture)) @@ -302,12 +310,14 @@ public IActionResult ImportToVehicleIdFromCsv(int vehicleId, ImportMode mode, st convertedRecord.IsFillToFull = !parsedBool; } else if (!string.IsNullOrWhiteSpace(importModel.IsFillToFull)) { - var parsedBool = importModel.IsFillToFull.Trim() == "1" || importModel.IsFillToFull.Trim() == "Full"; + var possibleFillToFullValues = new List { "1", "true", "full" }; + var parsedBool = possibleFillToFullValues.Contains(importModel.IsFillToFull.Trim().ToLower()); convertedRecord.IsFillToFull = parsedBool; } if (!string.IsNullOrWhiteSpace(importModel.MissedFuelUp)) { - var parsedBool = importModel.MissedFuelUp.Trim() == "1"; + var possibleMissedFuelUpValues = new List { "1", "true" }; + var parsedBool = possibleMissedFuelUpValues.Contains(importModel.MissedFuelUp.Trim().ToLower()); convertedRecord.MissedFuelUp = parsedBool; } //insert record into db, check to make sure fuelconsumed is not zero so we don't get a divide by zero error. diff --git a/Helper/GasHelper.cs b/Helper/GasHelper.cs index 91725526..b3a9a44c 100644 --- a/Helper/GasHelper.cs +++ b/Helper/GasHelper.cs @@ -42,7 +42,9 @@ public List GetGasRecordViewModels(List result, b Gallons = convertedConsumption, Cost = currentObject.Cost, DeltaMileage = deltaMileage, - CostPerGallon = currentObject.Cost / convertedConsumption + CostPerGallon = currentObject.Cost / convertedConsumption, + IsFillToFull = currentObject.IsFillToFull, + MissedFuelUp = currentObject.MissedFuelUp }; if (currentObject.MissedFuelUp) { @@ -81,7 +83,9 @@ public List GetGasRecordViewModels(List result, b Cost = currentObject.Cost, DeltaMileage = 0, MilesPerGallon = 0, - CostPerGallon = currentObject.Cost / convertedConsumption + CostPerGallon = currentObject.Cost / convertedConsumption, + IsFillToFull = currentObject.IsFillToFull, + MissedFuelUp = currentObject.MissedFuelUp }); } previousMileage = currentObject.Mileage; diff --git a/MapProfile/FuellyMappers.cs b/MapProfile/FuellyMappers.cs index 8f3ed5e9..33c13e74 100644 --- a/MapProfile/FuellyMappers.cs +++ b/MapProfile/FuellyMappers.cs @@ -16,7 +16,7 @@ public FuellyMapper() Map(m => m.PartialFuelUp).Name(["partial_fuelup"]); Map(m => m.IsFillToFull).Name(["isfilltofull", "filled up"]); Map(m => m.Description).Name(["description"]); - Map(m => m.MissedFuelUp).Name(["missed_fuelup"]); + Map(m => m.MissedFuelUp).Name(["missed_fuelup", "missedfuelup"]); } } } diff --git a/Models/GasRecord/GasRecordViewModel.cs b/Models/GasRecord/GasRecordViewModel.cs index e790af0c..8979c8db 100644 --- a/Models/GasRecord/GasRecordViewModel.cs +++ b/Models/GasRecord/GasRecordViewModel.cs @@ -18,5 +18,7 @@ public class GasRecordViewModel public int DeltaMileage { get; set; } public decimal MilesPerGallon { get; set; } public decimal CostPerGallon { get; set; } + public bool IsFillToFull { get; set; } + public bool MissedFuelUp { get; set; } } } diff --git a/Models/ImportModel.cs b/Models/ImportModel.cs index e9ae7e72..71281cad 100644 --- a/Models/ImportModel.cs +++ b/Models/ImportModel.cs @@ -40,6 +40,8 @@ public class GasRecordExportModel public string FuelConsumed { get; set; } public string Cost { get; set; } public string FuelEconomy { get; set; } + public string IsFillToFull { get; set; } + public string MissedFuelUp { get; set; } } public class ReminderExportModel { diff --git a/wwwroot/css/site.css b/wwwroot/css/site.css index c06850cb..fdd75c5b 100644 --- a/wwwroot/css/site.css +++ b/wwwroot/css/site.css @@ -231,3 +231,7 @@ html { display: none; } } + +.dropdown-menu.show{ + z-index: 1030; +} \ No newline at end of file From 971242b01556f91eeb1dc40465770454b1b6699d Mon Sep 17 00:00:00 2001 From: "DESKTOP-GENO133\\IvanPlex" Date: Mon, 15 Jan 2024 10:01:46 -0700 Subject: [PATCH 4/5] updated gas sample. --- wwwroot/defaults/gassample.csv | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/wwwroot/defaults/gassample.csv b/wwwroot/defaults/gassample.csv index fdeba51d..9dfd46bd 100644 --- a/wwwroot/defaults/gassample.csv +++ b/wwwroot/defaults/gassample.csv @@ -1,3 +1,3 @@ -Date,Odometer,FuelConsumed,Cost -5/8/2020,204836,8.331,16.24 -5/30/2020,205056,11.913,25.72 \ No newline at end of file +Date,Odometer,FuelConsumed,Cost,IsFillToFull,MissedFuelUp +5/8/2020,204836,8.331,16.24,True,False +5/30/2020,205056,11.913,25.72,True,False \ No newline at end of file From d2686949c5b9c2e45d956e5486b1f284d9284f00 Mon Sep 17 00:00:00 2001 From: "DESKTOP-GENO133\\IvanPlex" Date: Mon, 15 Jan 2024 10:05:04 -0700 Subject: [PATCH 5/5] added additional gas columns to API controller. --- Controllers/APIController.cs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Controllers/APIController.cs b/Controllers/APIController.cs index 73e2f344..f1e34fc5 100644 --- a/Controllers/APIController.cs +++ b/Controllers/APIController.cs @@ -107,7 +107,16 @@ public IActionResult TaxRecords(int vehicleId) public IActionResult GasRecords(int vehicleId, bool useMPG, bool useUKMPG) { var vehicleRecords = _gasRecordDataAccess.GetGasRecordsByVehicleId(vehicleId); - var result = _gasHelper.GetGasRecordViewModels(vehicleRecords, useMPG, useUKMPG).Select(x => new GasRecordExportModel { Date = x.Date, Odometer = x.Mileage.ToString(), Cost = x.Cost.ToString(), FuelConsumed = x.Gallons.ToString(), FuelEconomy = x.MilesPerGallon.ToString()}); + var result = _gasHelper.GetGasRecordViewModels(vehicleRecords, useMPG, useUKMPG) + .Select(x => new GasRecordExportModel { + Date = x.Date, + Odometer = x.Mileage.ToString(), + Cost = x.Cost.ToString(), + FuelConsumed = x.Gallons.ToString(), + FuelEconomy = x.MilesPerGallon.ToString(), + IsFillToFull = x.IsFillToFull.ToString(), + MissedFuelUp = x.MissedFuelUp.ToString() + }); return Json(result); } [TypeFilter(typeof(CollaboratorFilter))]
Date Odometer