public void CheckSetQuantity() { try { var newitems = OrderItemsList.Where(x => x.SNO == 0).ToList(); foreach (var i in OrderItemsList) { var item = SelectedItemsList.ToList().Find(x => x.MCODE == i.MCODE); if (i.SNO == 0) { if (item != null) { item.SetQuantity = (decimal)i.Quantity; } } else { if (item != null) { item.SetQuantity = 0; } } } }catch (Exception ex) { DependencyService.Get <IMessage>().ShortAlert(ex.Message); } }
//Function for viewing the change in KOTMainMenuPage public void SelectedItemCount(M.MenuItem obj) { try { var selected = SelectedItemsList.ToList().Find(x => x.MCODE == obj.MCODE); var items = OrderItemsList.Where(x => x.MCODE == selected.MCODE).ToList(); decimal count = 0; foreach (var i in items) { count = count + (decimal)i.Quantity; } selected.QUANTITY = count; decimal setCount = 0; var newItems = items.Where(x => x.SNO == 0).ToList(); if (newItems != null) { foreach (var i in newItems) { setCount = setCount + (decimal)i.Quantity; } selected.SetQuantity = setCount; } } catch (Exception ex) { DependencyService.Get <IMessage>().ShortAlert(ex.Message); } }
//Command Execution for Order Clicked in KOTMainMenuPage public void ExecuteOrderCommand(M.MenuItem obj) { try { if (obj.SetQuantity == 0) { DependencyService.Get <IMessage>().ShortAlert("Enter Quantity to Order"); return; } else { var selected = SelectedItemsList.ToList().Find(x => x.MCODE == obj.MCODE); var item = OrderItemsList.ToList().Find(x => ((x.MCODE == obj.MCODE) && (x.SNO == 0))); var KOTItem = M.MenuItem.MenuItemsToKOTProd(obj); KOTItem.Quantity = (double)obj.SetQuantity; OrderItemsList.Add(KOTItem); DependencyService.Get <IMessage>().ShortAlert("Item added to Order List"); selected.SetQuantity = 0; SelectedItemCount(obj); //OrderItemsList = new ObservableCollection<KOTProd>(OrderItemsList); //OrderItemsList.OrderBy(x => x.SNO); DecreaseItemCount(); } }catch (Exception ex) { DependencyService.Get <IMessage>().ShortAlert(ex.Message); } }
//function to count the ordered quantity for viewing public void CountOrderQuantity() { try { SelectedItemsList.ToList().ForEach(x => x.QUANTITY = 0); SelectedItemsList.ToList().ForEach(x => x.SetQuantity = 0); if (OrderItemsList == null || OrderItemsList.Count == 0) { return; } foreach (var item in OrderItemsList) { var selected = SelectedItemsList.ToList().Find(x => x.MCODE == item.MCODE); if (selected != null) { selected.QUANTITY += (decimal)item.Quantity; } } } catch (Exception e) { } }
//Command Execution for Increasing Quantity public void ExecuteIncreaseCommand(M.MenuItem obj) { try { var selected = SelectedItemsList.ToList().Find(x => x.MCODE == obj.MCODE); selected.SetQuantity += 1; var item = OrderItemsList.ToList().Find(x => ((x.MCODE == obj.MCODE) && (x.SNO == 0))); var KOTItem = M.MenuItem.MenuItemsToKOTProd(obj); if (item == null) { KOTItem.Quantity = 1; OrderItemsList.Add(KOTItem); } else { item.Quantity += 1; if (item.Quantity > 0) { item.REFSNO = 0; } else if (item.Quantity == 0) { OrderItemsList.Remove(item); } } SelectedItemCount(obj); //OrderItemsList = new List<KOTProd>(OrderItemsList); //OrderItemsList.OrderBy(x => x.SNO); DecreaseItemCount(); } catch (Exception ex) { DependencyService.Get <IMessage>().ShortAlert(ex.Message); } }
public void ExecuteCancelCommand(KOTProd obj) { try { if (obj.SNO == 0) { OrderItemsList.Remove(obj); var item = SelectedItemsList.ToList().Find(x => x.MCODE == obj.MCODE); if (item != null) { item.SetQuantity = 0; } RefreshOrderItemsList(); } else { if ((obj.Quantity + obj.DecQuantity) == 0) { DependencyService.Get <IMessage>().ShortAlert("Order already Cancelled"); return; } if (obj.Quantity < 0) { DependencyService.Get <IMessage>().ShortAlert("Cannot Cancel negative order"); return; } SelectedOrderItem = obj; IsCancel = true; } CountOrderQuantity(); } catch (Exception ex) { DependencyService.Get <IMessage>().ShortAlert(ex.Message); } }