namespace ComplianceDAL.DTO.Analytics; public class ComplianceAlertDTO { public int AlertId { get; set; } public string AlertType { get; set; } = string.Empty; public string GSTIN { get; set; } = string.Empty; public string? ReturnPeriod { get; set; } public int? ArtifactId { get; set; } public string AlertMessage { get; set; } = string.Empty; public string Severity { get; set; } = string.Empty; public bool IsActive { get; set; } public int? DismissedById { get; set; } public DateTime? DismissedOn { get; set; } public DateTime CreatedOn { get; set; } } public class DismissAlertRequestDTO { public int AlertId { get; set; } } public class AlertConfigDTO { public int AlertConfigId { get; set; } public string GSTIN { get; set; } = string.Empty; public int FilingDeadlineDaysBefore { get; set; } = 3; public int EWBExpiryHoursBefore { get; set; } = 24; public int IRNPendingDaysWindow { get; set; } = 7; public int SubmissionFailedHours { get; set; } = 24; public bool EnableFilingAlerts { get; set; } = true; public bool EnableReconAlerts { get; set; } = true; public bool EnableEWBAlerts { get; set; } = true; public bool EnableIRNAlerts { get; set; } = true; } public class AlertCheckEvent { public string ClientId { get; set; } = string.Empty; public string DatabaseName { get; set; } = string.Empty; public int UserId { get; set; } public DateTime CheckedAt { get; set; } }