import 'package:core/models/abp.dto.dart'; import 'package:core/services/rest.service.dart'; import 'package:core/services/service.base.dart'; import '../models/notification.dart'; class NotificationService extends ServiceBase { RestService get _restService => find(); Future sendAsyncByInput(NotificationSendDto input) { return _restService.post('/api/notifications', data: input, ); } Future subscribe(String name) { return _restService.post('/api/notifications/my-subscribes', data: { 'name': name, }, ); } Future unSubscribe(String name) { return _restService.delete('/api/notifications/my-subscribes?name=$name'); } Future> getMySubscribedListAsync() { return _restService.get('/api/notifications/my-subscribes/all', ).then((res) { return ListResultDto( items: (res.data['items'] as List).map((e) => UserSubscreNotificationDto.fromJson(e)).toList(), ); }); } Future> getAssignableNotifiersAsync() { return _restService.get('/api/notifications/assignables', ).then((res) { return ListResultDto( items: (res.data['items'] as List).map((e) => NotificationGroupDto.fromJson(e)).toList(), ); }); } Future> getAssignableTemplatesAsync() { return _restService.get('/api/notifications/assignable-templates', ).then((res) => ListResultDto( items: (res.data['items'] as List) .map((e) => NotificationTemplateDto.fromJson(e)).toList() ), ); } }