分页检索功能完善

develop-QA
qinyulong 4 months ago
parent d4ed71c968
commit 865e106762
  1. 27
      blade-service/blade-desk/src/main/java/org/springblade/desk/device/controller/EquipmentController.java
  2. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/EquipmentMapper.java
  3. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/device/service/IEquipmentService.java
  4. 18
      blade-service/blade-desk/src/main/java/org/springblade/desk/device/service/impl/EquipmentServiceImpl.java

@ -25,6 +25,9 @@
*/ */
package org.springblade.desk.device.controller; package org.springblade.desk.device.controller;
import io.swagger.v3.oas.annotations.Parameters;
import io.swagger.v3.oas.annotations.enums.ParameterIn;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameter;
@ -39,6 +42,7 @@ import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R; import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.Func;
import org.springblade.desk.device.pojo.excel.EquipmentExcel; import org.springblade.desk.device.pojo.excel.EquipmentExcel;
import org.springblade.desk.order.wrapper.AssayContentWrapper;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
@ -78,26 +82,21 @@ public class EquipmentController extends BladeController {
EquipmentEntity detail = equipmentService.getOne(Condition.getQueryWrapper(equipment)); EquipmentEntity detail = equipmentService.getOne(Condition.getQueryWrapper(equipment));
return R.data(EquipmentWrapper.build().entityVO(detail)); return R.data(EquipmentWrapper.build().entityVO(detail));
} }
/**
* 设备信息表 分页
*/
@GetMapping("/list")
@ApiOperationSupport(order = 2)
@Operation(summary = "分页", description = "传入equipment")
public R<IPage<EquipmentVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> equipment, Query query) {
IPage<EquipmentEntity> pages = equipmentService.page(Condition.getPage(query), Condition.getQueryWrapper(equipment, EquipmentEntity.class));
return R.data(EquipmentWrapper.build().pageVO(pages));
}
/** /**
* 设备信息表 自定义分页 * 设备信息表 自定义分页
*/ */
@GetMapping("/page") @GetMapping("/page")
@ApiOperationSupport(order = 3) @ApiOperationSupport(order = 3)
@Operation(summary = "分页", description = "传入equipment") @Operation(summary = "分页", description = "")
public R<IPage<EquipmentVO>> page(EquipmentVO equipment, Query query) { @Parameters({
IPage<EquipmentVO> pages = equipmentService.selectEquipmentPage(Condition.getPage(query), equipment); @Parameter(name = "deviceCode", description = "设备编码", in = ParameterIn.QUERY, schema = @Schema(type = "string")),
return R.data(pages); @Parameter(name = "deviceName", description = "设备名称", in = ParameterIn.QUERY, schema = @Schema(type = "string")),
@Parameter(name = "category", description = "设备分类", in = ParameterIn.QUERY, schema = @Schema(type = "string")),
})
public R<IPage<EquipmentVO>> page(@Parameter(hidden = true)EquipmentEntity equipment, Query query) {
IPage<EquipmentEntity> pages = equipmentService.selectEquipmentPage(Condition.getPage(query), equipment);
return R.data(EquipmentWrapper.build().pageVO(pages));
} }
/** /**

@ -49,7 +49,7 @@ public interface EquipmentMapper extends BaseMapper<EquipmentEntity> {
* @param equipment 查询参数 * @param equipment 查询参数
* @return List<EquipmentVO> * @return List<EquipmentVO>
*/ */
List<EquipmentVO> selectEquipmentPage(IPage page, EquipmentVO equipment); List<EquipmentEntity> selectEquipmentPage(IPage page, EquipmentEntity equipment);
/** /**

@ -47,7 +47,7 @@ public interface IEquipmentService extends BaseService<EquipmentEntity> {
* @param equipment 查询参数 * @param equipment 查询参数
* @return IPage<EquipmentVO> * @return IPage<EquipmentVO>
*/ */
IPage<EquipmentVO> selectEquipmentPage(IPage<EquipmentVO> page, EquipmentVO equipment); IPage<EquipmentEntity> selectEquipmentPage(IPage<EquipmentEntity> page, EquipmentEntity equipment);
/** /**

@ -25,6 +25,8 @@
*/ */
package org.springblade.desk.device.service.impl; package org.springblade.desk.device.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.springblade.desk.device.pojo.entity.EquipmentEntity; import org.springblade.desk.device.pojo.entity.EquipmentEntity;
import org.springblade.desk.device.pojo.excel.EquipmentExcel; import org.springblade.desk.device.pojo.excel.EquipmentExcel;
import org.springblade.desk.device.pojo.vo.EquipmentVO; import org.springblade.desk.device.pojo.vo.EquipmentVO;
@ -35,6 +37,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List; import java.util.List;
import java.util.Objects;
/** /**
* 设备信息表 服务实现类 * 设备信息表 服务实现类
@ -46,8 +49,19 @@ import java.util.List;
public class EquipmentServiceImpl extends BaseServiceImpl<EquipmentMapper, EquipmentEntity> implements IEquipmentService { public class EquipmentServiceImpl extends BaseServiceImpl<EquipmentMapper, EquipmentEntity> implements IEquipmentService {
@Override @Override
public IPage<EquipmentVO> selectEquipmentPage(IPage<EquipmentVO> page, EquipmentVO equipment) { public IPage<EquipmentEntity> selectEquipmentPage(IPage<EquipmentEntity> page, EquipmentEntity equipment) {
return page.setRecords(baseMapper.selectEquipmentPage(page, equipment)); // return page.setRecords(baseMapper.selectEquipmentPage(page, equipment));
// 1. 创建条件构造器
LambdaQueryWrapper<EquipmentEntity> wrapper = Wrappers.<EquipmentEntity>lambdaQuery();
// 2. 动态添加条件(核心!)
// 根据实体对象 entity 中字段是否为空,来动态拼接WHERE条件
wrapper.like(Objects.nonNull(equipment.getDeviceCode()), EquipmentEntity::getDeviceCode, equipment.getDeviceCode())
.like(Objects.nonNull(equipment.getDeviceName()), EquipmentEntity::getDeviceName, equipment.getDeviceName())
.like(Objects.nonNull(equipment.getCategory()), EquipmentEntity::getCategory, equipment.getCategory());
// 3. 执行分页查询
return baseMapper.selectPage(page, wrapper);
} }

Loading…
Cancel
Save