namespace MMDAL.DTO.Packing { public class PackingSaveDTO { public int PackingId { get; set; } public int OUId { get; set; } = -1; public int PeriodId { get; set; } = -1; public int BizTransactionTypeId { get; set; } = -1; public string PackingNumber { get; set; } = string.Empty; public DateTime PackingDate { get; set; } = DateTime.UtcNow; public string ReferenceNumber { get; set; } = string.Empty; public DateTime ReferenceDate { get; set; } = DateTime.UtcNow; public int ShiftId { get; set; } = -1; public int StoreId { get; set; } = -1; public int ToStoreId { get; set; } = -1; // 0=Carton, 1=InnerPack (client-configurable — see production_packing.html "Pack Level") public byte PackType { get; set; } public int PackId { get; set; } = -1; // 0=FG, 1=SemiFG, 2=RM (per screen's "Material Type" field) public byte MaterialType { get; set; } public int ItemId { get; set; } = -1; public int SkuId { get; set; } = -1; public int PackedById { get; set; } = -1; public int LotId { get; set; } = -1; public decimal UnitQuantity { get; set; } public int UnitUomId { get; set; } = -1; public decimal UnitsPerPack { get; set; } public decimal NumberOfPacks { get; set; } public decimal GrossWeightPerPack { get; set; } public decimal NetWeightPerPack { get; set; } public decimal TotalGrossWeight { get; set; } public decimal TotalNetWeight { get; set; } public decimal TareWeight { get; set; } public int PackNumberId { get; set; } = -1; public string PackNumber { get; set; } = string.Empty; public string PackDimension { get; set; } = string.Empty; public string Remarks { get; set; } = string.Empty; public byte Status { get; set; } public short Version { get; set; } public int CreatedById { get; set; } = -1; public DateTime CreatedOn { get; set; } public int ModifiedById { get; set; } = -1; public DateTime ModifiedOn { get; set; } public List Details { get; set; } = []; } }