public/Set-RecipeIngredientsFromText.ps1
|
function Set-RecipeIngredientsFromText { [CmdletBinding()] param( [Parameter(Mandatory)] [int]$RecipeId, [string]$Text ) $ingredients = ConvertFrom-IngredientText -Text $Text Invoke-RecipeDbQuery -Query "DELETE FROM Ingredients WHERE RecipeId = $RecipeId;" | Out-Null $i = 0 foreach ($ing in @($ingredients)) { $qty = ConvertTo-SqlSafe $ing.Quantity $unit = ConvertTo-SqlSafe $ing.Unit $item = ConvertTo-SqlSafe $ing.Item if (-not $item) { continue } Invoke-RecipeDbQuery -Query @" INSERT INTO Ingredients (RecipeId, Item, Quantity, Unit, SortOrder) VALUES ($RecipeId, '$item', '$qty', '$unit', $i); "@ | Out-Null $i++ } } |