Ejemplo n.º 1
0
        public async Task <PaginationResponseDto <GetUserSessionsQueryResponseDto> > Handle(GetUserSessionsQuery request, CancellationToken cancellationToken)
        {
            Guid userId = _currentUser.UserId;

            var(records, total) = await _unitOfWork.Session.FilterSessions(userId, request.SessionDate, request.CurrentPage, _pagination.Take);

            var finalDto = new PaginationResponseDto <GetUserSessionsQueryResponseDto>
            {
                Records      = records?.Adapt <IEnumerable <GetUserSessionsQueryResponseDto> >(),
                TotalRecords = total,
                TotalPages   = (int)Math.Ceiling((double)total / _pagination.Take)
            };

            return(finalDto);
        }
Ejemplo n.º 2
0
        public async Task <PaginationResponseDto <ProcessSearchResponseDto> > Handle(SearchSessionProcessesQuery request, CancellationToken cancellationToken)
        {
            //get paginated records and total nubmer of records
            var(records, count) = await _unitOfWork.Process.GetProcessesForUserSession(_currentUser.UserId, request.CurrentPage, _pagination.Take, request.SearchCriteria, request.SessionId);

            //map
            var dto = new PaginationResponseDto <ProcessSearchResponseDto>
            {
                TotalRecords = count,
                Records      = records?.Adapt <IEnumerable <ProcessSearchResponseDto> >(),
                TotalPages   = (int)Math.Ceiling((double)count / _pagination.Take)
            };

            //success
            return(dto);
        }
Ejemplo n.º 3
0
        public async Task <PaginationResponseDto <AppSearchItemResponseDto> > Handle(SearchAppsPeriodQuery request, CancellationToken cancellationToken)
        {
            DateTime endOfPeriod   = _date.Now.Date;
            DateTime startOfPeriod = endOfPeriod.AddDays(_periodOptions.DaysBack);

            //get paginated records and total nubmer of records
            var(records, count) = await _unitOfWork.Applications.GetAppsForPeriod(startOfPeriod, endOfPeriod, request.CurrentPage, _pagination.Take, request.SearchCriteria);

            //map
            var dto = new PaginationResponseDto <AppSearchItemResponseDto>
            {
                TotalRecords = count,
                Records      = records?.Adapt <IEnumerable <AppSearchItemResponseDto> >(),
                TotalPages   = (int)Math.Ceiling((double)count / _pagination.Take)
            };

            //success
            return(dto);
        }
Ejemplo n.º 4
0
        public async Task <PaginationResponseDto <AppSearchItemResponseDto> > Handle(SearchAppsUserQuery request, CancellationToken cancellationToken)
        {
            //Get total number of sessions
            var totalNumberOfSessions = await _unitOfWork.Session.GetNumberOfSessinsForUser(_currentUser.UserId);

            //get paginated records and total nubmer of records
            var(records, count) = await _unitOfWork.Applications.GetAppsForUser(_currentUser.UserId, request.CurrentPage, _pagination.Take, request.SearchCriteria);

            //map
            var dto = new PaginationResponseDto <AppSearchItemResponseDto>
            {
                TotalRecords = count,
                Records      = records?.Adapt <IEnumerable <AppSearchItemResponseDto> >(),
                TotalPages   = (int)Math.Ceiling((double)count / _pagination.Take)
            };

            //success
            return(dto);
        }