Add GRN batch and serial tracking

This commit is contained in:
2026-10-06 13:26:17 +05:30
parent d578cbad20
commit a8725bc473
9 changed files with 427 additions and 49 deletions
+14 -2
View File
@@ -8,14 +8,26 @@ namespace Distribution.Models
[ForeignKey("FK_GoodsReceiptId")]
public GoodsReceipt GoodsReceipt { get; set; }
public Guid FK_PurchaseOrderItemId { get; set; }
/// <summary>Null for a direct receipt line (no purchase order); FK_ItemId is set instead.</summary>
public Guid? FK_PurchaseOrderItemId { get; set; }
[ForeignKey("FK_PurchaseOrderItemId")]
public PurchaseOrderItem PurchaseOrderItem { get; set; }
public PurchaseOrderItem? PurchaseOrderItem { get; set; }
/// <summary>Set for direct receipt lines. PO-based lines resolve the item through PurchaseOrderItem.</summary>
public Guid? FK_ItemId { get; set; }
[ForeignKey("FK_ItemId")]
public Item? Item { get; set; }
/// <summary>Added to warehouse stock.</summary>
public int AcceptedQuantity { get; set; }
/// <summary>Damaged/short at receipt, not added to stock.</summary>
public int RejectedQuantity { get; set; } = 0;
/// <summary>Populated when the received item tracks batches and/or expiry dates.</summary>
public ICollection<GoodsReceiptItemBatch> Batches { get; set; } = [];
/// <summary>Populated when the received item tracks serial numbers.</summary>
public ICollection<GoodsReceiptItemSerial> Serials { get; set; } = [];
}
}