public async Task <bool> RemoveCharacter(Guid CharacterId) { using (var uow = UnitOfWorkProvider.Create()) { var character = await _characterService.GetAsync(CharacterId, withIncludes : false); if (character == null) { return(false); } var gposts = await _groupPostService.ListGroupPostsAsync(new GroupPostFilterDto()); foreach (var gp in gposts.Items) { if (gp.CharacterId == CharacterId) { _groupPostService.Delete(gp.Id); } } var acc = await _accountService.GetAsync(CharacterId); acc.Roles = acc.Roles.Replace(",HasCharacter", ""); await _accountService.Update(acc); _characterService.Delete(CharacterId); await uow.Commit(); return(true); } }
public async Task <QueryResultDto <GroupPostDto, GroupPostFilterDto> > GetGroupPostsAsync(Guid id) { using (UnitOfWorkProvider.Create()) { var posts = await _groupPostService.ListGroupPostsAsync(new GroupPostFilterDto { GroupId = id, PageSize = 20, SortAscending = true, SortCriteria = "Timestamp" }); return(posts); } }