private void ListarIncidentes()
        {
            lc_pro_tarea_Data     o_Tarea = new lc_pro_tarea_Data();
            lc_pro_incidente_Data o_Data  = new lc_pro_incidente_Data();
            var lista = o_Data.Listar().Where(x => x.cod_empresa == VarGlobal.cod_empresa &&
                                              x.cod_unidad == VarGlobal.cod_unidad &&
                                              x.cod_estado == "01" &&
                                              x.cod_personal == VarGlobal.cod_personal).ToList();
            string s_col_base = "#BDBDBD";

            for (int i = 0; i < lista.Count; i++)
            {
                //  Barra de Avance
                lista[i].i_avance = Convert.ToInt32(lista[i].por_avance);
                string s_col_marca = "#41C571";

                lista[i].s_color_00 = s_col_marca;
                lista[i].s_color_01 = lista[i].i_avance > 5 ? s_col_marca : s_col_base;
                lista[i].s_color_02 = lista[i].i_avance > 15 ? s_col_marca : s_col_base;
                lista[i].s_color_03 = lista[i].i_avance > 25 ? s_col_marca : s_col_base;
                lista[i].s_color_04 = lista[i].i_avance > 35 ? s_col_marca : s_col_base;
                lista[i].s_color_05 = lista[i].i_avance > 45 ? s_col_marca : s_col_base;
                lista[i].s_color_06 = lista[i].i_avance > 55 ? s_col_marca : s_col_base;
                lista[i].s_color_07 = lista[i].i_avance > 65 ? s_col_marca : s_col_base;
                lista[i].s_color_08 = lista[i].i_avance > 75 ? s_col_marca : s_col_base;
                lista[i].s_color_09 = lista[i].i_avance > 85 ? s_col_marca : s_col_base;
                lista[i].s_color_10 = lista[i].i_avance > 95 ? s_col_marca : s_col_base;

                if (lista[i].sincronizado)
                {
                    lista[i].sincr_color = "#04B404";
                }
                else
                {
                    lista[i].sincr_color = "#DF0101";
                }

                switch (lista[i].cod_tipoubicacion)
                {
                case "E":
                    lista[i].nom_ubicacion = lista[i].nom_equipo;
                    break;

                case "I":
                    lista[i].nom_ubicacion = lista[i].nom_labor;
                    break;

                case "S":
                    lista[i].nom_ubicacion = lista[i].nom_lugar;
                    break;
                }

                //  Cantidad de Tareas
                lista[i].num_tarea = o_Tarea.Listar().Where(x => x.cod_empresa == VarGlobal.cod_empresa &&
                                                            x.cod_unidad == VarGlobal.cod_unidad &&
                                                            x.cod_referencia == lista[i].cod_incidente).Count();
                lista[i].ver_tarea = lista[i].num_tarea > 0;
            }
            IncidentelistView.ItemsSource = lista.OrderByDescending(x => x.cod_incidente).ToList();
        }
        private async void btnEli_Clicked(object sender, EventArgs e)
        {
            Content.IsEnabled = false;

            VarGlobal.pro_tarea = ((Button)sender).CommandParameter as lc_pro_tarea;

            if (VarGlobal.pro_tarea.por_avance == 0 &&
                VarGlobal.pro_tarea.cod_estado == "01" &&
                VarGlobal.pro_tarea.usu_crea == VarGlobal.cod_usuario || VarGlobal.cod_perfil == "SA")
            {
                var popupAlert = new pg_confirmacion(new ent_mensaje
                {
                    tip_mensaje = "WAR",
                    tit_mensaje = "Tárea",
                    tex_mensaje = "¿Desea Eliminar Registro?"
                });
                var result = await popupAlert.Show(); //espere hasta que el usuario seleccione la opción (si o no)

                await Navigation.PushPopupAsync(loadingPage);

                if (result)
                {
                    lc_pro_tarea_Data o_Data = new lc_pro_tarea_Data();
                    o_Data.EliminarUno(VarGlobal.pro_tarea, true);

                    //InsertarProElimina
                    if (VarGlobal.pro_tarea.cod_tarea.Length == 12)
                    {
                        lc_pro_elimina_Data o_Data_Eli = new lc_pro_elimina_Data();
                        o_Data_Eli.Insertar(new lc_pro_elimina()
                        {
                            cod_empresa    = VarGlobal.pro_tarea.cod_empresa,
                            cod_unidad     = VarGlobal.pro_tarea.cod_unidad,
                            cod_modulo     = VarGlobal.pro_tarea.cod_modulo,
                            cod_referencia = VarGlobal.pro_tarea.cod_tarea,
                            ip             = VarGlobal.ip
                        });
                    }

                    //ListarTareas
                    ListarTareas();
                }
            }
            else
            {
                VarGlobal._mensaje = new pg_mensaje(new ent_mensaje
                {
                    tip_mensaje = "ERR",
                    tit_mensaje = "Error de Validación",
                    tex_mensaje = "No se puede eliminar Tarea"
                });
                await Navigation.PushPopupAsync(VarGlobal._mensaje);
            }

            await Navigation.RemovePopupPageAsync(loadingPage);

            Content.IsEnabled = true;
        }
        private void GrabarTarea()
        {
            DateTime           fecha      = DateTime.Now;
            lc_aux_estado_Data o_Data_Est = new lc_aux_estado_Data();
            lc_pro_tarea       ent_tarea  = new lc_pro_tarea();
            lc_aux_estado      ent_estado = o_Data_Est.Listar().Where(x => x.cod_empresa == VarGlobal.cod_empresa &&
                                                                      x.cod_modulo == "TR" &&
                                                                      x.cod_estado == "01").FirstOrDefault();

            ent_tarea = new lc_pro_tarea()
            {
                cod_empresa       = VarGlobal.pro_hallazgo.cod_empresa,
                cod_unidad        = VarGlobal.pro_hallazgo.cod_unidad,
                cod_referencia    = VarGlobal.pro_hallazgo.cod_hallazgo,
                des_origen        = VarGlobal.pro_hallazgo.nom_hallazgoclase,
                cod_modulo        = "HL",
                cod_estado        = ent_estado.cod_estado,
                nom_estado        = ent_estado.nom_estado,
                ini_tarea         = fecha.ToString("dd/MM/yyyy"),
                fin_tarea         = fecha.AddDays(4).ToString("dd/MM/yyyy"),
                sol_personal      = VarGlobal.pro_hallazgo.cod_personal,
                eje_personal      = VarGlobal.pro_hallazgo.eje_personal,
                nom_eje_personal  = VarGlobal.pro_hallazgo.nom_eje_personal,
                nom_sol_personal  = VarGlobal.pro_hallazgo.nom_personal,
                des_tarea         = VarGlobal.pro_hallazgo.des_tarea,
                cod_tipoubicacion = VarGlobal.pro_hallazgo.cod_tipoubicacion,
                nom_tipoubicacion = VarGlobal.pro_hallazgo.nom_tipoubicacion,
                cod_labor         = VarGlobal.pro_hallazgo.cod_labor,
                nom_labor         = VarGlobal.pro_hallazgo.nom_labor,
                cod_lugar         = VarGlobal.pro_hallazgo.cod_lugar,
                nom_lugar         = VarGlobal.pro_hallazgo.nom_lugar,
                cod_equipo        = VarGlobal.pro_hallazgo.cod_equipo,
                nom_equipo        = VarGlobal.pro_hallazgo.nom_equipo,
                cod_modulo_2do    = VarGlobal.cod_modulo_2do,
                por_avance        = 0,
                ver_opcion        = ent_estado.ver_opcion,
                usuario           = VarGlobal.cod_usuario,
                ip      = VarGlobal.ip,
                estado  = "A",
                comando = "INS"
            };

            lc_pro_tarea_Data o_Data = new lc_pro_tarea_Data();
            var conteo = (o_Data.Listar().Count) + 1;
            var año    = ent_tarea.ini_tarea.Substring(8, 2);
            var mes    = ent_tarea.ini_tarea.Substring(3, 2);

            ent_tarea.cod_tarea    = "TR" + año + mes + "-" + conteo;
            ent_tarea.sincronizado = false;
            o_Data.Modificar(ent_tarea);
        }
        private void ListarOpciones()
        {
            lc_pro_tarea_Data   o_Data_tar = new lc_pro_tarea_Data();
            List <lc_pro_tarea> lst_tarea  = o_Data_tar.Listar().Where(x => x.cod_empresa == VarGlobal.cod_empresa &&
                                                                       x.cod_unidad == VarGlobal.cod_unidad).ToList();

            int total = lst_tarea.Where(x => x.eje_personal == VarGlobal.cod_personal && x.ver_opcion.Contains("A")).ToList().Count;

            List <ent_opcion> lst_opcion = new List <ent_opcion>();

            lst_opcion.Add(new ent_opcion
            {
                cod_opcion = "01",
                nom_opcion = "Tareas por Atender",
                ver_opcion = "A",
                can_opcion = lst_tarea.Where(x => x.eje_personal == VarGlobal.cod_personal && x.ver_opcion.Contains("A")).ToList().Count
            });
            lst_opcion.Add(new ent_opcion
            {
                cod_opcion = "02",
                nom_opcion = "Tareas por Verificar",
                ver_opcion = "V",
                can_opcion = lst_tarea.Where(x => x.sol_personal == VarGlobal.cod_personal && x.ver_opcion.Contains("V")).ToList().Count
            });
            lst_opcion.Add(new ent_opcion
            {
                cod_opcion = "03",
                nom_opcion = "Favoritos",
                ver_opcion = "X",
                can_opcion = lst_tarea.Where(x => x.sol_personal != VarGlobal.cod_personal &&
                                             x.eje_personal != VarGlobal.cod_personal &&
                                             x.ver_opcion.Contains("X")).ToList().Count
            });
            lst_opcion.Add(new ent_opcion
            {
                cod_opcion = "04",
                nom_opcion = "Tareas Solicitadas",
                ver_opcion = "S",
                can_opcion = lst_tarea.Where(x => x.usu_crea == VarGlobal.cod_usuario).ToList().Count
            });

            AccionListView.ItemsSource = lst_opcion;
        }
        private void CargarDetalles()
        {
            lc_pro_evidencia_Data o_Data_Evi = new lc_pro_evidencia_Data();

            VarGlobal.pro_hallazgo.lst_lc_pro_evidencia = o_Data_Evi.Listar().Where(x => x.cod_empresa == VarGlobal.pro_hallazgo.cod_empresa &&
                                                                                    x.cod_unidad == VarGlobal.pro_hallazgo.cod_unidad &&
                                                                                    x.cod_referencia == VarGlobal.pro_hallazgo.cod_hallazgo).ToList();
            lc_pro_coordenada_Data o_Data_Coo = new lc_pro_coordenada_Data();

            VarGlobal.pro_hallazgo.lst_lc_pro_coordenada = o_Data_Coo.Listar().Where(x => x.cod_empresa == VarGlobal.pro_hallazgo.cod_empresa &&
                                                                                     x.cod_unidad == VarGlobal.pro_hallazgo.cod_unidad &&
                                                                                     x.cod_referencia == VarGlobal.pro_hallazgo.cod_hallazgo).ToList();
            lc_pro_participante_Data o_Data_Par = new lc_pro_participante_Data();

            VarGlobal.pro_hallazgo.lst_lc_pro_participante = o_Data_Par.Listar().Where(x => x.cod_empresa == VarGlobal.pro_hallazgo.cod_empresa &&
                                                                                       x.cod_unidad == VarGlobal.pro_hallazgo.cod_unidad &&
                                                                                       x.cod_referencia == VarGlobal.pro_hallazgo.cod_hallazgo
                                                                                       ).ToList();
            lc_pro_tarea_Data o_Data_Tar = new lc_pro_tarea_Data();

            VarGlobal.pro_hallazgo.lst_lc_pro_tarea = o_Data_Tar.Listar().Where(x => x.cod_empresa == VarGlobal.pro_hallazgo.cod_empresa &&
                                                                                x.cod_unidad == VarGlobal.pro_hallazgo.cod_unidad &&
                                                                                x.cod_referencia == VarGlobal.pro_hallazgo.cod_hallazgo).ToList();
        }
        private async void btn_grabar_Clicked(object sender, EventArgs e)
        {
            var loadingPage = new pg_Loading();

            if (!ValidarAccion())
            {
                var popupAlert = new pg_confirmacion(new ent_mensaje
                {
                    tip_mensaje = "INF",
                    tit_mensaje = "Tárea",
                    tex_mensaje = "¿Desea Grabar Registro?"
                });
                var result = await popupAlert.Show();

                await Navigation.PushPopupAsync(loadingPage);

                if (result)
                {
                    lc_pro_tarea_Data o_Data = new lc_pro_tarea_Data();
                    //  Generar Codigo, solo si viene VACIO O NULO
                    if (string.IsNullOrEmpty(VarGlobal.pro_tarea.cod_tarea))
                    {
                        var conteo = (o_Data.Listar().Count) + 1;
                        var año    = VarGlobal.pro_tarea.ini_tarea.Substring(8, 2);
                        var mes    = VarGlobal.pro_tarea.ini_tarea.Substring(3, 2);
                        VarGlobal.pro_tarea.cod_tarea        = "TR" + año + mes + "-" + conteo;
                        VarGlobal.pro_tarea.nom_eje_personal = lbl_reportado.Text;
                        VarGlobal.pro_tarea.nom_sol_personal = lbl_solicitante.Text;
                    }
                    VarGlobal.pro_tarea.sincronizado = false;
                    o_Data.Modificar(VarGlobal.pro_tarea);
                    Retornar();
                }
                await Navigation.RemovePopupPageAsync(loadingPage);
            }
        }
        private void ListarTareas()
        {
            lc_pro_avance_Data  o_Avance = new lc_pro_avance_Data();
            lc_pro_tarea_Data   o_Data   = new lc_pro_tarea_Data();
            List <lc_pro_tarea> lista    = o_Data.Listar();

            if (VarGlobal.cod_modulo == "")
            {
                switch (VarGlobal.ver_opcion)
                {
                case "A":
                    lista = lista.Where(x => x.eje_personal == VarGlobal.cod_personal && x.ver_opcion.Contains("A")).ToList();
                    break;

                case "V":
                    lista = lista.Where(x => x.sol_personal == VarGlobal.cod_personal && x.ver_opcion.Contains("V")).ToList();
                    break;

                case "X":
                    lista = lista.Where(x => x.sol_personal != VarGlobal.cod_personal &&
                                        x.eje_personal != VarGlobal.cod_personal &&
                                        x.ver_opcion.Contains("X")).ToList();
                    break;

                case "S":
                    lista = lista.Where(x => x.usu_crea == VarGlobal.cod_usuario).ToList();
                    break;
                }
            }
            else
            {
                lista = lista.Where(x => x.cod_empresa == VarGlobal.cod_empresa &&
                                    x.cod_unidad == VarGlobal.cod_unidad &&
                                    x.cod_referencia == VarGlobal.cod_referencia).ToList();
            }


            string s_col_base = "#BDBDBD";

            for (int i = 0; i < lista.Count; i++)
            {
                lista[i].fecha = lista[i].ini_tarea + " - " + lista[i].fin_tarea;

                //  Barra de Avance
                lista[i].i_avance = Convert.ToInt32(lista[i].por_avance);
                string s_col_marca = "#41C571";

                lista[i].s_color_00 = s_col_marca;
                lista[i].s_color_01 = lista[i].i_avance > 5 ? s_col_marca : s_col_base;
                lista[i].s_color_02 = lista[i].i_avance > 15 ? s_col_marca : s_col_base;
                lista[i].s_color_03 = lista[i].i_avance > 25 ? s_col_marca : s_col_base;
                lista[i].s_color_04 = lista[i].i_avance > 35 ? s_col_marca : s_col_base;
                lista[i].s_color_05 = lista[i].i_avance > 45 ? s_col_marca : s_col_base;
                lista[i].s_color_06 = lista[i].i_avance > 55 ? s_col_marca : s_col_base;
                lista[i].s_color_07 = lista[i].i_avance > 65 ? s_col_marca : s_col_base;
                lista[i].s_color_08 = lista[i].i_avance > 75 ? s_col_marca : s_col_base;
                lista[i].s_color_09 = lista[i].i_avance > 85 ? s_col_marca : s_col_base;
                lista[i].s_color_10 = lista[i].i_avance > 95 ? s_col_marca : s_col_base;

                lista[i].coment_boton = (lista[i].cod_tarea.Trim().Length == 12);

                switch (lista[i].cod_estado)
                {
                case "01":
                case "03":
                    lista[i].btn_opcion = "fa-rocket";
                    lista[i].ena_boton  = true;
                    break;

                case "02":
                    lista[i].btn_opcion = "fa-gavel";
                    lista[i].ena_boton  = true;
                    break;

                case "04":
                    lista[i].ena_boton    = false;
                    lista[i].coment_boton = false;
                    break;
                }
                //  opción para mostrar el botón de atender o verificar
                lista[i].ver_btnAtender = (VarGlobal.ver_opcion == "A" || VarGlobal.ver_opcion == "V");


                if (lista[i].sincronizado)
                {
                    lista[i].sincr_color = "#04B404";
                }
                else
                {
                    lista[i].sincr_color = "#DF0101";
                }
                switch (lista[i].cod_tipoubicacion)
                {
                case "E":
                    lista[i].nom_ubicacion = lista[i].nom_equipo;
                    break;

                case "I":
                    lista[i].nom_ubicacion = lista[i].nom_labor;
                    break;

                case "S":
                    lista[i].nom_ubicacion = lista[i].nom_lugar;
                    break;
                }

                //  Cantidad de Comentarios
                lista[i].num_comentario = o_Avance.Listar().Where(x => x.cod_empresa == VarGlobal.cod_empresa &&
                                                                  x.cod_unidad == VarGlobal.cod_unidad &&
                                                                  x.cod_referencia == lista[i].cod_tarea).Count();
                lista[i].ver_comentario = lista[i].num_comentario > 0;
            }
            AccionlistView.ItemsSource = lista;
        }
        private void ListarObservaciones()
        {
            lc_pro_hallazgo_Data   o_Data  = new lc_pro_hallazgo_Data();
            lc_pro_tarea_Data      o_Tarea = new lc_pro_tarea_Data();
            List <lc_pro_hallazgo> lista   = new List <lc_pro_hallazgo>();

            if (VarGlobal.pro_hallazgo.cod_modulo == "OB")
            {
                lista = o_Data.Listar().Where(x => x.cod_empresa == VarGlobal.cod_empresa &&
                                              x.cod_unidad == VarGlobal.cod_unidad &&
                                              x.cod_modulo == VarGlobal.pro_hallazgo.cod_modulo &&
                                              x.cod_estado == "01" &&
                                              x.cod_personal == VarGlobal.cod_personal
                                              ).ToList();
            }
            else
            {
                lista = o_Data.Listar().Where(x => x.cod_empresa == VarGlobal.cod_empresa &&
                                              x.cod_unidad == VarGlobal.cod_unidad &&
                                              x.cod_modulo == VarGlobal.pro_hallazgo.cod_modulo &&
                                              x.cod_estado == "01" &&
                                              x.cod_referencia == VarGlobal.pro_hallazgo.cod_referencia &&
                                              x.cod_personal == VarGlobal.cod_personal
                                              ).ToList();
            }
            string s_col_base = "#BDBDBD";

            for (int i = 0; i < lista.Count; i++)
            {
                //  Barra de Avance
                lista[i].i_avance = Convert.ToInt32(lista[i].por_avance);
                string s_col_marca = "#41C571";

                lista[i].s_color_00 = s_col_marca;
                lista[i].s_color_01 = lista[i].i_avance > 5 ? s_col_marca : s_col_base;
                lista[i].s_color_02 = lista[i].i_avance > 15 ? s_col_marca : s_col_base;
                lista[i].s_color_03 = lista[i].i_avance > 25 ? s_col_marca : s_col_base;
                lista[i].s_color_04 = lista[i].i_avance > 35 ? s_col_marca : s_col_base;
                lista[i].s_color_05 = lista[i].i_avance > 45 ? s_col_marca : s_col_base;
                lista[i].s_color_06 = lista[i].i_avance > 55 ? s_col_marca : s_col_base;
                lista[i].s_color_07 = lista[i].i_avance > 65 ? s_col_marca : s_col_base;
                lista[i].s_color_08 = lista[i].i_avance > 75 ? s_col_marca : s_col_base;
                lista[i].s_color_09 = lista[i].i_avance > 85 ? s_col_marca : s_col_base;
                lista[i].s_color_10 = lista[i].i_avance > 95 ? s_col_marca : s_col_base;

                var nivel = lista[i].nom_tblnivelriesgo;
                switch (nivel)
                {
                case "ALTO":
                    lista[i].niv_color = "#FF0000";
                    break;

                case "MEDIO":
                    lista[i].niv_color = "#FF8000";
                    break;

                case "BAJO":
                    lista[i].niv_color = "#FFBF00";
                    break;
                }
                if (lista[i].sincronizado)
                {
                    lista[i].sincr_color = "#04B404";
                }
                else
                {
                    lista[i].sincr_color = "#DF0101";
                }

                if (lista[i].cod_modulo == "OB")
                {
                    lista[i].ver_clase = false;
                }
                else
                {
                    lista[i].ver_clase = true;
                }

                switch (lista[i].cod_tipoubicacion)
                {
                case "E":
                    lista[i].nom_ubicacion = lista[i].nom_equipo;
                    break;

                case "I":
                    lista[i].nom_ubicacion = lista[i].nom_labor;
                    break;

                case "S":
                    lista[i].nom_ubicacion = lista[i].nom_lugar;
                    break;
                }

                //  Cantidad de Tareas
                lista[i].num_tarea = o_Tarea.Listar().Where(x => x.cod_empresa == VarGlobal.cod_empresa &&
                                                            x.cod_unidad == VarGlobal.cod_unidad &&
                                                            x.cod_referencia == lista[i].cod_hallazgo).Count();
                lista[i].ver_tarea = lista[i].num_tarea > 0;
            }
            ObservacionlistView.ItemsSource = lista.OrderByDescending(x => x.cod_hallazgo).ToList();
        }
Esempio n. 9
0
        private async void btnGrabar_Clicked(object sender, EventArgs e)
        {
            lc_aux_estado_Data o_Data_Est = new lc_aux_estado_Data();
            var loadingPage = new pg_Loading();
            var comentar    = VarGlobal.comentar;
            var imagen      = img_foto.Source;

            if (comentar == 1)
            {
                if (!ValidarComentar())
                {
                    var popupAlert = new pg_confirmacion(new ent_mensaje
                    {
                        tip_mensaje = "INF",
                        tit_mensaje = "Tárea",
                        tex_mensaje = "¿Desea Comentar Tárea?"
                    });
                    var result = await popupAlert.Show();

                    await Navigation.PushPopupAsync(loadingPage);

                    if (result)
                    {
                        lc_pro_avance_Data o_Data = new lc_pro_avance_Data();
                        var i_numetapa            = o_Data.Listar().Where(x => x.cod_referencia == VarGlobal.pro_tarea.cod_tarea).Count();
                        VarGlobal.num_etapa = (i_numetapa + 1);


                        GrabarAvance("C");
                        lc_pro_tarea_Data o_Data_Tar = new lc_pro_tarea_Data();
                        VarGlobal.pro_tarea.por_avance   = Convert.ToInt32(lblAvance.Text);
                        VarGlobal.pro_tarea.des_avance   = edComentario.Text;
                        VarGlobal.pro_tarea.sincronizado = false;
                        GrabarEvidencia();
                        o_Data_Tar.Modificar(VarGlobal.pro_tarea);

                        Retornar();
                    }
                    await Navigation.RemovePopupPageAsync(loadingPage);
                }
            }
            else
            {
                var opcion = VarGlobal.ver_opcion;
                switch (opcion)
                {
                case "A":
                    if (!ValidarAtender())
                    {
                        var popupAlert = new pg_confirmacion(new ent_mensaje
                        {
                            tip_mensaje = "INF",
                            tit_mensaje = "Tárea",
                            tex_mensaje = "¿Desea Atender Tárea?"
                        });
                        var result = await popupAlert.Show();

                        await Navigation.PushPopupAsync(loadingPage);

                        if (result)
                        {
                            lc_pro_avance_Data o_Data = new lc_pro_avance_Data();
                            var i_numetapa            = o_Data.Listar().Where(x => x.cod_referencia == VarGlobal.pro_tarea.cod_tarea).Count();
                            VarGlobal.num_etapa = (i_numetapa + 1);
                            GrabarAvance("A");

                            lc_pro_tarea_Data o_Data_Tar = new lc_pro_tarea_Data();
                            VarGlobal.pro_tarea.por_avance   = Convert.ToInt32(lblAvance.Text);
                            VarGlobal.pro_tarea.des_avance   = edComentario.Text;
                            VarGlobal.pro_tarea.sincronizado = false;
                            if (VarGlobal.pro_tarea.por_avance == 100)
                            {
                                lc_aux_estado ent_estado = o_Data_Est.Listar().Where(x => x.cod_empresa == VarGlobal.cod_empresa &&
                                                                                     x.cod_modulo == "TR" &&
                                                                                     x.cod_estado == "02").FirstOrDefault();
                                VarGlobal.pro_tarea.cod_estado = ent_estado.cod_estado;
                                VarGlobal.pro_tarea.nom_estado = ent_estado.nom_estado;
                                VarGlobal.pro_tarea.ver_opcion = ent_estado.ver_opcion;
                            }
                            GrabarEvidencia();
                            o_Data_Tar.Modificar(VarGlobal.pro_tarea);

                            Retornar();
                        }
                        await Navigation.RemovePopupPageAsync(loadingPage);
                    }
                    break;

                case "V":
                    if (!ValidarVerificar())
                    {
                        var popupAlert = new pg_confirmacion(new ent_mensaje
                        {
                            tip_mensaje = "INF",
                            tit_mensaje = "Tárea",
                            tex_mensaje = "¿Desea Verificar Tárea?"
                        });
                        var result = await popupAlert.Show();

                        await Navigation.PushPopupAsync(loadingPage);

                        if (result)
                        {
                            lc_pro_estado_Data o_Data = new lc_pro_estado_Data();
                            var i_numetapa            = o_Data.Listar().Where(x => x.cod_referencia == VarGlobal.pro_tarea.cod_tarea).Count();
                            VarGlobal.num_etapa = (i_numetapa + 1);

                            //lc_aux_estado pk_estado = pkEstado.SelectedItem as lc_aux_estado;
                            lc_aux_estado pk_estado = plst_estado.Where(x => x.cod_estado == VarGlobal.pro_tarea.cod_estado).FirstOrDefault();

                            o_Data.Insertar(new lc_pro_estado
                            {
                                cod_empresa    = VarGlobal.cod_empresa,
                                cod_unidad     = VarGlobal.cod_unidad,
                                cod_personal   = VarGlobal.cod_personal,
                                cod_estado     = pk_estado.cod_estado,
                                des_estado     = edComentario.Text,
                                cod_modulo     = "TR",
                                sincronizado   = false,
                                cod_referencia = VarGlobal.pro_tarea.cod_tarea,
                                usuario        = VarGlobal.cod_usuario,
                                ip             = "App"
                            });

                            lc_pro_tarea_Data o_Data_Tar = new lc_pro_tarea_Data();
                            VarGlobal.pro_tarea.des_avance   = edComentario.Text;
                            VarGlobal.pro_tarea.sincronizado = false;
                            VarGlobal.pro_tarea.cod_estado   = pk_estado.cod_estado;
                            VarGlobal.pro_tarea.nom_estado   = pk_estado.nom_estado;
                            VarGlobal.pro_tarea.ver_opcion   = pk_estado.ver_opcion;

                            GrabarEvidencia();
                            o_Data_Tar.Modificar(VarGlobal.pro_tarea);

                            Retornar();
                        }
                        await Navigation.RemovePopupPageAsync(loadingPage);
                    }
                    break;
                }
            }
        }