← Volver a Entidades de Sistema

UltimoPedido

Entidad para control del último pedido generado en el sistema

📊 Descripción General

La entidad UltimoPedido representa el control del último pedido generado en el sistema RestMaster. Esta entidad mantiene un contador que se utiliza para generar números únicos de pedidos en el sistema.

🎯 Propósito de la Entidad

  • Control de Pedidos: Último pedido generado
  • Numeración Única: Generación de números únicos de pedidos
  • Gestión de Comandas: Control de numeración de comandas
  • Sincronización: Control de concurrencia
  • Auditoría: Trazabilidad de pedidos

📋 Propiedades de la Entidad

Numero

double
Número del último pedido generado (clave primaria)

🔗 Relaciones con Otras Entidades

⚙️ Entidades de Sistema

  • Secuencia: Secuencias relacionadas
  • UltimaFactura: Última factura generada
  • UltimoConsecutivo: Último consecutivo usado

🎯 Funcionalidades Relacionadas

  • Gestión de Pedidos: Control de numeración
  • Comandas: Numeración de comandas
  • Sincronización: Control de concurrencia
  • Auditoría: Trazabilidad

💡 Ejemplo de Uso

// Crear control de último pedido var ultimoPedido = new UltimoPedido { Numero = 100 }; // Obtener último pedido var ultimoPedidoActual = context.UltimoPedidos .FirstOrDefault(); if (ultimoPedidoActual != null) { var siguientePedido = ultimoPedidoActual.Numero + 1; ultimoPedidoActual.Numero = siguientePedido; context.SaveChanges(); } // Consultar último pedido var pedido = context.UltimoPedidos .FirstOrDefault(); if (pedido != null) { Console.WriteLine($"Último pedido: {pedido.Numero}"); } // Reiniciar contador de pedidos var pedidoActual = context.UltimoPedidos .FirstOrDefault(); if (pedidoActual != null) { pedidoActual.Numero = 1; context.SaveChanges(); } // Verificar si existe control de pedidos var existePedido = context.UltimoPedidos .Any(); if (!existePedido) { var nuevoPedido = new UltimoPedido { Numero = 1 }; context.UltimoPedidos.Add(nuevoPedido); context.SaveChanges(); } // Obtener siguiente número de pedido var pedidoSiguiente = context.UltimoPedidos .FirstOrDefault(); if (pedidoSiguiente != null) { var siguiente = pedidoSiguiente.Numero + 1; // Usar el número para generar un nuevo pedido Console.WriteLine($"Siguiente pedido: {siguiente}"); } // Consultar pedidos por rango var pedidosRango = context.UltimoPedidos .Where(up => up.Numero >= 100 && up.Numero <= 200) .ToList();

🔧 Configuración de Base de Datos

🗄️ Configuración de Tabla

  • Tabla: ULTIMO_PEDIDO
  • Clave Primaria: NUMERO
  • Esquema: Maestro

🔑 Restricciones

  • Numero: Clave primaria, valor requerido
  • Tipo: double (número de punto flotante)
  • Unicidad: Valor único en la tabla

🔗 Integración con Otros Componentes

📚 Componentes Relacionados

  • Back.API: Controladores de pedidos
  • Back.Application: Servicios de pedidos
  • Back.Domain: DTOs de pedidos
  • Common.Constants: Validaciones de pedidos

🎯 Casos de Uso

  • Gestión de Pedidos: Control de numeración
  • Comandas: Numeración de comandas
  • Sincronización: Control de concurrencia
  • Auditoría: Trazabilidad
  • Reportes: Análisis de pedidos
  • Backup: Respaldo de pedidos