gestion materiales - ManuelJDonoso/Proyecto_daw GitHub Wiki

Gestión de Materiales

Visión General

El sistema de Gestión de Materiales proporciona funcionalidades para rastrear, prestar y administrar materiales físicos del juego dentro de la aplicación Crónicas de Mérida. Este sistema permite a los jugadores solicitar préstamos de materiales, mientras que los administradores pueden agregar nuevos elementos, rastrear su estado y procesar devoluciones.

Este documento detalla los componentes principales del sistema de Gestión de Materiales. Para información sobre otros sistemas relacionados, consulta Gestión de Usuarios y Esquema de Base de Datos.

Arquitectura del Sistema

El sistema de Gestión de Materiales consta de tres subsistemas principales:

  1. Gestión de Inventario de Materiales: Permite a los administradores agregar nuevos materiales al inventario del sistema.
  2. Sistema de Préstamo de Materiales: Permite a los jugadores ver y solicitar préstamos de materiales disponibles.
  3. Procesamiento de Devoluciones de Materiales: Proporciona a los administradores herramientas para procesar devoluciones, reparaciones y bajas de materiales.

Arquitectura del sistema de gestión de materiales

imagen

Esquema de Base de Datos

imagen

El sistema de Gestión de Materiales utiliza las siguientes tablas en la base de datos:

  • materiales: Almacena la información básica de cada tipo de material.
  • unidades_material: Registra cada unidad individual de material, su estado y detalles específicos.
  • prestamos: Registra los préstamos de materiales realizados por los usuarios.

Flujo de Estados de los Materiales

imagen

El sistema rastrea los materiales a través de diferentes estados a lo largo de su ciclo de vida:

  1. Disponible: La unidad está disponible para préstamo.
  2. Prestado: La unidad ha sido prestada a un usuario.
  3. En Reparación: La unidad está siendo reparada y no está disponible para préstamo.
  4. Baja: La unidad ha sido retirada del inventario y no está disponible para préstamo.

Permisos de Usuario

El sistema de Gestión de Materiales ofrece diferentes funcionalidades según los roles de los usuarios:

  • Jugador: Puede ver y solicitar préstamos de materiales disponibles.
  • Moderador: Tiene las mismas capacidades que el jugador y, además, puede procesar devoluciones de materiales.
  • Administrador: Tiene todos los permisos, incluyendo agregar nuevos materiales y gestionar el inventario completo.

Gestión de Inventario de Materiales

Los administradores pueden agregar nuevos materiales al inventario del sistema a través del formulario de carga de materiales. Este proceso implica dos pasos:

  1. Crear una definición de material (si no existe previamente).
  2. Agregar una unidad específica del material al inventario.

Flujo de Trabajo para la Creación de Materiales

imagen

El controlador verifica si el material ya existe en la base de datos. Si no es así, crea un nuevo registro de material. Luego, agrega una unidad de ese material al inventario con un estado de "disponible".

Formulario de Carga de Materiales

El formulario de carga incluye los siguientes campos:

  • Nombre del material
  • Tipo de material (seleccionado de los tipos existentes)
  • Descripción
  • Recomendación de edad
  • Comentario (específico para esta unidad)

El formulario también incluye una tabla que muestra los materiales existentes para ayudar a prevenir entradas duplicadas.

Sistema de Préstamo de Materiales

Los jugadores pueden solicitar préstamos de materiales a través de la interfaz de préstamo. Este sistema:

  1. Muestra materiales disponibles: Lista todos los materiales que están disponibles para préstamo.
  2. Permite solicitudes de préstamo: Los jugadores pueden seleccionar materiales y solicitar su préstamo.
  3. Registra los préstamos: Cada solicitud de préstamo se registra en la base de datos con detalles del usuario y la unidad prestada.

Procesamiento de Devoluciones de Materiales

Los moderadores y administradores pueden procesar devoluciones de materiales a través de la interfaz de devoluciones. Este proceso incluye:

  1. Selección de la unidad devuelta: Identificar la unidad que está siendo devuelta.
  2. Actualización del estado: Cambiar el estado de la unidad a "disponible", "en reparación" o "baja", según corresponda.
  3. Registro de la devolución: Registrar la devolución en la base de datos con detalles relevantes.

Archivos Fuente Relevantes:

  • src/www/controllers/loan_material.php
  • src/www/controllers/return_material.php
  • src/www/controllers/upload_material.php
  • src/www/views/loan_material.php
  • src/www/views/return_material.php
  • src/www/views/upload_material.php