public async Task <IActionResult> GetUserChatsAsync([FromQuery] GetPrivateChatsQueryDto query) { query.UserId = User.GetUserId(); var chats = await _privateChatService.GetUserPrivateChatsViewAsync(query); return(Ok(chats)); }
public async Task <IImmutableList <GetPrivateChatViewDto> > GetUserPrivateChatsViewAsync(GetPrivateChatsQueryDto query, CancellationToken ct = default) { _logger.LogInformation("Get user private chats by user id {UserId}", query.UserId); GetPrivateChatsQuery dbQuery = _mapper.Map <GetPrivateChatsQuery>(query); ICollection <PrivateChatView> chats = await _unitOfWork.PrivateChatRepository.GetPrivateChatsAsync(dbQuery, ct); return(_mapper.Map <ICollection <GetPrivateChatViewDto> >(chats).ToImmutableList()); }