using System;
using System.Collections.Generic;
using System.Threading.Tasks;
///
/// 公告模块。
///
public sealed class BriskAnnouncementsModule
: BriskModuleBase
{
///
/// 获取公告列表。
///
public async Task> GetListAsync()
{
return await ExecuteAsync(async context =>
{
var data = await context.HttpClient.GetRawDataAsync("/announcements", null, true);
return (IReadOnlyList)BriskModelMapper.ToAnnouncementItems(data);
});
}
///
/// 标记指定公告为已读。
///
public async Task MarkReadAsync(long id)
{
RequirePositive(id, nameof(id), "Announcement id must be greater than 0.");
await ExecuteAsync(async context =>
{
await context.HttpClient.PostJsonRawAsync($"/announcements/{id}/read", new Dictionary(), true);
});
}
}