@GetMapping("/page") public R<Page<Warehouse>> page(HttpServletRequest request, int page, int pageSize, String wasteName) { User user = (User) request.getSession().getAttribute("userInfo"); if (user == null) { return R.error("登录失效,请重新登录"); } Page<Warehouse> warehousePage = new Page<>(page,pageSize); LambdaQueryWrapper<Warehouse> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(Warehouse::getProxyName, user.getUserLimit()); queryWrapper.like(wasteName != null, Warehouse::getWasteName, wasteName); warehouseService.page(warehousePage, queryWrapper); return R.success(warehousePage);解释这段代码
时间: 2024-01-11 12:04:37 浏览: 91
pageOffice.rar
这段代码是一个 Java 后端接口方法,用于查询仓库信息并返回分页结果。具体解释如下:
@GetMapping("/page") 表示该方法使用 HTTP GET 请求方式,请求的路径为 /page。
public R<Page<Warehouse>> page(HttpServletRequest request, int page, int pageSize, String wasteName) 表示该方法返回一个 R<Page<Warehouse>> 对象,该对象包装了查询结果和状态信息。方法的参数有 HttpServletRequest 对象、页码、每页显示的条目数和物料名称。
User user = (User) request.getSession().getAttribute("userInfo"); 表示从 HttpServletRequest 对象中获取当前登录用户信息。
if (user == null) {...} 表示如果当前用户未登录,则返回一个错误信息。
Page<Warehouse> warehousePage = new Page<>(page,pageSize); 表示创建一个 Page 对象,用于指定查询的页码和每页显示的条目数。
LambdaQueryWrapper<Warehouse> queryWrapper = new LambdaQueryWrapper<>(); 表示创建一个 LambdaQueryWrapper 对象,用于指定查询条件。
queryWrapper.eq(Warehouse::getProxyName, user.getUserLimit()); 表示查询代理人名称等于当前登录用户的权限。
queryWrapper.like(wasteName != null, Warehouse::getWasteName, wasteName); 表示如果物料名称不为空,则查询物料名称模糊匹配参数 wasteName。
warehouseService.page(warehousePage, queryWrapper); 表示调用 warehouseService 中的 page 方法进行查询,并将查询结果放入 warehousePage 中。
return R.success(warehousePage); 表示将查询结果封装为 R 对象并返回,其中 R.success(warehousePage) 表示查询成功,将查询结果放入 success 字段中,并返回给调用方。
阅读全文