예제 #1
0
 public static void Logout(MAEUserSession be)
 {
     try
     {
         be.FechaFinalizacion = DateTime.Now;
         UsuarioEntity user        = CachingManager.Instance.GetByIdUsuario(be.IdUsuario);
         string        descripcion = CodeMensajes.GetDescripcionMensaje(CodeMensajes.INF_CIERRE_SESION);
         UpdateSesionesContext(be);
         //CachingManager.Instance.ClearSession(be.InternalId);
         //PersistSessionHelper.Instance.DeleteSession(be.ID);
     }
     catch (Exception e)
     {
         throw new M4TraderApplicationException("Error al desloguearse de la aplicación: " + e.Message);
     }
 }
        private static Permiso GetByIDPermisos(int idUsuario, short idAccion)
        {
            var permiso = CachingManager.Instance.GetByIdPermisos(idUsuario, idAccion);

            if (permiso == null)
            {
                string       mensaje = string.Empty;
                AccionEntity accion  = CachingManager.Instance.GetAccionById(idAccion);
                if (accion == null)
                {
                    mensaje = string.Format(CodeMensajes.GetDescripcionMensaje(CodeMensajes.ERR_ACCION_NO_EXISTE), idAccion);
                    throw new M4TraderApplicationException(CodeMensajes.ERR_ACCION_NO_EXISTE, mensaje);
                }
                mensaje = string.Format(CodeMensajes.GetDescripcionMensaje(CodeMensajes.ERR_SINPERMISOS), accion.Descripcion, accion.Descripcion);
                throw new M4TraderApplicationException(CodeMensajes.ERR_SINPERMISOS, mensaje);
            }
            VerificarPermiso(ref permiso);
            return(permiso);
        }