private void GrabarAvance(string s_tipo_avance) { lc_pro_avance_Data o_Data = new lc_pro_avance_Data(); o_Data.Insertar(new lc_pro_avance { cod_empresa = VarGlobal.pro_tarea.cod_empresa, cod_unidad = VarGlobal.pro_tarea.cod_unidad, cod_personal = VarGlobal.cod_personal, nom_personal = VarGlobal.nom_personal, fec_avance = DateTime.Now.ToString("dd/MM/yyyy"), por_avance = Convert.ToInt32(lblAvance.Text), des_avance = edComentario.Text, num_avance = VarGlobal.num_etapa, tip_avance = s_tipo_avance, cod_modulo = "TR", sincronizado = false, cod_referencia = VarGlobal.pro_tarea.cod_tarea, usuario = VarGlobal.cod_usuario, ip = VarGlobal.ip }); }
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 CargarAvances() { lc_pro_avance_Data o_Data = new lc_pro_avance_Data(); var lista = o_Data.Listar(); List <lc_pro_avance> lst_avance = o_Data.Listar().Where(x => x.cod_empresa == VarGlobal.cod_empresa && x.cod_unidad == VarGlobal.cod_unidad && x.cod_referencia == VarGlobal.pro_tarea.cod_tarea).OrderByDescending(x => x.num_avance).ToList(); CargarEvidencias(); for (int i = 0; i < lst_avance.Count; i++) { int i_num_etapa = lst_avance[i].num_avance; var ent_evidencia = VarGlobal.pro_tarea.lst_lc_pro_evidencia.Where(x => x.num_etapa == i_num_etapa).FirstOrDefault(); var tipo = lst_avance[i].tip_avance; if (tipo == "A") { lst_avance[i].vpor_avance = lst_avance[i].por_avance.ToString().Trim() + "%"; } else { lst_avance[i].vpor_avance = ""; } // CREANDO STACKLAYOUT CONTENEDOR. StackLayout stCon = new StackLayout { Orientation = StackOrientation.Horizontal, Margin = new Thickness(0, 0, 0, 1), Spacing = 0, Padding = 5, BackgroundColor = Color.White, Children = { new IconImage { Icon = "fa-user-circle", IconColor = Color.Black, VerticalOptions = LayoutOptions.Start, Margin = new Thickness(0, 0, 5, 0), IconSize = 20, WidthRequest = 30, HeightRequest = 30 } } }; StackLayout stHij = new StackLayout { Orientation = StackOrientation.Vertical, Spacing = 0, HorizontalOptions = LayoutOptions.FillAndExpand, Children = { new Label { Text = lst_avance[i].nom_personal, TextColor = Color.Black, FontAttributes = FontAttributes.Bold, FontSize = 12 }, new Label { Text = lst_avance[i].fec_avance, Margin = 0, FontSize = 11, TextColor = Color.Gray }, new Label { Text = lst_avance[i].vpor_avance.ToString().Trim() + " de Avance.", FontSize = 11, TextColor = Color.FromHex("#5F6A6A"), IsVisible = (lst_avance[i].tip_avance == "A") }, new Label { HorizontalOptions = LayoutOptions.FillAndExpand, Text = lst_avance[i].des_avance.Trim(), Margin = new Thickness(0, 5, 0, 0), FontSize = 11, TextColor = Color.FromHex("#2E2E2E") } } }; // CREANDO IMAGEN if (ent_evidencia != null) { Stream stream = new MemoryStream(ent_evidencia.dat_evidencia); Image imgFoto = new Image { Source = ImageSource.FromStream(() => { return(stream); }), HeightRequest = 150, HorizontalOptions = LayoutOptions.Start }; stHij.Children.Add(imgFoto); } //Device.BeginInvokeOnMainThread(() => //{ // stCon.Children.Add(stHij); // stPri.Children.Add(stCon); //}); stCon.Children.Add(stHij); stPri.Children.Add(stCon); } //OCULTAR ICONO //Device.BeginInvokeOnMainThread(() => //{ // aiAva.IsVisible = false; //}); aiAva.IsVisible = false; }
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; } } }