public async Task <AvailabilityResponse> SaveByProductIdAsync(int providerId, int productId, Availability availability) { var productDB = _productRepository.FindByIdAsync(productId); try { if (productDB != null) { availability.Product = productDB.Result; availability.ProductId = productId; await _availabilityRepository.SaveByProductIdAsync(providerId, productId, availability); await _unitOfWork.CompleteAsync(); return(new AvailabilityResponse(availability)); } return(new AvailabilityResponse("Product not found")); } catch (Exception ex) { return(new AvailabilityResponse($"An error ocurred while saving th Availability: {ex.Message}")); } }