fix: 优化逻辑

This commit is contained in:
tangwei 2026-05-26 19:02:25 +08:00
parent 33f00d90cd
commit 9b681b2d8f
7 changed files with 52 additions and 9 deletions

View File

@ -255,13 +255,17 @@ public class DataSourceRequest {
for(SortDescriptor entry : sort) { for(SortDescriptor entry : sort) {
String field = entry.getField(); String field = entry.getField();
String dir = entry.getDir(); String dir = entry.getDir();
String normalizedDir = StringUtil.isBlank(dir) ? "" : dir.toLowerCase();
if ("des".equals(normalizedDir)) {
normalizedDir = "desc";
}
SortingInfo sortingInfo = new SortingInfo(); SortingInfo sortingInfo = new SortingInfo();
sortingInfo.setSelector(field); sortingInfo.setSelector(field);
if (StringUtil.isBlank(dir)) { if (StringUtil.isBlank(normalizedDir)) {
sortingInfo.setDesc(false); sortingInfo.setDesc(false);
} else if (dir.equals("asc")) { } else if (normalizedDir.equals("asc")) {
sortingInfo.setDesc(false); sortingInfo.setDesc(false);
} else if (dir.equals("desc")) { } else if (normalizedDir.equals("desc")) {
sortingInfo.setDesc(true); sortingInfo.setDesc(true);
} }
@ -303,11 +307,15 @@ public class DataSourceRequest {
GroupingInfo groupingInfo = new GroupingInfo(); GroupingInfo groupingInfo = new GroupingInfo();
groupingInfo.setSelector(groupDescriptor.getField()); groupingInfo.setSelector(groupDescriptor.getField());
String dir = groupDescriptor.getDir(); String dir = groupDescriptor.getDir();
if (StringUtil.isBlank(dir)) { String normalizedDir = StringUtil.isBlank(dir) ? "" : dir.toLowerCase();
if ("des".equals(normalizedDir)) {
normalizedDir = "desc";
}
if (StringUtil.isBlank(normalizedDir)) {
groupingInfo.setDesc(false); groupingInfo.setDesc(false);
} else if (dir.equals("asc")) { } else if (normalizedDir.equals("asc")) {
groupingInfo.setDesc(false); groupingInfo.setDesc(false);
} else if (dir.equals("desc")) { } else if (normalizedDir.equals("desc")) {
groupingInfo.setDesc(true); groupingInfo.setDesc(true);
} }

View File

@ -102,6 +102,9 @@ public class GroupHelper {
Group newGroup = new Group(); Group newGroup = new Group();
newGroup.setKey(groupKey); newGroup.setKey(groupKey);
newGroup.setField(groupInfo.getSelector()); newGroup.setField(groupInfo.getSelector());
newGroup.setKeyExt(new HashMap());
newGroup.setSummary(new Object[0]);
newGroup.setAggregates(new HashMap());
if (tempCount != null) { if (tempCount != null) {
newGroup.setCount(NumberUtil.parseInt(tempCount.toString())); newGroup.setCount(NumberUtil.parseInt(tempCount.toString()));
} }

View File

@ -32,7 +32,7 @@ public class EnvWqDataController {
@PostMapping("/data/GetKendoListCust") @PostMapping("/data/GetKendoListCust")
@Operation(summary = "水质明细数据查询") @Operation(summary = "水质明细数据查询")
public ResponseResult getDataKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) { public ResponseResult getDataKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) {
return ResponseResult.successData(envWqDataService.processKendoList(dataSourceRequest)); return ResponseResult.successData(envWqDataService.processDataKendoList(dataSourceRequest));
} }
@PostMapping("/GetStbprpYsByStcd") @PostMapping("/GetStbprpYsByStcd")
@ -50,7 +50,7 @@ public class EnvWqDataController {
@PostMapping("/data/noAuth/GetKendoListCust") @PostMapping("/data/noAuth/GetKendoListCust")
@Operation(summary = "水质统计分析(完成)") @Operation(summary = "水质统计分析(完成)")
public ResponseResult getNoAuthKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) { public ResponseResult getNoAuthKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) {
return ResponseResult.successData(envWqDataService.processKendoList(dataSourceRequest)); return ResponseResult.successData(envWqDataService.processDataKendoList(dataSourceRequest));
} }
@PostMapping("/along/qgc/GetKendoListCust") @PostMapping("/along/qgc/GetKendoListCust")
@ -65,6 +65,12 @@ public class EnvWqDataController {
return ResponseResult.successData(envWqDataService.getMsstbprptList(dataSourceRequest)); return ResponseResult.successData(envWqDataService.getMsstbprptList(dataSourceRequest));
} }
@PostMapping("/base/msstbprpt/GetKendoList")
@Operation(summary = "查询水质基础站点分组统计")
public ResponseResult getBaseMsstbprptList(@RequestBody DataSourceRequest dataSourceRequest) {
return ResponseResult.successData(envWqDataService.getMsstbprptList(dataSourceRequest));
}
@PostMapping("/vmsstbprpt/GetKendoList") @PostMapping("/vmsstbprpt/GetKendoList")
@Operation(summary = "根据条件查询水质基础站点数据(完成)") @Operation(summary = "根据条件查询水质基础站点数据(完成)")
public ResponseResult getVmsstbprptList(@RequestBody DataSourceRequest dataSourceRequest) { public ResponseResult getVmsstbprptList(@RequestBody DataSourceRequest dataSourceRequest) {

View File

@ -0,0 +1,15 @@
package com.yfd.platform.env.wq.entity.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
@Schema(description = "水质基础站点分组统计")
public class WqMsstbprptGroupVo {
@Schema(description = "数据接入类型")
private Integer dtinType;
@Schema(description = "数据接入类型分组数量")
private Integer countDtinType;
}

View File

@ -8,6 +8,8 @@ public interface EnvWqDataService {
DataSourceResult processKendoList(DataSourceRequest dataSourceRequest); DataSourceResult processKendoList(DataSourceRequest dataSourceRequest);
DataSourceResult processDataKendoList(DataSourceRequest dataSourceRequest);
DataSourceResult getAlongWqKendoListCust(DataSourceRequest dataSourceRequest); DataSourceResult getAlongWqKendoListCust(DataSourceRequest dataSourceRequest);
DataSourceResult getMsstbprptList(DataSourceRequest dataSourceRequest); DataSourceResult getMsstbprptList(DataSourceRequest dataSourceRequest);

View File

@ -89,6 +89,11 @@ public class EnvWqDataServiceImpl implements EnvWqDataService {
return result; return result;
} }
@Override
public DataSourceResult processDataKendoList(DataSourceRequest dataSourceRequest) {
return null;
}
@Override @Override
public DataSourceResult getAlongWqKendoListCust(DataSourceRequest dataSourceRequest) { public DataSourceResult getAlongWqKendoListCust(DataSourceRequest dataSourceRequest) {
return emptyResult(); return emptyResult();

View File

@ -44,9 +44,13 @@ public class KendoUtil extends ReflectUtil {
DataSourceRequest.GroupDescriptor groupingInfo = (DataSourceRequest.GroupDescriptor)groupDescriptorList.get(i); DataSourceRequest.GroupDescriptor groupingInfo = (DataSourceRequest.GroupDescriptor)groupDescriptorList.get(i);
String selector = groupingInfo.getField(); String selector = groupingInfo.getField();
String dir = groupingInfo.getDir(); String dir = groupingInfo.getDir();
String normalizedDir = StrUtil.blankToDefault(dir, "asc").toLowerCase();
if ("des".equals(normalizedDir)) {
normalizedDir = "desc";
}
groupByBuilder.append(selector); groupByBuilder.append(selector);
if (groupingInfo.getNeedSortFlag()) { if (groupingInfo.getNeedSortFlag()) {
if ("desc".equals(dir)) { if ("desc".equals(normalizedDir)) {
orderByBuilder.append(selector).append(" desc"); orderByBuilder.append(selector).append(" desc");
} else { } else {
orderByBuilder.append(selector).append(" asc"); orderByBuilder.append(selector).append(" asc");