用StringBuilder增加下拉框值作为查询条件,带分页
public Page<Map<String, Object>> findPortInfoByPage(UserInfo userInfo, Pageable page, Object... queryParams) {
String cityName = (String) queryParams[0];
String vendorName = (String) queryParams[1];
String vendor = (String) queryParams[2];
String eqpTpye = (String) queryParams[3];
StringBuilder sb = new StringBuilder();
sb.append("SELECT * FROM " + TableSchema.GCS_RES + ".CSW_PERFORMANCE_PORT WHERE 1=1 ");
if (StringUtils.isNotBlank(cityName)&&!"请选择".equals(cityName)){
sb.append(" AND CITY_NAME = '").append(cityName).append("'");
}
if (StringUtils.isNotBlank(vendorName)&&!"请选择".equals(vendorName)){
sb.append(" AND VENDOR_NAME = '").append(vendorName).append("'");
}
if (StringUtils.isNotBlank(vendor)&&!"请选择".equals(vendor)){
sb.append(" AND VENDOR = '").append(vendor).append("'");
}
if (StringUtils.isNotBlank(eqpTpye)&&!"请选择".equals(eqpTpye)){
sb.append(" AND EQP_TYPE = '").append(eqpTpye).append("'");
}
System.out.println("查询端口信息拼接后sql:" + sb.toString());
return entityManagerUtil.resultPage(sb.toString(), page, new HashMap<String, Object>());
}