protected override void SaveForm() { try { hccCart userCart = hccCart.GetById(this.PrimaryKeyIndex); MembershipUser user = Membership.GetUser(userCart.AspNetUserID); bool isFamilyStyle = false; if (user != null) { hccMenuItem menuItem = hccMenuItem.GetById(int.Parse(ddlMenuItems.SelectedValue)); var itemSize = (Enums.CartItemSize)(int.Parse(ddlOptions.SelectedValue)); if (chkFamilyStyle.Checked) { isFamilyStyle = true; } int profileId = 0; if (divProfiles.Visible) { profileId = int.Parse(ddlProfiles.SelectedValue); } else { profileId = hccUserProfile.GetParentProfileBy(userCart.AspNetUserID.Value).UserProfileID; } if (userCart != null) { hccCartItem cartItem = new hccCartItem { CreatedBy = (Guid)Helpers.LoggedUser.ProviderUserKey, CreatedDate = DateTime.Now, IsTaxable = menuItem.IsTaxEligible, ItemDesc = menuItem.Description, ItemPrice = hccMenuItem.GetItemPriceBySize(menuItem, (int)itemSize), ItemTypeID = (int)Enums.CartItemType.AlaCarte, DeliveryDate = DateTime.Parse(ddlDeliveryDates.SelectedItem.Text), Meal_MealSizeID = (int)itemSize, Meal_MenuItemID = menuItem.MenuItemID, Meal_ShippingCost = hccDeliverySetting.GetBy(menuItem.MealType).ShipCost, UserProfileID = profileId, Quantity = int.Parse(txtQuantity.Text.Trim()), Plan_IsAutoRenew = isFamilyStyle, IsCompleted = false }; cartItem.GetOrderNumber(userCart); List <hccCartItemMealPreference> prefsList = new List <hccCartItemMealPreference>(); foreach (ListItem item in cblPreferences.Items) { if (item.Selected) { hccCartItemMealPreference pref = new hccCartItemMealPreference { CartItemID = cartItem.CartItemID, PreferenceID = int.Parse(item.Value) }; prefsList.Add(pref); } } var prefsString = string.Empty; if (prefsList.Count > 0) { prefsString = prefsList .Select(a => hccPreference.GetById(a.PreferenceID)) .Select(a => a.Name).DefaultIfEmpty(string.Empty).Aggregate((a, b) => a + ", " + b); } cartItem.ItemName = hccCartItem.BuildCartItemName(menuItem.MealType, itemSize, menuItem.Name, GetMealSides(menuItem.MealType), prefsString, cartItem.DeliveryDate);//,cartItem.Quantity hccCartItem existItem = hccCartItem.GetBy(userCart.CartID, cartItem.ItemName, profileId); if (existItem == null) { cartItem.CartID = userCart.CartID; cartItem.Save(); if (cartItem.CartItemID > 0) { prefsList.ForEach(delegate(hccCartItemMealPreference cartPref) { cartPref.CartItemID = cartItem.CartItemID; cartPref.Save(); }); } AddUpdateCartALCMenuItem(cartItem); OnSaved(new ControlSavedEventArgs(cartItem.CartItemID)); chkFamilyStyle.Checked = false; } else { existItem.Quantity += cartItem.Quantity; if (existItem.AdjustQuantity(existItem.Quantity)) { AddUpdateCartALCMenuItem(existItem); OnSaved(new ControlSavedEventArgs(existItem.CartItemID)); chkFamilyStyle.Checked = false; } } } } } catch (Exception) { throw; } }
protected override void SaveForm() { try { Page.Validate(this.ValidationGroup); if (Page.IsValid) { if (CurrentCartItem != null) { if (chkIsComplete.Enabled) { CurrentCartItem.IsCompleted = chkIsComplete.Checked; } hccMenuItem menuItem = null; var itemSize = Enums.CartItemSize.NoSize; if (!string.IsNullOrWhiteSpace(ddlMenuItems.SelectedValue)) { menuItem = hccMenuItem.GetById(int.Parse(ddlMenuItems.SelectedValue)); } if (menuItem != null) { if (menuItem.MenuItemID != CurrentCartItem.Meal_MenuItemID) { CurrentCartItem.Meal_MenuItemID = menuItem.MenuItemID; } int selMenuOptionId = int.Parse(ddlOptions.SelectedValue); if (selMenuOptionId != CurrentCartItem.Meal_MealSizeID) { CurrentCartItem.Meal_MealSizeID = selMenuOptionId; } itemSize = (Enums.CartItemSize)(CurrentCartItem.Meal_MealSizeID); CurrentCartItem.ItemDesc = menuItem.Description; CurrentCartItem.ItemPrice = hccMenuItem.GetItemPriceBySize(menuItem, (int)itemSize); } var prefsString = string.Empty; var prefs = hccCartItemMealPreference.GetBy(CurrentCartItem.CartItemID); prefs.ForEach(a => a.Delete()); foreach (ListItem item in cblPreferences.Items) { if (item.Selected) { var pref = new hccCartItemMealPreference { CartItemID = CurrentCartItem.CartItemID, PreferenceID = int.Parse(item.Value) }; pref.Save(); if (string.IsNullOrWhiteSpace(prefsString)) { prefsString += item.Text; } else { prefsString += ", " + item.Text; } } } CurrentCartItem.ItemName = hccCartItem.BuildCartItemName(menuItem.MealType, itemSize, menuItem.Name, GetMealSides(menuItem.MealType), prefsString, CurrentCartItem.DeliveryDate);//,CurrentCartItem.Quantity CurrentCartItem.Save(); AddUpdateCartALCMenuItem(CurrentCartItem); lblFeedback.Text = "Item Saved: " + DateTime.Now.ToString(); lblFeedback.ForeColor = Color.Green; BindgvwALCItems(); btnSave.Visible = false; pnlItemEdit.Visible = false; } } } catch (Exception) { throw; } }