Ejemplo n.º 1
0
 private void ValidacionNIPInexistente(IMPUTADO imputado)
 {
     base.ClearRules();
     base.AddRule(() => IncidenciaNIP,
                  (() => imputado != null &&
                   imputado.INGRESO.OrderByDescending(o => o.ID_INGRESO).FirstOrDefault() != null &&
                   imputado.INGRESO.OrderByDescending(o => o.ID_INGRESO).FirstOrDefault().ID_UB_CENTRO.HasValue&&
                   imputado.INGRESO.OrderByDescending(o => o.ID_INGRESO).FirstOrDefault().ID_UB_CENTRO.Value == GlobalVar.gCentro), "Interno inexistente.");
     OnPropertyChanged("IncidenciaNIP");
 }
Ejemplo n.º 2
0
        public PRS_REPORTE_PSICOLOGICO ObtenerUltimaEntrevista(IMPUTADO ObjImputado)
        {
            var query = GetData().Where(w => w.ID_IMPUTADO == ObjImputado.ID_IMPUTADO && w.ID_ANIO == ObjImputado.ID_ANIO && w.ID_CENTRO == ObjImputado.ID_CENTRO);

            if (query.Count() > 0)
            {
                short UltimoFolio = query.Max(m => m.ID_FOLIO);
                return(query.Where(w => w.ID_FOLIO == UltimoFolio).FirstOrDefault());
            }
            return(null);
        }
Ejemplo n.º 3
0
        private void ValidacionImputadoActivo(IMPUTADO imputado)
        {
            var ID_ESTATUS_ADMINISTRATIVO = imputado.INGRESO.OrderByDescending(o => o.ID_INGRESO).FirstOrDefault().ID_ESTATUS_ADMINISTRATIVO;

            base.ClearRules();
            base.AddRule(() => IncidenciaNIP, () =>
                         (ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.LIBERADO &&
                          ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.TRASLADADO &&
                          ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.SUJETO_A_PROCESO_EN_LIBERTAD &&
                          ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.DISCRECIONAL), "Interno no permitido.");
            OnPropertyChanged("IncidenciaNIP");
        }
Ejemplo n.º 4
0
        private void ValidacionImputadoActivo(IMPUTADO imputado)
        {
            var Ingreso = imputado.INGRESO.OrderByDescending(o => o.ID_INGRESO).FirstOrDefault();
            var ID_ESTATUS_ADMINISTRATIVO = Ingreso != null ? Ingreso.ID_ESTATUS_ADMINISTRATIVO : 0;

            base.ClearRules();
            base.AddRule(() => IncidenciaNIP, () =>
                         Ingreso != null &&
                         Ingreso.ID_UB_CENTRO.HasValue &&
                         Ingreso.ID_UB_CENTRO.Value == GlobalVar.gCentro &&
                         (ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.LIBERADO &&
                          ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.TRASLADADO &&
                          ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.SUJETO_A_PROCESO_EN_LIBERTAD &&
                          ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.DISCRECIONAL), "Interno no permitido.");
            OnPropertyChanged("IncidenciaNIP");
        }
Ejemplo n.º 5
0
 private void LimpiarCampos()
 {
     Application.Current.Dispatcher.Invoke((System.Action)(delegate
     {
         ScannerMessage             = "Capture Huella";
         ColorMessage               = new SolidColorBrush(Colors.Green);
         AceptarBusquedaHuellaFocus = true;
     }));
     _Imputado     = null;
     Nombre        = string.Empty;
     APaterno      = string.Empty;
     AMaterno      = string.Empty;
     Expediente    = string.Empty;
     NIP           = string.Empty;
     PropertyImage = null;
     ImputadoFoto  = null;
 }
        private async void clickSwitch(Object obj)
        {
            switch (obj.ToString())
            {
            case "limpiar_lesion":
                BotonLesionEnabled    = true;
                TextDescripcionLesion = string.Empty;
                var radioButons = new FingerPrintScanner().FindVisualChildren <RadioButton>(((CertificadoMedicoIngresoView)((ContentControl)Application.Current.Windows[0].FindName("contentControl")).Content)).ToList();
                foreach (var item in radioButons)
                {
                    item.IsChecked = false;
                }
                SelectLesion = null;
                break;

            case "agregar_lesion":
                await StaticSourcesViewModel.CargarDatosMetodoAsync(() =>
                {
                    if (SelectIngreso == null)
                    {
                        Application.Current.Dispatcher.Invoke((Action)(delegate
                        {
                            new Dialogos().ConfirmacionDialogo("Validación", "Favor de seleccionar un ingreso.");
                        }));
                        return;
                    }
                    ;
                    if (string.IsNullOrEmpty(TextDescripcionLesion))
                    {
                        Application.Current.Dispatcher.Invoke((Action)(delegate
                        {
                            new Dialogos().ConfirmacionDialogo("Validación", "Debes ingresar una descripcion de la lesión.");
                        }));
                        return;
                    }
                    if (SelectRegion == null)
                    {
                        Application.Current.Dispatcher.Invoke((Action)(delegate
                        {
                            new Dialogos().ConfirmacionDialogo("Validación", "Debes seleccionar la region donde se encuentra la lesión.");
                        }));
                        return;
                    }
                    ;
                    if (ListLesiones == null)
                    {
                        ListLesiones = new ObservableCollection <LesionesCustom>();
                    }
                    ListLesiones.Add(new LesionesCustom {
                        DESCR = TextDescripcionLesion, REGION = new cAnatomiaTopografica().Obtener((int)SelectRegion)
                    });
                });

                break;

            case "agendar_cita":

                break;

            case "nueva_busqueda":
                NombreBuscar   = ApellidoPaternoBuscar = ApellidoMaternoBuscar = string.Empty;
                FolioBuscar    = AnioBuscar = new int?();
                ListExpediente = new RangeEnabledObservableCollection <IMPUTADO>();
                break;

            case "salir_menu":
                PrincipalViewModel.SalirMenu();
                break;

            case "buscar_visible":
                PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.BUSQUEDA);
                break;

            case "buscar_salir":
                PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.BUSQUEDA);
                break;

            case "limpiar_menu":
                ((System.Windows.Controls.ContentControl)PopUpsViewModels.MainWindow.FindName("contentControl")).Content     = new CertificadoMedicoIngresoView();
                ((System.Windows.Controls.ContentControl)PopUpsViewModels.MainWindow.FindName("contentControl")).DataContext = new ControlPenales.CertificadoMedicoIngresoViewModel();
                break;

            case "buscar_menu":
                ListExpediente         = new RangeEnabledObservableCollection <IMPUTADO>();
                SelectExpediente       = new IMPUTADO();
                EmptyExpedienteVisible = true;
                ApellidoPaternoBuscar  = ApellidoMaternoBuscar = NombreBuscar = string.Empty;
                FolioBuscar            = AnioBuscar = null;
                ImagenImputado         = ImagenIngreso = new Imagenes().getImagenPerson();
                PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.BUSQUEDA);
                break;

            case "buscar_seleccionar":
                if (SelectIngreso == null)
                {
                    new Dialogos().ConfirmacionDialogo("Validación", "Favor de seleccionar un ingreso");
                    break;
                }
                ;
                if (SelectIngreso.ID_UB_CENTRO != GlobalVar.gCentro)
                {
                    new Dialogos().ConfirmacionDialogo("Validación", "El ingreso seleccionado no pertenece a su centro.");
                    break;
                }
                ;
                var toleranciaTraslado = Parametro.TOLERANCIA_TRASLADO_EDIFICIO;
                if (SelectIngreso.TRASLADO_DETALLE.Any(a => (a.ID_ESTATUS != "CA" ? a.TRASLADO.ORIGEN_TIPO != "F" : false) && a.TRASLADO.TRASLADO_FEC.AddHours(-toleranciaTraslado) <= Fechas.GetFechaDateServer))
                {
                    new Dialogos().ConfirmacionDialogo("Notificación!", "El interno [" + SelectIngreso.ID_ANIO.ToString() + "/" + SelectIngreso.ID_IMPUTADO.ToString() + "] tiene un traslado proximo y no puede recibir visitas.");
                    break;
                }
                ;
                SelectedIngreso = SelectIngreso;
                StaticSourcesViewModel.SourceChanged = false;
                PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.BUSQUEDA);
                //OnBuscarPorHuella();///Inmediatamente que se valida, continua con la siguiente validacion(busqueda por biometria), comentar en caso de pruebas omitiendo biometria
                break;

            case "guardar_menu":
                if (SelectExpediente == null)
                {
                    new Dialogos().ConfirmacionDialogo("Validación", "Debes seleccionar un imputado.");
                    break;
                }
                if (SelectIngreso == null)
                {
                    new Dialogos().ConfirmacionDialogo("Validación", "Debes seleccionar un ingreso valido.");
                    break;
                }


                break;
            }
        }
Ejemplo n.º 7
0
        private async void clickSwitch(Object obj)
        {
            switch (obj.ToString())
            {
            case "salir_menu":
                PrincipalViewModel.SalirMenu();
                break;

            case "nueva_busqueda":
                ListExpediente         = new RangeEnabledObservableCollection <IMPUTADO>();
                SelectExpediente       = new IMPUTADO();
                EmptyExpedienteVisible = true;
                ApellidoPaternoBuscar  = ApellidoMaternoBuscar = NombreBuscar = string.Empty;
                FolioBuscar            = AnioBuscar = null;
                ImagenImputado         = ImagenIngreso = new Imagenes().getImagenPerson();
                break;

            case "buscar_menu":
                if (!PConsultar)
                {
                    (new Dialogos()).ConfirmacionDialogo("Validación", "No cuenta con suficientes privilegios para realizar esta acción.");
                    return;
                }
                LimpiarBusquedaInterno();
                PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.BUSQUEDA);
                break;

            //case "reporte_menu":
            //    break;
            case "buscar_salir":
                LimpiarBusquedaInterno();
                PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.BUSQUEDA);
                break;

            case "add_interno":
                if (!PConsultar)
                {
                    (new Dialogos()).ConfirmacionDialogo("Validación", "No cuenta con suficientes privilegios para realizar esta acción.");
                    return;
                }
                LimpiarBusquedaInterno();
                PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.BUSQUEDA);
                break;

            case "del_interno":
                EliminarInterno();
                break;

            case "buscar_seleccionar":    //"seleccionar_interno_pop":
                if (SelectIngreso == null)
                {
                    new Dialogos().ConfirmacionDialogo("Validación", "Debes seleccionar un ingreso valido.");
                    return;
                }
                //Se quita candado de papeletas
                //var hoy = Fechas.GetFechaDateServer;
                //if (new cAtencionIngreso().ObtenerSolicitudesPorMes(SelectIngreso.ID_CENTRO, SelectIngreso.ID_ANIO, SelectIngreso.ID_IMPUTADO, SelectIngreso.ID_INGRESO, hoy.Year, hoy.Month) > VCitasMes)
                //{
                //    new Dialogos().ConfirmacionDialogo("Validación", "En interno ha sobrepasado el número de solicitudes por mes.");
                //    return;
                //}
                var EstatusInactivos = Parametro.ESTATUS_ADMINISTRATIVO_INACT;
                foreach (var item in EstatusInactivos)
                {
                    if (SelectIngreso.ID_ESTATUS_ADMINISTRATIVO == item)
                    {
                        new Dialogos().ConfirmacionDialogo("Notificación!", "El ingreso seleccionado no esta activo.");
                        return;
                    }
                }
                if (SelectIngreso.ID_UB_CENTRO != GlobalVar.gCentro)
                {
                    new Dialogos().ConfirmacionDialogo("Validación", "El ingreso seleccionado no pertenece a su centro.");
                    return;
                }
                var toleranciaTraslado = Parametro.TOLERANCIA_TRASLADO_EDIFICIO;
                if (SelectIngreso.TRASLADO_DETALLE.Any(a => (a.ID_ESTATUS != "CA" ? a.TRASLADO.ORIGEN_TIPO != "F" : false) && a.TRASLADO.TRASLADO_FEC.AddHours(-toleranciaTraslado) <= Fechas.GetFechaDateServer))
                {
                    new Dialogos().ConfirmacionDialogo("Notificación!", "El interno [" + SelectIngreso.ID_ANIO.ToString() + "/" +
                                                       SelectIngreso.ID_IMPUTADO.ToString() + "] tiene un traslado proximo y no puede recibir visitas.");
                    return;
                }
                AgregarInterno();
                LimpiarBuscar();
                break;

            case "salir_interno_pop":
                PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.BUSCAR_INTERNO);
                LimpiarBuscar();
                break;

            case "buscar_interno_pop":
                Buscar();
                break;

            case "guardar_menu":
                if (!PInsertar)
                {
                    (new Dialogos()).ConfirmacionDialogo("Validación", "No cuenta con suficientes privilegios para realizar esta acción.");
                    return;
                }
                if (!base.HasErrors)
                {
                    if (ValidacionIngresos())
                    {
                        GuardarSolicitud();
                    }

                    else
                    {
                        new Dialogos().ConfirmacionDialogo("Validación!", "Favor de agregar los internos que recibirán atención.");
                    }
                }
                else
                {
                    new Dialogos().ConfirmacionDialogo("Validación!", "Favor de capturar los campos obligatorios.");
                }
                break;

            case "limpiar_menu":
                ((System.Windows.Controls.ContentControl)PopUpsViewModels.MainWindow.FindName("contentControl")).Content     = new SolicitudAtencionView();
                ((System.Windows.Controls.ContentControl)PopUpsViewModels.MainWindow.FindName("contentControl")).DataContext = new SolicitudAtencionViewModel();
                break;
            }
        }
Ejemplo n.º 8
0
 private string ObtieneNombre(IMPUTADO imp)
 {
     return(string.Format("{0} {1} {2}", !string.IsNullOrEmpty(imp.NOMBRE) ? imp.NOMBRE.Trim() : string.Empty, !string.IsNullOrEmpty(imp.PATERNO) ? imp.PATERNO.Trim() : string.Empty, !string.IsNullOrEmpty(imp.MATERNO) ? imp.MATERNO.Trim() : string.Empty));
 }
Ejemplo n.º 9
0
        private async void clickSwitch(Object obj)
        {
            switch (obj.ToString())
            {
                #region CORRESPONDENCIA
            case "limpiar_menu":
                ((System.Windows.Controls.ContentControl)PopUpsViewModels.MainWindow.FindName("contentControl")).Content     = new RegistroCorrespondenciaView();
                ((System.Windows.Controls.ContentControl)PopUpsViewModels.MainWindow.FindName("contentControl")).DataContext = new ControlPenales.CorrespondenciasViewModel();
                break;

            case "salir_menu":
                PrincipalViewModel.SalirMenu();
                break;

            case "MarcarRegistro_RegistroCorrespondencia":
                if (!pEditar)
                {
                    new Dialogos().ConfirmacionDialogo("Validación", "Su usuario no tiene privilegios para realizar esta acción");
                    break;
                }
                var dal = new cCorrespondencia();
                foreach (var item in ListSelectRegistroEntrega)
                {
                    dal.Actualizar(new CORRESPONDENCIA
                    {
                        CONFIRMACION_RECIBIDO = "S",
                        ENTREGA_FEC           = Fechas.GetFechaDateServer,
                        ID_ANIO        = item.Correspondencia.ID_ANIO,
                        ID_CENTRO      = item.Correspondencia.ID_CENTRO,
                        ID_CONSEC      = item.Correspondencia.ID_CONSEC,
                        ID_DEPOSITANTE = item.Correspondencia.ID_DEPOSITANTE,
                        ID_EMPLEADO    = item.Correspondencia.ID_EMPLEADO,
                        ID_IMPUTADO    = item.Correspondencia.ID_IMPUTADO,
                        ID_INGRESO     = item.Correspondencia.ID_INGRESO,
                        OBSERV         = item.Correspondencia.OBSERV,
                        RECEPCION_FEC  = item.Correspondencia.RECEPCION_FEC,
                        REMITENTE      = item.Correspondencia.REMITENTE
                    });
                }

                ListSelectRegistroEntrega = new List <RegistroEntrega>();
                CargarDatos();
                break;

            case "Registro_Correspondencia":

                break;

            case "cancelar_RegistroCorrespondencia":
                DepPaterno           = string.Empty;
                DepMaterno           = string.Empty;
                DepNombre            = string.Empty;
                DesPaterno           = string.Empty;
                DesMaterno           = string.Empty;
                DesNombre            = string.Empty;
                UbicacionFisica      = string.Empty;
                Remitente            = string.Empty;
                ObservacionRecepcion = string.Empty;

                OnPropertyChanged("UsuarioRecepcion");
                OnPropertyChanged("FechaRegistroCorrespondencia");
                OnPropertyChanged("HoraRegistro");
                //PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.REGISTRO_CORRESPONDENCIA);
                break;

            case "LimpiarRegistroCorrespondencia":
                DepPaterno           = string.Empty;
                DepMaterno           = string.Empty;
                DepNombre            = string.Empty;
                DesPaterno           = string.Empty;
                DesMaterno           = string.Empty;
                DesNombre            = string.Empty;
                UbicacionFisica      = string.Empty;
                Remitente            = string.Empty;
                ObservacionRecepcion = string.Empty;

                OnPropertyChanged("UsuarioRecepcion");
                OnPropertyChanged("FechaRegistroCorrespondencia");
                OnPropertyChanged("HoraRegistro");

                SelectExpediente = null;
                SelectIngreso    = null;
                SelectPersona    = null;
                break;

            case "guardar_menu":    //"RegistroCorrespondencia":
                if (!pInsertar)
                {
                    new Dialogos().ConfirmacionDialogo("Validación", "Su usuario no tiene privilegios para realizar esta acción");
                    break;
                }

                if (SelectExpediente == null || SelectIngreso == null || SelectPersona == null || string.IsNullOrEmpty(Remitente) || string.IsNullOrEmpty(ObservacionRecepcion))
                {
                    await new Dialogos().ConfirmacionDialogoReturn("Validación", "Faltan campos por capturar");
                    break;
                }

                ///TODO: Agregar el id del empleado cuanso se tenga la tabla empleado >>Ernesto G.
                if (new cCorrespondencia().Insertar(new CORRESPONDENCIA {
                    ID_ANIO = SelectIngreso.ID_ANIO, CONFIRMACION_RECIBIDO = "N", RECEPCION_FEC = Fechas.GetFechaDateServer, ID_INGRESO = SelectIngreso.ID_INGRESO, ID_IMPUTADO = selectIngreso.ID_IMPUTADO, ID_CENTRO = selectIngreso.ID_CENTRO, OBSERV = ObservacionRecepcion, REMITENTE = Remitente, ID_DEPOSITANTE = SelectPersona.ID_PERSONA, ID_EMPLEADO = /*StaticSourcesViewModel.UsuarioLogin.Id_Empleado */ null
                }))
                {
                    Remitente = ObservacionRecepcion = string.Empty;
                    await new Dialogos().ConfirmacionDialogoReturn("Éxito", "Registro capturado exitosamente");
                }
                else
                {
                    await new Dialogos().ConfirmacionDialogoReturn("Error", "Error en el registro de correspondencia");
                }

                CargarDatos();
                break;

            case "BuscarImputado_Correspondencia":
                if (!pConsultar)
                {
                    new Dialogos().ConfirmacionDialogo("Validación", "Su usuario no tiene privilegios para realizar esta acción");
                    break;
                }
                ImagenImputado = ImagenIngreso = new Imagenes().getImagenPerson();

                NombreBuscar          = DesNombre;
                ApellidoPaternoBuscar = DesPaterno;
                ApellidoMaternoBuscar = DesMaterno;

                if (!string.IsNullOrEmpty(NombreBuscar) || !string.IsNullOrEmpty(ApellidoPaternoBuscar) || !string.IsNullOrEmpty(ApellidoMaternoBuscar) || FolioBuscar.HasValue || AnioBuscar.HasValue)
                {
                    BuscarImputado();
                }

                //PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.REGISTRO_CORRESPONDENCIA);
                PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.BUSQUEDA);
                break;

            case "BuscarVisitante_Correspondencia":
                if (!pConsultar)
                {
                    new Dialogos().ConfirmacionDialogo("Validación", "Su usuario no tiene privilegios para realizar esta acción");
                    break;
                }
                TextNombre  = DepNombre;
                TextPaterno = DepPaterno;
                TextMaterno = DepMaterno;

                if (!string.IsNullOrEmpty(TextNombre) || !string.IsNullOrEmpty(TextPaterno) || !string.IsNullOrEmpty(TextMaterno))
                {
                    BuscarPersonas();
                }

                //PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.REGISTRO_CORRESPONDENCIA);
                PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.BUSCAR_PERSONAS_EXISTENTES);
                break;

                #endregion
                #region BUSCAR_PERSONA
            case "seleccionar_buscar_persona":
                if (SelectPersona == null)
                {
                    (new Dialogos()).ConfirmacionDialogo("Error!", "Debes seleccionar una persona.");
                    return;
                }

                DepPaterno = SelectPersona.PATERNO;
                DepMaterno = SelectPersona.MATERNO;
                DepNombre  = SelectPersona.NOMBRE;

                PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.BUSCAR_PERSONAS_EXISTENTES);
                //PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.REGISTRO_CORRESPONDENCIA);
                break;

            case "cancelar_buscar_persona":
                TextNombre  = string.Empty;
                TextPaterno = string.Empty;
                TextMaterno = string.Empty;

                ListPersonas = new ObservableCollection <SSP.Servidor.PERSONA>();

                PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.BUSCAR_PERSONAS_EXISTENTES);
                //PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.REGISTRO_CORRESPONDENCIA);
                break;

            case "buscar_visitante":
                if (!string.IsNullOrEmpty(TextNombre) || !string.IsNullOrEmpty(TextPaterno) || !string.IsNullOrEmpty(TextMaterno))
                {
                    BuscarPersonas();
                }
                break;

                #endregion
                #region BUSCAR_IMPUTADO
            case "buscar_salir":
                AnioBuscar            = FolioBuscar = null;
                ApellidoPaternoBuscar = ApellidoMaternoBuscar = NombreBuscar = string.Empty;
                ListExpediente        = new ObservableCollection <IMPUTADO>();
                SelectExpediente      = null;
                SelectIngreso         = null;
                ImagenImputado        = ImagenIngreso = new Imagenes().getImagenPerson();

                PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.BUSQUEDA);
                //PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.REGISTRO_CORRESPONDENCIA);
                break;

            case "nueva_busqueda":
                ListExpediente         = new ObservableCollection <IMPUTADO>();
                AnioBuscar             = FolioBuscar = new Nullable <int>();
                ApellidoPaternoBuscar  = ApellidoMaternoBuscar = NombreBuscar = string.Empty;
                SelectExpediente       = new IMPUTADO();
                EmptyExpedienteVisible = true;
                ImagenImputado         = ImagenIngreso = new Imagenes().getImagenPerson();
                //SelectIngresoEnabled = false;
                break;

            case "buscar_seleccionar":
                if (SelectExpediente != null)
                {
                    if (SelectIngreso != null)
                    {
                        if (SelectIngreso.ID_ESTATUS_ADMINISTRATIVO != Parametro.ID_ESTATUS_ADMVO_LIBERADO)
                        {
                            DesPaterno = SelectExpediente.PATERNO;
                            DesMaterno = SelectExpediente.MATERNO;
                            DesNombre  = SelectExpediente.NOMBRE;

                            var ubicacion = SelectIngreso.CAMA;
                            if (ubicacion != null)
                            {
                                UbicacionFisica = ubicacion.CELDA.SECTOR.EDIFICIO.DESCR.Trim() + " " + ubicacion.CELDA.SECTOR.DESCR.Trim() + " " + ubicacion.CELDA.ID_CELDA.Trim();
                            }

                            PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.BUSQUEDA);
                            ImagenImputado = ImagenIngreso = new Imagenes().getImagenPerson();
                            //PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.REGISTRO_CORRESPONDENCIA);
                        }
                        else
                        {
                            (new Dialogos()).ConfirmacionDialogo("Ingreso no vigente.", "Debes seleccionar un ingreso vigente.");
                        }
                    }
                    else
                    {
                        (new Dialogos()).ConfirmacionDialogo("Validación", "Debes seleccionar un ingreso.");
                    }
                }
                else
                {
                    (new Dialogos()).ConfirmacionDialogo("Validación", "Debes seleccionar un expediente o crear uno nuevo.");
                }

                break;
                #endregion
            }
        }
Ejemplo n.º 10
0
        private void Compare(object Huella = null)
        {
            if (FingerPrintData == null)
            {
                Application.Current.Dispatcher.Invoke((System.Action)(delegate
                {
                    ScannerMessage = "Vuelve a capturar la huella";
                    TextoBoton     = "Crear Nuevo Expediente";
                    ColorMessage   = new SolidColorBrush(Colors.DarkOrange);
                }));
                return;
            }
            Application.Current.Dispatcher.Invoke((System.Action)(delegate
            {
                ScannerMessage             = "Procesando... ";
                ColorMessage               = new SolidColorBrush(Color.FromRgb(51, 115, 242));
                AceptarBusquedaHuellaFocus = false;
            }));

            var Service       = new BiometricoServiceClient();
            var CompareResult = Service.CompararHuellaImputado(new ComparationRequest {
                BIOMETRICO = FeatureExtraction.CreateFmdFromFid(FingerPrintData, Constants.Formats.Fmd.ANSI).Data.Bytes, ID_TIPO_BIOMETRICO = (DD_Dedo.HasValue ? DD_Dedo.Value : enumTipoBiometrico.INDICE_DERECHO), ID_TIPO_FORMATO = enumTipoFormato.FMTO_DP
            });

            if (CompareResult.Identify)
            {
                Application.Current.Dispatcher.Invoke((System.Action)(delegate
                {
                    var item     = CompareResult.Result.FirstOrDefault();
                    var imputado = new cImputadoBiometrico().GetData().Where(w => w.ID_ANIO == item.ID_ANIO && w.ID_CENTRO == item.ID_CENTRO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_TIPO_BIOMETRICO == (DD_Dedo.HasValue ? (short)DD_Dedo.Value : (short)enumTipoBiometrico.INDICE_DERECHO) && w.ID_FORMATO == (short)enumTipoFormato.FMTO_DP).FirstOrDefault();

                    if (imputado == null)
                    {
                        ScannerMessage = "Registro no encontrado";
                        TextoBoton     = "Crear Nuevo Expediente";
                        ColorMessage   = new SolidColorBrush(Colors.Red);
                        return;
                    }

                    Imputado = imputado.IMPUTADO;

                    var ingresobiometrico = imputado.IMPUTADO.INGRESO.OrderByDescending(o => o.ID_INGRESO).FirstOrDefault();

                    if (ingresobiometrico != null)
                    {
                        if (ingresobiometrico.INGRESO_BIOMETRICO.Any())
                        {
                            if (ingresobiometrico.INGRESO_BIOMETRICO.Where(w => w.ID_TIPO_BIOMETRICO == (short)enumTipoBiometrico.FOTO_FRENTE_SEGUIMIENTO && w.ID_FORMATO == (short)enumTipoFormato.FMTO_JPG).Any())
                            {
                                ImputadoFoto = new Imagenes().ConvertByteToBitmap(ingresobiometrico.INGRESO_BIOMETRICO.Where(w => w.ID_TIPO_BIOMETRICO == (short)enumTipoBiometrico.FOTO_FRENTE_SEGUIMIENTO && w.ID_FORMATO == (short)enumTipoFormato.FMTO_JPG).SingleOrDefault().BIOMETRICO);
                            }
                            else
                            if (ingresobiometrico.INGRESO_BIOMETRICO.Where(w => w.ID_TIPO_BIOMETRICO == (short)enumTipoBiometrico.FOTO_FRENTE_REGISTRO && w.ID_FORMATO == (short)enumTipoFormato.FMTO_JPG).Any())
                            {
                                ImputadoFoto = new Imagenes().ConvertByteToBitmap(ingresobiometrico.INGRESO_BIOMETRICO.Where(w => w.ID_TIPO_BIOMETRICO == (short)enumTipoBiometrico.FOTO_FRENTE_REGISTRO && w.ID_FORMATO == (short)enumTipoFormato.FMTO_JPG).SingleOrDefault().BIOMETRICO);
                            }
                            else
                            {
                                ImputadoFoto = new Imagenes().ConvertByteToBitmap(new Imagenes().getImagenPerson());
                            }
                        }
                    }
                    TextoBoton                 = "Nuevo Ingreso";
                    ScannerMessage             = "Registro encontrado";
                    AceptarBusquedaHuellaFocus = true;
                    ColorMessage               = new SolidColorBrush(Colors.Green);
                }));
            }
            else
            {
                Application.Current.Dispatcher.Invoke((System.Action)(delegate
                {
                    TextoBoton                 = "Crear Nuevo Expediente";
                    ScannerMessage             = "Huella no encontrada";
                    ColorMessage               = new SolidColorBrush(Colors.Red);
                    AceptarBusquedaHuellaFocus = true;
                }));
                _IsSucceed    = false;
                _Imputado     = null;
                Nombre        = string.Empty;
                APaterno      = string.Empty;
                AMaterno      = string.Empty;
                Expediente    = string.Empty;
                NIP           = string.Empty;
                PropertyImage = null;
                ImputadoFoto  = null;
            }

            Service.Close();
            FingerPrintData = null;
        }
Ejemplo n.º 11
0
 private void ValidacionNIPInexistente(IMPUTADO imputado)
 {
     base.ClearRules();
     base.AddRule(() => IncidenciaNIP, () => imputado != null, "Interno inexistente.");
     OnPropertyChanged("IncidenciaNIP");
 }
        private void getDatosGeneralesIdentificacion()
        {
            try
            {
                if (Imputado == null)
                {
                    Imputado = new IMPUTADO();
                }
                var ingreso = Imputado.INGRESO.OrderByDescending(w => w.ID_INGRESO).FirstOrDefault();
                #region IDENTIFICACION
                #region DatosGenerales
                SelectEscolaridad = ingreso.ID_ESCOLARIDAD == null ? -1 : ingreso.ID_ESCOLARIDAD;
                SelectOcupacion   = ingreso.ID_OCUPACION == null ? -1 : ingreso.ID_ESCOLARIDAD;
                SelectEstadoCivil = ingreso.ID_ESTADO_CIVIL == null ? -1 : ingreso.ID_ESTADO_CIVIL;
                SelectSexo        = string.IsNullOrEmpty(Imputado.SEXO) ? "S" : Imputado.SEXO;


                ListAlias = new ObservableCollection <ALIAS>(Imputado.ALIAS);
                ListApodo = new ObservableCollection <APODO>(Imputado.APODO);

                /*RequiereTraductor = string.IsNullOrEmpty(Imputado.TRADUCTOR) ? false : Imputado.TRADUCTOR.Equals("S") ? true : false;
                 * if (Imputado.TRADUCTOR != null)
                 *  if (Imputado.TRADUCTOR.Equals("S"))
                 *      RequiereTraductor = true;
                 *  else
                 *      RequiereTraductor = false;*/

                #endregion

                #region Domicilio
                //SelectPais = Imputado.ID_PAIS == null ? CentroActual.MUNICIPIO.ENTIDAD.ID_PAIS_NAC : Imputado.ID_PAIS < 1 ? CentroActual.MUNICIPIO.ENTIDAD.ID_PAIS_NAC : Imputado.ID_PAIS;
                //SelectEntidad = Imputado.ID_ENTIDAD == null ? CentroActual.ID_ENTIDAD : Imputado.ID_ENTIDAD < 1 ? CentroActual.ID_ENTIDAD : Imputado.ID_ENTIDAD;
                //SelectMunicipio = Imputado.ID_MUNICIPIO == null ? CentroActual.ID_MUNICIPIO : Imputado.ID_MUNICIPIO < 1 ? CentroActual.ID_MUNICIPIO : Imputado.ID_MUNICIPIO;
                //SelectColoniaItem = Imputado.ID_COLONIA == null ? ListColonia.Where(w => w.ID_COLONIA == -1).FirstOrDefault() : Imputado.ID_COLONIA > 1 ? ListColonia.Where(w => w.ID_COLONIA == Imputado.ID_COLONIA).FirstOrDefault() : ListColonia.Where(w => w.ID_COLONIA == -1).FirstOrDefault();

                ApellidoPaternoBuscar = Imputado.PATERNO;
                ApellidoMaternoBuscar = Imputado.MATERNO;
                TextCalle             = ingreso.DOMICILIO_CALLE;
                TextNumeroExterior    = ingreso.DOMICILIO_NUM_EXT;
                TextNumeroInterior    = ingreso.DOMICILIO_NUM_INT;
                //AniosEstado = Imputado.RESIDENCIA_ANIOS.ToString();
                //MesesEstado = Imputado.RESIDENCIA_MESES.ToString();
                //int mes = 0, anio = 0;
                //int.TryParse(MesesEstado, out mes);
                //int.TryParse(AniosEstado, out anio);

                TextTelefono     = ingreso.TELEFONO.HasValue ? new Converters().MascaraTelefono(ingreso.TELEFONO.Value.ToString()) : string.Empty;
                TextCodigoPostal = ingreso.DOMICILIO_CP.HasValue ? (int)ingreso.DOMICILIO_CP : new Nullable <int>();
                //TextDomicilioTrabajo = Imputado.DOMICILIO_TRABAJO;
                #endregion

                #region Nacimiento

                TextFechaNacimiento = Imputado.NACIMIENTO_FECHA == null?
                                      Fechas.GetFechaDateServer.AddYears(-18) :
                                          Imputado.NACIMIENTO_FECHA;

                TextLugarNacimiento = Imputado.NACIMIENTO_LUGAR;
                #endregion

                #region Padres
                //   getDatosDomiciliosPadres();
                #endregion

                //agrega alias
                if (ListAlias != null && ListAlias.Count > 0)
                {
                    short ultimoAlias = Imputado.ALIAS.LastOrDefault().ID_ALIAS;
                }

                //agrega apodos
                if (ListApodo != null && ListApodo.Count > 0)
                {
                    short id_apodo    = 1;
                    short ultimoApodo = Imputado.APODO.LastOrDefault().ID_APODO;
                    foreach (var entidad in Imputado.APODO.OrderBy(o => o.ID_APODO))
                    {
                        if (entidad.IMPUTADO != null)
                        {
                            TextApodo += entidad.ID_APODO == ultimoApodo?entidad.APODO1.Trim() + "" : entidad.APODO1.Trim() + ",";
                        }
                    }
                }

                //ListApodo = new ObservableCollection<APODO>(Imputado.APODO);
                //ListRelacionPersonalInterno = new ObservableCollection<RELACION_PERSONAL_INTERNO>(Imputado.RELACION_PERSONAL_INTERNO);
                #endregion
                StaticSourcesViewModel.SourceChanged = false;
            }
            catch (Exception ex)
            {
                StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al al cargar los datos generales.", ex);
            }
        }
Ejemplo n.º 13
0
        /// <summary>
        /// metodo que se conecta a la base de datos para actualizar un registro
        /// </summary>
        /// <param name="Entity">objeto de tipo "FUERO" con valores a actualizar</param>
        public bool Actualizar(IMPUTADO Imputado, List <IMPUTADO_PADRES> Padres, List <ALIAS> Alias, List <APODO> Apodos, List <IMPUTADO_BIOMETRICO> Biometrico, PROCESO_LIBERTAD ProcesoLibertad, List <PROCESO_LIBERTAD_BIOMETRICO> fotos)
        {
            //obj, padres, alias, apodos, biometrico
            try
            {
                using (TransactionScope transaccion = new TransactionScope(TransactionScopeOption.RequiresNew, new TransactionOptions()
                {
                    IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted
                }))
                {
                    Context.Entry(Imputado).State = EntityState.Modified;

                    #region Padres
                    var padres = Context.IMPUTADO_PADRES.Where(w => w.ID_CENTRO == Imputado.ID_CENTRO && w.ID_ANIO == Imputado.ID_ANIO && w.ID_IMPUTADO == Imputado.ID_IMPUTADO);
                    if (padres != null)
                    {
                        foreach (var p in padres)
                        {
                            Context.Entry(p).State = EntityState.Deleted;
                        }
                    }
                    foreach (var p in Padres)
                    {
                        p.ID_CENTRO   = Imputado.ID_CENTRO;
                        p.ID_ANIO     = Imputado.ID_ANIO;
                        p.ID_IMPUTADO = Imputado.ID_IMPUTADO;
                        Context.IMPUTADO_PADRES.Add(p);
                    }
                    #endregion

                    #region Alias
                    var alias = Context.Aliases.Where(w => w.ID_CENTRO == Imputado.ID_CENTRO && w.ID_ANIO == Imputado.ID_ANIO && w.ID_IMPUTADO == Imputado.ID_IMPUTADO);
                    if (alias != null)
                    {
                        foreach (var a in alias)
                        {
                            Context.Entry(a).State = EntityState.Deleted;
                        }
                    }
                    foreach (var a in Alias)
                    {
                        a.ID_CENTRO   = Imputado.ID_CENTRO;
                        a.ID_ANIO     = Imputado.ID_ANIO;
                        a.ID_IMPUTADO = Imputado.ID_IMPUTADO;
                        Context.Aliases.Add(a);
                    }
                    #endregion

                    #region Apodos
                    var apodos = Context.APODOes.Where(w => w.ID_CENTRO == Imputado.ID_CENTRO && w.ID_ANIO == Imputado.ID_ANIO && w.ID_IMPUTADO == Imputado.ID_IMPUTADO);
                    if (apodos != null)
                    {
                        foreach (var a in apodos)
                        {
                            Context.Entry(a).State = EntityState.Deleted;
                        }
                    }
                    foreach (var a in Apodos)
                    {
                        a.ID_CENTRO   = Imputado.ID_CENTRO;
                        a.ID_ANIO     = Imputado.ID_ANIO;
                        a.ID_IMPUTADO = Imputado.ID_IMPUTADO;
                        Context.APODOes.Add(a);
                    }
                    #endregion

                    #region Biometrico
                    if (Biometrico.Count > 0)
                    {
                        var biometrico = Context.IMPUTADO_BIOMETRICO.Where(w => w.ID_CENTRO == Imputado.ID_CENTRO && w.ID_ANIO == Imputado.ID_ANIO && w.ID_IMPUTADO == Imputado.ID_IMPUTADO);
                        if (biometrico != null)
                        {
                            foreach (var b in biometrico)
                            {
                                Context.Entry(b).State = EntityState.Deleted;
                            }
                        }
                        foreach (var b in Biometrico)
                        {
                            b.ID_CENTRO   = Imputado.ID_CENTRO;
                            b.ID_ANIO     = Imputado.ID_ANIO;
                            b.ID_IMPUTADO = Imputado.ID_IMPUTADO;
                            Context.IMPUTADO_BIOMETRICO.Add(b);
                        }
                    }
                    #endregion

                    #region Proceso en libertad
                    var pl = Context.PROCESO_LIBERTAD.Where(w => w.ID_CENTRO == Imputado.ID_CENTRO && w.ID_ANIO == Imputado.ID_ANIO && w.ID_IMPUTADO == Imputado.ID_IMPUTADO);
                    if (pl != null)
                    {
                        if (pl.Count() > 0)
                        {
                            if (ProcesoLibertad.ID_PROCESO_LIBERTAD > 0)
                            {
                                Context.Entry(ProcesoLibertad).State = EntityState.Modified;
                            }
                            else
                            {
                                ProcesoLibertad.ID_PROCESO_LIBERTAD = GetIDProceso <short>("PROCESO_LIBERTAD", "ID_PROCESO_LIBERTAD", string.Format("ID_CENTRO = {0} AND ID_ANIO = {1} AND ID_IMPUTADO = {2}", Imputado.ID_CENTRO, Imputado.ID_ANIO, Imputado.ID_IMPUTADO));
                                Context.PROCESO_LIBERTAD.Add(ProcesoLibertad);
                            }
                        }
                        else
                        {
                            ProcesoLibertad.ID_PROCESO_LIBERTAD = GetIDProceso <short>("PROCESO_LIBERTAD", "ID_PROCESO_LIBERTAD", string.Format("ID_CENTRO = {0} AND ID_ANIO = {1} AND ID_IMPUTADO = {2}", Imputado.ID_CENTRO, Imputado.ID_ANIO, Imputado.ID_IMPUTADO));
                            Context.PROCESO_LIBERTAD.Add(ProcesoLibertad);
                        }
                    }
                    else
                    {
                        ProcesoLibertad.ID_PROCESO_LIBERTAD = GetIDProceso <short>("PROCESO_LIBERTAD", "ID_PROCESO_LIBERTAD", string.Format("ID_CENTRO = {0} AND ID_ANIO = {1} AND ID_IMPUTADO = {2}", Imputado.ID_CENTRO, Imputado.ID_ANIO, Imputado.ID_IMPUTADO));
                        Context.PROCESO_LIBERTAD.Add(ProcesoLibertad);
                    }
                    #endregion

                    #region Fotos
                    var fot = Context.PROCESO_LIBERTAD_BIOMETRICO.Where(w =>
                                                                        w.ID_CENTRO == ProcesoLibertad.ID_CENTRO &&
                                                                        w.ID_ANIO == ProcesoLibertad.ID_ANIO &&
                                                                        w.ID_IMPUTADO == ProcesoLibertad.ID_IMPUTADO &&
                                                                        w.ID_PROCESO_LIBERTAD == ProcesoLibertad.ID_PROCESO_LIBERTAD);
                    if (fot != null)
                    {
                        foreach (var f in fot)
                        {
                            Context.Entry(f).State = EntityState.Deleted;
                        }
                    }
                    if (fotos != null)
                    {
                        foreach (var f in fotos)
                        {
                            Context.Entry(f).State = EntityState.Added;
                        }
                    }
                    #endregion

                    Context.SaveChanges();
                    transaccion.Complete();
                    return(true);
                }
            }
            catch (Exception ex)
            {
                throw new ApplicationException(ex.Message);
            }
            return(false);
        }
Ejemplo n.º 14
0
        /// <summary>
        /// Actualizacion de la informacion general de liberados
        /// </summary>
        /// <param name="ProcesoLibertad"></param>
        /// <param name="Imputado"></param>
        /// <param name="Alias"></param>
        /// <param name="Apodos"></param>
        /// <param name="ImputadoBiometrico"></param>
        /// <returns></returns>
        public bool Actualizar(PROCESO_LIBERTAD ProcesoLibertad, IMPUTADO Imputado, List <ALIAS> Alias, List <APODO> Apodos, List <IMPUTADO_BIOMETRICO> ImputadoBiometrico)
        {
            try
            {
                using (TransactionScope transaccion = new TransactionScope(TransactionScopeOption.RequiresNew, new TransactionOptions()
                {
                    IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted
                }))
                {
                    #region Imputado
                    Context.IMPUTADO.Attach(Imputado);
                    #region Datos Generales
                    Context.Entry(Imputado).Property(x => x.SEXO).IsModified = true;

                    Context.Entry(Imputado).Property(x => x.ID_ETNIA).IsModified    = true;
                    Context.Entry(Imputado).Property(x => x.ID_IDIOMA).IsModified   = true;
                    Context.Entry(Imputado).Property(x => x.ID_DIALECTO).IsModified = true;
                    Context.Entry(Imputado).Property(x => x.TRADUCTOR).IsModified   = true;
                    #endregion

                    #region Nacimiento
                    Context.Entry(Imputado).Property(x => x.NACIMIENTO_PAIS).IsModified      = true;
                    Context.Entry(Imputado).Property(x => x.NACIMIENTO_ESTADO).IsModified    = true;
                    Context.Entry(Imputado).Property(x => x.NACIMIENTO_MUNICIPIO).IsModified = true;
                    Context.Entry(Imputado).Property(x => x.NACIMIENTO_FECHA).IsModified     = true;
                    Context.Entry(Imputado).Property(x => x.NACIMIENTO_LUGAR).IsModified     = true;
                    #endregion

                    #region Padres
                    var padres = new List <IMPUTADO_PADRES>();
                    Context.Entry(Imputado).Property(x => x.PATERNO_PADRE).IsModified = true;
                    Context.Entry(Imputado).Property(x => x.MATERNO_PADRE).IsModified = true;
                    Context.Entry(Imputado).Property(x => x.NOMBRE_PADRE).IsModified  = true;

                    Context.Entry(Imputado).Property(x => x.PATERNO_MADRE).IsModified = true;
                    Context.Entry(Imputado).Property(x => x.MATERNO_MADRE).IsModified = true;
                    Context.Entry(Imputado).Property(x => x.NOMBRE_MADRE).IsModified  = true;
                    #endregion
                    #endregion

                    #region Alias
                    var listaAlias = Context.Aliases.Where(w => w.ID_CENTRO == Imputado.ID_CENTRO && w.ID_ANIO == Imputado.ID_ANIO && w.ID_IMPUTADO == Imputado.ID_IMPUTADO);
                    if (listaAlias != null)
                    {
                        foreach (var a in listaAlias)
                        {
                            Context.Entry(a).State = EntityState.Deleted;
                        }
                    }
                    if (Alias != null)
                    {
                        foreach (var a in Alias)
                        {
                            a.ID_CENTRO   = Imputado.ID_CENTRO;
                            a.ID_ANIO     = Imputado.ID_ANIO;
                            a.ID_IMPUTADO = Imputado.ID_IMPUTADO;
                            Context.Aliases.Add(a);
                        }
                    }
                    #endregion

                    #region Apodos
                    var listaApodos = Context.APODOes.Where(w => w.ID_CENTRO == Imputado.ID_CENTRO && w.ID_ANIO == Imputado.ID_ANIO && w.ID_IMPUTADO == Imputado.ID_IMPUTADO);
                    if (listaApodos != null)
                    {
                        foreach (var a in listaApodos)
                        {
                            Context.Entry(a).State = EntityState.Deleted;
                        }
                    }
                    if (Apodos != null)
                    {
                        foreach (var a in Apodos)
                        {
                            a.ID_CENTRO   = Imputado.ID_CENTRO;
                            a.ID_ANIO     = Imputado.ID_ANIO;
                            a.ID_IMPUTADO = Imputado.ID_IMPUTADO;
                            Context.APODOes.Add(a);
                        }
                    }
                    #endregion

                    #region Biometrico
                    var listaBiometricos = Context.IMPUTADO_BIOMETRICO.Where(w => w.ID_CENTRO == Imputado.ID_CENTRO && w.ID_ANIO == Imputado.ID_ANIO && w.ID_IMPUTADO == Imputado.ID_IMPUTADO);
                    if (listaBiometricos != null)
                    {
                        foreach (var b in listaBiometricos)
                        {
                            Context.Entry(b).State = EntityState.Deleted;
                        }
                    }
                    if (ImputadoBiometrico != null)
                    {
                        foreach (var b in ImputadoBiometrico)
                        {
                            b.ID_CENTRO   = Imputado.ID_CENTRO;
                            b.ID_ANIO     = Imputado.ID_ANIO;
                            b.ID_IMPUTADO = Imputado.ID_IMPUTADO;
                            Context.IMPUTADO_BIOMETRICO.Add(b);
                        }
                    }
                    #endregion

                    #region Proceso en Libertad
                    Context.PROCESO_LIBERTAD.Attach(ProcesoLibertad);

                    Context.Entry(ProcesoLibertad).Property(x => x.ID_ESTADO_CIVIL).IsModified = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.ID_OCUPACION).IsModified    = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.ID_ESCOLARIDAD).IsModified  = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.ID_RELIGION).IsModified     = true;

                    Context.Entry(ProcesoLibertad).Property(x => x.ID_PAIS).IsModified                 = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.ID_ENTIDAD).IsModified              = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.ID_MUNICIPIO).IsModified            = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.ID_COLONIA).IsModified              = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.DOMICILIO_CALLE).IsModified         = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.DOMICILIO_NUM_EXT).IsModified       = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.DOMICILIO_NUM_INT).IsModified       = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.TELEFONO).IsModified                = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.DOMICILIO_CODIGO_POSTAL).IsModified = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.DOMICILIO_TRABAJO).IsModified       = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.RESIDENCIA_ANIOS).IsModified        = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.RESIDENCIA_MESES).IsModified        = true;

                    Context.Entry(ProcesoLibertad).Property(x => x.PADRE_FINADO).IsModified = true;
                    Context.Entry(ProcesoLibertad).Property(x => x.MADRE_FINADO).IsModified = true;
                    #endregion

                    Context.SaveChanges();
                    transaccion.Complete();
                    return(true);
                }
            }
            catch (Exception ex)
            {
                throw new ApplicationException(ex.Message);
            }
        }