Exemplo n.º 1
0
        public async void Scanner()
        {
            if (details.StatusName != "On it's way!")
            {
                await DisplayAlert("Order #" + details.Id, "You cannot confirm order delivery for this order.", "OK");

                await Navigation.PopAsync();
            }

            await deliveryLogic.Init();

            await driverLogic.Init();

            await orderLogic.Init();

            await statusLogic.Init();

            var delivery        = deliveryLogic.GetDelivery(details, deliveryLogic.AllDeliveries);
            var driver          = driverLogic.GetDriver(delivery, driverLogic.AllDrivers);
            var order           = orderLogic.AllOrders.Where(o => o.Id == details.Id).FirstOrDefault();
            var completedStatus = statusLogic.Statuses.Where(s => s.Name == "Completed").FirstOrDefault();

            var ScannerPage = new ZXingScannerPage();

            ScannerPage.OnScanResult += (result) =>
            {
                ScannerPage.IsScanning = false;

                Device.BeginInvokeOnMainThread(async() =>
                {
                    // Logic to confirm order delivery in here
                    if (result.Text == delivery.QRCodeTextConfirmation)
                    {
                        await Navigation.PopAsync();
                        await ConfirmAsync(delivery, driver, order, completedStatus);
                        await DisplayAlert("Order #" + details.Id, "You successfully confirmed delivery!", "OK");
                    }
                    else
                    {
                        await Navigation.PopAsync();
                        await DisplayAlert("Order #" + details.Id, "Not the right QR to confirm delivery.", "OK");
                    }
                });
            };

            await Navigation.PushAsync(ScannerPage);
        }
Exemplo n.º 2
0
 public Driver GetDriver(string uid)
 {
     return(logic.GetDriver(uid));
 }
Exemplo n.º 3
0
 public IActionResult DriverEdit(string id)
 {
     return(View(nameof(DriverEdit), driverLogic.GetDriver(id)));
 }
Exemplo n.º 4
0
 public void AddDriverToTeam([FromBody] DriverAndTeam item)
 {
     tlogic.AddDriverToTeam(dlogic.GetDriver(item.DriverUid), item.TeamUid);
 }