public async void ClickSwitch(object obj) { switch (obj.ToString()) { case "obtenerFotoInternoSeleccionado": try { var foto_seguimiento = new cIngresoBiometrico().Obtener(SelectedInterno.Anio, SelectedInterno.Centro, SelectedInterno.IdImputado, (short)enumTipoBiometrico.FOTO_FRENTE_SEGUIMIENTO).Any() ? new cIngresoBiometrico().Obtener(SelectedInterno.Anio, SelectedInterno.Centro, SelectedInterno.IdImputado, (short)enumTipoBiometrico.FOTO_FRENTE_SEGUIMIENTO).FirstOrDefault().BIOMETRICO : null; var foto_registro = new cIngresoBiometrico().Obtener(SelectedInterno.Anio, SelectedInterno.Centro, SelectedInterno.IdImputado, (short)enumTipoBiometrico.FOTO_FRENTE_REGISTRO).Any() ? new cIngresoBiometrico().Obtener(SelectedInterno.Anio, SelectedInterno.Centro, SelectedInterno.IdImputado, (short)enumTipoBiometrico.FOTO_FRENTE_REGISTRO).FirstOrDefault().BIOMETRICO : null; FotoInternoSeleccionado = foto_seguimiento == null ? (foto_registro == null ? new Imagenes().getImagenPerson() : foto_registro) : foto_seguimiento; } catch (Exception) { FotoInternoSeleccionado = new Imagenes().getImagenPerson(); } break; case "cerrarActividadSeleccionada": PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.LISTA_ASISTENCIA); PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.OSCURECER_FONDO); break; } }
//CLICK SWITCH - BOTONES public async void ClickSwitch(object obj) { switch (obj.ToString()) { case "BuscarClick": VentanaBusqueda.Hide(); await StaticSourcesViewModel.CargarDatosMetodoAsync(() => { var AnioBusqueda = 0; var FolioBusqueda = 0; Int32.TryParse(AnioBuscar, out AnioBusqueda); Int32.TryParse(FolioBuscar, out FolioBusqueda); if (!string.IsNullOrEmpty(NombreBuscar) || !string.IsNullOrEmpty(ApellidoPaternoBuscar) || !string.IsNullOrEmpty(ApellidoMaternoBuscar) || AnioBusqueda != 0 || FolioBusqueda != 0) { try { ListExpediente.Clear(); var imputados_busqueda = new List <InternosActividad>(); List <GRUPO_ASISTENCIA> imputados = new InternosActividad().ObtenerInternos(Areas, NombreBuscar, ApellidoPaternoBuscar, ApellidoMaternoBuscar, (short)AnioBusqueda, FolioBusqueda).Where(w => //FILTRA CON LA FECHA DEL SERVER w.GRUPO_HORARIO.HORA_INICIO.Value.Day == Fechas.GetFechaDateServer.Day && w.GRUPO_HORARIO.HORA_INICIO.Value.Month == Fechas.GetFechaDateServer.Month && w.GRUPO_HORARIO.HORA_INICIO.Value.Year == Fechas.GetFechaDateServer.Year && w.GRUPO_HORARIO.HORA_INICIO.Value.Hour == Fechas.GetFechaDateServer.Hour && //FILTRA A LOS INTERNOS CON TRASLADOS EN PROCESO Ó ACTIVOS (w.GRUPO_PARTICIPANTE.INGRESO.TRASLADO_DETALLE.Where( wTD => wTD.TRASLADO.TRASLADO_FEC.Year == Fechas.GetFechaDateServer.Year && wTD.TRASLADO.TRASLADO_FEC.Month == Fechas.GetFechaDateServer.Month && wTD.TRASLADO.TRASLADO_FEC.Day == Fechas.GetFechaDateServer.Day && (wTD.TRASLADO.ID_ESTATUS == "EP" || wTD.TRASLADO.ID_ESTATUS == "AC")).Count() == 0) && //FILTRA A LOS INTERNOS CON EXCARCELACIONES EN PROCESO Ó ACTIVAS (w.GRUPO_PARTICIPANTE.INGRESO.EXCARCELACION.Where( wEXC => wEXC.PROGRAMADO_FEC.Value.Year == Fechas.GetFechaDateServer.Year && wEXC.PROGRAMADO_FEC.Value.Month == Fechas.GetFechaDateServer.Month && wEXC.PROGRAMADO_FEC.Value.Day == Fechas.GetFechaDateServer.Day && wEXC.ID_ESTATUS == "EP" || wEXC.ID_ESTATUS == "AC").Count() == 0) ).ToList(); foreach (var imputado in imputados) { if (!ListaSeleccionados.Where(w => w.Anio == imputado.GRUPO_PARTICIPANTE.ING_ID_ANIO && w.Centro == imputado.GRUPO_PARTICIPANTE.ING_ID_CENTRO && w.IdImputado == imputado.GRUPO_PARTICIPANTE.ING_ID_IMPUTADO).Any()) { imputados_busqueda.Add(new InternosActividad() { Actividad = imputado.GRUPO_PARTICIPANTE.ACTIVIDAD.DESCR, Anio = (short)imputado.GRUPO_PARTICIPANTE.ING_ID_ANIO, Area = (short)imputado.GRUPO_HORARIO.ID_AREA, Asistencia = imputado.ASISTENCIA == 1 ? true : false, Centro = (short)imputado.GRUPO_PARTICIPANTE.ING_ID_CENTRO, Expediente = string.Format("{0}/{1}", imputado.GRUPO_PARTICIPANTE.ING_ID_ANIO, imputado.GRUPO_PARTICIPANTE.ING_ID_IMPUTADO), IdIngreso = (short)imputado.GRUPO_PARTICIPANTE.ING_ID_INGRESO, IdImputado = (short)imputado.GRUPO_PARTICIPANTE.ING_ID_IMPUTADO, Id_Grupo = (short)imputado.GRUPO_PARTICIPANTE.ID_GRUPO, IdConsec = (short)imputado.ID_CONSEC, Materno = imputado.GRUPO_PARTICIPANTE.INGRESO.IMPUTADO.MATERNO, Paterno = imputado.GRUPO_PARTICIPANTE.INGRESO.IMPUTADO.PATERNO, Nombre = imputado.GRUPO_PARTICIPANTE.INGRESO.IMPUTADO.NOMBRE, NIP = imputado.GRUPO_PARTICIPANTE.INGRESO.IMPUTADO.NIP, Ubicacion = imputado.GRUPO_HORARIO.AREA.DESCR, Seleccionar = false, Responsable = string.Format("{1} {2} {0}", imputado.GRUPO_PARTICIPANTE.GRUPO.PERSONA.NOMBRE.TrimEnd(), imputado.GRUPO_PARTICIPANTE.GRUPO.PERSONA.PATERNO.TrimEnd(), imputado.GRUPO_PARTICIPANTE.GRUPO.PERSONA.MATERNO.TrimEnd()) }); } } ListExpediente = imputados_busqueda; if (ListExpediente.Count > 0) { EmptyBusquedaVisible = false; } else { EmptyBusquedaVisible = true; } } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al realizar la busqueda de participantes.", ex); } } else { ListExpediente = new List <InternosActividad>(); } }); VentanaBusqueda.ShowDialog(); break; case "SeleccionarImputado": if (SelectedImputado != null) { if (SelectedImputado.FotoInterno == null) { try { var ingreso_biometrico = new cIngresoBiometrico(); var placeholder = new Imagenes().getImagenPerson(); var foto_ingreso = ingreso_biometrico.Obtener(SelectedImputado.Anio, SelectedImputado.Centro, SelectedImputado.IdImputado, (short)enumTipoBiometrico.FOTO_FRENTE_REGISTRO).FirstOrDefault(); var foto_seguimiento = ingreso_biometrico.Obtener(SelectedImputado.Anio, SelectedImputado.Centro, SelectedImputado.IdImputado, (short)enumTipoBiometrico.FOTO_FRENTE_SEGUIMIENTO).FirstOrDefault(); SelectedImputadoFotoIngreso = foto_ingreso != null ? foto_ingreso.BIOMETRICO : placeholder; SelectedImputadoFotoSeguimiento = foto_seguimiento != null ? foto_seguimiento.BIOMETRICO : placeholder; } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al obtener fotos del imputado seleccionado.", ex); } } } break; case "0": if (NIPBuscar.Length < 10) { NIPBuscar += "0"; } break; case "1": if (NIPBuscar.Length < 10) { NIPBuscar += "1"; } break; case "2": if (NIPBuscar.Length < 10) { NIPBuscar += "2"; } break; case "3": if (NIPBuscar.Length < 10) { NIPBuscar += "3"; } break; case "4": if (NIPBuscar.Length < 10) { NIPBuscar += "4"; } break; case "5": if (NIPBuscar.Length < 10) { NIPBuscar += "5"; } break; case "6": if (NIPBuscar.Length < 10) { NIPBuscar += "6"; } break; case "7": if (NIPBuscar.Length < 10) { NIPBuscar += "7"; } break; case "8": if (NIPBuscar.Length < 10) { NIPBuscar += "8"; } break; case "9": if (NIPBuscar.Length < 10) { NIPBuscar += "9"; } break; case "backspace": if (NIPBuscar.Length > 0) { NIPBuscar = NIPBuscar.Substring(0, NIPBuscar.Length - 1); } break; case "limpiarNIP": NIPBuscar = ""; break; case "onBuscarPorNIP": var NIP = 0; try { if (Int32.TryParse(NIPBuscar, out NIP)) { SelectedCustodio = new cEmpleado().Obtener(NIP); if (SelectedCustodio != null) { NombreCustodio = SelectedCustodio.PERSONA.NOMBRE.TrimEnd(); PaternoCustodio = SelectedCustodio.PERSONA.PATERNO.TrimEnd(); MaternoCustodio = SelectedCustodio.PERSONA.MATERNO.TrimEnd(); AnioCustodio = SelectedCustodio.REGISTRO_FEC.Value.Year.ToString(); IDCustodio = SelectedCustodio.ID_EMPLEADO.ToString(); var consulta_foto_custodio = SelectedCustodio.PERSONA.PERSONA_BIOMETRICO.Where(w => w.ID_TIPO_BIOMETRICO == (short)enumTipoBiometrico.FOTO_FRENTE_REGISTRO).FirstOrDefault(); FotoCustodio = consulta_foto_custodio != null ? consulta_foto_custodio.BIOMETRICO : new Imagenes().getImagenPerson(); CambiarMensajeNIP(enumMensajeNIP.ENCONTRADO); } else { CambiarMensajeNIP(enumMensajeNIP.NO_ENCONTRADO); } } } catch (Exception ex) { VentanaBusqueda.Hide(); StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al obtener informacion de un custodio (Error al buscar por ID).", ex); } break; case "Autorizar": try { var ingreso_ubicacion = new cIngresoUbicacion(); using (TransactionScope transaccion = new TransactionScope(TransactionScopeOption.RequiresNew, new TransactionOptions() { IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted })) { foreach (var imputado in ListExpediente) { } transaccion.Complete(); } } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al asignar el custodio seleccionado.", ex); } break; case "SeleccionarInternos": if (ListExpediente.Count > 0) { var seleccionados = ListExpediente.Where(w => w.Seleccionar).ToList(); var lista_seleccionados = seleccionados != null ? seleccionados : new List <InternosActividad>(); if (lista_seleccionados.Count > 0) { EmptySeleccionadosVisible = false; ListaSeleccionados.AddRange(lista_seleccionados); RaisePropertyChanged("ListaSeleccionados"); } else { EmptySeleccionadosVisible = true; await VentanaBusqueda.ShowMessageAsync("Validación", "Debe seleccionar al menos un interno."); } } else { await VentanaBusqueda.ShowMessageAsync("Validación", "No hay internos resultantes de la búsqueda. Por favor, intente más tarde ó ejecute una nueva búsqueda."); } break; case "RemoverInternos": if (ListaSeleccionados.Count > 0) { var seleccionados = ListaSeleccionados.Where(w => w.Seleccionar).ToList(); var lista_seleccionados = seleccionados != null ? seleccionados : new List <InternosActividad>(); if (lista_seleccionados.Count > 0) { } else { await VentanaBusqueda.ShowMessageAsync("Validación", "Debe seleccionar al menos un interno."); } } else { await VentanaBusqueda.ShowMessageAsync("Validación", "No hay internos seleccionados."); } break; case "Limpiar": SelectedJustificacion = enumTipoSalida.TRASLADO; NombreCustodio = ""; PaternoCustodio = ""; MaternoCustodio = ""; AnioCustodio = ""; IDCustodio = ""; FotoCustodio = new Imagenes().getImagenPerson(); break; case "LimpiarClick": var placeholder_limpiar = new Imagenes().getImagenPerson(); SelectedImputadoFotoIngreso = placeholder_limpiar; SelectedImputadoFotoSeguimiento = placeholder_limpiar; NombreBuscar = ""; ApellidoPaternoBuscar = ""; ApellidoMaternoBuscar = ""; AnioBuscar = ""; FolioBuscar = ""; ListExpediente = new List <InternosActividad>(); EmptyBusquedaVisible = true; break; } }