using System; namespace FrameworkDAL.DTO.SchedulerTaskGenerator { /// /// Message sent to RabbitMQ worker /// This is a TRANSPORT DTO (not DB DTO) /// public class SchedulerTaskMessage { public int JobId { get; set; } public int SchedulerId { get; set; } public string JobName { get; set; } = string.Empty; public string CronExpression { get; set; } = string.Empty; public string SchedulerName { get; set; } = string.Empty; public string LastRunOn { get; set; } = string.Empty; public int TenantId { get; set; } /// /// Factory mapper from SchedulerTaskDTO /// public static SchedulerTaskMessage FromDTO(SchedulerTaskDTO dto) { if (dto == null) throw new ArgumentNullException(nameof(dto)); return new SchedulerTaskMessage { JobId = dto.JobId, SchedulerId = dto.SchedulerId, JobName = dto.JobName, CronExpression = dto.CronExpression, SchedulerName = dto.SchedulerName, LastRunOn = dto.LastRunOn?.ToString("o") ?? string.Empty, TenantId = dto.TenantId }; } } }