Exemple #1
0
        public async Task <IActionResult> GetMessagesforUser(int userId,
                                                             [FromQuery] MessageParams messageParams)
        {
            if (userId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value))
            {
                return(Unauthorized());
            }

            messageParams.UserId = userId;

            var messagesfromRepo = await _repo.GetMessagesForUser(messageParams);

            var messages = _mapper.Map <IEnumerable <MessageToReturnDto> >(messagesfromRepo);

            Response.AddPagination(messagesfromRepo.CurrentPage,
                                   messagesfromRepo.PageSize, messagesfromRepo.TotalPages,
                                   messagesfromRepo.TotalCount);

            return(Ok(messages));
        }