示例#1
0
        /// <summary>Invoca al Procedimiento almacenado que lista Usuarios.</summary>
        /// <param name="objFiltro">Parámetros para el filtro de Listar las Usuarios</param>
        ///<remarks>
        ///<list type = "bullet">
        ///<item><CreadoPor>Bryan Luna Vasquez.</CreadoPor></item>
        ///<item><FecCrea>19/02/2018</FecCrea></item></list>
        ///<list type="bullet">
        /// <item><FecActu>XX/XX/XXXX.</FecActu></item>
        /// <item><Resp>Responsable.</Resp></item>
        /// <item><Mot>Motivo.</Mot></item></list></remarks>
        public static LoginResponseDto Login(LoginRequestDto request)
        {
            try
            {
                LoginResponseDto      response;
                LoginListaDto         objLogin;
                ArchivoListaDto       objArchivo;
                List <OpcionListaDto> listaOpcionesPerfil;
                Campania             objCampaniaActual;
                DatosUsuarioListaDto objDatosUsuario;
                string usuario;
                string clave;
                string campania;

                usuario  = request.Usuario;
                clave    = request.Clave;
                objLogin = UsuarioData.Login(usuario);

                if (objLogin == null)
                {
                    BusinessException.Generar(Constantes.Mensajes.USUARIO_NO_EXISTE);
                }

                if (objLogin.Clave != Funciones.Encriptar(clave.ToUpper()))
                {
                    BusinessException.Generar(Constantes.Mensajes.CLAVE_USUARIO_INCORRECTA);
                }

                objDatosUsuario = UsuarioData.ListarDatosUsuario(objLogin.Codigo);

                objDatosUsuario.Codigo         = objLogin.Codigo;
                objDatosUsuario.Clave          = objLogin.Clave;
                objDatosUsuario.CodigoEdificio = objLogin.CodigoEdificio;
                objDatosUsuario.CodigoPerfil   = objLogin.CodigoPerfil;
                objDatosUsuario.CodigoPersona  = objLogin.CodigoPersona;
                objDatosUsuario.Nombre         = objLogin.Nombre;
                objDatosUsuario.Usuario        = objLogin.Usuario;
                objCampaniaActual = CampaniaData.ObtenerCampaniaActual((int)objDatosUsuario.CodigoEdificio);
                campania          = objCampaniaActual.Codigo;
                objDatosUsuario.CampaniaActual = campania;
                listaOpcionesPerfil            = OpcionData.ListaOpcionesPorPerfil(objLogin.CodigoPerfil);

                response = new LoginResponseDto
                {
                    ListaOpcionesPorPerfil = listaOpcionesPerfil,
                    Usuario = objDatosUsuario,
                    //FotoUsuario = objArchivo,
                };

                return(response);
            }
            catch (Exception ex)
            {
                Log.RegistrarLog(NivelLog.Error, ex);
                throw;
            }
        }
示例#2
0
        /// <summary>
        /// Listado con paginacion para aplicación WEB
        /// </summary>
        /// <param name="pFiltro"></param>
        /// <returns></returns>
        public OperationResult ListPaged(BEBuscaOpcionRequest pFiltro)
        {
            try
            {
                List <BEOpcionResponse> lstOpcion = new List <BEOpcionResponse>();
                lstOpcion = oOpcionData.ListPaged(pFiltro);
                int totalRecords = lstOpcion.Select(x => x.TOTALROWS).FirstOrDefault();
                int totalPages   = (int)Math.Ceiling((float)totalRecords / (float)pFiltro.jqPageSize);
                var jsonGrid     = new
                {
                    PageCount   = totalPages,
                    CurrentPage = pFiltro.jqCurrentPage,
                    RecordCount = totalRecords,
                    Items       = (
                        from item in lstOpcion
                        select new
                    {
                        ID = item.codOpcion,
                        Row = new string[] { string.Empty
                                             , string.Empty
                                             , item.indTipoObjeto
                                             , item.desNombre
                                             , item.codOpcionPadreNombre
                                             , item.desEnlaceURL
                                             , item.desEnlaceWIN
                                             , item.codElementoID
                                             , item.indMenu.ToString()
                                             , item.numOrden.ToString()
                                             , item.nomIcono
                                             , item.desDescripcion
                                             , item.codSistemaNombre
                                             , item.indEstado.ToString()

                                             , item.segUsuarioEdita
                                             , item.segFechaEdita.HasValue? item.segFechaEdita.Value.ToString():string.Empty }
                    }).ToArray()
                };
                return(OK(jsonGrid));
            }
            catch (Exception ex)
            {
                return(Error(GetType().Name, MethodBase.GetCurrentMethod().Name, ex, pFiltro.userActual, pFiltro.codEmpresa));
            }
            finally
            {
                if (oOpcionData != null)
                {
                    oOpcionData.Dispose();
                    oOpcionData = null;
                }
            }
        }
示例#3
0
        ///// <summary>Invoca al Procedimiento almacenado que lista Perfiles.</summary>
        ///// <param name="objFiltro">Parámetros para el filtro de Listar las Perfiles</param>
        /////<remarks>
        /////<list type = "bullet">
        /////<item><CreadoPor>Bryan Luna Vasquez.</CreadoPor></item>
        /////<item><FecCrea>19/02/2018</FecCrea></item></list>
        /////<list type="bullet">
        ///// <item><FecActu>XX/XX/XXXX.</FecActu></item>
        ///// <item><Resp>Responsable.</Resp></item>
        ///// <item><Mot>Motivo.</Mot></item></list></remarks>
        //public static PerfilResponseDto ObtenerIndexPerfiles(PerfilRequestDto request)
        //{
        //    try
        //    {
        //        PerfilResponseDto response;
        //        PerfilFiltroDto objPerfilFiltro;
        //        List<PerfilListaDto> listaPerfiles;

        //        objPerfilFiltro = request.Filtro;
        //        listaPerfiles = CPMaePerfilData.ListaPerfiles(objPerfilFiltro);

        //        response = new PerfilResponseDto
        //        {
        //            ListaPerfiles = listaPerfiles
        //        };

        //        return response;
        //    }
        //    catch (Exception ex)
        //    {
        //        Log.RegistrarLog(NivelLog.Error, ex);
        //        throw;
        //    }
        //}

        ///// <summary>Invoca al Procedimiento almacenado que lista Perfiles.</summary>
        ///// <param name="objFiltro">Parámetros para el filtro de Listar las Perfiles</param>
        /////<remarks>
        /////<list type = "bullet">
        /////<item><CreadoPor>Bryan Luna Vasquez.</CreadoPor></item>
        /////<item><FecCrea>19/02/2018</FecCrea></item></list>
        /////<list type="bullet">
        ///// <item><FecActu>XX/XX/XXXX.</FecActu></item>
        ///// <item><Resp>Responsable.</Resp></item>
        ///// <item><Mot>Motivo.</Mot></item></list></remarks>
        //public static PerfilResponseDto ListaPerfiles(PerfilRequestDto request)
        //{
        //    try
        //    {
        //        PerfilResponseDto response;
        //        PerfilFiltroDto objPerfilFiltro;
        //        List<PerfilListaDto> listaPerfiles;

        //        objPerfilFiltro = request.Filtro;
        //        listaPerfiles = CPMaePerfilData.ListaPerfiles(objPerfilFiltro);

        //        response = new PerfilResponseDto
        //        {
        //            ListaPerfiles = listaPerfiles
        //        };

        //        return response;
        //    }
        //    catch (Exception ex)
        //    {
        //        Log.RegistrarLog(NivelLog.Error, ex);
        //        throw;
        //    }
        //}

        ///// <summary>Método que registra Perfiles.</summary>
        ///// <param name="objPersona">Entidad con los datos de la entidad.</param>
        ///// <returns>.</returns>
        ///// <remarks><list type="bullet">
        ///// <item><CreadoPor>Bryan Luna Vasquez</CreadoPor></item>
        ///// <item><FecCrea>13/02/2018.</FecCrea></item></list>
        ///// <list type="bullet">
        ///// <item><FecActu>XX/XX/XXXX.</FecActu></item>
        ///// <item><Resp>Responsable.</Resp></item>
        ///// <item><Mot>Motivo.</Mot></item></list></remarks>
        //public static PerfilResponseDto ObtenerEditorPerfil(short IdPerfil = 0)
        //{
        //    try
        //    {
        //        PerfilResponseDto response;
        //        CPMaePerfil objPerfil;

        //        objPerfil = CPMaePerfilData.ObtenerPerfil(IdPerfil);

        //        response = new PerfilResponseDto
        //        {
        //            Perfil = objPerfil
        //        };

        //        return response;
        //    }
        //    catch (Exception ex)
        //    {
        //        Log.RegistrarLog(NivelLog.Error, ex);
        //        throw;
        //    }
        //}

        ///// <summary>Método que registra Perfiles.</summary>
        ///// <param name="objPersona">Entidad con los datos de la entidad.</param>
        ///// <returns>.</returns>
        ///// <remarks><list type="bullet">
        ///// <item><CreadoPor>Bryan Luna Vasquez</CreadoPor></item>
        ///// <item><FecCrea>13/02/2018.</FecCrea></item></list>
        ///// <list type="bullet">
        ///// <item><FecActu>XX/XX/XXXX.</FecActu></item>
        ///// <item><Resp>Responsable.</Resp></item>
        ///// <item><Mot>Motivo.</Mot></item></list></remarks>
        //public static int RegistrarPerfil(PerfilRequestDto request)
        //{
        //    CPMaePerfil objPerfil;
        //    int resultado;

        //    objPerfil = request.Perfil;

        //    try
        //    {
        //        if (CPMaePerfilData.ValidaExiste(objPerfil))
        //        {
        //            BusinessException.Generar(Constantes.Mensajes.PERFIL_YA_EXISTE);
        //        }

        //        using (TransactionScope tran = new TransactionScope())
        //        {
        //            resultado = CPMaePerfilData.RegistrarPerfil(objPerfil);
        //            tran.Complete();
        //        }
        //    }
        //    catch (Exception ex)
        //    {
        //        Log.RegistrarLog(NivelLog.Error, ex);
        //        throw;
        //    }
        //    return resultado;
        //}

        ///// <summary>Método que Actualiza maestro de Perfil.</summary>
        ///// <param name="objPersona">Entidad con los datos de la entidad.</param>
        ///// <returns>.</returns>
        ///// <remarks><list type="bullet">
        ///// <item><CreadoPor>Bryan Luna Vasquez</CreadoPor></item>
        ///// <item><FecCrea>13/02/2018.</FecCrea></item></list>
        ///// <list type="bullet">
        ///// <item><FecActu>XX/XX/XXXX.</FecActu></item>
        ///// <item><Resp>Responsable.</Resp></item>
        ///// <item><Mot>Motivo.</Mot></item></list></remarks>
        //public static int ActualizarPerfil(PerfilRequestDto request)
        //{
        //    CPMaePerfil objPerfil;
        //    CPMaePerfil objPerfilAnterior;
        //    int resultado;

        //    objPerfil = request.Perfil;
        //    objPerfilAnterior = CPMaePerfilData.ObtenerPerfil(objPerfil.siCodPer);

        //    try
        //    {
        //        if (objPerfil.vNombre != objPerfilAnterior.vNombre)
        //        {
        //            if (CPMaePerfilData.ValidaExiste(objPerfil))
        //            {
        //                BusinessException.Generar(Constantes.Mensajes.PERFIL_YA_EXISTE);
        //            }
        //        }

        //        using (TransactionScope tran = new TransactionScope())
        //        {
        //            resultado = CPMaePerfilData.ActualizarPerfil(objPerfil);
        //            tran.Complete();
        //        }
        //    }
        //    catch (Exception ex)
        //    {
        //        Log.RegistrarLog(NivelLog.Error, ex);
        //        throw;
        //    }
        //    return resultado;
        //}

        ///// <summary>Método que elimina Perfiles.</summary>
        ///// <param name="objPersona">Entidad con los datos de la Perfil.</param>
        ///// <returns>Respuesta entero.</returns>
        ///// <remarks><list type="bullet">
        ///// <item><CreadoPor>Bryan Luna Vasquez</CreadoPor></item>
        ///// <item><FecCrea>13/02/2018.</FecCrea></item></list>
        ///// <list type="bullet">
        ///// <item><FecActu>XX/XX/XXXX.</FecActu></item>
        ///// <item><Resp>Responsable.</Resp></item>
        ///// <item><Mot>Motivo.</Mot></item></list></remarks>
        //public static int EliminarPerfil(PerfilRequestDto request)
        //{
        //    CPMaePerfil objPerfil;
        //    int resultado;

        //    objPerfil = request.Perfil;

        //    try
        //    {
        //        if (CPMaePerfilData.ValidaTieneUsuarios(objPerfil))
        //        {
        //            BusinessException.Generar(Constantes.Mensajes.PERFIL_TIENE_USUARIO);
        //        }

        //        using (TransactionScope tran = new TransactionScope())
        //        {
        //            resultado = CPMaePerfilData.EliminarPerfil(objPerfil);
        //            tran.Complete();
        //        }
        //    }
        //    catch (Exception ex)
        //    {
        //        Log.RegistrarLog(NivelLog.Error, ex);
        //        throw;
        //    }
        //    return resultado;
        //}

        /// <summary>Método que devuelve el response para la pantalla index de ruta</summary>
        /// <param name="request">Objeto request</param>
        /// <returns>Response de index para ruta</returns>
        /// <remarks><list type="bullet">
        /// <item><CreadoPor>Wilmer Gómez Prado</CreadoPor></item>
        /// <item><FecCrea>02/02/2018</FecCrea></item>
        /// </list>
        /// <list type="bullet" >
        /// <item><FecActu>XXXX</FecActu></item>
        /// <item><Resp>XXXX</Resp></item>
        /// <item><Mot>XXXX</Mot></item></list></remarks>
        public static PerfilResponseDto ListaOpcionesPorPerfil(short idPerfil)
        {
            try
            {
                PerfilResponseDto                response;
                List <OpcionListaDto>            listaOpcionesPorModulo;
                List <OpcionListaDto>            listaOpcionesPorPerfil;
                List <OpcionesPorPerfilListaDto> listaOpciones;
                int  moduloLiqPeajes;
                bool existe;

                moduloLiqPeajes        = Convert.ToInt32(Constantes.DatosAplicacion.MODULO_COMERCIAL);
                listaOpcionesPorModulo = OpcionData.ListaOpcionesPorModulo(moduloLiqPeajes);
                listaOpcionesPorPerfil = OpcionData.ListaOpcionesPorPerfil(idPerfil);

                listaOpciones = new List <OpcionesPorPerfilListaDto>();
                foreach (var item in listaOpcionesPorModulo)
                {
                    existe = listaOpcionesPorPerfil.Exists(x => x.Codigo == item.Codigo);
                    listaOpciones.Add(new OpcionesPorPerfilListaDto
                    {
                        Nombre       = item.Nombre,
                        Existe       = existe,
                        CodigoOpcion = item.Codigo,
                        CodigoPadre  = item.CodigoPadre
                    });
                }

                response = new PerfilResponseDto
                {
                    ListaOpciones = listaOpciones
                };

                return(response);
            }
            catch (Exception ex)
            {
                Log.RegistrarLog(NivelLog.Error, ex);
                throw;
            }
        }
示例#4
0
        /// <summary>Método que devuelve el response para la pantalla index de ruta</summary>
        /// <param name="request">Objeto request</param>
        /// <returns>Response de index para ruta</returns>
        /// <remarks><list type="bullet">
        /// <item><CreadoPor>Wilmer Gómez Prado</CreadoPor></item>
        /// <item><FecCrea>02/02/2018</FecCrea></item>
        /// </list>
        /// <list type="bullet" >
        /// <item><FecActu>XXXX</FecActu></item>
        /// <item><Resp>XXXX</Resp></item>
        /// <item><Mot>XXXX</Mot></item></list></remarks>
        public static PerfilResponseDto ListaOpcionesPorPerfil_Menu(short idPerfil)
        {
            try
            {
                PerfilResponseDto     response;
                List <OpcionListaDto> listaOpcionesPorPerfil;
                int moduloLiqPeajes;

                moduloLiqPeajes        = Convert.ToInt32(Constantes.DatosAplicacion.MODULO_COMERCIAL);
                listaOpcionesPorPerfil = OpcionData.ListaOpcionesPorPerfil(idPerfil).Where(x => x.TipoOpcion == 1).ToList();

                response = new PerfilResponseDto
                {
                    ListaOpcionesMenu = listaOpcionesPorPerfil
                };

                return(response);
            }
            catch (Exception ex)
            {
                Log.RegistrarLog(NivelLog.Error, ex);
                throw;
            }
        }
示例#5
0
 public OpcionLogic()
 {
     oOpcionData = new OpcionData();
     oReturn     = new ReturnValor();
 }