added setting to auto-insert odometer readings.
This commit is contained in:
@@ -551,6 +551,16 @@ namespace CarCareTracker.Controllers
|
|||||||
[HttpPost]
|
[HttpPost]
|
||||||
public IActionResult SaveGasRecordToVehicleId(GasRecordInput gasRecord)
|
public IActionResult SaveGasRecordToVehicleId(GasRecordInput gasRecord)
|
||||||
{
|
{
|
||||||
|
if (gasRecord.Id == default && _config.GetUserConfig(User).EnableAutoOdometerInsert)
|
||||||
|
{
|
||||||
|
_odometerRecordDataAccess.SaveOdometerRecordToVehicle(new OdometerRecord
|
||||||
|
{
|
||||||
|
Date = DateTime.Parse(gasRecord.Date),
|
||||||
|
VehicleId = gasRecord.VehicleId,
|
||||||
|
Mileage = gasRecord.Mileage,
|
||||||
|
Notes = $"Auto Insert From Gas Record. {gasRecord.Notes}"
|
||||||
|
});
|
||||||
|
}
|
||||||
gasRecord.Files = gasRecord.Files.Select(x => { return new UploadedFiles { Name = x.Name, Location = _fileHelper.MoveFileFromTemp(x.Location, "documents/") }; }).ToList();
|
gasRecord.Files = gasRecord.Files.Select(x => { return new UploadedFiles { Name = x.Name, Location = _fileHelper.MoveFileFromTemp(x.Location, "documents/") }; }).ToList();
|
||||||
var result = _gasRecordDataAccess.SaveGasRecordToVehicle(gasRecord.ToGasRecord());
|
var result = _gasRecordDataAccess.SaveGasRecordToVehicle(gasRecord.ToGasRecord());
|
||||||
return Json(result);
|
return Json(result);
|
||||||
@@ -612,6 +622,16 @@ namespace CarCareTracker.Controllers
|
|||||||
[HttpPost]
|
[HttpPost]
|
||||||
public IActionResult SaveServiceRecordToVehicleId(ServiceRecordInput serviceRecord)
|
public IActionResult SaveServiceRecordToVehicleId(ServiceRecordInput serviceRecord)
|
||||||
{
|
{
|
||||||
|
if (serviceRecord.Id == default && _config.GetUserConfig(User).EnableAutoOdometerInsert)
|
||||||
|
{
|
||||||
|
_odometerRecordDataAccess.SaveOdometerRecordToVehicle(new OdometerRecord
|
||||||
|
{
|
||||||
|
Date = DateTime.Parse(serviceRecord.Date),
|
||||||
|
VehicleId = serviceRecord.VehicleId,
|
||||||
|
Mileage = serviceRecord.Mileage,
|
||||||
|
Notes = $"Auto Insert From Service Record: {serviceRecord.Description}"
|
||||||
|
});
|
||||||
|
}
|
||||||
//move files from temp.
|
//move files from temp.
|
||||||
serviceRecord.Files = serviceRecord.Files.Select(x => { return new UploadedFiles { Name = x.Name, Location = _fileHelper.MoveFileFromTemp(x.Location, "documents/") }; }).ToList();
|
serviceRecord.Files = serviceRecord.Files.Select(x => { return new UploadedFiles { Name = x.Name, Location = _fileHelper.MoveFileFromTemp(x.Location, "documents/") }; }).ToList();
|
||||||
var result = _serviceRecordDataAccess.SaveServiceRecordToVehicle(serviceRecord.ToServiceRecord());
|
var result = _serviceRecordDataAccess.SaveServiceRecordToVehicle(serviceRecord.ToServiceRecord());
|
||||||
@@ -671,6 +691,16 @@ namespace CarCareTracker.Controllers
|
|||||||
[HttpPost]
|
[HttpPost]
|
||||||
public IActionResult SaveCollisionRecordToVehicleId(CollisionRecordInput collisionRecord)
|
public IActionResult SaveCollisionRecordToVehicleId(CollisionRecordInput collisionRecord)
|
||||||
{
|
{
|
||||||
|
if (collisionRecord.Id == default && _config.GetUserConfig(User).EnableAutoOdometerInsert)
|
||||||
|
{
|
||||||
|
_odometerRecordDataAccess.SaveOdometerRecordToVehicle(new OdometerRecord
|
||||||
|
{
|
||||||
|
Date = DateTime.Parse(collisionRecord.Date),
|
||||||
|
VehicleId = collisionRecord.VehicleId,
|
||||||
|
Mileage = collisionRecord.Mileage,
|
||||||
|
Notes = $"Auto Insert From Repair Record: {collisionRecord.Description}"
|
||||||
|
});
|
||||||
|
}
|
||||||
//move files from temp.
|
//move files from temp.
|
||||||
collisionRecord.Files = collisionRecord.Files.Select(x => { return new UploadedFiles { Name = x.Name, Location = _fileHelper.MoveFileFromTemp(x.Location, "documents/") }; }).ToList();
|
collisionRecord.Files = collisionRecord.Files.Select(x => { return new UploadedFiles { Name = x.Name, Location = _fileHelper.MoveFileFromTemp(x.Location, "documents/") }; }).ToList();
|
||||||
var result = _collisionRecordDataAccess.SaveCollisionRecordToVehicle(collisionRecord.ToCollisionRecord());
|
var result = _collisionRecordDataAccess.SaveCollisionRecordToVehicle(collisionRecord.ToCollisionRecord());
|
||||||
@@ -1181,6 +1211,16 @@ namespace CarCareTracker.Controllers
|
|||||||
[HttpPost]
|
[HttpPost]
|
||||||
public IActionResult SaveUpgradeRecordToVehicleId(UpgradeRecordInput upgradeRecord)
|
public IActionResult SaveUpgradeRecordToVehicleId(UpgradeRecordInput upgradeRecord)
|
||||||
{
|
{
|
||||||
|
if (upgradeRecord.Id == default && _config.GetUserConfig(User).EnableAutoOdometerInsert)
|
||||||
|
{
|
||||||
|
_odometerRecordDataAccess.SaveOdometerRecordToVehicle(new OdometerRecord
|
||||||
|
{
|
||||||
|
Date = DateTime.Parse(upgradeRecord.Date),
|
||||||
|
VehicleId = upgradeRecord.VehicleId,
|
||||||
|
Mileage = upgradeRecord.Mileage,
|
||||||
|
Notes = $"Auto Insert From Upgrade Record: {upgradeRecord.Description}"
|
||||||
|
});
|
||||||
|
}
|
||||||
//move files from temp.
|
//move files from temp.
|
||||||
upgradeRecord.Files = upgradeRecord.Files.Select(x => { return new UploadedFiles { Name = x.Name, Location = _fileHelper.MoveFileFromTemp(x.Location, "documents/") }; }).ToList();
|
upgradeRecord.Files = upgradeRecord.Files.Select(x => { return new UploadedFiles { Name = x.Name, Location = _fileHelper.MoveFileFromTemp(x.Location, "documents/") }; }).ToList();
|
||||||
var result = _upgradeRecordDataAccess.SaveUpgradeRecordToVehicle(upgradeRecord.ToUpgradeRecord());
|
var result = _upgradeRecordDataAccess.SaveUpgradeRecordToVehicle(upgradeRecord.ToUpgradeRecord());
|
||||||
@@ -1381,6 +1421,16 @@ namespace CarCareTracker.Controllers
|
|||||||
var result = _planRecordDataAccess.SavePlanRecordToVehicle(existingRecord);
|
var result = _planRecordDataAccess.SavePlanRecordToVehicle(existingRecord);
|
||||||
if (planProgress == PlanProgress.Done)
|
if (planProgress == PlanProgress.Done)
|
||||||
{
|
{
|
||||||
|
if (_config.GetUserConfig(User).EnableAutoOdometerInsert)
|
||||||
|
{
|
||||||
|
_odometerRecordDataAccess.SaveOdometerRecordToVehicle(new OdometerRecord
|
||||||
|
{
|
||||||
|
Date = DateTime.Now,
|
||||||
|
VehicleId = existingRecord.VehicleId,
|
||||||
|
Mileage = odometer,
|
||||||
|
Notes = $"Auto Insert From Plan Record: {existingRecord.Description}"
|
||||||
|
});
|
||||||
|
}
|
||||||
//convert plan record to service/upgrade/repair record.
|
//convert plan record to service/upgrade/repair record.
|
||||||
if (existingRecord.ImportMode == ImportMode.ServiceRecord)
|
if (existingRecord.ImportMode == ImportMode.ServiceRecord)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -96,6 +96,7 @@ namespace CarCareTracker.Helper
|
|||||||
UseUKMPG = bool.Parse(_config[nameof(UserConfig.UseUKMPG)]),
|
UseUKMPG = bool.Parse(_config[nameof(UserConfig.UseUKMPG)]),
|
||||||
UseThreeDecimalGasCost = bool.Parse(_config[nameof(UserConfig.UseThreeDecimalGasCost)]),
|
UseThreeDecimalGasCost = bool.Parse(_config[nameof(UserConfig.UseThreeDecimalGasCost)]),
|
||||||
EnableAutoReminderRefresh = bool.Parse(_config[nameof(UserConfig.EnableAutoReminderRefresh)]),
|
EnableAutoReminderRefresh = bool.Parse(_config[nameof(UserConfig.EnableAutoReminderRefresh)]),
|
||||||
|
EnableAutoOdometerInsert = bool.Parse(_config[nameof(UserConfig.EnableAutoOdometerInsert)]),
|
||||||
VisibleTabs = _config.GetSection("VisibleTabs").Get<List<ImportMode>>(),
|
VisibleTabs = _config.GetSection("VisibleTabs").Get<List<ImportMode>>(),
|
||||||
DefaultTab = (ImportMode)int.Parse(_config[nameof(UserConfig.DefaultTab)])
|
DefaultTab = (ImportMode)int.Parse(_config[nameof(UserConfig.DefaultTab)])
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
public bool UseUKMPG {get;set;}
|
public bool UseUKMPG {get;set;}
|
||||||
public bool UseThreeDecimalGasCost { get; set; }
|
public bool UseThreeDecimalGasCost { get; set; }
|
||||||
public bool EnableAutoReminderRefresh { get; set; }
|
public bool EnableAutoReminderRefresh { get; set; }
|
||||||
|
public bool EnableAutoOdometerInsert { get; set; }
|
||||||
public string UserNameHash { get; set; }
|
public string UserNameHash { get; set; }
|
||||||
public string UserPasswordHash { get; set;}
|
public string UserPasswordHash { get; set;}
|
||||||
public List<ImportMode> VisibleTabs { get; set; } = new List<ImportMode>() {
|
public List<ImportMode> VisibleTabs { get; set; } = new List<ImportMode>() {
|
||||||
|
|||||||
@@ -39,6 +39,10 @@
|
|||||||
<input class="form-check-input" onChange="updateSettings()" type="checkbox" role="switch" id="enableAutoReminderRefresh" checked="@Model.EnableAutoReminderRefresh">
|
<input class="form-check-input" onChange="updateSettings()" type="checkbox" role="switch" id="enableAutoReminderRefresh" checked="@Model.EnableAutoReminderRefresh">
|
||||||
<label class="form-check-label" for="enableAutoReminderRefresh">Auto Refresh Lapsed Recurring Reminders</label>
|
<label class="form-check-label" for="enableAutoReminderRefresh">Auto Refresh Lapsed Recurring Reminders</label>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-check form-switch">
|
||||||
|
<input class="form-check-input" onChange="updateSettings()" type="checkbox" role="switch" id="enableAutoOdometerInsert" checked="@Model.EnableAutoOdometerInsert">
|
||||||
|
<label class="form-check-label" for="enableAutoOdometerInsert">Auto Insert Odometer Records<br /><small class="text-body-secondary">Only when Adding Service/Repair/Upgrade/Fuel Record or Completing a Plan</small></label>
|
||||||
|
</div>
|
||||||
@if (User.IsInRole(nameof(UserData.IsRootUser)))
|
@if (User.IsInRole(nameof(UserData.IsRootUser)))
|
||||||
{
|
{
|
||||||
<div class="form-check form-switch">
|
<div class="form-check form-switch">
|
||||||
@@ -208,6 +212,7 @@
|
|||||||
useUKMpg: $("#useUKMPG").is(":checked"),
|
useUKMpg: $("#useUKMPG").is(":checked"),
|
||||||
useThreeDecimalGasCost: $("#useThreeDecimal").is(":checked"),
|
useThreeDecimalGasCost: $("#useThreeDecimal").is(":checked"),
|
||||||
enableAutoReminderRefresh: $("#enableAutoReminderRefresh").is(":checked"),
|
enableAutoReminderRefresh: $("#enableAutoReminderRefresh").is(":checked"),
|
||||||
|
enableAutoOdometerInsert: $("#enableAutoOdometerInsert").is(":checked"),
|
||||||
visibleTabs: visibleTabs,
|
visibleTabs: visibleTabs,
|
||||||
defaultTab: defaultTab
|
defaultTab: defaultTab
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,7 +52,7 @@
|
|||||||
<tr class="d-flex" style="cursor:pointer;" onclick="showEditOdometerRecordModal(@odometerRecord.Id)">
|
<tr class="d-flex" style="cursor:pointer;" onclick="showEditOdometerRecordModal(@odometerRecord.Id)">
|
||||||
<td class="col-2 col-xl-1">@odometerRecord.Date.ToShortDateString()</td>
|
<td class="col-2 col-xl-1">@odometerRecord.Date.ToShortDateString()</td>
|
||||||
<td class="col-3">@odometerRecord.Mileage</td>
|
<td class="col-3">@odometerRecord.Mileage</td>
|
||||||
<td class="col-7 col-xl-8 text-truncate">@CarCareTracker.Helper.StaticHelper.TruncateStrings(odometerRecord.Notes)</td>
|
<td class="col-7 col-xl-8 text-truncate">@CarCareTracker.Helper.StaticHelper.TruncateStrings(odometerRecord.Notes, 75)</td>
|
||||||
</tr>
|
</tr>
|
||||||
}
|
}
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
"EnableAuth": false,
|
"EnableAuth": false,
|
||||||
"HideZero": false,
|
"HideZero": false,
|
||||||
"EnableAutoReminderRefresh": false,
|
"EnableAutoReminderRefresh": false,
|
||||||
|
"EnableAutoOdometerInsert": false,
|
||||||
"UseUKMPG": false,
|
"UseUKMPG": false,
|
||||||
"UseThreeDecimalGasCost": true,
|
"UseThreeDecimalGasCost": true,
|
||||||
"VisibleTabs": [ 0, 1, 4, 2, 3, 6, 5, 8 ],
|
"VisibleTabs": [ 0, 1, 4, 2, 3, 6, 5, 8 ],
|
||||||
|
|||||||
Reference in New Issue
Block a user