public AutomapperProfiles() { this.jsonSerializerSettings = new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }; ImageKitClass documentStorage = new ImageKitClass(); CreateMap <Category, CategoryViewModel>().ReverseMap(); CreateMap <Shop, ShopViewModel>() .ForMember(dest => dest.ShopId, opt => opt.MapFrom(src => src.Id)) .ReverseMap(); CreateMap <SubCategory, SubCategoryViewModel>().ReverseMap(); CreateMap <Product, ProductViewModel>() .ForMember(dest => dest.ProductId, opt => opt.MapFrom(src => src.Id)) .ForMember(dest => dest.ImageUrl, opt => opt.MapFrom(src => documentStorage.GetProductUri(src.ImageUrl).Result)) .ReverseMap(); CreateMap <UserAddress, UserAddressViewModel>().ReverseMap(); CreateMap <UserAddress, AddressViewModel>().ReverseMap(); CreateMap <Shop, AddressViewModel>().ReverseMap(); CreateMap <OrderSummary, OrderSummaryViewModel>() .ForMember(dest => dest.OrderSummaryId, opt => opt.MapFrom(src => src.Id)) .ForMember(dest => dest.OrderDate, opt => opt.MapFrom(src => src.CreatedDateTime)) .ForMember(dest => dest.TotalAmount, opt => opt.MapFrom(src => (src.OrderStatusId == (int)EnumOrderStatus.PriceHiddenByShopper || src.OrderStatusId == (int)EnumOrderStatus.Cancel) ? 0:src.TotalAmount)) .ForMember(dest => dest.OrdersDetails, opt => opt.MapFrom(src => (src.OrderStatusId == (int)EnumOrderStatus.PriceHiddenByShopper || src.OrderStatusId == (int)EnumOrderStatus.Cancel)? GetOrderDetails(src.OrdersDetails):src.OrdersDetails)) .ReverseMap(); CreateMap <UserForListDto, User>().ReverseMap(); CreateMap <UserForRegisterViewModel, User>().ReverseMap(); CreateMap <BrandViewModel, Brand>().ReverseMap(); CreateMap <FavoriteShopViewModel, FavoriteShop>().ReverseMap(); }
public VendorRepository(DataContext _context, IMapper _mapper, IOptions <AppSettings> app) : base(_context, _mapper) { _documentStorage = new ImageKitClass(); appSettings = app; }
public UserRepository(DataContext _context, IMapper _mapper) : base(_context, _mapper) { _documentStorage = new ImageKitClass(); }