Exemplo n.º 1
0
        public async Task <ActionResult <MeetingDTO> > GetMeeting(int id)
        {
            var spec    = new MeetingsWithTypesSpecification(id);
            var meeting = await _meetingRepo.GetEntityWithSpec(spec);

            if (meeting is null)
            {
                return(NotFound(new ApiResponse(404)));
            }

            return(_mapper.Map <Meeting, MeetingDTO>(meeting));
        }
Exemplo n.º 2
0
        public async Task <ActionResult <Pagination <MeetingDTO> > > GetMeetings([FromQuery] MeetingSpecParams meetingParams)
        {
            var spec = new MeetingsWithTypesSpecification(meetingParams);

            var countSpec = new MeetingWithFilterCountSpecification(meetingParams);

            var totalItems = await _meetingRepo.CountAsync(countSpec);

            var meetings = await _meetingRepo.ListAsync(spec);

            var data = _mapper.Map <IReadOnlyList <Meeting>, IReadOnlyList <MeetingDTO> >(meetings);

            return(Ok(new Pagination <MeetingDTO>(meetingParams.PageIndex, meetingParams.PageSize, totalItems, data)));
        }