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(); } //------------------------------------------------------------------- } //======================================================================= }