Skip to content

feat: Implement Historical Registry Visualization Module (Sales, Clients, and Procedures) #37

@josemora090525

Description

@josemora090525

🔍 Feature: Implementación del Módulo de Visualización de Registros Históricos

Este Issue Principal coordina la implementación del MÓDULO: Visualización de Registros, cuyo objetivo principal es la consulta, administración de las transacciones históricas (Ventas) y los datos permanentes (Clientes y Mascotas), incluyendo la visualización detallada de los procedimientos quirúrgicos.

🎯 Objetivo

Implementar un conjunto de repositorios y servicios optimizados para la lectura de datos (solo consulta, no transaccional), y un controlador que gestione la interfaz para la búsqueda y filtrado dinámico en las secciones de Ventas y Clientes, mostrando información altamente detallada y relacionada.

🔗 Puntos Clave de Interconexión y Consulta

  1. Ventas: Se recibe la data histórica de ventas para su consulta (filtrado por ID, Mascota, Cliente).
  2. Clientes/Mascotas: Se muestran los datos de los clientes y se ofrece la funcionalidad de auditoría para ver procedimientos.
  3. Procedimientos: Permite acceder y manipular (editar/eliminar) el detalle de los procedimientos asociados a una mascota.

📋 Tareas Pendientes (Sub-Issues y dependencias)

A continuación, se detalla el trabajo a realizar, manteniendo un seguimiento a través de los task lists para cada componente.

1. Repositorios de Consulta (Data Retrieval)

  • Issue 1: Crear RegistroVentaRepository

    • Implementar métodos de consulta avanzada para obtener datos de Venta y sus Líneas/Productos asociados en una sola consulta.
    • Desarrollar métodos de filtrado por ID de Venta, Cliente, Mascota, e ID de Producto.
    • Depende de: Modelos Venta, LineaVenta, Producto, Cliente, Mascota.
  • Issue 2: Crear RegistroClienteRepository

    • Implementar métodos de consulta para listar todos los Clientes y sus Mascotas asociadas.
    • Implementar métodos para recuperar los Procedimientos Quirúrgicos asociados a una Mascota específica.
    • Depende de: Modelos Cliente, Mascota, HistoriaClinica (Procedimientos).

2. Servicios de Procesamiento (Lógica de Presentación)

  • Issue 3: Crear RegistroService
    • Implementar métodos para obtener la vista consolidada de una Venta (todos los productos, códigos de barras, cliente, mascota, fecha y total).
    • Implementar métodos para obtener la lista de Clientes registrados con sus datos básicos.
    • Implementar métodos para deshacer, editar y eliminar un registro de Venta o Cliente (delegando esta acción a los servicios transaccionales originales, ej. VentaService).
    • Depende de: RegistroVentaRepository, RegistroClienteRepository, y los servicios transaccionales originales (VentaService, ClienteService).

3. Implementación del Controlador (Interfaz de Auditoría)

  • Issue 4: Implementar RegistrosController
    • Implementar la clase RegistrosController para gestionar las dos vistas principales: Registro de Ventas y Registro de Clientes.
    • (Registro de Ventas) Conectar la interfaz de búsqueda para aplicar filtros por ID, Mascota, Cliente o Producto, mostrando los resultados con toda la información detallada (referencia, código de barras, totales).
    • (Registro de Clientes) Conectar la interfaz para listar a todos los clientes.
    • (Procedimientos Quirúrgicos) Implementar el flujo para seleccionar un cliente/mascota y usar el botón "Ver Procedimiento":
      • Mostrar una vista de auditoría con la descripción, productos aplicados y detalles del procedimiento quirúrgico.
    • Conectar los botones de Deshacer, Editar y Eliminar con los métodos del RegistroService.
    • Depende de: RegistroService.
    • Vinculado con: Vistas del módulo de Visualización de Registros.

¿Hay algún otro módulo que necesites detallar, o ahora quieres enfocarte en la arquitectura transversal (ej. la base de datos o el manejo de excepciones)?

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthigh-priorityMust be addressed urgently or blocks critical functionality

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions