fix: 优化分页参数

This commit is contained in:
tangwei 2026-06-17 09:33:34 +08:00
parent 512e3c4e4b
commit 77db8a1264
5 changed files with 20 additions and 24 deletions

View File

@ -278,8 +278,9 @@ public class FhHabitatServiceImpl implements FhHabitatService {
} }
sql.append(buildSdrvwtsOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort())); sql.append(buildSdrvwtsOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort()));
PageInfo pageInfo = loadOptions == null ? null : QgcQueryWrapperUtil.getPageInfo(loadOptions); // PageInfo pageInfo = loadOptions == null ? null : QgcQueryWrapperUtil.getPageInfo(loadOptions);
Page<?> page = pageInfo != null && pageInfo.getHasPageInfo() ? pageInfo.getPage() : null; // Page<?> page = pageInfo != null && pageInfo.getHasPageInfo() ? pageInfo.getPage() : null;
Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
List<FhSdrvwtsVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), paramMap, FhSdrvwtsVo.class); List<FhSdrvwtsVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), paramMap, FhSdrvwtsVo.class);
DataSourceResult<FhSdrvwtsVo> result = new DataSourceResult<>(); DataSourceResult<FhSdrvwtsVo> result = new DataSourceResult<>();
@ -330,8 +331,7 @@ public class FhHabitatServiceImpl implements FhHabitatService {
} }
sql.append(buildSdriverdaysOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort())); sql.append(buildSdriverdaysOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort()));
PageInfo pageInfo = loadOptions == null ? null : QgcQueryWrapperUtil.getPageInfo(loadOptions); Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
Page<?> page = pageInfo != null && pageInfo.getHasPageInfo() ? pageInfo.getPage() : null;
List<FhSdriverdayVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), paramMap, FhSdriverdayVo.class); List<FhSdriverdayVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), paramMap, FhSdriverdayVo.class);
DataSourceResult<FhSdriverdayVo> result = new DataSourceResult<>(); DataSourceResult<FhSdriverdayVo> result = new DataSourceResult<>();
@ -1744,8 +1744,7 @@ public class FhHabitatServiceImpl implements FhHabitatService {
sql.append(buildStTbYsOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort())); sql.append(buildStTbYsOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort()));
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest(); DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
PageInfo pageInfo = loadOptions == null ? null : QgcQueryWrapperUtil.getPageInfo(loadOptions); Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
Page<?> page = pageInfo != null && pageInfo.getHasPageInfo() ? pageInfo.getPage() : null;
List<StTbYsVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), paramMap, StTbYsVo.class); List<StTbYsVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), paramMap, StTbYsVo.class);
DataSourceResult<StTbYsVo> result = new DataSourceResult<>(); DataSourceResult<StTbYsVo> result = new DataSourceResult<>();

View File

@ -36,8 +36,7 @@ public class FpBuildServiceImpl implements FpBuildService {
@Override @Override
public DataSourceResult<FpConstructionSituationVo> processKendoList(DataSourceRequest dataSourceRequest) { public DataSourceResult<FpConstructionSituationVo> processKendoList(DataSourceRequest dataSourceRequest) {
DataSourceLoadOptionsBase loadOptions = dataSourceRequest.toDevRequest(); DataSourceLoadOptionsBase loadOptions = dataSourceRequest.toDevRequest();
PageInfo pageInfo = QgcQueryWrapperUtil.getPageInfo(loadOptions); Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
Page<?> page = pageInfo.getHasPageInfo() ? pageInfo.getPage() : null;
String sql = "SELECT t.STTP AS sttpCode, " + String sql = "SELECT t.STTP AS sttpCode, " +
" SUM(CASE WHEN t.DTIN = 1 THEN 1 ELSE 0 END) AS bonusing, " + " SUM(CASE WHEN t.DTIN = 1 THEN 1 ELSE 0 END) AS bonusing, " +

View File

@ -1185,8 +1185,14 @@ public class FprMonitorServiceImpl implements FprMonitorService {
if (CollUtil.isEmpty(resultList) || loadOptions == null || loadOptions.getTake() == null || loadOptions.getTake() <= 0) { if (CollUtil.isEmpty(resultList) || loadOptions == null || loadOptions.getTake() == null || loadOptions.getTake() <= 0) {
return resultList; return resultList;
} }
int start = Math.max(loadOptions.getSkip() == null ? 0 : loadOptions.getSkip(), 0); int page = loadOptions.getSkip() == null ? 1 : loadOptions.getSkip(); // 页码从1开始缺省为1
int end = Math.min(start + loadOptions.getTake(), resultList.size()); // 如果页码 0强制设为1避免负值
if (page < 1) {
page = 1;
}
int size = loadOptions.getTake();
int start = (page - 1) * size;
int end = Math.min(start + size, resultList.size());
if (start >= resultList.size()) { if (start >= resultList.size()) {
return new ArrayList<>(); return new ArrayList<>();
} }

View File

@ -39,8 +39,7 @@ public class VpConstructionServiceImpl implements VpConstructionService {
@Override @Override
public DataSourceResult processKendoList(DataSourceRequest dataSourceRequest) { public DataSourceResult processKendoList(DataSourceRequest dataSourceRequest) {
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest(); DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
PageInfo pageInfo = loadOptions == null ? new PageInfo() : QgcQueryWrapperUtil.getPageInfo(loadOptions); Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
Page<?> page = pageInfo.getHasPageInfo() ? pageInfo.getPage() : null;
String isBotanicalGarden = loadOptions == null ? null String isBotanicalGarden = loadOptions == null ? null
: QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "isBotanicalGarden"); : QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "isBotanicalGarden");
@ -90,8 +89,7 @@ public class VpConstructionServiceImpl implements VpConstructionService {
@Override @Override
public DataSourceResult processVmsstbprptList(DataSourceRequest dataSourceRequest) { public DataSourceResult processVmsstbprptList(DataSourceRequest dataSourceRequest) {
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest(); DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
PageInfo pageInfo = loadOptions == null ? new PageInfo() : QgcQueryWrapperUtil.getPageInfo(loadOptions); Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
Page<?> page = pageInfo.getHasPageInfo() ? pageInfo.getPage() : null;
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
StringBuilder sql = new StringBuilder(buildVmsstbprptBaseSql()); StringBuilder sql = new StringBuilder(buildVmsstbprptBaseSql());
@ -177,9 +175,7 @@ public class VpConstructionServiceImpl implements VpConstructionService {
@Override @Override
public DataSourceResult<VpWvaRunVo> processWvaKendoList(DataSourceRequest dataSourceRequest) { public DataSourceResult<VpWvaRunVo> processWvaKendoList(DataSourceRequest dataSourceRequest) {
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest(); DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
PageInfo pageInfo = loadOptions == null ? new PageInfo() : QgcQueryWrapperUtil.getPageInfo(loadOptions); Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
Page<?> page = pageInfo.getHasPageInfo() ? pageInfo.getPage() : null;
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
StringBuilder sql = new StringBuilder(buildWvaBaseSql()); StringBuilder sql = new StringBuilder(buildWvaBaseSql());
String filterSql = buildWvaFilterCondition(dataSourceRequest == null ? null : dataSourceRequest.getFilter(), String filterSql = buildWvaFilterCondition(dataSourceRequest == null ? null : dataSourceRequest.getFilter(),
@ -218,8 +214,7 @@ public class VpConstructionServiceImpl implements VpConstructionService {
@Override @Override
public DataSourceResult<VpVacVo> processVacKendoList(DataSourceRequest dataSourceRequest) { public DataSourceResult<VpVacVo> processVacKendoList(DataSourceRequest dataSourceRequest) {
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest(); DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
PageInfo pageInfo = loadOptions == null ? new PageInfo() : QgcQueryWrapperUtil.getPageInfo(loadOptions); Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
Page<?> page = pageInfo.getHasPageInfo() ? pageInfo.getPage() : null;
String isZoo = loadOptions == null ? null : QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "isZoo"); String isZoo = loadOptions == null ? null : QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "isZoo");
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
@ -260,9 +255,7 @@ public class VpConstructionServiceImpl implements VpConstructionService {
@Override @Override
public DataSourceResult<VpVarVo> processVarKendoList(DataSourceRequest dataSourceRequest) { public DataSourceResult<VpVarVo> processVarKendoList(DataSourceRequest dataSourceRequest) {
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest(); DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
PageInfo pageInfo = loadOptions == null ? new PageInfo() : QgcQueryWrapperUtil.getPageInfo(loadOptions); Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
Page<?> page = pageInfo.getHasPageInfo() ? pageInfo.getPage() : null;
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
StringBuilder sql = new StringBuilder(buildVarBaseSql()); StringBuilder sql = new StringBuilder(buildVarBaseSql());
String filterSql = buildVarFilterCondition(dataSourceRequest == null ? null : dataSourceRequest.getFilter(), String filterSql = buildVarFilterCondition(dataSourceRequest == null ? null : dataSourceRequest.getFilter(),

View File

@ -3501,8 +3501,7 @@ public class EnvWqDataServiceImpl implements EnvWqDataService {
sql.append(buildStTbYsOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort())); sql.append(buildStTbYsOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort()));
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest(); DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
PageInfo pageInfo = loadOptions == null ? null : QgcQueryWrapperUtil.getPageInfo(loadOptions); Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
Page<?> page = pageInfo != null && pageInfo.getHasPageInfo() ? pageInfo.getPage() : null;
List<StTbYsVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), paramMap, StTbYsVo.class); List<StTbYsVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), paramMap, StTbYsVo.class);
DataSourceResult<StTbYsVo> result = new DataSourceResult<>(); DataSourceResult<StTbYsVo> result = new DataSourceResult<>();