Merge pull request #633 from hargata/Hargata/563.619

added flag for optional odometer.
This commit is contained in:
Hargata Softworks
2024-09-24 19:20:30 -06:00
committed by GitHub
12 changed files with 16 additions and 6 deletions

View File

@@ -72,6 +72,7 @@ namespace CarCareTracker.Controllers
IsElectric = x.IsElectric,
IsDiesel = x.IsDiesel,
UseHours = x.UseHours,
OdometerOptional = x.OdometerOptional,
ExtraFields = x.ExtraFields,
Tags = x.Tags,
DashboardMetrics = x.DashboardMetrics

View File

@@ -15,6 +15,7 @@
public bool IsElectric { get; set; } = false;
public bool IsDiesel { get; set; } = false;
public bool UseHours { get; set; } = false;
public bool OdometerOptional { get; set; } = false;
public List<ExtraField> ExtraFields { get; set; } = new List<ExtraField>();
public List<string> Tags { get; set; } = new List<string>();
public bool HasOdometerAdjustment { get; set; } = false;

View File

@@ -12,6 +12,7 @@
public bool IsElectric { get; set; } = false;
public bool IsDiesel { get; set; } = false;
public bool UseHours { get; set; } = false;
public bool OdometerOptional { get; set; } = false;
public List<ExtraField> ExtraFields { get; set; } = new List<ExtraField>();
public List<string> Tags { get; set; } = new List<string>();
//Dashboard Metric Attributes

View File

@@ -171,6 +171,7 @@
function GetVehicleId() {
return {
vehicleId: @Model.Id,
odometerOptional: @Model.OdometerOptional.ToString().ToLower(),
hasOdometerAdjustment: @Model.HasOdometerAdjustment.ToString().ToLower(),
odometerDifference: decodeHTMLEntities('@Model.OdometerDifference'),
odometerMultiplier: decodeHTMLEntities('@Model.OdometerMultiplier')

View File

@@ -56,6 +56,10 @@
<input class="form-check-input" type="checkbox" role="switch" id="inputUseHours" checked="@Model.UseHours">
<label class="form-check-label" for="inputUseHours">@translator.Translate(userLanguage, "Use Engine Hours")</label>
</div>
<div class="form-check form-switch">
<input class="form-check-input" type="checkbox" role="switch" id="inputOdometerOptional" checked="@Model.OdometerOptional">
<label class="form-check-label" for="inputOdometerOptional">@translator.Translate(userLanguage, "Odometer Optional")</label>
</div>
<div class="form-check form-switch">
<input class="form-check-input" type="checkbox" role="switch" onchange="toggleOdometerAdjustment()" id="inputHasOdometerAdjustment" checked="@Model.HasOdometerAdjustment">
<label class="form-check-label" for="inputHasOdometerAdjustment">@translator.Translate(userLanguage, "Odometer Adjustments")</label>

File diff suppressed because one or more lines are too long

View File

@@ -100,7 +100,7 @@ function getAndValidateCollisionRecordValues() {
var collisionRecordId = getCollisionRecordModelData().id;
var addReminderRecord = $("#addReminderCheck").is(":checked");
//Odometer Adjustments
if (isNaN(collisionMileage)) {
if (isNaN(collisionMileage) && GetVehicleId().odometerOptional) {
collisionMileage = '0';
}
collisionMileage = GetAdjustedOdometer(collisionRecordId, collisionMileage);

View File

@@ -99,7 +99,7 @@ function getAndValidateGasRecordValues() {
var vehicleId = GetVehicleId().vehicleId;
var gasRecordId = getGasRecordModelData().id;
//Odometer Adjustments
if (isNaN(gasMileage)) {
if (isNaN(gasMileage) && GetVehicleId().odometerOptional) {
gasMileage = '0';
}
gasMileage = GetAdjustedOdometer(gasRecordId, gasMileage);

View File

@@ -288,7 +288,7 @@ function updatePlanRecordProgress(newProgress) {
focusConfirm: false,
preConfirm: () => {
var odometer = $("#inputOdometer").val();
if (odometer.trim() == '') {
if (odometer.trim() == '' && GetVehicleId().odometerOptional) {
odometer = '0';
}
if (!odometer || isNaN(odometer)) {

View File

@@ -100,7 +100,7 @@ function getAndValidateServiceRecordValues() {
var serviceRecordId = getServiceRecordModelData().id;
var addReminderRecord = $("#addReminderCheck").is(":checked");
//Odometer Adjustments
if (isNaN(serviceMileage)) {
if (isNaN(serviceMileage) && GetVehicleId().odometerOptional) {
serviceMileage = '0';
}
serviceMileage = GetAdjustedOdometer(serviceRecordId, serviceMileage);

View File

@@ -43,6 +43,7 @@ function saveVehicle(isEdit) {
var vehicleIsElectric = $("#inputFuelType").val() == 'Electric';
var vehicleIsDiesel = $("#inputFuelType").val() == 'Diesel';
var vehicleUseHours = $("#inputUseHours").is(":checked");
var vehicleOdometerOptional = $("#inputOdometerOptional").is(":checked");
var vehicleHasOdometerAdjustment = $("#inputHasOdometerAdjustment").is(':checked');
var vehicleOdometerMultiplier = $("#inputOdometerMultiplier").val();
var vehicleOdometerDifference = parseInt(globalParseFloat($("#inputOdometerDifference").val())).toString();
@@ -129,6 +130,7 @@ function saveVehicle(isEdit) {
extraFields: extraFields.extraFields,
purchaseDate: vehiclePurchaseDate,
soldDate: vehicleSoldDate,
odometerOptional: vehicleOdometerOptional,
hasOdometerAdjustment: vehicleHasOdometerAdjustment,
odometerMultiplier: vehicleOdometerMultiplier,
odometerDifference: vehicleOdometerDifference,

View File

@@ -100,7 +100,7 @@ function getAndValidateUpgradeRecordValues() {
var upgradeRecordId = getUpgradeRecordModelData().id;
var addReminderRecord = $("#addReminderCheck").is(":checked");
//Odometer Adjustments
if (isNaN(upgradeMileage)) {
if (isNaN(upgradeMileage) && GetVehicleId().odometerOptional) {
upgradeMileage = '0';
}
upgradeMileage = GetAdjustedOdometer(upgradeRecordId, upgradeMileage);