using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using WebVentaCoche.Enums;
using WebVentaCoche.ViewModels;

namespace WebVentaCoche.Models
{
    public class Order
    {
        [Key]
        public int Id { get; set; } 

        [Required]
        public string UserId { get; set; } 

        [ForeignKey("UserId")]
        public virtual User User { get; set; } 

        [Required]
        public DateTime OrderDate { get; set; } // Fecha y hora en que se realizó la orden

        public DateTime? ShippedDate { get; set; } // Fecha de envío (opcional)

        [Required]
        public decimal TotalAmount { get; set; } // Monto total de la orden

        [Required]
        public OrderStatus Status { get; set; } // Estado de la orden (Pendiente, Enviado, Completado, Cancelado)

        [Required]
        public string ShippingAddress { get; set; } // Dirección de envío del pedido

        public virtual List<OrderDetail> OrderDetails { get; set; } // Relación con los detalles de la orden
    }
}
