Exemple #1
0
        private async void AddBaucher(Ticket ticket)
        {
            CameraCaptureTask task = new CameraCaptureTask
            {
                FileName   = "baucherorderno" + ticket.IdTicket + ".jpg",
                FolderName = "Photos"
            };

            var result = await task.TakePhoto();

            if (!result.Success) // ocurrio algun error
            {
                await DisplayAlert(App.AppName, result.Message, "Aceptar");
            }
            else if (result.Photo != null) // se tomo la foto con exito
            {
                Device.BeginInvokeOnMainThread(async() =>
                {
                    ProgressElement.IsVisible = true;
                    TicketsTable.IsVisible    = false;
                    ProgressText.Text         = "Subiendo boucher de pago, espere...";
                    var paramsdata            = new List <Param>()
                    {
                        new Param("idticket", ticket.IdTicket, ParamType.String),
                        new Param("fecha", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), ParamType.String),
                        new Param("image", result.Photo.GetStream(), ParamType.File, task.FileName, "image/jpeg")
                    };
                    var boucherresult = await App.RestClient.Post <BoucherResult>(App.BaseUrl + "/Ticket/UpdateBoucher", complexparams: paramsdata);
                    if (boucherresult != null && boucherresult.Status == 100)
                    {
                        ticket.Estatus.Text = "En revisión";
                        ticket.Baucher      = boucherresult.BoucherName;
                        ticket.BtnCamara.GestureRecognizers.Clear();
                        ticket.BtnCamara.GestureRecognizers.Add(new TapGestureRecognizer()
                        {
                            Command = new Command <Ticket>(ViewBaucher), CommandParameter = ticket
                        });
                        ticket.BtnCamara.Source = "document.png";
                        await DisplayAlert(App.AppName, "Se ha guardado el boucher", "Aceptar");
                    }
                    else
                    {
                        await DisplayAlert(App.AppName, "No pudimos guardar el boucher, intentalo de nuevo\nNota: baja la resolución de la camara para un mejor resultado...", "Aceptar");
                    }
                    ProgressElement.IsVisible = false;
                    TicketsTable.IsVisible    = true;
                });
            }
        }
Exemple #2
0
        private async void AddGuia(Ticket ticket)
        {
            CameraCaptureTask task = new CameraCaptureTask
            {
                FileName   = "guiano" + ticket.IdTicket + ".jpg",
                FolderName = "Photos"
            };

            var result = await task.TakePhoto();

            if (!result.Success) // ocurrio algun error
            {
                await DisplayAlert(App.AppName, result.Message, "Aceptar");
            }
            else if (result.Photo != null) // se tomo la foto con exito
            {
                Device.BeginInvokeOnMainThread(async() =>
                {
                    ProgressElement.IsVisible = true;
                    TicketsTable.IsVisible    = false;
                    ProgressText.Text         = "Subiendo guia de transporte, espere...";
                    var paramsdata            = new List <Param>()
                    {
                        new Param("image", result.Photo.GetStream(), ParamType.File, task.FileName),
                        new Param("idticket", ticket.IdTicket, ParamType.String),
                        new Param("fecha", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), ParamType.String)
                    };
                    var paqueteriaresult = await App.RestClient.Post <PaqueteriaResult>(App.BaseUrl + "/Ticket/UpdateGuia", complexparams: paramsdata);
                    if (paqueteriaresult != null && paqueteriaresult.Status == 100)
                    {
                        ticket.Estatus.Text = "Enviado";
                        ticket.Paqueteria   = paqueteriaresult.FileName;
                        ticket.BtnCamara.GestureRecognizers.Clear();
                        ticket.BtnCamara.GestureRecognizers.Add(new TapGestureRecognizer()
                        {
                            Command = new Command <Ticket>(ViewPaqueteria), CommandParameter = ticket
                        });
                        await DisplayAlert(App.AppName, "Se ha guardado la guia", "Aceptar");
                        InitTicket(Oauth, Type, null);
                    }
                    else
                    {
                        await DisplayAlert(App.AppName, "No pudimos guardar la guia, intentalo de nuevo", "Aceptar");
                    }
                    ProgressElement.IsVisible = false;
                    TicketsTable.IsVisible    = true;
                });
            }
        }