public ApiResponse Index([FromQuery] Query query, [FromHeader] Header header) { if (query.Pagination) { var userRolesRepo = this.userRoleApplication.GetList(query.Page, query.PerPage); int count = this.userRoleApplication.Count(query.Search); decimal pageInCount = ((decimal)count) / query.PerPage; PaginationModel paginate = (new PaginationModel() { TotalPage = (int)Math.Ceiling(pageInCount), Page = query.Page, PerPage = query.PerPage, Data = UserRoleItem.MapRepo(userRolesRepo), Total = count }); return(new ApiResponsePagination(HttpStatusCode.OK, paginate)); } else { var userRolesRepo = this.userRoleApplication.GetList(query.Page, query.PerPage); return(new ApiResponseDataList(HttpStatusCode.OK, userRolesRepo, userRolesRepo.Count)); } }