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

96 lines
5.6 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_Constituent : SbmUpdateLogItemMonitor
{
//-------------------------------------------------------------------
// Configuration.
public new class Config : SbmUpdateLogItemMonitor.Config
{
public Config(SbmInternals internals, SysId itemId) :
base(internals)
{
ItemType = (short)Sbm.ItemType.Constituent;
ItemId = itemId;
}
}
//-------------------------------------------------------------------
// Data members.
private readonly List<TypeCodeDesc> constituentTypes;
//-------------------------------------------------------------------
// Construction.
public SbmUpdateLogItemMonitor_Constituent(SbmInternals internals, SbmConstituent constituent) :
base(new Config(internals, constituent.Id))
{
constituentTypes = SbmSystem.GetCodesOfType(UserContext, Sbm.SystemCode.ConstituentType);
RecordAttrValues(constituent, false);
}
//-------------------------------------------------------------------
// Record attribute values.
public bool RecordUpdatedValues(SbmConstituent constituent)
{
return RecordAttrValues(constituent, true);
}
private bool RecordAttrValues(SbmConstituent constituent, bool newValues)
{
ClearErrorState();
// Constituent Properties - record values that may require logging.
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_AffIdOwner, SysId.ToInt(constituent.AffiliateIdOwner), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_AffIdTarget, SysId.ToInt(constituent.AffiliateIdTarget), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_AssocId, SysId.ToInt(constituent.AssociationId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_TransId, SysId.ToInt(constituent.TransactionId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_ReqntId, SysId.ToInt(constituent.RequirementId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_ConstId, SysId.ToInt(constituent.ConstituentId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_AssetId, SysId.ToInt(constituent.AssetId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_ProcessId, SysId.ToInt(constituent.ProcessId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_AssocIdContractor, SysId.ToInt(constituent.AssociationIdContractor), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Address_ItemType, constituentTypes.GetDescForType(constituent.ConstituentType, ((int)constituent.ConstituentType).ToString()), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Reference, constituent.Reference, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Seq, constituent.Seq, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Effective, constituent.Effective, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Required, constituent.Required, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Started, constituent.Started, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Completed, constituent.Completed, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_DescBrief, constituent.DescBrief, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_DescOutline, constituent.DescOutline, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_DescDetail, constituent.DescDetail, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_TaskNumber, constituent.TaskNumber, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Priority, constituent.Priority, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Category, constituent.Category, newValues);
//RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Reference, constituent.Reference, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Quantity, constituent.Quantity, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_UomId, SysId.ToInt(constituent.UomId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_UnitCost, constituent.UnitCost, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_AmountEst, constituent.AmountEst, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_AmountNet, constituent.AmountNet, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_TaxCodeId, SysId.ToInt(constituent.TaxCodeId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_TaxRate, constituent.TaxRate, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_AmountTax, constituent.AmountTax, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_AmountTot, constituent.AmountTot, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_TaxRateRebate, constituent.TaxRateRebate, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_AmountTaxRebate, constituent.AmountTaxRebate, newValues);
// Common properties.
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Notes, constituent.Notes, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Constituent_Status, SacsSystem.GetStatusCode(constituent.Status), newValues);
return !HasErrorState();
}
//-------------------------------------------------------------------
}
//=======================================================================
}