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)); }
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); }
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); }
public async Task <IHttpActionResult> GetHazardControls(HazardControlFilter filter) { var hazardControls = await hazardControlManager.GetHazardControlsAsync(filter); return(Ok(hazardControls)); }