122 lines
8.3 KiB
C#
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 = SbmSystem.GetCodesOfType(UserContext, Sbm.SystemCode.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.Address_ItemType, 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 !HasErrorState();
|
|
}
|
|
|
|
//-------------------------------------------------------------------
|
|
}
|
|
//=======================================================================
|
|
}
|