예제 #1
0
        /// <summary>
        /// Método para obtener la lista de tipos de documentos.
        /// </summary>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <param name="tipoSolicitudID">Tipo de solicitud = 1</param>
        /// <param name="soloActivos">Tipo de solicitud activos.</param>
        /// <returns>Respuesta genérica de tipo OTipoDocumento</returns>
        public Respuesta <OTipoDocumento> ObtenerLista(OLogin login, int tipoSolicitudID = 1, bool soloActivos = false)
        {
            Respuesta <OTipoDocumento> respuesta = new Respuesta <OTipoDocumento>();

            try
            {
                if (tipoSolicitudID == 0)
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, tipoSolicitudID.ToString());
                }
                respuesta = DTipoDocumento.Instances.ObtenerLista(tipoSolicitudID, soloActivos, login);
            }
            catch (Exception ex)
            {
                respuesta.TipoEstatus  = TipoEstatus.Error;
                respuesta.ListaErrores = new List <string>();
                respuesta.ListaErrores.Add(ex.Message);

                _stackTrace        = new StackTrace();
                _stackFrame        = new StackFrame();
                _stackFrame        = _stackTrace.GetFrame(0);
                _currentMethodName = _stackFrame.GetMethod();

                _logError             = new OLogError();
                _logError.codigoError = ex.HResult.ToString();
                _logError.error       = ex.Message;
                _logError.evento      = "ObtenerLista";
                _logError.formulario  = "NTipoDocumento";

                _logError.ex        = ex;
                _logError.usuarioID = login.Usuario.UsuarioID;
                _logError.ipEquipo  = login.Usuario.ip;



                //Revisar por que no se ve el "Guardar"
                NGestionLogError.Instances.GuardarError(_logError, login);
            }
            return(respuesta);
        }
예제 #2
0
        /// <summary>
        /// Consultar documentos de la solicitud
        /// </summary>
        /// <param name="solicitudID">Identificador de la slicitud</param>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo ODocumento</returns>
        public Respuesta <ODocumento> ObtenerLista(int solicitudID, OLogin login)
        {
            Respuesta <ODocumento> respuesta = new Respuesta <ODocumento>();

            try
            {
                if (solicitudID == 0)
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, "solicitudID");
                }
                respuesta = DDocumento.Instances.ObtenerLista(solicitudID, login);
            }
            catch (Exception ex)
            {
                _stackTrace        = new StackTrace();
                _stackFrame        = new StackFrame();
                _stackFrame        = _stackTrace.GetFrame(0);
                _currentMethodName = _stackFrame.GetMethod();

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "Eliminar",
                    formulario  = "NDocumento"
                };

                _logError.ex        = ex;
                _logError.usuarioID = login.Usuario.UsuarioID;
                _logError.ipEquipo  = login.Usuario.ip;



                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);
            }

            return(respuesta);
        }
예제 #3
0
        /// <summary>
        /// Registrar documentos de solicitud
        /// </summary>
        /// <param name="documentos">Documento</param>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo Int</returns>
        public Respuesta <int> ActualizarSolicitud(OSolicitudRecursos documentos, OLogin login)
        {
            Respuesta <int> respuesta = new Respuesta <int>();

            try
            {
                if (documentos == null)
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, "documentos");
                }

                respuesta = DDocumento.Instances.ActualizarSolicitud(documentos, login);
            }
            catch (Exception ex)
            {
                _stackTrace        = new StackTrace();
                _stackFrame        = new StackFrame();
                _stackFrame        = _stackTrace.GetFrame(0);
                _currentMethodName = _stackFrame.GetMethod();

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ActualizarSolicitud",
                    formulario  = "NDocumento"
                };

                _logError.ex        = ex;
                _logError.usuarioID = login.Usuario.UsuarioID;
                _logError.ipEquipo  = login.Usuario.ip;


                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);
            }
            return(respuesta);
        }
예제 #4
0
        private void DoLogin()
        {
            try
            {
                OLogin LoginOperation = new OLogin(txtEmail.Value, txtPwd.Value);

                if (LoginOperation.Execute())
                {
                    FillSession(LoginOperation);
                    LoadVariables();
                    Redirect();
                }
                else
                {
                    lblError.InnerHtml = "Giriş bilgilerinizi kontrol edip tekrar deneyin.";
                    lblError.Style.Add("display", "block");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #5
0
        /// <summary>
        /// Método para la obtención de los permisos del usuario logueado.
        /// </summary>
        /// <param name="par">Parametros de búsqueda.</param>
        /// <param name="login">Parametros de tipo OLogin.</param>
        /// <returns>Respuesta genérica de tipo OPermisos</returns>
        public Respuesta <OPermisos> ObtenerPermisos(OBusquedaParametro par, OLogin login)
        {
            Respuesta <OPermisos> respuesta = new Respuesta <OPermisos>();

            try
            {
                if (String.IsNullOrEmpty(par.TipoBusqueda.ToString()))
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, par.TipoBusqueda.ToString());
                }
                respuesta = DGestionUsuarios.Instances.ObtenerPermisos(par, login);
            }
            catch (Exception ex)
            {
                respuesta.TipoEstatus  = TipoEstatus.Error;
                respuesta.ListaErrores = new List <string> {
                    ex.Message
                };

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerPermisos",
                    formulario  = "NGestionUsuarios",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                //Revisar por que no se ve el "Guardar"
                NGestionLogError.Instances.GuardarError(_logError, login);
            }
            return(respuesta);
        }
예제 #6
0
        /// <summary>
        /// Método para el registro del log de errores.
        /// </summary>
        /// <param name="logError">Parametro de tipo OLogError</param>
        /// <param name="login">Parametro de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo string</returns>
        public void GuardarError(OLogError logError, OLogin login)
        {
            try
            {
                if (!string.IsNullOrEmpty(logError.error) && logError.error.Length > 100)
                {
                    logError.error = logError.error.Substring(0, 97);
                }
                if (logError.usuarioID == 0)
                {
                    logError.usuarioID = null;
                }
                using (SIRFPROD_v2Entities db = new SIRFPROD_v2Entities())
                {
                    var nuevoError = new LogError
                    {
                        usuarioID   = logError.usuarioID,
                        error       = logError.error,
                        formulario  = logError.formulario,
                        evento      = logError.evento,
                        fecha       = DateTime.Now,
                        codigoError = logError.codigoError,
                        ipEquipo    = logError.ipEquipo,
                        stacktrace  = WriteEntry(logError.ex)
                    };

                    db.LogError.Add(nuevoError);
                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                var det = WriteEntry(ex);
                // ignored
            }
        }
예제 #7
0
 /// <summary>
 /// Método para el registro del log de errores.
 /// </summary>
 /// <param name="logError">Parametro de tipo OLogError</param>
 /// <param name="login">Parametro de tipo OLogin</param>
 /// <returns>Respuesta genérica de tipo string</returns>
 public void GuardarError(OLogError logError, OLogin login)
 {
     if (String.IsNullOrEmpty(logError.error))
     {
         throw new ArgumentException(Constantes.PARAMETROVACIOONULO, logError.error);
     }
     if (String.IsNullOrEmpty(logError.formulario))
     {
         throw new ArgumentException(Constantes.PARAMETROVACIOONULO, logError.formulario);
     }
     if (String.IsNullOrEmpty(logError.evento))
     {
         throw new ArgumentException(Constantes.PARAMETROVACIOONULO, logError.evento);
     }
     if (String.IsNullOrEmpty(logError.codigoError))
     {
         throw new ArgumentException(Constantes.PARAMETROVACIOONULO, logError.codigoError);
     }
     if (String.IsNullOrEmpty(logError.ipEquipo))
     {
         throw new ArgumentException(Constantes.PARAMETROVACIOONULO, logError.ipEquipo);
     }
     DGestionLogError.Instances.GuardarError(logError, login);
 }
예제 #8
0
        public ORespuesta ValidarCorreoElectronico(OLogin pmtPeticion)
        {
            ORespuesta Ls = new ORespuesta();

            Ls.Respuesta.Add(false);
            try
            {
                Hashtable Parametros = new Hashtable()
                {
                    { "@email", pmtPeticion.CorreoElectronico }
                };
                DataSet ds = BaseDeDatos.EjecutaProcedimientoAlmacenado("sp_select_validar_correo_electronico", Parametros, cadenaConexionLocal);
                if (ds.Tables.Count > 0)
                {
                    if (ds.Tables[0].Rows.Count > 0)
                    {
                        foreach (DataRow row in ds.Tables[0].Rows)
                        {
                            if (Int32.Parse(row["resultado"].ToString()) != 0)
                            {
                                Ls.Respuesta[0] = true;
                            }
                        }
                    }
                }
                return(Ls);
            }
            catch (SqlException e)
            {
                return(Ls);
            }
            catch (Exception e)
            {
                return(Ls);
            }
        }
예제 #9
0
        public JsonResult btnEntrar_Click(OLogin modelo)
        {
            OLogin login = (OLogin)Session["Login"];

            modelo.Cuenta   = "ceenlace.puebla";
            modelo.Password = "******";

            if (login == null)
            {
                login = new OLogin();
            }
            login.Cuenta   = modelo.Cuenta;
            login.Password = modelo.Password;

            Respuesta <string> respuestaLogin =
                NGestionAutenticacion.Instances.AutenticarUsuario(modelo);

            if (respuestaLogin.TipoEstatus == TipoEstatus.Ok)
            {
                //Validar que el usuario logueado exista
                OBusquedaParametro par = new OBusquedaParametro
                {
                    TipoBusqueda = (int)TipoBusquedaEnum.Usuario,
                    Descripcion  = modelo.Cuenta
                };
                Respuesta <OUsuario> respuestaUsuario = NGestionUsuarios.Instances.ObtenerUsuario(par, login);

                if (respuestaUsuario.TipoRespuesta == null || respuestaUsuario.TipoEstatus != TipoEstatus.Ok)
                {
                    return(Json(respuestaUsuario.MensajeUsuario, JsonRequestBehavior.AllowGet));
                }

                OBusquedaParametro parModulos =
                    new OBusquedaParametro
                {
                    TipoBusqueda = (int)TipoBusquedaEnum.Perfil,
                    PerfilID     = respuestaUsuario.TipoRespuesta.PerfilID
                };
                Respuesta <OPermisos> respuestPermisos = NGestionUsuarios.Instances.ObtenerPermisos(parModulos, login);

                //Cargar los accesos del usuario logueado
                login = new OLogin {
                    Usuario = respuestaUsuario.TipoRespuesta
                };

                if (respuestPermisos.TipoRespuesta != null)
                {
                    login.Modulos    = respuestPermisos.TipoRespuesta.Modulos.ToList();
                    login.SubModulos = respuestPermisos.TipoRespuesta.SubModulos.ToList();
                    login.Acciones   = null; // respuestPermisos.TipoRespuesta.Acciones.ToList(); revisar pa que sirve
                    login.Usuario.ip = GetDesarrollo_IP();
                }

                //Asignamos la variable de session Login con los objetos previamente cargados
                Session["Login"] = login;

                //si todo esta bien avanzar
                return(Json("", JsonRequestBehavior.AllowGet));

                //En la pantalla SIRF.aspx se seteará el lblNomUsuario
                //En la pantalla SIRF.aspx se cargara el Menu
                //No se cuenta con información de usuario capturado.
            }
            return(Json(respuestaLogin.MensajeUsuario, JsonRequestBehavior.AllowGet));
        }
예제 #10
0
        /// <summary>
        /// Consulta tipo de documetos
        /// </summary>
        /// <param name="tipoSolicitudID">Filtro</param>
        /// <param name="login">Objeto de tipo OLogin.</param>
        /// <returns>Tipos de documento</returns>
        public Respuesta <OTipoDocumento> ObtenerLista(int tipoSolicitudID, OLogin login)
        {
            Respuesta <OTipoDocumento> respuesta = new Respuesta <OTipoDocumento>();

            try
            {
                using (SIRFPROD_v2Entities db = new SIRFPROD_v2Entities())
                {
                    var consulta = (from td
                                    in db.CatDocumento
                                    where td.catSolicitudID == tipoSolicitudID
                                    select new OTipoDocumento
                    {
                        TipoDocumentoID = td.catDocumentoID,
                        DescripcionTipoDoc = td.descripcion,
                        EstatusLogico = td.estatusLogico,
                        Prefijo = td.prefijo
                    }).ToList();

                    if (consulta.Count > 0)
                    {
                        consulta.Add(new OTipoDocumento()
                        {
                            TipoDocumentoID = -1, DescripcionTipoDoc = ConstantesArchivos.SELECCIONETIPODOCUMENTO, Prefijo = "NA"
                        });
                        consulta = consulta.OrderBy(td => td.TipoDocumentoID).ToList();
                        respuesta.ListaRegistros = new List <OTipoDocumento>();
                        respuesta.ListaRegistros = consulta;
                        respuesta.TipoEstatus    = TipoEstatus.Ok;
                        respuesta.MensajeUsuario = Constantes.CONINFORMACION;
                    }
                    else
                    {
                        respuesta.TipoEstatus    = TipoEstatus.Ok;
                        respuesta.MensajeUsuario = Constantes.SININFORMACION;
                        consulta.Add(new OTipoDocumento()
                        {
                            TipoDocumentoID = -1, DescripcionTipoDoc = ConstantesArchivos.SELECCIONETIPODOCUMENTO, Prefijo = "NA"
                        });
                        respuesta.ListaRegistros = new List <OTipoDocumento>();
                        respuesta.ListaRegistros = consulta;
                    }
                }
            }
            catch (Exception ex)
            {
                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerLista",
                    formulario  = "DTipoDocumento",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);
            }
            return(respuesta);
        }
예제 #11
0
        /// <summary>
        /// Método para obtener la información correspondiente a las partidas
        /// </summary>
        /// <param name="soliciutd">Objeto de tipo OSolicitud</param>
        /// <param name="zonaPartidas">Zona de la partida</param>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo OTipoCuota</returns>
        public Respuesta <OPartida> ObtenerPartidas(OSolicitud soliciutd, string zonaPartidas, OLogin login)
        {
            Respuesta <OPartida> respuesta = new Respuesta <OPartida>();

            try
            {
                if (soliciutd == null)
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, "soliciutd");
                }

                respuesta = DGestionarCuotasDiarias.Instances.ObtenerPartidas(soliciutd, zonaPartidas, login);
            }
            catch (Exception ex)
            {
                _stackTrace        = new StackTrace();
                _stackFrame        = new StackFrame();
                _stackFrame        = _stackTrace.GetFrame(0);
                _currentMethodName = _stackFrame.GetMethod();

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerPartidas",
                    formulario  = "NGestionarCuotasDiarias"
                };

                _logError.ex        = ex;
                _logError.usuarioID = login.Usuario.UsuarioID;
                _logError.ipEquipo  = login.Usuario.ip;



                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);

                respuesta.MensajeUsuario = ex.Message;
                respuesta.TipoEstatus    = TipoEstatus.Error;
            }
            return(respuesta);
        }
예제 #12
0
        /// <summary>
        /// Método para la obtención de la información del usuario.
        /// </summary>
        /// <param name="par">Parametros de búsqueda.</param>
        /// <param name="login">Parametros de tipo OLogin.</param>
        /// <returns>Respuesta genérica de tipo ObjetoUsuario.</returns>
        public Respuesta <OUsuario> ObtenerUsuario(OBusquedaParametro par, OLogin login)
        {
            Respuesta <OUsuario> respuesta = new Respuesta <OUsuario>();

            try
            {
                using (SIRFPROD_v2Entities db = new SIRFPROD_v2Entities())
                {
                    var lsUsuario = (from us in db.Usuario.Where(s => s.cuenta == par.Descripcion || s.numeroExpediente == par.NumeroExpediente)
                                     where (int)TipoBusquedaEnum.Usuario == par.TipoBusqueda || (int)TipoBusquedaEnum.Expediente == par.TipoBusqueda
                                     select new OUsuario
                    {
                        UsuarioID = us.usuarioID,
                        Usuario = us.cuenta,
                        Correo = us.correo,
                        UnidadAdministrativa = us.CatUnidadAdm.descripcion,
                        PerfilID = us.catPerfilID,
                        DescripcionPerfil = us.CatPerfil.descripcion,
                        Expediente = us.numeroExpediente,
                        EstatusLogico = us.estatusLogico,
                        RegionID = us.CatUnidadAdm.catRegionID,
                        CodUA = us.catUnidadAdmID,
                        DescripcionRol = us.CatRol.descripcion,
                        Proceso = "",
                        RolId = us.catRolID
                    }).FirstOrDefault();

                    respuesta.MensajeUsuario = Constantes.CONINFORMACION;
                    respuesta.TipoEstatus    = TipoEstatus.Ok;

                    if (lsUsuario != null)
                    {
                        lsUsuario.DescripcionArea = (from us in db.Usuario.Where(u => u.usuarioID == lsUsuario.UsuarioID)
                                                     join c in db.AreaUnidadAdm on us.catUnidadAdmID equals c.catUnidadAdmID
                                                     join d in db.CatArea on c.catAreaID equals d.catAreaID
                                                     select d.descripcion).FirstOrDefault();

                        lsUsuario.AreaId = (from us in db.Usuario.Where(u => u.usuarioID == lsUsuario.UsuarioID)
                                            join c in db.AreaUnidadAdm on us.catUnidadAdmID equals c.catUnidadAdmID
                                            join d in db.CatArea on c.catAreaID equals d.catAreaID
                                            select d.catAreaID).FirstOrDefault();

                        lsUsuario.Nombre = GetUsuarioKardex(lsUsuario.Expediente).Nombre;

                        DGestionExpediente exp = new DGestionExpediente();
                        lsUsuario.codCentroDistribucion = exp.ObtenerCodCentroDistribucion(lsUsuario.Expediente);


                        respuesta.NumeroRegistros = 1;
                    }
                    else
                    {
                        respuesta.TipoEstatus    = TipoEstatus.Ok;
                        respuesta.MensajeUsuario = Constantes.SININFORMACION;
                    }
                    respuesta.TipoRespuesta = lsUsuario;
                }
            }
            catch (Exception ex)
            {
                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerUsuario",
                    formulario  = "DGestionUsuarios",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                DGestionLogError.Instances.GuardarError(_logError, login);
            }
            return(respuesta);
        }
예제 #13
0
        /// <summary>
        /// Método para la obtención de los permisos del usuario logueado.
        /// </summary>
        /// <param name="par">Parametros de búsqueda.</param>
        /// <param name="login">Parametros de tipo OLogin.</param>
        /// <returns>Respuesta genérica de tipo OPermisos</returns>
        public Respuesta <OPermisos> ObtenerPermisos(OBusquedaParametro par, OLogin login)
        {
            Respuesta <OPermisos> respuesta = new Respuesta <OPermisos>();

            try
            {
                using (SIRFPROD_v2Entities db = new SIRFPROD_v2Entities())
                {
                    var modulosDelUsuario = (from pm in db.PerfilModulo
                                             where ((int)TipoBusquedaEnum.Perfil == par.TipoBusqueda && pm.catPerfilID == par.PerfilID)
                                             select new OModulo
                    {
                        ModuloID = pm.CatModulo.catModuloID,
                        DescripcionModulo = pm.CatModulo.descripcion,
                        EstatusLogico = pm.CatModulo.estatusLogico
                    }).ToList();

                    var subModulosDelUsuario = (from pm in db.PerfilModulo
                                                join ms in db.ModuloSubmodulo on pm.catModuloID equals ms.catModuloID
                                                where ((int)TipoBusquedaEnum.Perfil == par.TipoBusqueda && pm.catPerfilID == par.PerfilID)
                                                select new OSubModulo
                    {
                        SubmoduloID = ms.CatSubmodulo.catSubmoduloID,
                        DescripcionSubModulo = ms.CatSubmodulo.descripcion,
                        EstatusLogico = ms.CatSubmodulo.estatusLogico,
                        ModuloID = ms.CatModulo.catModuloID,
                        Url = ms.CatSubmodulo.url
                    }).ToList();

                    // ESTO PA QUE INGADOS SE OCUPA?????

                    /*var accionesDelUsuario = (from ea in db.EstatusAccion
                     *                        join pm in db.EstatusPerfil on ea.estatusAccionID equals pm.estatusAccionID
                     *                        where ((int)TipoBusquedaEnum.Perfil == par.TipoBusqueda && pm.perfilID == par.PerfilID)
                     *                        select new OAccion
                     *                        {
                     *                            AccionID = ea.CatAcciones.accionesID,
                     *                            Accion = ea.CatAcciones.accion,
                     *                            DescripcionAccion = ea.CatAcciones.descripcionAccion,
                     *                            EstatusLogico = ea.CatAcciones.estatusLogico
                     *                        }).ToList(); */

                    var permisos = new OPermisos
                    {
                        Modulos    = modulosDelUsuario,
                        SubModulos = subModulosDelUsuario,
                        //Acciones = accionesDelUsuario
                    };

                    respuesta.TipoRespuesta  = new OPermisos();
                    respuesta.TipoRespuesta  = permisos;
                    respuesta.MensajeUsuario = Constantes.CONINFORMACION;
                }
            }
            catch (Exception ex)
            {
                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerPermisos",
                    formulario  = "DGestionUsuarios",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);
            }

            return(respuesta);
        }
예제 #14
0
        /// <summary>
        /// Método para obtener EstatusSolicitudDocumentos
        /// </summary>
        /// <param name="listaDocumentos">Lista de documentos</param>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo OucvDocumentos</returns>
        public Respuesta <OucvDocumentos> GetEstatusSolicitudDocumentos(List <OucvDocumentos> listaDocumentos, OLogin login)
        {
            Respuesta <OucvDocumentos> respuesta = new Respuesta <OucvDocumentos>();

            try
            {
                using (SIRFPROD_v2Entities db = new SIRFPROD_v2Entities())
                {
                    IEnumerable <int> listaIds = listaDocumentos.Select(x => x.Id).Distinct();

                    var consulta = (from cl
                                    in db.SolicitudRecurso
                                    join doc in db.Documento
                                    on cl.solicitudRecursoID equals doc.solicitudRecursoID
                                    where listaIds.Contains(doc.documentoID)
                                    select new OucvDocumentos
                    {
                        Id = doc.documentoID,
                        EstatusSolicitudID = cl.catEstatusSolicitudID,
                        TipoDocumento = "",
                        FechaAdjunto = doc.fechaRecepcion,
                        NombreArchivo = "",
                        prefijo = "",
                    }).ToList();

                    if (consulta.Count > 0)
                    {
                        respuesta.TipoEstatus    = TipoEstatus.Ok;
                        respuesta.MensajeUsuario = Constantes.CONINFORMACION;
                        respuesta.ListaRegistros = new List <OucvDocumentos>();
                        respuesta.ListaRegistros = consulta;
                    }
                    else
                    {
                        respuesta.TipoEstatus    = TipoEstatus.Ok;
                        respuesta.MensajeUsuario = Constantes.SININFORMACION;
                    }
                }
            }
            catch (Exception ex)
            {
                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "GetEstatusSolicitudDocumentos",
                    formulario  = "DucvDocumentos",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);
            }
            return(respuesta);
        }
예제 #15
0
        /// <summary>
        /// Obtiene las cuentas bancarias del integrate : Author JUVA
        /// </summary>
        /// <param name="numeroExpediente">Numero de expediente</param>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <returns>Cuentas</returns>
        public Respuesta <OExpedienteCuenta> ObtenerCuentasIntegrante(int numeroExpediente, OLogin login)
        {
            Respuesta <OExpedienteCuenta> respuesta = new Respuesta <OExpedienteCuenta>();

            try
            {
                using (SIRFPROD_v2Entities db = new SIRFPROD_v2Entities())
                {
                    var consulta = (from vwc in db.vwCuentasIntegrante
                                    where
                                    vwc.expediente == numeroExpediente &&
                                    vwc.estatusLogico == true
                                    select new OExpedienteCuenta
                    {
                        Expediente = vwc.expediente,
                        DescripcionCuenta = vwc.descripcionCuenta,
                        CLABEInterbancaria = vwc.clabeInterbancaria,
                        DescripcionBanco = vwc.descripcion,
                        TipoCuentaID = vwc.tipoCuentaID,
                        DescripcionTipoCuenta = vwc.descripcionTipoCuenta,
                        EstatusLogico = vwc.estatusLogico,
                    }).ToList();



                    if (consulta.Count > 0)
                    {
                        respuesta.TipoEstatus    = TipoEstatus.Ok;
                        respuesta.MensajeUsuario = Constantes.CONINFORMACION;
                        consulta.Add(new OExpedienteCuenta()
                        {
                            Expediente            = numeroExpediente,
                            TipoCuentaID          = -1,
                            DescripcionTipoCuenta = "OTRA",
                            EstatusLogico         = true,
                        });
                        respuesta.ListaRegistros = consulta;
                    }
                    else
                    {
                        respuesta.TipoEstatus    = TipoEstatus.Error;
                        respuesta.MensajeUsuario = Constantes.SININFORMACION;
                        consulta.Add(new OExpedienteCuenta()
                        {
                            Expediente            = numeroExpediente,
                            TipoCuentaID          = -1,
                            DescripcionTipoCuenta = "OTRA",
                            EstatusLogico         = true,
                        });
                        respuesta.ListaRegistros = consulta;
                    }
                }
            }
            catch (Exception ex)
            {
                _stackTrace = new StackTrace();
                _stackFrame = new StackFrame();
                _stackFrame = _stackTrace.GetFrame(0);

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerCuentasIntegrante",
                    formulario  = "DGestionarCuotasDiarias",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };


                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);

                respuesta.MensajeUsuario = ex.Message;
                respuesta.TipoEstatus    = TipoEstatus.Error;
            }
            return(respuesta);
        }
예제 #16
0
        /// <summary>
        /// Método para guardar el o los documentos cargados
        /// </summary>
        /// <param name="documentos">Lista de documentos cargados</param>
        /// <param name="solicitudID">Identificador unico de la solicitud</param>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo OucvDocumentos</returns>
        public Respuesta <OucvDocumentos> Guardar(List <ODocumento> documentos, int solicitudID, OLogin login)
        {
            Respuesta <OucvDocumentos> respuesta = new Respuesta <OucvDocumentos>();

            try
            {
                if (documentos.Count == 0)
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, "documentos");
                }
                else if (solicitudID == 0)
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, "solicitudID");
                }
                //respuesta = "";
            }
            catch (Exception ex)
            {
                respuesta.TipoEstatus  = TipoEstatus.Error;
                respuesta.ListaErrores = new List <string>();
                respuesta.ListaErrores.Add(ex.Message);

                _stackTrace        = new StackTrace();
                _stackFrame        = new StackFrame();
                _stackFrame        = _stackTrace.GetFrame(0);
                _currentMethodName = _stackFrame.GetMethod();

                _logError             = new OLogError();
                _logError.codigoError = ex.HResult.ToString();
                _logError.error       = ex.Message;
                _logError.evento      = "Guardar";
                _logError.formulario  = "NTipoDocumento";

                _logError.ex        = ex;
                _logError.usuarioID = login.Usuario.UsuarioID;
                _logError.ipEquipo  = login.Usuario.ip;


                //Revisar por que no se ve el "Guardar"
                NGestionLogError.Instances.GuardarError(_logError, login);
            }

            return(respuesta);
        }
예제 #17
0
        private void FillSession(OLogin LoginOprObj)
        {
            SessionInfo sessionObj = new SessionInfo();

            Session["KsfSessionInfo"] = LoginOprObj.SessionObj;
        }
예제 #18
0
        /// <summary>
        /// Método para la obtención del Centro de Distribución.
        /// </summary>
        /// <param name="numeroExpediente">Número de expediente del usuario logueado.</param>
        /// <param name="login">Parametro de tipo OLogin.</param>
        /// <returns>Respuesta genérica de tipo Lista de cadenas</returns>
        public Respuesta <List <string> > ObtenerCentrosDistribucion(int numeroExpediente, OLogin login)
        {
            Respuesta <List <string> > respuesta = new Respuesta <List <string> >();

            try
            {
                if (String.IsNullOrEmpty(numeroExpediente.ToString()))
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, numeroExpediente.ToString());
                }
                respuesta = DGestionExpediente.Instances.ObtenerCentrosDistribucion(numeroExpediente, login);
            }
            catch (Exception ex)
            {
                respuesta.TipoEstatus  = TipoEstatus.Error;
                respuesta.ListaErrores = new List <string> {
                    ex.Message
                };

                _stackTrace        = new StackTrace();
                _stackFrame        = new StackFrame();
                _stackFrame        = _stackTrace.GetFrame(0);
                _currentMethodName = _stackFrame.GetMethod();

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerCentrosDistribucion",
                    formulario  = "NGestionExpediente"
                };

                _logError.ex        = ex;
                _logError.usuarioID = login.Usuario.UsuarioID;
                _logError.ipEquipo  = login.Usuario.ip;



                //Revisar por que no se ve el "Guardar"
                NGestionLogError.Instances.GuardarError(_logError, login);
            }
            return(respuesta);
        }
예제 #19
0
        /// <summary>
        /// Método para la autenticacion de usuario mediante un directorio activo.
        /// </summary>
        /// <param name="usuario">Usuario logueado.</param>
        /// <param name="clave">Clave del directorio activo.</param>
        /// <param name="login">Parametro de tipo OLogin.</param>
        /// <returns></returns>
        public Respuesta <string> AutenticarUsuario(OLogin login)
        {
            string path    = ConfigurationSettings.AppSettings["rutaLDAP"];
            string dominio = ConfigurationSettings.AppSettings["dominioLDAP"];

            Respuesta <string> respuesta = new Respuesta <string>();

            // EL DIABLO DE AAAV
            respuesta.TipoEstatus    = TipoEstatus.Ok;
            respuesta.TipoRespuesta  = Constantes.AUTENTICACIONCORRECTA;
            respuesta.MensajeUsuario = Constantes.AUTENTICACIONCORRECTA;
            return(respuesta);

            // EL DIABLO DE AAAVS

            string         domainAndUsername = dominio + @"\" + login.Cuenta;
            DirectoryEntry entry             = new DirectoryEntry(path, domainAndUsername, login.Password);

            try
            {
                DirectorySearcher search = new DirectorySearcher(entry)
                {
                    Filter = "(SAMAccountName=" + login.Cuenta + ")"
                };

                search.PropertiesToLoad.Add("cn");
                SearchResult result = search.FindOne();

                if (result == null)
                {
                    respuesta.TipoEstatus = TipoEstatus.Error;
                    respuesta.ListaRegistros.Add(Constantes.AUTENTICACIONFALLIDA);
                    respuesta.TipoRespuesta  = Constantes.AUTENTICACIONFALLIDA;
                    respuesta.MensajeUsuario = Constantes.AUTENTICACIONFALLIDA;
                }
                else
                {
                    respuesta.TipoEstatus    = TipoEstatus.Ok;
                    respuesta.TipoRespuesta  = Constantes.AUTENTICACIONCORRECTA;
                    respuesta.MensajeUsuario = Constantes.AUTENTICACIONCORRECTA;
                }
            }
            catch (Exception ex)
            {
                respuesta.TipoEstatus  = TipoEstatus.Error;
                respuesta.ListaErrores = new List <string> {
                    ex.Message
                };

                _stackTrace        = new StackTrace();
                _stackFrame        = new StackFrame();
                _stackFrame        = _stackTrace.GetFrame(0);
                _currentMethodName = _stackFrame.GetMethod();

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "AutenticarUsuario",
                    formulario  = "NGestionAutenticacion",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                //Revisar por que no se ve el "Guardar"
                NGestionLogError.Instances.GuardarError(_logError, login);
            }

            return(respuesta);
        }
예제 #20
0
        /// <summary>
        /// Método para guardar el o los documentos cargados
        /// </summary>
        /// <param name="documentos">Lista de documentos cargados</param>
        /// <param name="solicitudId">Identificador unico de la solicitud</param>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo OucvDocumentos</returns>
        public Respuesta <OucvDocumentos> Guardar(List <ODocumento> documentos, int solicitudId, OLogin login)
        {
            Respuesta <OucvDocumentos> respuesta = new Respuesta <OucvDocumentos>();

            try
            {
            }
            catch (Exception ex)
            {
                respuesta.TipoEstatus  = TipoEstatus.Error;
                respuesta.ListaErrores = new List <string> {
                    ex.Message
                };

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "Guardar",
                    formulario  = "DucvDocumentos",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);
            }

            return(respuesta);
        }
예제 #21
0
        /// <summary>
        /// Método para obtener la información correspondiente a las partidas
        /// </summary>
        /// <param name="soliciutd">Objeto de tipo OSolicitud</param>
        /// <param name="zonaPartidas">Zona de la partida</param>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo OTipoCuota</returns>
        public Respuesta <OPartida> ObtenerPartidas(OSolicitud soliciutd, string zonaPartidas, OLogin login)
        {
            Respuesta <OPartida> respuesta = new Respuesta <OPartida>();

            try
            {
                using (SIRFPROD_v2Entities db = new SIRFPROD_v2Entities())
                {
                    var consulta = (from cp in db.CatPartida
                                    where
                                    // cp.tipoSolicitudID == soliciutd.SolicitudID && ---> ESTO ESTA DE LA PATADA, REVISAR
                                    cp.estatusLogico == (soliciutd.EstatusLogico == false || cp.estatusLogico) &&
                                    (
                                        (zonaPartidas == "Mexico" && (cp.catPartidaID == 37502 || cp.catPartidaID == 37504)) ||
                                        (zonaPartidas == "Extranjero" && (cp.catPartidaID == 37601 || cp.catPartidaID == 37602)) ||
                                        zonaPartidas == "Todo")
                                    select new OPartida
                    {
                        CodPartida = cp.catPartidaID,
                        ConceptoGtoCorriente = cp.denominacion,
                        DescripcionPartida = cp.descripcion,
                        Capitulo = cp.capitulo,
                        Concepto = cp.concepto,
                        Denominacion = cp.denominacion,
                        EstatusLogico = cp.estatusLogico
                    }).ToList();

                    if (consulta.Count > 0)
                    {
                        respuesta.TipoEstatus    = TipoEstatus.Ok;
                        respuesta.MensajeUsuario = Constantes.CONINFORMACION;
                        consulta.Add(new OPartida()
                        {
                            CodPartida = -1, DescripcionPartida = Constantes.SELECTOPTION
                        });
                        respuesta.ListaRegistros = consulta;
                    }
                    else
                    {
                        respuesta.TipoEstatus    = TipoEstatus.Error;
                        respuesta.MensajeUsuario = Constantes.SININFORMACION;
                        consulta.Add(new OPartida()
                        {
                            CodPartida = -1, DescripcionPartida = Constantes.SELECTOPTION
                        });
                        respuesta.ListaRegistros = consulta;
                    }
                }
            }
            catch (Exception ex)
            {
                _stackTrace = new StackTrace();
                _stackFrame = new StackFrame();
                _stackFrame = _stackTrace.GetFrame(0);

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerPartidas",
                    formulario  = "DGestionarCuotasDiarias",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);

                respuesta.MensajeUsuario = ex.Message;
                respuesta.TipoEstatus    = TipoEstatus.Error;
            }
            return(respuesta);
        }
예제 #22
0
 public JsonResult ValidarCorreoElectronico(OLogin PmtPeticion)
 {
     return(Json(_D.ValidarCorreoElectronico(PmtPeticion).Respuesta));
 }
예제 #23
0
        /// <summary>
        /// Método para obtener la información correspondiente a los concepto de pago
        /// </summary>
        /// <param name="soliciutd">Objeto de tipo OSolicitud</param>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo OTipoCuota</returns>
        public Respuesta <OConceptoGastos> ObtenerConceptosPago(OSolicitud soliciutd, OLogin login)
        {
            Respuesta <OConceptoGastos> respuesta = new Respuesta <OConceptoGastos>();

            try
            {
                using (SIRFPROD_v2Entities db = new SIRFPROD_v2Entities())
                {
                    var consulta = (from cm
                                    in db.CatConceptoPago
                                    //where cm.tipoSolicitudID == soliciutd.SolicitudID ---> REVISAR ESTA CONDICIÓN, ESTA DE LA PATADA
                                    select new OConceptoGastos
                    {
                        conceptoGastosID = cm.catConceptoPagoID,
                        descripcionConceptoGasto = cm.descripcion,
                        //tipoSolicitudID = cm.tipoSolicitudID,
                        estatusLogico = cm.estatusLogico
                    }).ToList();

                    if (consulta.Count > 0)
                    {
                        respuesta.TipoEstatus    = TipoEstatus.Ok;
                        respuesta.MensajeUsuario = Constantes.CONINFORMACION;
                        consulta.Add(new OConceptoGastos()
                        {
                            conceptoGastosID = -1, descripcionConceptoGasto = Constantes.SELECTOPTION
                        });
                        respuesta.ListaRegistros = consulta;
                    }
                    else
                    {
                        respuesta.TipoEstatus    = TipoEstatus.Error;
                        respuesta.MensajeUsuario = Constantes.SININFORMACION;
                        consulta.Add(new OConceptoGastos()
                        {
                            conceptoGastosID = -1, descripcionConceptoGasto = Constantes.SELECTOPTION
                        });
                        respuesta.ListaRegistros = consulta;
                    }
                }
            }
            catch (Exception ex)
            {
                _stackTrace = new StackTrace();
                _stackFrame = new StackFrame();
                _stackFrame = _stackTrace.GetFrame(0);

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerConceptosPago",
                    formulario  = "DGestionarCuotasDiarias",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };


                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);

                respuesta.MensajeUsuario = ex.Message;
                respuesta.TipoEstatus    = TipoEstatus.Error;
            }
            return(respuesta);
        }
예제 #24
0
        /// <summary>
        /// Consultar documentos de la solicitud
        /// </summary>
        /// <param name="solicitudId">Identificador de la slicitud</param>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo ODocumento</returns>
        public Respuesta <ODocumento> ObtenerLista(int solicitudId, OLogin login)
        {
            Respuesta <ODocumento> respuesta = new Respuesta <ODocumento>();

            try
            {
                using (SIRFPROD_v2Entities db = new SIRFPROD_v2Entities())
                {
                    var documentos = (from cp in db.Documento
                                      join td in db.CatDocumento
                                      on cp.catDocumentoID equals td.catDocumentoID
                                      where (cp.solicitudRecursoID == solicitudId &&
                                             cp.estatus)
                                      select new ODocumento
                    {
                        DocumentoID = cp.documentoID,
                        TipoDocumento = new OTipoDocumento()
                        {
                            TipoDocumentoID = td.catDocumentoID,
                            DescripcionTipoDoc = td.descripcion
                        },
                        DescripcionDocumento = td.descripcion,
                        Anexo = cp.anexo,
                        FechaRecepcion = cp.fechaRecepcion,
                        //Edicion = false
                        Edicion = true,
                        Extension = cp.extensionDocumento,
                        DocumentoBase64 = cp.contenido
                    }).ToList();

                    documentos = documentos.OrderBy(d => d.DocumentoID).ToList();

                    respuesta.ListaRegistros = new List <ODocumento>();

                    if (documentos.Count > 0)
                    {
                        respuesta.ListaRegistros = documentos;
                        respuesta.MensajeUsuario = Constantes.CONINFORMACION;
                        respuesta.TipoEstatus    = TipoEstatus.Ok;
                    }
                    else
                    {
                        respuesta.MensajeUsuario = Constantes.SININFORMACION;
                        respuesta.TipoEstatus    = TipoEstatus.Error;
                    }
                }
            }
            catch (Exception ex)
            {
                _stackTrace = new StackTrace();

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "Eliminar",
                    formulario  = "DDocumento",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };


                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);

                respuesta.MensajeUsuario = ex.Message;
                respuesta.TipoEstatus    = TipoEstatus.Error;
            }

            return(respuesta);
        }
예제 #25
0
        /// <summary>
        /// Método para la obtención del Centro de Distribución.
        /// </summary>
        /// <param name="numeroExpediente">Número de expediente del usuario logueado.</param>
        /// <param name="login">Parametro de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo lista de cadenas.</returns>
        public Respuesta <List <string> > ObtenerCentrosDistribucion(int numeroExpediente, OLogin login)
        {
            Respuesta <List <string> > respuesta = new Respuesta <List <string> >();

            try
            {
                var consulta = ObtenerCodCentroDistribucion(numeroExpediente);

                if (!String.IsNullOrEmpty(consulta.ToString()))
                {
                    respuesta.MensajeUsuario = Mensajes.Constantes.CONINFORMACION;
                    respuesta.TipoEstatus    = Mensajes.TipoEstatus.Ok;
                    respuesta.TipoRespuesta  = consulta;
                }
                else
                {
                    respuesta.MensajeUsuario = Mensajes.Constantes.SININFORMACION;
                    respuesta.TipoEstatus    = Mensajes.TipoEstatus.Ok;
                }
            }
            catch (Exception ex)
            {
                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerCentrosDistribucion",
                    formulario  = "DGestionExpediente",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);
            }
            return(respuesta);
        }
예제 #26
0
        /// <summary>
        /// Método para eliminar el o los documentos cargados
        /// </summary>
        /// <param name="documentos">Lista de documentos cargados</param>
        /// <param name="solicitudId">Identificador unico de la solicitud</param>
        /// <param name="login">Objeto de tipo OLogin</param>
        /// <returns>Respuesta genérica de tipo OucvDocumentos</returns>
        public Respuesta <OucvDocumentos> Eliminar(List <ODocumento> documentos, int solicitudId, OLogin login)
        {
            Respuesta <OucvDocumentos> respuesta = new Respuesta <OucvDocumentos>();

            try
            {
                if (documentos.Count == 0)
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, "documentos");
                }
                else if (solicitudId == 0)
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, "solicitudId");
                }
                //respuesta = "";
            }
            catch (Exception ex)
            {
                respuesta.TipoEstatus  = TipoEstatus.Error;
                respuesta.ListaErrores = new List <string> {
                    ex.Message
                };

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "Eliminar",
                    formulario  = "DucvDocumentos",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);
            }

            return(respuesta);
        }