using System; using System.Collections.Generic; using Volo.Abp.Domain.Entities.Auditing; namespace Kurs.Notifications.Entities; public class NotificationRule : FullAuditedEntity { public required string NotificationType { get; set; } /// /// Alıcı Tipi: User, Role, Organization, All, Custom /// User ise RecipientId UserId olacak /// Role ise RecipientId RoleId olacak /// Organization ise RecipientId OrganizationUnitId olacak, o birimdeki herkese bildirim gider /// All ise RecipientId'ye bakılmaz tüm kullanıcılara bildirim gider /// public required string RecipientType { get; set; } public string? RecipientId { get; set; } //UserName, RoleName, OrganizationUnitCode public required string Channel { get; set; } public bool IsActive { get; set; } public bool IsFixed { get; set; } public bool IsCustomized { get; set; } public virtual ICollection Notifications { get; set; } = []; }