Ejemplo n.º 1
0
        public async Task <IEnumerable <PostViewModel> > GetPostTimelineAsync(BaseGetAllRequest request)
        {
            var currentUser = Feature.CurrentUser(httpContextAccessor, userRepository);

            var findFilter = Builders <Follow> .Filter.Eq(FromId, currentUser.OId);

            var listFollow = await followRepository.FindListAsync(findFilter);

            var listAuthor = new List <string>();

            listAuthor.Add(currentUser.Id.ToString());
            foreach (var item in listFollow)
            {
                listAuthor.Add(item.ToId);
            }

            var result = new List <Post>();

            foreach (var author in listAuthor)
            {
                var builder        = Builders <Post> .Filter;
                var postFindFilter = builder.Eq(AuthorId, author) & builder.Eq(Status, ItemStatus.Active);
                result.AddRange(await postRepository.FindListAsync(postFindFilter));
            }

            if (request.Skip.HasValue && request.Count.HasValue)
            {
                result = result.Skip(request.Skip.Value).Take(request.Count.Value).OrderByDescending(x => x.CreatedDate).ToList();
            }

            var data = mapper.Map <IEnumerable <PostViewModel> >(result);

            return(data);
        }
Ejemplo n.º 2
0
        public IEnumerable <LevelViewModel> GetAllLevel(BaseGetAllRequest request)
        {
            IQueryable <Level> result = levelRepository.GetAll().Where(x => x.IsActive == true && x.Point >= 0);

            if (request.Skip.HasValue && request.Count.HasValue)
            {
                result = result.Skip(request.Skip.Value).Take(request.Count.Value);
            }
            return(mapper.Map <IEnumerable <LevelViewModel> >(result));
        }
Ejemplo n.º 3
0
        public IEnumerable <ReportViewModel> GetAll(BaseGetAllRequest request)
        {
            IQueryable <Report> data = reportRepository.GetAll();

            if (request.Count.HasValue && request.Skip.HasValue)
            {
                data = data.Skip(request.Skip.Value).Take(request.Count.Value);
            }
            return(mapper.Map <IEnumerable <ReportViewModel> >(data));
        }
Ejemplo n.º 4
0
        public IEnumerable <ViolenceWordViewModel> GetAll(BaseGetAllRequest request)
        {
            var data = violenceWordRepository.GetAll();

            if (request.Skip.HasValue && request.Count.HasValue)
            {
                data = data.Skip(request.Skip.Value).Take(request.Count.Value);
            }
            return(mapper.Map <IEnumerable <ViolenceWordViewModel> >(data));
        }
Ejemplo n.º 5
0
        public IEnumerable <Field> GetAll(BaseGetAllRequest request)
        {
            var data = fieldRepository.GetAll().Where(x => x.Status == ItemStatus.Active);

            if (request.Count.HasValue && request.Skip.HasValue)
            {
                data = data.Skip(request.Skip.Value).Take(request.Count.Value);
            }
            return(data);
        }
Ejemplo n.º 6
0
        public List <FieldGroupViewModel> GetAllFieldGroup(BaseGetAllRequest request)
        {
            var data = fieldGroupRepository.GetAll();

            if (request.Skip.HasValue && request.Count.HasValue)
            {
                data = data.Skip(request.Skip.Value).Take(request.Count.Value);
            }
            return(mapper.Map <List <FieldGroupViewModel> >(data));
        }
Ejemplo n.º 7
0
        public IEnumerable <Account> GetAllAccount(BaseGetAllRequest request)
        {
            var data = accountRepository.GetAll();

            if (request.Skip.HasValue & request.Count.HasValue)
            {
                data = data.Skip(request.Skip.Value).Take(request.Count.Value);
            }
            return(data);
        }
Ejemplo n.º 8
0
        public IEnumerable <User> GetAllUser(BaseGetAllRequest request)
        {
            var data = userRepository.GetAll();

            if (request.Count.HasValue && request.Skip.HasValue)
            {
                data = data.Skip(request.Skip.Value).Take(request.Count.Value);
            }

            return(data);
        }
Ejemplo n.º 9
0
        public IEnumerable <SearchHistoryViewModel> GetHistory(BaseGetAllRequest request)
        {
            var a  = searchHistoryRepository.GetAll().Where(x => x.HistoryType == HistoryType.Post);
            var vm = mapper.Map <IEnumerable <SearchHistoryViewModel> >(a);

            vm = vm.GroupBy(x => x.PostValue.ContentFilter)
                 .Select(x => x.OrderByDescending(y => y.CreatedDate).FirstOrDefault())
                 .OrderByDescending(x => x.CreatedDate);

            if (request.Skip.HasValue && request.Count.HasValue)
            {
                vm = vm.Skip(request.Skip.Value).Take(request.Count.Value);
            }
            return(vm);
        }
Ejemplo n.º 10
0
        public IEnumerable <UserNearbyViewModel> GetNearbyUser(BaseGetAllRequest baseGetAllRequest)
        {
            var currentUser     = Feature.CurrentUser(_httpContextAccessor, userRepository);
            var currentLocation = new Location()
            {
                Latitude  = Feature.ParseDouble(currentUser.Address.Latitude),
                Longitude = Feature.ParseDouble(currentUser.Address.Longtitude)
            };
            var userNearbys = new List <UserNearbyViewModel>();

            foreach (var x in userRepository.GetAll())
            {
                var a = new UserNearbyViewModel
                {
                    UserId   = x.OId,
                    FullName = $"{x.FirstName} {x.LastName}",
                    Avatar   = x.AvatarHash,
                    Location = new Location()
                    {
                        Longitude = Feature.ParseDouble(x.Address.Longtitude),
                        Latitude  = Feature.ParseDouble(x.Address.Latitude)
                    },
                    Distance = 0.0
                };
                a.Distance = Math.Round((Feature.CalculateDistance(currentLocation, a.Location) * 1.0 / 1000), 2);
                userNearbys.Add(a);
            }


            if (baseGetAllRequest.Skip.HasValue && baseGetAllRequest.Count.HasValue)
            {
                userNearbys = userNearbys.Skip(baseGetAllRequest.Skip.Value).Take(baseGetAllRequest.Count.Value).ToList();
            }

            return(userNearbys);
        }
Ejemplo n.º 11
0
        public async Task <IActionResult> GetCurrentUserNoftication([FromQuery] BaseGetAllRequest request)
        {
            var data = await nofticationService.GetCurrentUserNotificationList(request);

            return(Ok(new ApiOkResponse(data)));
        }
        public IActionResult GetAll([FromQuery] BaseGetAllRequest request)
        {
            var data = reportReasonService.GetAll(request);

            return(Ok(new ApiOkResponse(data)));
        }
Ejemplo n.º 13
0
        public async Task <IEnumerable <NotificationViewModel> > GetCurrentUserNotificationList(BaseGetAllRequest request)
        {
            var currentUser = Feature.CurrentUser(contextAccessor, userRepository);
            var builder     = Builders <Noftication> .Filter;
            var filter      = builder.Eq("receiver_id", currentUser.OId)
                              & (builder.Ne("author_id", currentUser.OId) | builder.Regex("content", "quản trị viên") | builder.Regex("content", "vi phạm quy định"))
                              & builder.Eq("status", ItemStatus.Active);

            var notifications = (await nofticationRepository.FindListAsync(filter)).AsEnumerable();

            // notifications = notifications.Where(x => x.ReceiverId == currentUser.OId && x.AuthorId != currentUser.OId);
            if (request.Skip.HasValue && request.Count.HasValue)
            {
                notifications = notifications.Skip(request.Skip.Value).Take(request.Count.Value);
            }

            var result = mapper.Map <List <NotificationViewModel> >(notifications);

            return(result.OrderByDescending(x => x.ModifiedDate));
        }
Ejemplo n.º 14
0
        public IActionResult GetHistory([FromQuery] BaseGetAllRequest request)
        {
            var data = userService.GetHistory(request);

            return(Ok(new ApiOkResponse(data)));
        }
Ejemplo n.º 15
0
        public IActionResult GetAll(BaseGetAllRequest request)
        {
            var data = reportServices.GetAll(request);

            return(Ok(new ApiOkResponse(data)));
        }
Ejemplo n.º 16
0
        public IActionResult GetAllFieldGroup(BaseGetAllRequest request)
        {
            var data = fieldService.GetAllFieldGroup(request);

            return(Ok(new ApiOkResponse(data)));
        }
Ejemplo n.º 17
0
        public async Task <IActionResult> GetPostTimeline(BaseGetAllRequest request)
        {
            var data = await postService.GetPostTimelineAsync(request);

            return(Ok(new ApiOkResponse(data)));
        }
        public IActionResult Get([FromQuery] BaseGetAllRequest request)
        {
            var data = violenceWordService.GetAll(request);

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