public void Handle(NewWebOrderCommand command) { var client = UnitOfWork.Get <WebClient>(x => x.User.Login == command.Login); var table = GetFreeTable(command.OrderDate); var order = new ReservationOrder() { Client = client, Created = DateTime.Now, Status = ReservationOrderStatus.Created, ReservationTime = command.OrderDate, UnlockCode = CreateUnlockCode(), Table = table }; UnitOfWork.Add(order); var menuItemsIds = command.Items.Select(x => x.ItemId).ToArray(); var menuItems = UnitOfWork.GetWhere <MenuItem>(x => menuItemsIds.Contains(x.Id)).ToArray(); var addedMenuItemQuantities = new List <ReservationMenuItemQuantity>(); foreach (var item in command.Items) { var menuItemsQuantities = new ReservationMenuItemQuantity() { ReservationOrder = order, Quantity = item.Quantity, Item = menuItems.First(x => x.Id == item.ItemId) }; UnitOfWork.Add(menuItemsQuantities); addedMenuItemQuantities.Add(menuItemsQuantities); } EventBus.PublishEvent(new AddedWebOrder() { Order = order, MenuItems = addedMenuItemQuantities }); }
public IActionResult OnGet(int WhiskeyId) { Whiskey = whiskeyData.GetById(WhiskeyId); ReservationOrders = whiskeyData.GetOrders(); AreaName = Whiskey.Area.Name; Order = new ReservationOrder(); return(Page()); }
private void PutOrderToBrowser(ReserverWebView browser) { ReservationOrder found = Orders.FirstOrDefault(order => !order.Doing && !order.Done); if (found != null) { browser.Order = found; browser.Checker = FindDateCheckerByOrder(found); } }
private void AddLastButton_Click(object sender, EventArgs e) { ReservationOrder order = BuildOrder(); if (order == null) { return; } Orders.Add(order); this.Close(); }
private void PutOrderToBrowser(ReservationOrder order) { ReserverView found = Reservers.FirstOrDefault( reserver => reserver.Browser.Auto && reserver.Browser.Order == null && !reserver.Browser.Selected ); if (found != null) { found.Browser.Order = order; found.Browser.Checker = FindDateCheckerByOrder(order); } }
private bool MoveOrder(int from, int to) { if (to < 0 || to >= Orders.Count) { return(false); } ReservationOrder order = Orders[from]; Orders.RemoveAt(from); Orders.Insert(to, order); return(true); }
public OrderListItemView(int number, ReservationOrder order) { InitializeComponent(); Number = number; Order = order; InfoLabel.Text = $"{Number + 1}) {Order.Surname} {Order.Name};\n" + $"{Order.Email}; {Order.City};\n" + $"{Order.Operation.Name};"; if (Order.Done) { InfoLabel.Text += "\nDONE"; } }
public EditOrderForm(PlatformApiInfo[] platforms, ReservationOrder order) { Order = order; InitializeComponent(); PlatformSelector.Items.AddRange(platforms); PlatformSelector.SelectedIndexChanged += (sender, e) => { OperationSelector.Items.Clear(); CitySelector.Items.Clear(); CitySelector.Items.AddRange((PlatformSelector.SelectedItem as PlatformApiInfo).CityPlatforms); }; CitySelector.SelectedIndexChanged += (sender, e) => { OperationSelector.Items.Clear(); OperationSelector.Items.AddRange((CitySelector.SelectedItem as CityPlatformInfo).Operations); }; SurnameInput.InputText = Order.Surname; NameInput.InputText = Order.Name; EmailInput.InputText = Order.Email; PlatformSelector.SelectedIndex = PlatformSelector.Items.Cast <PlatformApiInfo>().ToList().FindIndex( platform => platform.Name == Order.Platform ); CitySelector.SelectedIndex = CitySelector.Items.Cast <CityPlatformInfo>().ToList().FindIndex( city => city.Name == Order.City ); OperationSelector.SelectedIndex = OperationSelector.Items.Cast <OperationInfo>().ToList().FindIndex( operation => operation.Position == Order.Operation.Position ); }
private ReservationOrder BuildOrder() { bool surnameInvalid = string.IsNullOrEmpty(SurnameInput.InputText); bool nameInvalid = string.IsNullOrEmpty(NameInput.InputText); bool emailInvalid = string.IsNullOrEmpty(EmailInput.InputText); bool typeInvalid = OperationSelector.SelectedIndex == -1; if (surnameInvalid || nameInvalid || emailInvalid || typeInvalid) { MessageBox.Show("Invalid data"); return(null); } PlatformApiInfo platform = PlatformSelector.SelectedItem as PlatformApiInfo; CityPlatformInfo city = CitySelector.SelectedItem as CityPlatformInfo; OperationInfo operation = OperationSelector.SelectedItem as OperationInfo; ReservationOrder order = new ReservationOrder( SurnameInput.InputText, NameInput.InputText, EmailInput.InputText, platform.Name, city.Name, city.BaseUrl, operation ); return(order); }
public ReservationOrder AddOrder(ReservationOrder newOrder) { newOrder.ReservationId = orders.Max(r => r.ReservationId) + 1; orders.Add(newOrder); return(newOrder); }
public ReservedEventArgs(string url, ReservationOrder order) { Url = url; Order = order; }
private DateChecker FindDateCheckerByOrder(ReservationOrder order) { return(DateCheckers[order.Platform][order.City][order.Operation.Position]); }
public OrderEventArgs(ReservationOrder order) { Order = order; }