public object Convert(object value, Type type, object parameter, string language) { string result = ""; if (value != null) { StringBuilder gridText = new StringBuilder(); Dictionary<float, float> mealItemIDs = (Dictionary<float, float>)value; MealItemViewModel mealItem = new MealItemViewModel(); int loopCount = 0; foreach (var mealItemID in mealItemIDs) { mealItem = mealItem.GetMealItemById((int)mealItemID.Key); if (mealItem != null) { if (loopCount < mealItemIDs.Count - 1) gridText.Append(mealItem.Name).Append(", "); else gridText.Append(mealItem.Name); } loopCount++; } result = gridText.ToString(); } return result; }
private string GetIngredientsAsText(IngredientsViewModel ingredientsView, MealItemViewModel mealItem, Dictionary<float,float> mealItemIDsWithWeight) { StringBuilder sb = new StringBuilder(); ObservableCollection<IngredientViewModel> ingredients = ingredientsView.GetIngredients(mealItem.IngredientIDsWithTotalAmount); if (ingredients.Count > 0) { //sb.Append(@"\b "); int loopCount = 0; UnitOfMeasureViewModel unitOfMeasure = new UnitOfMeasureViewModel(); MealItemViewModel defaultMealItem = new MealItemViewModel(); defaultMealItem = defaultMealItem.GetMealItemById(mealItem.Id); foreach (var ingredient in ingredients) { float ingredientDefaultWeight = mealItem.IngredientIDsWithTotalAmount[ingredient.Id]; if (defaultMealItem.TotalAmount == 0) defaultMealItem.TotalAmount = 1; float ingredientWeight = (ingredientDefaultWeight / defaultMealItem.TotalAmount) * mealItemIDsWithWeight[mealItem.Id]; decimal roundedIngredientWeight = Math.Round((decimal)ingredientWeight, 0); string uomName = unitOfMeasure.GetUnitOfMeasure(ingredient.UnitOfMeasure).Abbreviation; sb.Append(roundedIngredientWeight.ToString()); sb.Append(uomName).Append(" "); sb.Append(ingredient.Name); if ((ingredients.Count >1) && (loopCount < (ingredients.Count-1))) { sb.Append(", "); } loopCount++; } //sb.Append(@"\line\b0"); sb.Append(@"\line"); return sb.ToString(); } else return ""; }
private void ResetWeightsInvokedHandler(IUICommand command) { if (command.Label == "Ja") { float mealItemTotalWeight = 0; if (NumberOfGuestsTextBox.Text != "") { int numberOfGuests = Int32.Parse(NumberOfGuestsTextBox.Text); MealItemViewModel defaultMealItem = new MealItemViewModel(); foreach (var mealIDAndWeight in _meal.MealItemIDsWithWeight.ToList()) { defaultMealItem = defaultMealItem.GetMealItemById((int)mealIDAndWeight.Key); mealItemTotalWeight = defaultMealItem.TotalAmount; decimal roundedWeight = Math.Round((decimal)(mealItemTotalWeight * numberOfGuests), 0); _meal.MealItemIDsWithWeight[mealIDAndWeight.Key] = (float)roundedWeight; } } } }
public string SetDefaultMealItemWeights(IMealViewModel meal) { string result = ""; MealItemViewModel mealItem = new MealItemViewModel(); foreach (var mealItemKeyValue in meal.MealItemIDsWithWeight.ToList()) { mealItem = mealItem.GetMealItemById((int)mealItemKeyValue.Key); float mealItemWeightDefault = mealItem.TotalAmount; float totalWeight = mealItemWeightDefault * meal.NumberOfGuests; meal.MealItemIDsWithWeight[mealItemKeyValue.Key] = totalWeight; } return result; }