public async Task <IActionResult> Create([FromBody] ProductDTO productDTO) { var systemOfMeasurement = await _productsRepository.AssignMeasurementUnitToMeasurementSystem(productDTO.UnitOfMeasurement); var product = Product.Create( productDTO.Name, productDTO.Brand, productDTO.Quantity, productDTO.UnitOfMeasurement, systemOfMeasurement); await _productsRepository.Add(product); foreach (var price in productDTO.Prices) { var store = await _storesRepository.GetByName(price.StoreName); var productStore = ProductStore.Create( product.Id, store.FirstOrDefault().Id, price.Price); await _productStoresRepository.Add(productStore); } return(Ok(product)); }