コード例 #1
0
        public async Task <IActionResult> GetUsers([FromQuery] UserParams userParams)
        {
            var currentUserId = int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value); //--> retourner ID de User connecté
            var userFromRepo  = await _repo.GetUser(currentUserId, true);                   //--> Retourner tous les infos de user connecté

            userParams.UserId = currentUserId;

            //--> Tester si genre exist dans user
            if (string.IsNullOrEmpty(userParams.Gender))
            {
                userParams.Gender = userFromRepo.Geder == "homme" ? "femme" : "homme";
            }

            var users = await _repo.GetUsers(userParams);

            //--> Faire la laison avec DTO
            var usersToReturn = _mapper.Map <IEnumerable <UserForListDto> >(users);

            Response.AddPagination(users.CurrentPage, users.PageSize, users.TotalCount, users.TotalPages);
            return(Ok(usersToReturn));
        }