Files
BeWoPlaner/Service/DCEntityMapper/Person2TeamDC_Person2Team.cs
2025-10-06 11:17:50 +02:00

46 lines
1.5 KiB
C#

using BeWo.Data.Access;
using BeWo.Data.Entities;
using BS.Shared.DataContracts;
namespace BeWo.Service.DCEntityMapper
{
public class Person2TeamDC_Person2Team : AbstractIDCEntityMapper<Person2Team, Person2TeamDC>
{
public override Person2TeamDC MergeWithDC(Person2Team pEntity, Person2TeamDC pDataContract)
{
pDataContract.Oid = pEntity.Oid;
pDataContract.Version = pEntity.Version;
pDataContract.TeamOid = pEntity.TeamOid;
pDataContract.OwnChatRole = pEntity.OwnChatRole;
pDataContract.Person = MapperFactory.CompactPersonDC_Person.MapToNewDC(pEntity.Person);
return pDataContract;
}
public override Person2Team MergeWithEntity(Person2TeamDC pDataContract, Person2Team pEntity)
{
ConcurrencyCheck(pDataContract.Version, pEntity);
pEntity.Oid = pDataContract.Oid;
pEntity.TeamOid = pDataContract.TeamOid;
if (pDataContract.Person != null)
pEntity.Person = DAOFactory.GenericDAO.LoadByID<Person>(pDataContract.Person.PersonOid);
pEntity.OwnChatRole = pDataContract.OwnChatRole;
return pEntity;
}
protected override bool AreDCAndEntityEqual(Person2TeamDC pDC, Person2Team pEntity)
{
if (pDC.Oid == null)
return false;
return pDC.Oid == pEntity.Oid;
}
}
}