Sky.Net/API/Helpers/MappingProfiles.cs

32 lines
1.5 KiB
C#
Raw Normal View History

2022-05-10 16:49:42 -07:00
using API.Dtos;
using AutoMapper;
using Core.Entities;
2022-05-19 19:33:40 -07:00
using Core.Entities.Identity;
2022-05-24 15:35:03 -07:00
using Core.Entities.OrderAggregate;
2022-05-10 16:49:42 -07:00
namespace API.Helpers
{
public class MappingProfiles : Profile
{
public MappingProfiles()
{
CreateMap<Product, ProductToReturnDto>()
2022-05-24 15:35:03 -07:00
.ForMember(d => d.ProductBrand, o => o.MapFrom(s => s.ProductBrand.Name))
.ForMember(d => d.ProductType, o => o.MapFrom(s => s.ProductType.Name))
.ForMember(d => d.PictureUrl, o => o.MapFrom<ProductUrlResolver>());
2022-05-19 19:33:40 -07:00
2022-05-24 15:35:03 -07:00
CreateMap<Core.Entities.Identity.Address, AddressDto>().ReverseMap();
2022-05-20 11:09:24 -07:00
CreateMap<CustomerBasketDto, CustomerBasket>();
CreateMap<BasketItemDto, BasketItem>();
2022-05-24 15:35:03 -07:00
CreateMap<AddressDto, Core.Entities.OrderAggregate.Address>();
CreateMap<Order, OrderToReturnDto>()
.ForMember(d => d.DeliveryMethod, o => o.MapFrom(s => s.DeliveryMethod.ShortName))
.ForMember(d => d.ShippingPrice, o => o.MapFrom(s => s.DeliveryMethod.Price));
CreateMap<OrderItem, OrderItemDto>()
.ForMember(d => d.ProductId, o => o.MapFrom(s => s.ItemOrdered.ProductItemId))
.ForMember(d => d.ProductName, o => o.MapFrom(s => s.ItemOrdered.ProductName))
.ForMember(d => d.PictureUrl, o => o.MapFrom(s => s.ItemOrdered.PictureUrl))
.ForMember(d => d.PictureUrl, o => o.MapFrom<OrderItemUrlResolver>());
2022-05-10 16:49:42 -07:00
}
}
}