コード例 #1
0
        public async Task <ApiResult> GetHazardControlsAsync(HazardControlFilter hazardControlFilter)
        {
            var hazardControlsPagedResult = await hazardControlRepository.GetHazardControlsAsync(hazardControlFilter);

            var hazardControlsDtoPagedResult = new PagedResult <HazardControlDto>();

            Mapper.Map(hazardControlsPagedResult, hazardControlsDtoPagedResult);
            return(new ApiResult(MessageType.Success, hazardControlsDtoPagedResult));
        }
コード例 #2
0
        private Expression <Func <HazardControl, bool> > GetHazardControlExpression(HazardControlFilter filter)
        {
            Expression <Func <HazardControl, bool> > expression = null;

            if (filter.Id > 0)
            {
                expression = x => x.Id == filter.Id;
            }
            return(expression);
        }
コード例 #3
0
        public async Task <PagedResult <HazardControl> > GetHazardControlsAsync(HazardControlFilter filter)
        {
            filter = filter ?? new HazardControlFilter();

            var result = unitOfWork.Query(GetHazardControlExpression(filter), filter.PropertiesToInclude);

            List <HazardControl> list = await result.OrderBy(filter.OrderBy)
                                        .Skip((filter.Page - 1) * filter.Skip).Take(filter.Take)
                                        .ToListAsync();

            var pagedResult = new PagedResult <HazardControl>
            {
                Data     = list,
                PageInfo = await GetPageInfo(x => x.Id, filter, GetHazardControlExpression(filter))
            };

            return(pagedResult);
        }
コード例 #4
0
        public async Task <IHttpActionResult> GetHazardControls(HazardControlFilter filter)
        {
            var hazardControls = await hazardControlManager.GetHazardControlsAsync(filter);

            return(Ok(hazardControls));
        }