public async Task <ActionResult <ProductToReturnDto> > GetProduct(int id) { var spec = new ProductsWithTypesAndBeandsSpecification(id); var product = await _productRepo.GetEntityWithSpec(spec); if (product == null) { return(NotFound(new ApiResponse(400))); } // _mapper.Map<From,To>(Variable) return(_mapper.Map <Product, ProductToReturnDto>(product)); }
public async Task <ActionResult <Pagination <ProductToReturnDto> > > GetAllProduts([FromQuery] ProductSpecParamsInput input) { var spec = new ProductsWithTypesAndBeandsSpecification(input); var countSpec = new ProductWithFilterForCountSpecification(input); var totalItems = await _productRepo.CountAsync(countSpec); var products = await _productRepo.ListAsync(spec); var data = _mapper.Map <IReadOnlyList <ProductToReturnDto> >(products); return(Ok(new Pagination <ProductToReturnDto>(input.PageIndex, input.PageSize, totalItems, data))); }