29ac56006d
- Add pipeline registry with JSON-based configuration and hot-reload support - Implement manual sync request feature with API, client UI, and database - Improve ConfigManager: connection string dropdown in pipeline editor, step delete/reorder functionality, and fix JSON parsing for ConnectionStrings
60 lines
1.9 KiB
C#
60 lines
1.9 KiB
C#
namespace JdeScoping.Domain.Models;
|
|
|
|
/// <summary>
|
|
/// Represents a manually requested data sync operation.
|
|
/// </summary>
|
|
public class ManualSyncRequest
|
|
{
|
|
/// <summary>
|
|
/// Gets or sets the unique identifier.
|
|
/// </summary>
|
|
public int Id { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the name of the ETL pipeline to sync.
|
|
/// </summary>
|
|
public string PipelineName { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// Gets or sets the type of sync (mass, daily, hourly).
|
|
/// </summary>
|
|
public string SyncType { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// Gets or sets the UTC timestamp when the request was created.
|
|
/// </summary>
|
|
public DateTime RequestDT { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the username of the user who created the request.
|
|
/// </summary>
|
|
public string RequestedBy { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// Gets or sets the UTC timestamp when the sync completed, or null if pending.
|
|
/// </summary>
|
|
public DateTime? CompletedDT { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the UTC timestamp when the request was cancelled, or null if not cancelled.
|
|
/// </summary>
|
|
public DateTime? CancelDT { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the username of the user who cancelled the request, or null.
|
|
/// </summary>
|
|
public string? CancelledBy { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the row version for optimistic concurrency.
|
|
/// </summary>
|
|
public byte[] RowVersion { get; set; } = Array.Empty<byte>();
|
|
|
|
/// <summary>
|
|
/// Gets the derived status based on CompletedDT and CancelDT.
|
|
/// </summary>
|
|
public string Status => CancelDT.HasValue ? "Cancelled"
|
|
: CompletedDT.HasValue ? "Completed"
|
|
: "Pending";
|
|
}
|