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

111 lines
7.0 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_Requirement : SbmUpdateLogItemMonitor
{
//-------------------------------------------------------------------
// Configuration.
public new class Config : SbmUpdateLogItemMonitor.Config
{
public Config(SbmInternals internals, SysId itemId) :
base(internals)
{
ItemType = (short)Sbm.ItemType.Requirement;
ItemId = itemId;
}
}
//-------------------------------------------------------------------
// Data members.
private readonly List<TypeCodeDesc> requirementTypes;
//-------------------------------------------------------------------
// Construction.
public SbmUpdateLogItemMonitor_Requirement(SbmInternals internals, SbmRequirement requirement) :
base(new Config(internals, requirement.Id))
{
requirementTypes = internals.GetSystemCodes(Sbm.SystemCode.RequirementType);
RecordAttrValues(requirement, false);
}
//-------------------------------------------------------------------
// Record attribute values.
public bool RecordUpdatedValues(SbmRequirement requirement)
{
return RecordAttrValues(requirement, true);
}
private bool RecordAttrValues(SbmRequirement requirement, bool newValues)
{
ClearErrorState();
// Requirement Properties - record values that may require logging.
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_AffIdOwner, SysId.ToInt(requirement.AffiliateIdOwner), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_AssocId, SysId.ToInt(requirement.AssociationId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_TransId, SysId.ToInt(requirement.TransactionId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_Type, requirementTypes.GetDescForType(requirement.RequirementType, ((int)requirement.RequirementType).ToString()), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_Seq, requirement.Seq, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_ReqntIdSource, SysId.ToInt(requirement.RequirementIdSource), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_Required, requirement.Required, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_Started, requirement.Started, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_Completed, requirement.Completed, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_JobNumber, requirement.JobNumber, newValues);
//RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_AssIdSubContract, requirement.AssIdSubContract, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_CommodityId, SysId.ToInt(requirement.CommodityId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_ProductCode, requirement.ProductCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_AssetId, SysId.ToInt(requirement.AssetId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_DescBrief, requirement.DescBrief, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_DescIntro, requirement.DescIntro, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_DescOutline, requirement.DescOutline, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_DescDetail, requirement.DescDetail, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_PromotionCode, requirement.PromotionCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_NominalCode, requirement.NominalCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_Quantity, requirement.Quantity, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_QuantityProd, requirement.QuantityProd, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_UomId, SysId.ToInt(requirement.UomId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_Weight, requirement.Weight, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_UomIdWeight, SysId.ToInt(requirement.UomIdWeight), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_MaterialSourceCode, requirement.MaterialSourceCode, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_AmountUnit, requirement.AmountUnit, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_AmountAct, requirement.AmountAct, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_AmountDisc, requirement.AmountDisc, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_AmountNet, requirement.AmountNet, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_TaxCodeId, SysId.ToInt(requirement.TaxCodeId), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_TaxRate, requirement.TaxRate, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_AmountTax, requirement.AmountTax, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_AmountTot, requirement.AmountTot, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_TimeEst, requirement.TimeEst, newValues);
//RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_TimeEstChunks, requirement.TimeEstChunks, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_TimeAct, requirement.TimeAct, newValues);
//RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_TimeActChunks, requirement.TimeActChunks, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_TimeTot, requirement.TimeTot, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_LocationIdStock, SysId.ToInt(requirement.LocationIdStock), newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_CostLabourHours, requirement.CostLabourHours, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_CostLabourRateHour, requirement.CostLabourRateHour, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_CostLabour, requirement.CostLabour, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_CostCommodity, requirement.CostCommodity, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_CostPurchase, requirement.CostPurchase, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_CostProcess, requirement.CostProcess, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_CostAdditional, requirement.CostAdditional, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_CostTotal, requirement.CostTotal, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_CostCalculated, requirement.CostCalculated, newValues);
// Common properties.
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_Notes, requirement.Notes, newValues);
RecordAttrValue(SbmDbDfn.ColumnIdx.Requirement_Status, SacsSystem.GetStatusCode(requirement.Status), newValues);
return OK;
}
//-------------------------------------------------------------------
}
//=======================================================================
}