public async Task <ActionResult <IReadOnlyList <ProductDto> > > GetProducts([FromQuery] ProductSpecParams productParams)
        {
            var spec     = new ProductsTypesMakersSpecification(productParams);
            var products = await _repoProduct.ListAsync(spec);

            return(Ok(mapper.Map <IReadOnlyList <Product>, IReadOnlyList <ProductDto> >(products)));
        }
        public async Task <ActionResult <ProductDto> > GetProduct(int id)
        {
            var spec    = new ProductsTypesMakersSpecification(id);
            var product = await _repoProduct.GetEntityWithSpec(spec);

            if (product == null)
            {
                return(NotFound(new ApiResponse(404)));
            }

            return(mapper.Map <Product, ProductDto>(product));
        }