namespace MMDAL.DTO.Production { public class ProductionDetailSaveDTO { public int ProductionDetailId { get; set; } public int ProductionId { get; set; } public short SlNo { get; set; } public int LinkTypeId { get; set; } = -1; public int ProcessGroupId { get; set; } = -1; public int DocumentDetailId { get; set; } = -1; // TMMDETAIL public int IndentDetailId { get; set; } = -1; // work order line public int ItemId { get; set; } = -1; public int SkuId { get; set; } = -1; public int UomId { get; set; } = -1; public int AllocationId { get; set; } = -1; // Quantities public decimal Quantity { get; set; } // planned quantity public decimal ProductionQuantity { get; set; } // total produced public decimal GoodQuantity { get; set; } public decimal RejectedQuantity { get; set; } public decimal ReworkQuantity { get; set; } public decimal OtherQuantity { get; set; } public decimal ExcessShortageQuantity { get; set; } public decimal OutputWeight { get; set; } // Stock posting // 0=None, 1=StockPost(outward only), 2=Both(inward+outward), 3=FineTune public byte StockPostType { get; set; } // Meter/counter readings (for textile/process industries) public decimal ReadingFrom { get; set; } public decimal ReadingTo { get; set; } // Time in minutes from shift start (stored as SMALLINT minutes offset) public short StartTime { get; set; } public short EndTime { get; set; } public DateTime StartDate { get; set; } = DateTime.UtcNow; public DateTime EndDate { get; set; } = DateTime.UtcNow; public int ProductionPlanDetailId { get; set; } = -1; public decimal ProcessCost { get; set; } public decimal MaterialCost { get; set; } public decimal SkuWeight { get; set; } public decimal MaterialInHouseProcessCost { get; set; } public decimal MaterialSubContractProcessCost { get; set; } public decimal MaterialProcessCost { get; set; } public decimal MaterialChargesCost { get; set; } public decimal MaterialRevenue { get; set; } public decimal MaterialTotalCost { get; set; } public decimal InHouseProcessCost { get; set; } public decimal SubContractProcessCost { get; set; } public decimal ChargesCost { get; set; } public decimal Revenue { get; set; } public decimal TotalCost { get; set; } public List Stoppages { get; set; } = []; } }