public MappingProfile() { CreateMap <NewCustomer, TbCustomer>() .ForMember(dest => dest.Id, opt => opt.MapFrom(src => src.CustomerId.Id)) .ForMember(dest => dest.Type, opt => opt.MapFrom(src => (int)src.Type)); CreateMap <Customer, TbCustomer>() .ForMember(dest => dest.Id, opt => opt.MapFrom(src => src.CustomerId.Id)) .ForMember(dest => dest.Type, opt => opt.MapFrom(src => (int)src.Type)) .ForMember(dest => dest.UpdatedAt, opt => opt.MapFrom(src => src.UpdatedAt)) .ReverseMap() .ConstructUsing( src => new Customer( CustomerId.FromValue(src.Id), src.Name, src.BirthDate, (MassTransitTutorial.Domain.Type)src.Type, src.CreatedAt, src.UpdatedAt)); CreateMap <Customer, CustomerDto>(); CreateMap <NewCustomerDto, NewCustomer>() .ConstructUsing(src => new NewCustomer( src.Name, src.BirthDate, (MassTransitTutorial.Domain.Type)Enum.Parse(typeof(MassTransitTutorial.Domain.Type), src.Type))); }
public async Task <ServiceResult <CustomerDto> > GetCustomer(Guid customerId) { var customer = await _repo.WithId(CustomerId.FromValue(customerId)); if (customer != Customer.Empty) { return(ServiceResult <CustomerDto> .Success(_mapper.Map <CustomerDto>(customer))); } return(ServiceResult <CustomerDto> .NotFound()); }
public async Task <ServiceResult <CustomerDto> > Update(UpdateBirthDateDto newDate) { var customer = await _repo.WithId(CustomerId.FromValue(newDate.CustomerId)); if (customer != Customer.Empty) { customer.ChangeBirthDate(newDate.NewBirthDate); await _repo.ChangeBirthDate(customer); return(ServiceResult <CustomerDto> .Success(_mapper.Map <CustomerDto>(customer))); } return(ServiceResult <CustomerDto> .Error( "ERR_CUST_404", $"There not customer with id {newDate.CustomerId}")); }