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

88 lines
4.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.Bus;
using Sarand.Net.Standard.Base.Core;
using System.Collections.Generic;
namespace Sarand.BusinessMgr.Net.Standard.Dbas.UpdateLog
{
//=======================================================================
public class SbmUpdateLogItemMonitor_Affiliate : SbmUpdateLogItemMonitor
{
//-------------------------------------------------------------------
// Configuration.
public new class Config : SbmUpdateLogItemMonitor.Config
{
public Config(SbmInternals internals, SysId itemId) :
base(internals)
{
ItemType = (short)Sbm.ItemType.Affiliate;
ItemId = itemId;
}
}
//-------------------------------------------------------------------
// Data members.
private readonly List<TypeCodeDesc> affiliateTypes;
//-------------------------------------------------------------------
// Construction.
public SbmUpdateLogItemMonitor_Affiliate(SbmInternals internals, SbmAffiliate affiliate) :
base(new Config(internals, affiliate.Id))
{
affiliateTypes = SbmSystem.GetCodesOfType(UserContext, Sbm.SystemCode.AffiliateType);
RecordAttrValues(affiliate, false);
}
//-------------------------------------------------------------------
// Record attribute values.
public bool RecordUpdatedValues(SbmAffiliate affiliate)
{
return RecordAttrValues(affiliate, true);
}
private bool RecordAttrValues(SbmAffiliate affiliate, bool newValues)
{
ClearErrorState();
// Affiliate Properties - record values that may require logging.
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Type, affiliateTypes.GetDescForType(affiliate.AffiliateType, ((int)affiliate.AffiliateType).ToString()), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_PhoneMain, affiliate.PhoneMain, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_PhoneAlt, affiliate.PhoneAlt, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_PhoneFax, affiliate.PhoneFax, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Email, affiliate.Email, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Website, affiliate.Website, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_AffIdParent, SysId.ToInt(affiliate.AffiliateIdParent), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Name, affiliate.Name, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Abbrev, affiliate.Abbr, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Nature, affiliate.Nature, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Contact, affiliate.Contact, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_CompanyNo, affiliate.CompanyNo, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_VatReg, affiliate.VatReg, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_PhoneDirect, affiliate.PhoneDirect, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Title, affiliate.Title, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Initials, affiliate.Initials, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_LastName, affiliate.LastName, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_FirstName, affiliate.FirstName, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Salutation, affiliate.Salutation, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_BirthMonth, affiliate.PhoneMobile, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_PhoneMobile, affiliate.BirthDay, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_BirthDay, affiliate.BirthMonth, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_BirthYear, affiliate.BirthYear, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_MaritalStatus, affiliate.MaritalStatus, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Spouse, affiliate.Spouse, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Children, affiliate.Children, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Hometown, affiliate.Hometown, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_UserId, SysId.ToInt(affiliate.UserId), newValues);
// Common properties.
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Notes, affiliate.Notes, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Affiliate_Status, affiliate.StatusCode, newValues);
return !HasErrorState();
}
//-------------------------------------------------------------------
}
//=======================================================================
}