Files
BusinessMgr-2019/SaBusMgrStandardDbas/Dbas/UpdateLog/SbmUpdateLogItemMonitor_Vehicle.cs
T
2021-07-08 20:50:46 +01:00

86 lines
4.4 KiB
C#

using Sarand.BusinessMgr.Net.Standard.Base.App;
using Sarand.BusinessMgr.Net.Standard.Base.Bus;
using Sarand.BusinessMgr.Net.Standard.Base.UpdateLog;
using Sarand.Net.Standard.Base.App;
using Sarand.Net.Standard.Base.Bus;
namespace Sarand.BusinessMgr.Net.Standard.Dbas.UpdateLog
{
//=======================================================================
public class SbmUpdateLogItemMonitor_Vehicle : SbmUpdateLogItemMonitor
{
//-------------------------------------------------------------------
// Configuration.
public new class Config : SbmUpdateLogItemMonitor.Config
{
public Config(SbmInternals internals, SysId itemId) :
base(internals)
{
ItemType = (short)Sbm.ItemType.Vehicle;
ItemId = itemId;
}
}
//-------------------------------------------------------------------
// Data members.
//-------------------------------------------------------------------
// Construction.
public SbmUpdateLogItemMonitor_Vehicle(SbmInternals internals, SbmVehicle vehicle) :
base(new Config(internals, vehicle.Id))
{
RecordAttrValues(vehicle, false);
}
//-------------------------------------------------------------------
// Record attribute values.
public bool RecordUpdatedValues(SbmVehicle vehicle)
{
return RecordAttrValues(vehicle, true);
}
private bool RecordAttrValues(SbmVehicle vehicle, bool newValues)
{
ClearErrorState();
// Vehicle Properties - record values that may require logging.
//RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_AssetSerial, vehicle.AssetSerial, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_VehicleClassId, SysId.ToInt(vehicle.VehicleClassId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_RegNumber, vehicle.RegNumber, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_VIN, vehicle.Vin, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_CapCode, vehicle.CapCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_KeyNumber, vehicle.KeyNumber, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_KeyLocation, vehicle.KeyLocation, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_EngineNumber, vehicle.EngineNumber, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_EngineCapacity, vehicle.EngineCapacity, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_Seats, vehicle.Seats, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_Weight, vehicle.Weight, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_ManufactureYear, vehicle.ManufactureYear, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_BuildOn, vehicle.BuildOn, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_FirstRegisterOn, vehicle.FirstRegisterOn, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_RegisterOn, vehicle.RegisterOn, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_RegNumberPrev, vehicle.RegNumberPrev, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_PurchaseOdo, vehicle.PurchaseOdo, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_TachoCode, vehicle.TachoCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_TachoId, vehicle.TachoId, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_LastServiceOdo, vehicle.LastServiceOdo, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_LastServiceOn, vehicle.LastServiceOn, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_NextServiceOdo, vehicle.NextServiceOdo, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_NextServiceOn, vehicle.NextServiceOn, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_MotOn, vehicle.MotOn, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_MotNo, vehicle.MotNo, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_NextTaxOn, vehicle.NextTaxOn, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_LatestOdo, vehicle.LatestOdo, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_LatestOdoOn, vehicle.LatestOdoOn, newValues);
// Common properties.
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_Notes, vehicle.Notes, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.SaVehicle_Status, SacsSystem.GetStatusCode(vehicle.Status), newValues);
return !HasErrorState();
}
//-------------------------------------------------------------------
}
//=======================================================================
}