using System.Linq.Expressions;
using JdeScoping.Core.Models.Inventory;
using JdeScoping.DataSync.Contracts;
namespace JdeScoping.DataSync.Configuration.MergeConfigurations;
///
/// Merge configuration for Item entities.
///
public sealed class ItemMergeConfiguration : IMergeConfiguration-
{
public string TableName => "Item";
public Expression> MatchOn =>
x => x.ShortItemNumber;
public Expression>? UpdateColumns =>
x => new
{
x.ItemNumber,
x.Description,
x.PlanningFamily,
x.StockingType
};
public Expression>? UpdateWhen =>
(src, tgt) => src.LastUpdateDt > tgt.LastUpdateDt;
public Expression>? InsertColumns => null;
}