Files
BusinessMgr-2019/SaBusMgrStandardDbas/Dbas/UpdateLog/SbmUpdateLogItemMonitor_Transaction.cs
T

122 lines
8.3 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;
using Sarand.Net.Standard.Base.Core;
using System.Collections.Generic;
namespace Sarand.BusinessMgr.Net.Standard.Dbas.UpdateLog
{
//=======================================================================
public class SbmUpdateLogItemMonitor_Transaction : SbmUpdateLogItemMonitor
{
//-------------------------------------------------------------------
// Configuration.
public new class Config : SbmUpdateLogItemMonitor.Config
{
public Config(SbmInternals internals, SysId itemId) :
base(internals)
{
ItemType = (short)Sbm.ItemType.Transaction;
ItemId = itemId;
}
}
//-------------------------------------------------------------------
// Data members.
private readonly List<TypeCodeDesc> transactionTypes;
//-------------------------------------------------------------------
// Construction.
public SbmUpdateLogItemMonitor_Transaction(SbmInternals internals, SbmTransaction transaction) :
base(new Config(internals, transaction.Id))
{
transactionTypes = internals.GetApplicationCodes(Sbm.ApplicationCode.TransactionType);
RecordAttrValues(transaction, false);
}
//-------------------------------------------------------------------
// Record attribute values.
public bool RecordUpdatedValues(SbmTransaction transaction)
{
return RecordAttrValues(transaction, true);
}
private bool RecordAttrValues(SbmTransaction transaction, bool newValues)
{
ClearErrorState();
// Transaction Properties - record values that may require logging.
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AffIdOwner, SysId.ToInt(transaction.AffiliateIdOwner), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AssocId, SysId.ToInt(transaction.AssociationId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_Type, transactionTypes.GetDescForType(transaction.TransactionType, ((int)transaction.TransactionType).ToString()), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_Ref, transaction.Ref, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_RefInt, transaction.RefInt, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_RefExt, transaction.RefExt, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_RaisedBy, transaction.RaisedBy, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AffIdRaise, SysId.ToInt(transaction.AffiliateIdRaise), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AssocIdOffice, SysId.ToInt(transaction.AssociationIdOffice), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_ContactName, transaction.ContactName, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_Likelihood, transaction.Likelihood, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_TransIdSource, SysId.ToInt(transaction.TransactionIdSource), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_ReferCode, transaction.ReferCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_ReferSource, transaction.ReferSource, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AffIdRefer, SysId.ToInt(transaction.AffiliateIdRefer), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AssocIdContract, SysId.ToInt(transaction.AssociationIdContract), newValues);
//RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AssocIdDelivery, SysId.ToInt(transaction.AssocIdDelivery), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_Raised, transaction.Raised, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_Required, transaction.Required, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_InProgress, transaction.InProgress, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveredEst, transaction.DeliveredEst, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveredAct, transaction.DeliveredAct, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_Closed, transaction.Closed, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_Department, transaction.Department, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DescBrief, transaction.DescBrief, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DescIntro, transaction.DescIntro, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DescOutline, transaction.DescOutline, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DescDetail, transaction.DescDetail, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_ResponseCode, transaction.ResponseCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_ContactAreaCode, transaction.ContactAreaCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_Postcode, transaction.Postcode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_CurrencyId, SysId.ToInt(transaction.CurrencyId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_TaxCodeId, SysId.ToInt(transaction.TaxCodeId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AmountEst, transaction.AmountEst, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AmountMax, transaction.AmountMax, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AmountNet, transaction.AmountNet, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AmountTax, transaction.AmountTax, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_AmountTot, transaction.AmountTot, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_TimeEst, transaction.TimeEst, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_TimeAct, transaction.TimeAct, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_TimeTot, transaction.TimeTot, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_LocationIdStock, SysId.ToInt(transaction.LocationIdStock), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_Weight, transaction.Weight, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_UomIdWeight, SysId.ToInt(transaction.UomIdWeight), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_BoxCount, transaction.BoxCount, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryStatusCode, transaction.DeliveryStatusCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryTypeCode, transaction.DeliveryTypeCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryMethodCode, transaction.DeliveryMethodCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryCourierCode, transaction.DeliveryCourierCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryBookInCode, transaction.DeliveryBookInCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_StockPickerCode, transaction.StockPickerCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryRef, transaction.DeliveryRef, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryComment, transaction.DeliveryComment, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryAmountNet, transaction.DeliveryAmountNet, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_TaxCodeIdDelivery, SysId.ToInt(transaction.TaxCodeIdDelivery), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryAmountTax, transaction.DeliveryAmountTax, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryAmountTot, transaction.DeliveryAmountTot, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_CostLabourRateHour, transaction.CostLabourRateHour, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryDepartment, transaction.DeliveryDepartment, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_DeliveryNominalCode, transaction.DeliveryNominalCode, newValues);
// Common properties.
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_Notes, transaction.Notes, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Transaction_Status, SacsSystem.GetStatusCode(transaction.Status), newValues);
return OK;
}
//-------------------------------------------------------------------
}
//=======================================================================
}