← Volver a Back.Domain

📋 DTOs

Objetos de transferencia de datos para comunicación entre capas del sistema

📊 Resumen del Módulo

13
DTOs Totales
4
Categorías
138
Líneas Máximas
100%
Documentados

El módulo DTOs contiene todos los objetos de transferencia de datos utilizados en el sistema RestMaster. Estos DTOs facilitan la comunicación entre diferentes capas de la aplicación, proporcionando estructuras de datos bien definidas y documentadas.

🎯 Propósito de los DTOs

  • Transferencia de Datos: Comunicación entre capas de la aplicación
  • Abstracción de Modelos: Ocultar detalles de implementación
  • Validación de Datos: Estructuras para validación de entrada
  • Respuestas Estructuradas: Formato consistente para respuestas
  • Documentación: Comentarios XML detallados en todas las propiedades

DTOs de Gestión de Caja

ArqueoCajaResponse

DTO para la respuesta del arqueo de caja con información detallada de ventas, pagos y balances.

Ver Documentación

CajaAperturaRequest

DTO para solicitar la apertura de caja con importe inicial y cajero asignado.

Ver Documentación

CajaCierreRequest

DTO para solicitar el cierre de caja con información de arqueo y balances.

Ver Documentación

CajaEstadoResponse

DTO para la respuesta del estado actual de la caja y operaciones pendientes.

Ver Documentación

DTOs de Gestión de Facturas

InvoiceDTO

DTO básico para información de facturas con datos esenciales.

Ver Documentación

InvoiceFilterDto

DTO para filtros de búsqueda y consulta de facturas con múltiples criterios.

Ver Documentación

CreateMultipleInvoicesRequest

DTO para crear múltiples facturas en una sola operación.

Ver Documentación

CloseInvoiceRequestDto

DTO para solicitar el cierre de una factura específica.

Ver Documentación

DTOs de Gestión de Mesas

TableDto

DTO básico para información de mesas con datos esenciales.

Ver Documentación

TableOpenRequest

DTO para solicitar la apertura de una mesa con camarero asignado.

Ver Documentación

TableLineRequest

DTO para solicitar la adición de líneas a una comanda de mesa.

Ver Documentación

TableLineUpdateRequest

DTO para solicitar la actualización de líneas existentes en una comanda.

Ver Documentación

DTOs de Gestión de Salones

SalonDetailDto

DTO para información detallada de salones con configuración y mesas.

Ver Documentación

🔍 Características de los DTOs

📝 Documentación XML

  • Comentarios Detallados: Cada propiedad tiene documentación XML
  • Descripción Clara: Explicación del propósito de cada campo
  • IntelliSense: Soporte completo para autocompletado
  • Generación de Documentación: Compatible con herramientas de documentación

🎯 Patrones de Diseño

  • DTO Pattern: Separación de datos de transferencia
  • Immutable Objects: DTOs inmutables cuando es apropiado
  • Fluent Interface: Construcción fluida de objetos complejos
  • Validation Attributes: Atributos de validación integrados

🔧 Características Técnicas

  • Nullable Reference Types: Manejo explícito de valores nulos
  • Auto Properties: Propiedades automáticas para simplicidad
  • Default Values: Valores por defecto apropiados
  • Type Safety: Tipos fuertemente tipados

🔗 Integración con Otros Módulos

📚 Módulos Relacionados

  • Back.API: Utiliza los DTOs para respuestas de endpoints
  • Back.Application: Utiliza los DTOs para operaciones de negocio
  • Common.Domain: Los DTOs pueden referenciar modelos de dominio
  • Validators: Los DTOs son validados por validadores específicos

🎯 Casos de Uso

  • APIs REST: Respuestas estructuradas para endpoints
  • Validación de Entrada: Estructuras para validar datos de entrada
  • Transferencia de Datos: Comunicación entre capas
  • Serialización: Conversión a JSON/XML para APIs
  • Documentación: Generación automática de documentación