示例#1
0
        public async void btnImagen_Clicked(object sender, EventArgs e)
        {
            var imagen = await ServicioImagen.TomarFoto();

            if (imagen != null)
            {
                bot.EnviarImagen(imagen.GetStream());
            }
        }
示例#2
0
        private async void ButtonCamara_Clicked(object sender, EventArgs e)
        {
            foto = await ServicioImagen.TomarFoto();

            if (foto != null)
            {
                Fotografia.Source = ImageSource.FromStream(foto.GetStream);
            }
        }
示例#3
0
        private async void btnSubirComprobante_Clicked(object sender, EventArgs e)
        {
            try
            {
                Loading(true);

                foto = await ServicioImagen.TomarFoto();

                if (foto != null)
                {
                    imagenComprobante.Source = ImageSource.FromStream(foto.GetStream);

                    var extension = Path.GetExtension(foto.Path);

                    var uri = await ServicioBlobStorage.SubirBlob(Constantes.Container_Comprobantes, foto.GetStream(), extension);

                    if (uri != string.Empty)
                    {
                        ticket.PartitionKey   = App.Cliente;
                        ticket.ComprobanteURL = uri;
                        ticket.Status         = "Verificando comprobante...";

                        var registro = await ServicioTableStorage.GuardarTicket(ticket);

                        if (registro)
                        {
                            await ServicioQueueStorage.ColocarTicket(ticket);

                            await DisplayAlert("¡Muy bien!", "Comprobante almacenado exitosamente", "OK");

                            await Navigation.PopAsync();
                        }
                        else
                        {
                            await DisplayAlert("Error", "Excepción: Hubo un error al registrar la información en la tabla", "OK");
                        }
                    }
                    else
                    {
                        await DisplayAlert("Error", "Excepción: Hubo un error al registrar la información en el blob", "OK");
                    }
                }
            }
            catch (Exception ex)
            {
                await DisplayAlert("Error", "Excepción: " + ex.Message, "OK");
            }
            finally
            {
                Loading(false);
            }
        }
        async void btnTomarFoto_Clicked(object sender, EventArgs e)
        {
            foto = await ServicioImagen.TomarFoto();

            if (foto != null)
            {
                imagen.Source         = ImageSource.FromStream(foto.GetStream);
                btnAnalizar.IsEnabled = true;
            }
            else
            {
                await DisplayAlert("Error", "No se pudo tomar la fotografía.", "OK");
            }
        }
        async void btnLogin_Clicked(object sender, EventArgs e)
        {
            try
            {
                Loading(true);
                var foto = await ServicioImagen.TomarFoto();

                if (foto != null)
                {
                    imagen.Source = ImageSource.FromStream(foto.GetStream);

                    var faceId = await ServicioFace.DetectarRostro(foto.GetStream());

                    var personId = await ServicioFace.IdentificarEmpleado(faceId);

                    if (personId != Guid.Empty)
                    {
                        var bd      = new ServicioBaseDatos();
                        var usuario = await bd.ObtenerUsuario(personId.ToString());

                        usuario.FotoActual = foto.Path;

                        var emocion = await ServicioFace.ObtenerEmocion(foto);

                        usuario.EmocionActual = emocion.Nombre;
                        usuario.ScoreActual   = emocion.Score;
                        var update = await bd.ActualizarUsuario(usuario);

                        await DisplayAlert("Correcto", $"Bienvenido {usuario.Nombre}", "OK");

                        await Navigation.PushAsync(new PaginaBienvenido(usuario));
                    }
                    else
                    {
                        await DisplayAlert("Error", "Persona no identificada", "OK");
                    }
                }
                else
                {
                    await DisplayAlert("Error", "No se pudo tomar la fotografía.", "OK");
                }
            }
            catch (Exception ex)
            {
            }
            finally
            {
                Loading(false);
            }
        }
示例#6
0
        private async void Foto_Clicked(object sender, EventArgs e)
        {
            var action = await DisplayActionSheet("Foto del alumno", "Cancelar", null, "Usar cámara", "Seleccionar de la biblioteca");

            bool camara = action.Contains("cámara");
            var  file   = await ServicioImagen.TomarFoto(camara);

            imgFoto.Source = ImageSource.FromStream(() => {
                var stream  = file.GetStream();
                this.stream = new MemoryStream();
                stream.CopyTo(this.stream);
                stream.Seek(0, SeekOrigin.Begin);
                file.Dispose();
                return(stream);
            });
        }
        async void BtnTomarFoto_Clicked(object sender, EventArgs e)
        {
            //await DisplayAlert("ok", "Empleado registrado correctamente", "OK");
            try
            {
                Loading(true);

                if (foto1 == null)
                {
                    foto1 = await ServicioImagen.TomarFoto();

                    if (foto1 != null)
                    {
                        imagen1.Source = ImageSource.FromStream(foto1.GetStream);
                    }
                }
                else if (foto2 == null)
                {
                    foto2 = await ServicioImagen.TomarFoto();

                    if (foto2 != null)
                    {
                        imagen2.Source = ImageSource.FromStream(foto2.GetStream);
                    }
                }
                else
                {
                    foto3 = await ServicioImagen.TomarFoto();

                    if (foto3 != null)
                    {
                        imagen3.Source = ImageSource.FromStream(foto3.GetStream);
                    }
                }
            }
            catch (Exception)
            {
                Console.WriteLine("Error");
            }
            finally
            {
                Loading(false);
            }
        }
        async void btnTomarFoto_Clicked(object sender, EventArgs e)
        {
            try
            {
                Loading(true);

                if (foto1 == null)
                {
                    foto1 = await ServicioImagen.TomarFoto();

                    if (foto1 != null)
                    {
                        imagen1.Source = ImageSource.FromStream(foto1.GetStream);
                    }
                }
                else if (foto2 == null)
                {
                    foto2 = await ServicioImagen.TomarFoto();

                    if (foto2 != null)
                    {
                        imagen2.Source = ImageSource.FromStream(foto2.GetStream);
                    }
                }
                else
                {
                    foto3 = await ServicioImagen.TomarFoto();

                    if (foto3 != null)
                    {
                        imagen3.Source = ImageSource.FromStream(foto3.GetStream);
                    }
                }
            }
            catch (Exception ex)
            {
            }
            finally
            {
                Loading(false);
            }
        }
示例#9
0
        async void btnTomarFoto_Clicked(object sender, EventArgs e)
        {
            try
            {
                Loading(true);

                foto = await ServicioImagen.TomarFoto();

                if (foto != null)
                {
                    imagen.Source = ImageSource.FromStream(foto.GetStream);
                }
            }
            catch (Exception ex)
            {
                await DisplayAlert("Error", "Excepción: " + ex.Message, "OK");
            }
            finally
            {
                Loading(false);
            }
        }