feat: 生态流量监测数量统计
This commit is contained in:
parent
95b6e1f341
commit
787e3fea42
@ -47,4 +47,10 @@ public class EngEqDataController {
|
|||||||
public ResponseResult getWbsbList(@RequestBody DataSourceRequest dataSourceRequest) {
|
public ResponseResult getWbsbList(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||||
return ResponseResult.successData(engEqDataService.getWbsbList(dataSourceRequest));
|
return ResponseResult.successData(engEqDataService.getWbsbList(dataSourceRequest));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/evnmAutoMonitor/GetKendoListCust")
|
||||||
|
@Operation(summary = "生态流量监测数量统计")
|
||||||
|
public ResponseResult getEvnmAutoMonitorList(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||||
|
return ResponseResult.successData(engEqDataService.getEvnmAutoMonitorList(dataSourceRequest));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,31 @@
|
|||||||
|
package com.yfd.platform.qgc_eng.eq.entity.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Schema(description = "生态流量监测数量统计")
|
||||||
|
public class SdEqMonitorCountVo implements Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@Schema(description = "数量")
|
||||||
|
private Long cnt;
|
||||||
|
|
||||||
|
@Schema(description = "排序号")
|
||||||
|
private Integer orderInx;
|
||||||
|
|
||||||
|
@Schema(description = "排序号名称")
|
||||||
|
private String orderInxName;
|
||||||
|
|
||||||
|
@Schema(description = "站类完整路径")
|
||||||
|
private String sttpFullPath;
|
||||||
|
|
||||||
|
@Schema(description = "站类编码")
|
||||||
|
private String sttpCode;
|
||||||
|
|
||||||
|
@Schema(description = "站类名称")
|
||||||
|
private String sttpName;
|
||||||
|
}
|
||||||
@ -3,6 +3,7 @@ package com.yfd.platform.qgc_eng.eq.service;
|
|||||||
import com.yfd.platform.common.DataSourceRequest;
|
import com.yfd.platform.common.DataSourceRequest;
|
||||||
import com.yfd.platform.common.DataSourceResult;
|
import com.yfd.platform.common.DataSourceResult;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.QgcQecStaticVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.QgcQecStaticVo;
|
||||||
|
import com.yfd.platform.qgc_eng.eq.entity.vo.SdEqMonitorCountVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.WbsbVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.WbsbVo;
|
||||||
|
|
||||||
public interface EngEqDataService {
|
public interface EngEqDataService {
|
||||||
@ -12,4 +13,6 @@ public interface EngEqDataService {
|
|||||||
QgcQecStaticVo getQgcStaticData(DataSourceRequest dataSourceRequest, String type);
|
QgcQecStaticVo getQgcStaticData(DataSourceRequest dataSourceRequest, String type);
|
||||||
|
|
||||||
DataSourceResult<WbsbVo> getWbsbList(DataSourceRequest dataSourceRequest);
|
DataSourceResult<WbsbVo> getWbsbList(DataSourceRequest dataSourceRequest);
|
||||||
|
|
||||||
|
DataSourceResult<SdEqMonitorCountVo> getEvnmAutoMonitorList(DataSourceRequest dataSourceRequest);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -15,6 +15,7 @@ import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDataVo;
|
|||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqStaticIntervalVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqStaticIntervalVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.QgcQecStaticVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.QgcQecStaticVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.QgcQecVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.QgcQecVo;
|
||||||
|
import com.yfd.platform.qgc_eng.eq.entity.vo.SdEqMonitorCountVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.WbsbVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.WbsbVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.service.EngEqDataService;
|
import com.yfd.platform.qgc_eng.eq.service.EngEqDataService;
|
||||||
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
||||||
@ -118,6 +119,42 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
return queryWbsbGroupList(dataSourceRequest, loadOptions);
|
return queryWbsbGroupList(dataSourceRequest, loadOptions);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DataSourceResult<SdEqMonitorCountVo> getEvnmAutoMonitorList(DataSourceRequest dataSourceRequest) {
|
||||||
|
List<String> showIds = findFilterValues(dataSourceRequest == null ? null : dataSourceRequest.getFilter(), "showIds");
|
||||||
|
if (!showIds.isEmpty() && !showIds.contains("7")) {
|
||||||
|
DataSourceResult<SdEqMonitorCountVo> emptyResult = new DataSourceResult<>();
|
||||||
|
emptyResult.setData(new ArrayList<>());
|
||||||
|
emptyResult.setTotal(0L);
|
||||||
|
emptyResult.setAggregates(new HashMap<>());
|
||||||
|
return emptyResult;
|
||||||
|
}
|
||||||
|
|
||||||
|
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
||||||
|
String baseId = loadOptions == null ? null : QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "baseId");
|
||||||
|
|
||||||
|
StringBuilder sql = new StringBuilder();
|
||||||
|
Map<String, Object> paramMap = new HashMap<>();
|
||||||
|
sql.append("SELECT COUNT(1) AS cnt, 7 AS orderInx, '生态流量' AS orderInxName, ")
|
||||||
|
.append("'ENG' AS sttpFullPath, 'ENG' AS sttpCode, '生态流量' AS sttpName ")
|
||||||
|
.append("FROM SD_ENGINFO_B_H eng ")
|
||||||
|
.append("WHERE NVL(eng.IS_DELETED, 0) = 0 ")
|
||||||
|
.append("AND NVL(eng.DTIN, 0) = 1 ")
|
||||||
|
.append("AND NVL(eng.BLDSTT_CODE, 0) IN (1, 2) ")
|
||||||
|
.append("AND EXISTS (SELECT 1 FROM SD_QEC_R qec WHERE qec.STCD = eng.STCD AND NVL(qec.IS_DELETED, 0) = 0) ");
|
||||||
|
if (StrUtil.isNotBlank(baseId)) {
|
||||||
|
sql.append("AND eng.BASE_ID = #{map.baseId} ");
|
||||||
|
paramMap.put("baseId", baseId);
|
||||||
|
}
|
||||||
|
|
||||||
|
List<SdEqMonitorCountVo> list = microservicDynamicSQLMapper.getAllListWithResultType(sql.toString(), paramMap, SdEqMonitorCountVo.class);
|
||||||
|
DataSourceResult<SdEqMonitorCountVo> result = new DataSourceResult<>();
|
||||||
|
result.setData(list);
|
||||||
|
result.setTotal(list == null ? 0 : list.size());
|
||||||
|
result.setAggregates(new HashMap<>());
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
private DataSourceResult<EngEqDataVo> queryDetailList(DataSourceRequest dataSourceRequest,
|
private DataSourceResult<EngEqDataVo> queryDetailList(DataSourceRequest dataSourceRequest,
|
||||||
DataSourceLoadOptionsBase loadOptions) {
|
DataSourceLoadOptionsBase loadOptions) {
|
||||||
StringBuilder sql = new StringBuilder();
|
StringBuilder sql = new StringBuilder();
|
||||||
@ -1072,6 +1109,34 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
return values;
|
return values;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private List<String> findFilterValues(DataSourceRequest.FilterDescriptor filter, String field) {
|
||||||
|
List<String> values = new ArrayList<>();
|
||||||
|
collectFilterValues(filter, field, values);
|
||||||
|
return values;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void collectFilterValues(DataSourceRequest.FilterDescriptor filter, String field, List<String> values) {
|
||||||
|
if (filter == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (StrUtil.isNotBlank(filter.getField())) {
|
||||||
|
if (field.equalsIgnoreCase(filter.getField())) {
|
||||||
|
for (Object value : normalizeValues(filter.getValue())) {
|
||||||
|
if (value != null) {
|
||||||
|
values.add(String.valueOf(value));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (CollUtil.isEmpty(filter.getFilters())) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (DataSourceRequest.FilterDescriptor child : filter.getFilters()) {
|
||||||
|
collectFilterValues(child, field, values);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private String mapStaticStationColumn(String field) {
|
private String mapStaticStationColumn(String field) {
|
||||||
if (StrUtil.isBlank(field)) {
|
if (StrUtil.isBlank(field)) {
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user