Esempio n. 1
0
        public async Task <IEnumerable <PostViewModel> > GetPostByUserId(GetPostByUserRequest request)
        {
            try
            {
                var filter      = Builders <Post> .Filter;
                var match       = filter.Eq(PostConstant.AuthorId, request.UserId) & filter.Eq(Constants.Status, ItemStatus.Active);
                var currentuser = Feature.CurrentUser(httpContextAccessor, userRepository);

                var author = await userRepository.GetByIdAsync(ObjectId.Parse(request.UserId));

                var data = (await postRepository.FindListAsync(match)).OrderByDescending(x => x.CreatedDate).ToList();
                if (request.Skip.HasValue && request.Count.HasValue)
                {
                    data = data.Skip(request.Skip.Value).Take(request.Count.Value).ToList();
                }

                var response = mapper.Map <IEnumerable <PostViewModel> >(data);
                return(response);
            }
            catch (Exception)
            {
                throw new Exception(UserHasNoPost);
            }
        }
Esempio n. 2
0
        public async Task <IActionResult> GetByUserId(GetPostByUserRequest request)
        {
            var data = await postService.GetPostByUserId(request);

            return(Ok(new ApiOkResponse(data)));
        }