46 lines
1.5 KiB
C#
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;
|
|
}
|
|
}
|
|
|
|
|
|
}
|