Desarrollo del Sistema de Administración CrazyCar: Monitoreo de Datos de Juego y Backend Operativo con Vue y Element UI

CrazyCar es un juego de carreras multijugador en línea desarrollado con Unity. Su sistema de administración, construido con Vue.js y Element UI, ofrece capacidades integrales para el monitoreo de datos del juego y la operación. Este artículo detalla el proceso de desarrollo de este sistema de administración, enfocándose en la implementación de funciones clave utilizando Vue y Element UI, para ayudar a los desarrolladores a comprender rápidamente la estructura y las funcionalidades esenciales de un backend de juego.

Arquitectura General del Proyecto

El sistema de administración de CrazyCar adopta una arquitectura desacoplada de frontend y backend. El frontend está desarrollado con Vue.js y la biblioteca de componentes Element UI, mientras que el backend utiliza Spring Boot y Mybatis para proporcionar la API. El sistema se encarga principalmente de funciones críticas como el monitoreo de datos del juego, la gestión de usuarios, la gestión de inventario y las estadísticas de datos de las competiciones.

El código fuente del sistema de administración se encuentra en el directorio CrazyCarBackground del proyecto. La organización del código del frontend es la siguiente:

  • Componentes de Vista: El directorio src/views/ contiene los componentes de página para cada módulo funcional, como el panel de control, la gestión de usuarios y la gestión de inventario.
  • Llamadas a la API: El directorio src/api/ encapsula las interfaces para la comunicación con el backend.
  • Gestión de Estado: El directorio src/store/ utiliza Vuex para gestoinar el estado de la aplicación.
  • Componentes Comunes: El directorio src/components/ alberga componentes de UI reutilizables.

Implementación de Módulos Funcionales Clave

Panel de Control: Centro de Visualización de Datos

El panel de control es el corazón del sistema de administración, mostrando datos clave del juego de manera centralizada. El panel de control de CrazyCar utiliza varios gráficos para visualizar las tendenicas de inicio de sesión de los usuarios, estadísticas de datos de competiciones, etc., permitiendo al personal operativo monitorear el estado del juego en tiempo real.

La implementación principal del panel de control se encuentra en src/views/dashboard/index.vue. Los pasos clave son:

  1. Obtención de Datos: Se obtienen datos del backend a través de la función getDashboardData.
  2. Procesamiento de Datos: Los datos brutos se transforman al formato requerido por los gráficos.
  3. Renderizado de Componentes: Se utilizan componentes de gráficos personalizados para mostrar los datos.

Ejemplo de código central:

// Obtención y procesamiento de datos
handleGetDashboardData() {
 getDashboardData().then(response => {
   // Procesar datos del panel
   this.panelInfoData = [
     response.user_num,    // Número de usuarios
     response.equip_num,   // Número de equipos/ítems
     response.avatar_num,  // Número de avatares
     response.map_num      // Número de mapas
   ];
   // Procesar datos de inicio de sesión de usuarios
   this.loginUserChartData = {
     name: 'Número de Usuarios que Inician Sesión',
     date: processDate(response.login_user_num),
     actualData: processData(response.login_user_num)
   };
   // Otros procesamientos de datos...
 });
}

Módulo de Gestión de Usuarios

Este módulo permite a los administradores ver y gestionar la información de los usuarios del juego, incluyendo listas de usuarios, detalles y la gestión del estado del usuario. El módulo se encuentra en src/views/user/index.vue y sus funcionalidades principales incluyen:

  • Visualización de listas de usuarios con paginación.
  • Búsqueda y filttrado de usuarios.
  • Edición de información de usuario.
  • Gestión del estado del usuario.

Gestión de Equipos y Vehículos

CrazyCar incluye varios vehículos y equipos. El módulo de gestión de inventario proporciona una gestión completa de estos. El código relevante se encuentra en src/views/equip/index.vue y soporta:

  • Visualización de listas de inventario.
  • Edición de detalles del inventario.
  • Carga de imágenes para el inventario.
  • Gestión del estado del inventario.

Puntos Clave de Implementación Técnica

Uso Flexible de Componentes de Element UI

El proyecto aprovecha al máximo la biblioteca de componentes de Element UI para construir una interfaz de usuario coherente y estéticamente agradable. Los componentes utilizados con frecuencia incluyen:

  • Componentes de Diseño: el-container, el-row, el-col para crear diseños responsivos.
  • Visualización de Datos: el-table para mostrar datos en formato de lista.
  • Componentes de Formulario: el-form para manejar la entrada del usuario.
  • Componentes de Gráficos: Combinados con componentes de gráficos personalizados para la visualización de datos.

Diseño e Invocación de Interfaces API

El sistema de administración interactúa con el backend a través de APIs RESTful. Todas las llamadas a la API están encapsuladas en el directorio src/api/, por ejemplo:

  • src/api/dashboard.js: Interfaces para datos del panel de control.
  • src/api/user.js: Interfaces para la gestión de usuarios.
  • src/api/equip.js: Interfaces para la gestión de inventario.

Las llamadas a la API utilizan la biblioteca Axios, y los interceptores de solicitudes manejan la lógica común, como la autenticación.

Implementación del Control de Acceso

El sistema implementa un control de acceso basado en roles. El archivo src/permission.js configura los "guardias de ruta" (router guards) para controlar las páginas a las que pueden acceder diferentes roles. La lógica de control de acceso incluye:

  1. Verificación de inicio de sesión.
  2. Evaluación de permisos de roles.
  3. Generación dinámica de rutas.
  4. Control de acceso a páginas.

Configuración y Despliegue del Proyecto

Preparación del Entorno

  1. Clonar el repositorio del proyecto: ```bash

    git clone https://gitcode.com/gh_mirrors/cr/CrazyCar

  2. Navegar al directorio del proyecto de administración: ```bash

    cd CrazyCar/CrazyCarBackground

  3. Instalar dependencias: ```bash

    npm install

    
    

Desarrollo y Construcción

  • Ejecutar en entorno de desarrollo: ```bash

    npm run serve

  • Construir para entorno de producción: ```bash

    npm run build

    
    

Los archivos estáticos generados se encuentran en el directorio dist y pueden ser desplegados en servidores web como Nginx.

El sistema de administración de CrazyCar, construido con Vue y Element UI, ofrece funcionalidades ricas para el monitoreo de datos del juego y la operación. La arquitectura y los puntos de implementación detallados en este artículo permiten a los desarrolladores comprender y extender el sistema rápidamente. La combinación de Vue y Element UI demuestra la eficiencia en el desarrollo y la excelente experiencia de usuario para la visualización de datos del juego, la gestión de usuarios y la gestión de inventario.

Etiquetas: vue.js Element UI JavaScript Gestión de Backend visualización de datos

Publicado el 6-22 07:31