using System; using System.Linq.Expressions; using NetinaShop.Domain.Dtos.SmallDtos; using NetinaShop.Domain.Entities.Users; namespace NetinaShop.Domain.Mappers { public static partial class ManagerMapper { public static Manager AdaptToManager(this ManagerSDto p1) { return p1 == null ? null : new Manager() { LatestVersionUsed = p1.LatestVersionUsed, FirstName = p1.FirstName, LastName = p1.LastName, NationalId = p1.NationalId, BirthDate = p1.BirthDate, Gender = p1.Gender, SignUpStatus = p1.SignUpStatus, Id = p1.Id, Email = p1.Email, PhoneNumber = p1.PhoneNumber }; } public static Manager AdaptTo(this ManagerSDto p2, Manager p3) { if (p2 == null) { return null; } Manager result = p3 ?? new Manager(); result.LatestVersionUsed = p2.LatestVersionUsed; result.FirstName = p2.FirstName; result.LastName = p2.LastName; result.NationalId = p2.NationalId; result.BirthDate = p2.BirthDate; result.Gender = p2.Gender; result.SignUpStatus = p2.SignUpStatus; result.Id = p2.Id; result.Email = p2.Email; result.PhoneNumber = p2.PhoneNumber; return result; } public static ManagerSDto AdaptToSDto(this Manager p4) { return p4 == null ? null : new ManagerSDto() { PhoneNumber = p4.PhoneNumber, FirstName = p4.FirstName, LastName = p4.LastName, BirthDate = p4.BirthDate, Gender = p4.Gender, SignUpStatus = p4.SignUpStatus, NationalId = p4.NationalId, Email = p4.Email, LatestVersionUsed = p4.LatestVersionUsed, Id = p4.Id }; } public static ManagerSDto AdaptTo(this Manager p5, ManagerSDto p6) { if (p5 == null) { return null; } ManagerSDto result = p6 ?? new ManagerSDto(); result.PhoneNumber = p5.PhoneNumber; result.FirstName = p5.FirstName; result.LastName = p5.LastName; result.BirthDate = p5.BirthDate; result.Gender = p5.Gender; result.SignUpStatus = p5.SignUpStatus; result.NationalId = p5.NationalId; result.Email = p5.Email; result.LatestVersionUsed = p5.LatestVersionUsed; result.Id = p5.Id; return result; } public static Expression> ProjectToSDto => p7 => new ManagerSDto() { PhoneNumber = p7.PhoneNumber, FirstName = p7.FirstName, LastName = p7.LastName, BirthDate = p7.BirthDate, Gender = p7.Gender, SignUpStatus = p7.SignUpStatus, NationalId = p7.NationalId, Email = p7.Email, LatestVersionUsed = p7.LatestVersionUsed, Id = p7.Id }; } }