70 lines
3.0 KiB
C#
70 lines
3.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_Commodity : SbmUpdateLogItemMonitor
|
|
{
|
|
//-------------------------------------------------------------------
|
|
// Configuration.
|
|
public new class Config : SbmUpdateLogItemMonitor.Config
|
|
{
|
|
public Config(SbmInternals internals, SysId itemId) :
|
|
base(internals)
|
|
{
|
|
ItemType = (short)Sbm.ItemType.Commodity;
|
|
ItemId = itemId;
|
|
}
|
|
}
|
|
|
|
//-------------------------------------------------------------------
|
|
// Data members.
|
|
private readonly List<TypeCodeDesc> commodityTypes;
|
|
|
|
//-------------------------------------------------------------------
|
|
// Construction.
|
|
public SbmUpdateLogItemMonitor_Commodity(SbmInternals internals, SbmCommodity commodity) :
|
|
base(new Config(internals, commodity.Id))
|
|
{
|
|
commodityTypes = internals.GetApplicationCodes(Sbm.ApplicationCode.CommodityType);
|
|
RecordAttrValues(commodity, false);
|
|
}
|
|
|
|
//-------------------------------------------------------------------
|
|
// Record attribute values.
|
|
public bool RecordUpdatedValues(SbmCommodity commodity)
|
|
{
|
|
return RecordAttrValues(commodity, true);
|
|
}
|
|
private bool RecordAttrValues(SbmCommodity commodity, bool newValues)
|
|
{
|
|
ClearErrorState();
|
|
|
|
// Commodity Properties - record values that may require logging.
|
|
RecordAttrValue(SbmDbDfn.ColumnIdx.Commodity_Type, commodityTypes.GetDescForType(commodity.CommodityType, ((int)commodity.CommodityType).ToString()), newValues);
|
|
RecordAttrValue(SbmDbDfn.ColumnIdx.Commodity_Code, commodity.Code, newValues);
|
|
RecordAttrValue(SbmDbDfn.ColumnIdx.Commodity_DescBrief, commodity.DescBrief, newValues);
|
|
RecordAttrValue(SbmDbDfn.ColumnIdx.Commodity_DrawingNo, commodity.DrawingNumber, newValues);
|
|
RecordAttrValue(SbmDbDfn.ColumnIdx.Commodity_DrawingIssue, commodity.DrawingIssue, newValues);
|
|
RecordAttrValue(SbmDbDfn.ColumnIdx.Commodity_AssIdSupplier, SysId.ToInt(commodity.AssociationIdSupplier), newValues);
|
|
RecordAttrValue(SbmDbDfn.ColumnIdx.Commodity_CostPrice, commodity.CostPrice, newValues);
|
|
RecordAttrValue(SbmDbDfn.ColumnIdx.Commodity_AssIdCustomer, SysId.ToInt(commodity.AssociationIdCustomer), newValues);
|
|
RecordAttrValue(SbmDbDfn.ColumnIdx.Commodity_SalesPrice, commodity.SalesPrice, newValues);
|
|
// Common properties.
|
|
RecordAttrValue(SbmDbDfn.ColumnIdx.Commodity_Notes, commodity.Notes, newValues);
|
|
RecordAttrValue(SbmDbDfn.ColumnIdx.Commodity_Status, SacsSystem.GetStatusCode(commodity.Status), newValues);
|
|
|
|
return OK;
|
|
}
|
|
|
|
//-------------------------------------------------------------------
|
|
}
|
|
//=======================================================================
|
|
}
|