namespace IceImportDAL.DTO.IceImportPipeline; public class IceImportRowCommitResultDTO { public Guid CorrelationKey { get; set; } public int RowNumber { get; set; } public string EntityCode { get; set; } = string.Empty; public bool Success { get; set; } public string? ErrorMessage { get; set; } public int? TargetEntityId { get; set; } // Service URL + payload JSON for the call that produced this outcome — see // PersistResultDTO.PostData. Null for rows that never reached a service call (skipped, no // adapter registered, embedded child, or a dynamic-SQL UPDATE that isn't a service call). public string? PostData { get; set; } } // Result of IIceImportPipeline.CommitAsync — returned directly to the caller in Phase 1 // (no ICEIMPORT.TICEIMPORTRUN persistence yet; that lands in Phase 2). public class IceImportCommitResultDTO { public int TotalRows { get; set; } public int SuccessCount { get; set; } public int FailedCount { get; set; } public int SkippedCount { get; set; } public List RowResults { get; set; } = new(); public List ValidationErrors { get; set; } = new(); }