using System; using System.Collections.Generic; using System.Threading.Tasks; using Volo.Abp.Application.Dtos; using Volo.Abp.Application.Services; namespace Sozsoft.Notifications.NotificationRules; public interface INotificationRuleAppService : ICrudAppService< NotificationRuleDto, Guid, PagedAndSortedResultRequestDto, CreateUpdateNotificationRuleDto> { /// /// Kullanicinin kurallarina konu olan bildirim tipleri. Tercih ekrani satirlari bu tiplerden /// kurar; eslesme ad uzerinden degil Id uzerinden yapilir. /// Task> GetMyNotificationTypesAsync(); Task> GetMyNotificationRules(); /// /// Elle bildirim diyaloguna kuralin ozetini verir. Parametre adi id olamaz: ABP o adi /// gorunce ucu {id} rotasina tasir ve cagri CRUD'un Get ucuna duserdi. /// Task GetRuleSummaryAsync(Guid ruleId); /// Kullanicinin bir tur/kanal icin kendi tercihini yazar. Task PostMyNotificationRule(CreateUpdateNotificationRuleDto Input); /// Bir turdeki kullanici tercihlerini siler; kural yeniden varsayilana doner. Task DeleteMyNotificationRules(Guid NotificationTypeId); }