예제 #1
0
        public static DataModel.User ToDataModel(this DomainModel.User entity)
        {
            var phones  = entity.Phones.ToDataModel(entity);
            var address = entity.Address?.ToDataModel();

            var user = new DataModel.User
            {
                Id         = entity.Id,
                FirstName  = entity.Name.FirstName,
                MiddleName = entity.Name.MiddleName,
                LastName   = entity.Name.LastName,
                Email      = entity.Email,
                Cpf        = entity.Cpf,
                Phones     = phones
            };

            if ((address?.Id ?? 0) > 0)
            {
                user.IdAddress = address?.Id;
            }
            else
            {
                user.Address = address;
            }

            return(user);
        }
예제 #2
0
        public static DomainModel.User ToDomainModel(this DataModel.User dataModel)
        {
            var phones  = dataModel.Phones.Select(pp => pp.ToDomainModel()).ToList();
            var address = dataModel.Address?.ToDomainModel();
            var name    = new Name(dataModel.FirstName, dataModel.MiddleName, dataModel.LastName);

            return(new DomainModel.User(dataModel.Id, name, dataModel.Email, dataModel.Cpf, address, phones));
        }
예제 #3
0
        public static IList <DataModel.UserPhone> ToDataModel(this IList <DomainModel.Phone> phones, DomainModel.User user)
        {
            var list   = new List <DataModel.UserPhone>();
            var dmUser = new DataModel.User
            {
                FirstName  = user.Name.FirstName,
                MiddleName = user.Name.MiddleName,
                LastName   = user.Name.LastName,
                Email      = user.Email,
                Cpf        = user.Cpf
            };

            if (user.Id > 0)
            {
                dmUser.Id = user.Id;
            }

            foreach (var p in phones)
            {
                var up = new DataModel.UserPhone();

                if (p.Id > 0)
                {
                    up.IdPhone = p.Id;
                }
                else
                {
                    up.Phone = new DataModel.Phone
                    {
                        LocalCode = p.LocalCode,
                        Number    = p.Number
                    }
                };

                if (user.Id > 0)
                {
                    up.IdUser = user.Id;
                }
                else
                {
                    up.User = dmUser;
                }

                list.Add(up);
            }

            return(list);
        }
    }