private Task OnSetCustomer(IFormSender sender, IContinuityDelegate after) { if (sender.Result is Customer customer) { _order.Customer = customer; _order.CustomerId = customer.Id; after.PresentMessage($"Clientul {customer.Name} a fost adaugat in comanda", MessageType.Info, MessageDurationLength.Medium); } else { _order.Customer = null; _order.CustomerId = null; after.PresentMessage("Clientul a fost scos din comanda", MessageType.Info, MessageDurationLength.Short); } after.Close = true; return Task.CompletedTask; }
private async Task PerformLogin(IFormSender sender, IContinuityDelegate after) { var pin = sender.Result?.ToString() ?? string.Empty; if (string.IsNullOrEmpty(pin)) { #if DEBUG pin = "1234"; #else after.PresentMessage("Pin is empty", MessageType.Error); return; #endif } try { var loaderToken = sender.Form.LoadingState; var apiClient = Application.Api(loaderToken); var user = await apiClient.Account.Login(pin); AuthenticationManager.User = user; } catch (RequestException ex) when(ex.StatusCode == HttpStatusCode.NotFound) { after.PresentMessage("Incorect PIN!", MessageType.Error); return; } catch (Exception ex) { after.PresentMessage(ex.Message, MessageType.Error); return; } finally { sender.Control.Text = string.Empty; } PresentMessage("Login successful", MessageType.Info, 1000); after.Close = true; InitializePos(); }
private void PerformLogin(IFormResult result, IContinuityDelegate after) { var pin = result.Result?.ToString() ?? string.Empty; if (string.IsNullOrEmpty(pin)) { after.PresentMessage("Pin is empty", MessageType.Error); return; } ShowMessage("Login successful", MessageType.Info, 1000); after.Close = true; }
private Task SetQuantity(OrderItem item, IFormSender formSender, IContinuityDelegate after) { if (!float.TryParse(formSender.Result?.ToString() ?? string.Empty, out var result)) { after.PresentMessage("Cantitate invalida", MessageType.Error, MessageDurationLength.Short); after.Close = false; return Task.CompletedTask; } SetQuantity(item, result); after.Close = true; return Task.CompletedTask; }
private Task SplitItem(IFormSender formSender, OrderItem item, IContinuityDelegate after) { if (!float.TryParse(formSender.Result?.ToString() ?? string.Empty, out var result)) { after.PresentMessage("Cantitate invalida", MessageType.Error, MessageDurationLength.Short); after.Close = false; return Task.CompletedTask; } var newQuantity = item.Quantity - result; SetQuantity(item, newQuantity); CreateOrderItem(item.Name, item.ProductId, result, item.UnitPrice); ParentForm.PresentMessage("Succes!", MessageType.Info, MessageDurationLength.Short); after.Close = true; return Task.CompletedTask; }