using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace StockMaster.Models { [Table("purchase_order", Schema = "stock_management")] public class PurchaseOrder { [Key] [Column("po_id")] public int PoId { get; set; } [Column("order_date")] public DateTime OrderDate { get; set; } = DateTime.Now.Date; [Required(ErrorMessage = "Expected delivery date is required")] [Column("expected_delivery_date")] public DateTime ExpectedDeliveryDate { get; set; } [Column("actual_delivery_date")] public DateTime? ActualDeliveryDate { get; set; } [Required(ErrorMessage = "Status is required")] [MaxLength(20)] [Column("status")] public string Status { get; set; } [Column("supplier_id")] public int? SupplierId { get; set; } [ForeignKey("SupplierId")] public Supplier Supplier { get; set; } [Required(ErrorMessage = "Warehouse is required")] [Column("warehouse_id")] public int WarehouseId { get; set; } [ForeignKey("WarehouseId")] public Warehouse Warehouse { get; set; } [Column("created_at")] public DateTime CreatedAt { get; set; } = DateTime.Now; public List PurchaseOrderItems { get; set; } } }