public async Task <IActionResult> MessageListAsync([FromBody] MessageListParams messageList) { try { var senderUser = await userProvider.GetCurrentUser(); var contactUser = await userProvider.GetUserWithUserNameAsync(messageList.ContactUserUserName); if (contactUser == null) { return(NotFound(Response <string> .GetError(null, $"There is no user with name: '{messageList.ContactUserUserName}'"))); } var data = await messageService.GetMessageInfoListAsync(messageList, senderUser, contactUser); if (data != null) { return(Ok(Response <List <MessageInfoResponse> > .GetSuccess(data))); } else { return(BadRequest(Response <string> .GetError(null, "Message list could not get"))); } } catch (Exception ex) { logger.LogError(ex, ex.Message); return(StatusCode(500, Response <string> .GetError(null, "An error occured"))); } }
public async Task <List <MessageInfoResponse> > GetMessageInfoListAsync(MessageListParams messageList, User senderUser, User contactUser) { var messageInfoResponseList = new List <MessageInfoResponse>(); var findResults = await GetMessageInfosFromMongoAsync(messageList.PageNumber, senderUser, contactUser); foreach (var item in findResults) { messageInfoResponseList.Add(GetResponseMessageInfo(item)); } return(messageInfoResponseList); }