controller 传入分页
@AutoLog(value = "安全照护-报警列表")
@ApiOperation(value="安全照护-报警列表", notes="安全照护-报警列表")
@GetMapping(value = "/queryPageInfoList")
public Result<IPage<SafetyFenceInfoVo>> queryPageInfoList(@RequestParam(name="safetyTime" ,required = false) Integer safetyTime,
@RequestParam(name="policeType" ,required = false) Integer policeType,
@RequestParam(name="elderId" ,required = false) String elderId,
@RequestParam(name="dealType" ,required = false) Integer dealType,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
Result<IPage<SafetyFenceInfoVo>> result = new Result<>();
Page<SafetyFenceInfoVo> page = new Page<>(pageNo, pageSize);
Map<String, Object> param = new HashMap<>();
param.put("safetyTime", safetyTime);
param.put("policeType", policeType);
param.put("elderId", elderId);
param.put("dealType", dealType);
IPage<SafetyFenceInfoVo> pageList = safetyFenceInfoService.search(page,param);
result.setSuccess(true);
result.setResult(pageList);
return result;
}
service 层
IPage<SafetyFenceInfoVo> search(Page<SafetyFenceInfoVo> page , Map<String,Object> param);
imp
@Override
public IPage<SafetyFenceInfoVo> search(Page<SafetyFenceInfoVo> page, Map<String, Object> param) {
List<SafetyFenceInfoVo> safetyFenceInfoVoList = this.baseMapper.selectPageInfo(page, param);
if(CollectionUtils.isNotEmpty(safetyFenceInfoVoList)) {
return page.setRecords(safetyFenceInfoVoList);
}else {
return page.setRecords(new ArrayList<>());
}
}
mapper 😗**@Param(“param”) Map<String,Object> param*** 加入@Param 注解
List<SafetyFenceInfoVo> selectPageInfo(Page<SafetyFenceInfoVo> page, @Param("param") Map<String,Object> param) ;
sql :注 param.safetyTime param.相应的map
<select id="selectPageInfo" resultType="org.jeecg.modules.fence.vo.SafetyFenceInfoVo">
SELECT
t1.*,
t2.organization_id as organizationId
FROM
safety_fence_info t1
LEFT JOIN enter_elder_info t2 on t1.elder_id = t2.id
where
t1.del_flag = '0'
and t2.enter_state = '2'
<if test="param.safetyTime == 1">
AND t1.safety_time > date_sub(now(), INTERVAL 7 DAY) /*近一周的数据*/
</if>
<if test="param.safetyTime == 2">
AND t1.safety_time > date_sub(now(), INTERVAL 1 MONTH)/*近1月的数据*/
</if>
<if test="param.safetyTime == 3">
AND t1.safety_time > date_sub(now(), INTERVAL 3 MONTH) /*近3月的数据*/
</if>
<if test="param.policeType != null and param.policeType != ''">
AND t1.police_type = #{param.policeType}
</if>
<if test="param.elderId != null and param.elderId != ''">
AND t1.elder_id = #{param.elderId}
</if>
<if test="param.dealType != null and param.dealType != ''">
AND t1.deal_type = #{param.dealType}
</if>
order by t1.safety_time desc
</select>