using BeWo.Data.Access; using BeWo.Data.Entities; using System.Linq; using BS.Shared.DataContracts.Compact; namespace BeWo.Service.DCEntityMapper { public class CompactWohnheimDC_Wohnheim : AbstractIDCEntityMapper { public override CompactWohnheimDC MergeWithDC(Wohnheim pEntity, CompactWohnheimDC pDataContract) { pDataContract.WohnheimOid = pEntity.Oid.Value; pDataContract.WohnheimName = pEntity.WohnheimName; pDataContract.Strasse = pEntity.Strasse; pDataContract.PLZ = pEntity.PLZ; pDataContract.Ort = pEntity.Ort; pDataContract.ActivationType = pEntity.IsActive; pDataContract.Bemerkung = pEntity.Bemerkung; pDataContract.CustomerOids = pEntity.Customer2WohnheimList.Select(c => c.CustomerOid.Value).ToList(); pDataContract.EmployeeOids = pEntity.Employee2WohnheimList.Select(c => c.EmployeeOid.Value).ToList(); return pDataContract; } // COMPACT Wohnheim ARE NOT EDITABLE public override Wohnheim MergeWithEntity(CompactWohnheimDC pDataContract, Wohnheim pEntity) { return DAOFactory.GenericDAO.LoadByID(pDataContract.WohnheimOid); } protected override bool AreDCAndEntityEqual(CompactWohnheimDC pDC, Wohnheim pEntity) { return pDC.WohnheimOid == pEntity.Oid; } } }