using LCU.Library.Internal.DocumentIngestorModels.Enums; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using LCU.Library.Internal.DocumentIngestorModels.Models.Pagination; namespace LCU.Library.Internal.DocumentIngestorModels.Models; public class BulkNotificationStatusRequest : IValidatableObject { public BulkNotificationStatusRequest() { } public BulkNotificationStatusRequest(Filter filter, NotificationStatusTypes notificationStatus, string reasonMessage) { Filter = filter; NotificationStatus = notificationStatus; ReasonMessage = reasonMessage; } public Filter Filter { get; set; } public NotificationStatusTypes NotificationStatus { get; set; } public string ReasonMessage { get; set; } = string.Empty; public IEnumerable Validate(ValidationContext validationContext) { if (Filter == null) { yield return new ValidationResult("Filter cannot be null."); } if (string.IsNullOrWhiteSpace(ReasonMessage)) { yield return new ValidationResult("Must provide a ReasonMessage explaining the reason for the update."); } } }