基于Json传递数据的Augularjs分页的spring后台代码

来源:互联网 发布:金角大王异步网络框架 编辑:程序博客网 时间:2024/06/08 18:35
@RequestMapping(value = "/shopsUsersAttendance", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
    public HttpEntity<PagedResources<ShopsUsersAttendance>> getAll(@RequestParam(value = "S_ID", required = true) Integer shopId,
                                                                   @RequestParam(value = "SU_ID", required = false) Integer staffId,
                                                                   @RequestParam(value = "MIN_SUA_START", required = false) Long minSuaStart,
                                                                   @RequestParam(value = "PAGE_INDEX", required = false) Integer pageIndex,
                                                                   @RequestParam(value = "PAGE_SIZE", required = false) Integer pageSize,
                                                                   PagedResourcesAssembler assembler) {
        if (minSuaStart == null) {
            minSuaStart = 0l;
        }
        ShopsUsers shopsUsers = this.springDataShopsUsers.getOne(staffId);
        if(pageIndex == 0 || pageSize == 0) {
            Page<ShopsUsersAttendance> shopsUsersAttendancePage = this.springDataShopsUsersAttendance.findBySuaSuIdAndSuaStartGreaterThanOrSuaSuIdAndSuaBossModifyStartGreaterThan(
                    staffId, minSuaStart, shopsUsers.getSuId(), minSuaStart, null);
            return new ResponseEntity<>(assembler.toResource(shopsUsersAttendancePage), HttpStatus.OK);
        }


        PageRequest pageRequest = new PageRequest(pageIndex - 1, pageSize, Sort.Direction.DESC, "suaId");
        Page<ShopsUsersAttendance> shopsUsersAttendancePage = this.springDataShopsUsersAttendance.findBySuaSuIdAndSuaStartGreaterThanOrSuaSuIdAndSuaBossModifyStartGreaterThan(
                staffId, minSuaStart, shopsUsers.getSuId(), minSuaStart, pageRequest);

        return new ResponseEntity<>(assembler.toResource(shopsUsersAttendancePage), HttpStatus.OK);

  }





@Repository
public interface SpringDataShopsUsersAttendance extends JpaRepository<ShopsUsersAttendance, Integer> {
    /**
     *   Spring Data JPA implements:
     */

    Page<ShopsUsersAttendance> findBySuaSuIdAndSuaStartGreaterThanOrSuaSuIdAndSuaBossModifyStartGreaterThan(
            @Param("suaSuId")Integer suaSuId, @Param("suaSuStart")Long suaSuStart, @Param("suaSuId")Integer suaSuId2,
            @Param("suaBossModifyStart")Long suaBossModifyStart, Pageable pageRequest)
            throws DataAccessException;
}
0 0
原创粉丝点击