65 lines
2.2 KiB
C#
65 lines
2.2 KiB
C#
using System.Linq;
|
|
using BeWo.Data.Access;
|
|
using BeWo.Data.Entities;
|
|
|
|
using BS.Shared;
|
|
using BS.Shared.DataContracts;
|
|
using System.Collections.Generic;
|
|
using BS.Shared.Core;
|
|
|
|
namespace BeWo.Service.DCEntityMapper
|
|
{
|
|
public class PreisDC_Preis : AbstractIDCEntityMapper<Preis, PreisDC>
|
|
{
|
|
public override PreisDC MergeWithDC(Preis bEntity, PreisDC bDataContract)
|
|
{
|
|
bDataContract.PreisOid = bEntity.Oid;
|
|
bDataContract.PreisIsActive = bEntity.IsActive;
|
|
bDataContract.PreisNotice = bEntity.Notice;
|
|
bDataContract.PreisInsTs = bEntity.InsTs;
|
|
bDataContract.PreisInsUser = bEntity.InsUser;
|
|
bDataContract.PreisVersion = bEntity.Version;
|
|
bDataContract.PreisUdpUser = bEntity.UdpUser;
|
|
bDataContract.PreisSystemEntryID = bEntity.SystemEntryID;
|
|
bDataContract.Name = bEntity.Name;
|
|
bDataContract.Betrag = bEntity.Betrag;
|
|
bDataContract.IsSystemEntry = bEntity.SystemEntryID != null;
|
|
bDataContract.DoNotCheckOverlapping = bEntity.DoNotCheckOverlapping.HasValue && bEntity.DoNotCheckOverlapping.Value;
|
|
bDataContract.ActivationType = bEntity.IsActive;
|
|
bDataContract.CostRatePeriods = MapperFactory.CostRatePeriodDC_CostRatePeriod.MapToNewDCs(bEntity.CostRatePeriods);
|
|
|
|
return bDataContract;
|
|
}
|
|
|
|
public override Preis MergeWithEntity(PreisDC bDataContract, Preis bEntity)
|
|
{
|
|
this.ConcurrencyCheck(bDataContract.PreisVersion, bEntity);
|
|
|
|
bEntity.Oid = bDataContract.PreisOid;
|
|
bEntity.Notice = bDataContract.PreisNotice;
|
|
bEntity.SystemEntryID = bDataContract.PreisSystemEntryID;
|
|
bEntity.Name = bDataContract.Name;
|
|
bEntity.Betrag = bDataContract.Betrag;
|
|
bEntity.InsTs = bDataContract.PreisInsTs;
|
|
bEntity.DoNotCheckOverlapping = bDataContract.DoNotCheckOverlapping;
|
|
|
|
MapperFactory.CostRatePeriodDC_CostRatePeriod.MergeWithEntitys(bDataContract.CostRatePeriods, bEntity.CostRatePeriods);
|
|
foreach (var costRatePeriod in bEntity.CostRatePeriods)
|
|
{
|
|
costRatePeriod.ObjectTid = TableID.Preis;
|
|
}
|
|
|
|
return bEntity;
|
|
}
|
|
|
|
protected override bool AreDCAndEntityEqual(PreisDC bDC, Preis bEntity)
|
|
{
|
|
if (bDC.PreisOid == null)
|
|
{
|
|
return false;
|
|
}
|
|
|
|
return bDC.PreisOid == bEntity.Oid;
|
|
}
|
|
}
|
|
} |