feat: 生态流量泄放设施描点
This commit is contained in:
parent
35ae8e340f
commit
f6e2d49558
@ -181,4 +181,10 @@ public class EngEqDataController {
|
|||||||
StcdInfoVo result = engEqDataService.getStInfoByStcd(stcd);
|
StcdInfoVo result = engEqDataService.getStInfoByStcd(stcd);
|
||||||
return ResponseResult.successData(result);
|
return ResponseResult.successData(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/eqds/GetKendoListCust")
|
||||||
|
@Operation(summary = "生态流量泄放设施描点")
|
||||||
|
public ResponseResult getEqdsKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||||
|
return ResponseResult.successData(engEqDataService.getEqdsKendoListCust(dataSourceRequest));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,101 @@
|
|||||||
|
package com.yfd.platform.qgc_eng.eq.entity.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Schema(description = "生态流量泄放设施描点VO")
|
||||||
|
public class EngEqdsVo {
|
||||||
|
|
||||||
|
@Schema(description = "设施编码")
|
||||||
|
private String stcd;
|
||||||
|
|
||||||
|
@Schema(description = "设施名称")
|
||||||
|
private String stnm;
|
||||||
|
|
||||||
|
@Schema(description = "电站编码")
|
||||||
|
private String rstcd;
|
||||||
|
|
||||||
|
@Schema(description = "电站名称")
|
||||||
|
private String ennm;
|
||||||
|
|
||||||
|
@Schema(description = "生态流量泄放方式")
|
||||||
|
private Integer eqtp;
|
||||||
|
|
||||||
|
@Schema(description = "孔口尺寸")
|
||||||
|
private String flksz;
|
||||||
|
|
||||||
|
@Schema(description = "进水口地板高程")
|
||||||
|
private BigDecimal jskdbgc;
|
||||||
|
|
||||||
|
@Schema(description = "出水口地板高程")
|
||||||
|
private BigDecimal cskdbgc;
|
||||||
|
|
||||||
|
@Schema(description = "死水位时保证流量")
|
||||||
|
private BigDecimal ddzgq;
|
||||||
|
|
||||||
|
@Schema(description = "基荷发电工况")
|
||||||
|
private BigDecimal jhfdgk;
|
||||||
|
|
||||||
|
@Schema(description = "最大泄放流量")
|
||||||
|
private String flkq;
|
||||||
|
|
||||||
|
@Schema(description = "基地")
|
||||||
|
private String baseId;
|
||||||
|
|
||||||
|
@Schema(description = "流域")
|
||||||
|
private String rvcd;
|
||||||
|
|
||||||
|
@Schema(description = "行政区")
|
||||||
|
private String addvcd;
|
||||||
|
|
||||||
|
@Schema(description = "经度")
|
||||||
|
private BigDecimal lgtd;
|
||||||
|
|
||||||
|
@Schema(description = "纬度")
|
||||||
|
private BigDecimal lttd;
|
||||||
|
|
||||||
|
@Schema(description = "高程")
|
||||||
|
private BigDecimal dtmel;
|
||||||
|
|
||||||
|
@Schema(description = "工程类型")
|
||||||
|
private String sttp;
|
||||||
|
|
||||||
|
@Schema(description = "工程类型名称")
|
||||||
|
private String sttpName;
|
||||||
|
|
||||||
|
@Schema(description = "锚点类型")
|
||||||
|
private String sttpMap;
|
||||||
|
|
||||||
|
@Schema(description = "设施类型")
|
||||||
|
private String sttpCode;
|
||||||
|
|
||||||
|
@Schema(description = "图例编码")
|
||||||
|
private String anchoPointState;
|
||||||
|
|
||||||
|
@Schema(description = "弹窗名称")
|
||||||
|
private String titleName;
|
||||||
|
|
||||||
|
@Schema(description = "生态流量限值")
|
||||||
|
private BigDecimal qecLimit;
|
||||||
|
|
||||||
|
@Schema(description = "地图避让")
|
||||||
|
private Integer distance;
|
||||||
|
|
||||||
|
@Schema(description = "建设状态 0=规划,1=在建,2=已建")
|
||||||
|
private String bldsttCode;
|
||||||
|
|
||||||
|
@Schema(description = "沿程排序")
|
||||||
|
private Integer siteStepSort;
|
||||||
|
|
||||||
|
@Schema(description = "流域排序")
|
||||||
|
private Integer rvcdStepSort;
|
||||||
|
|
||||||
|
@Schema(description = "电站排序")
|
||||||
|
private Integer rstcdStepSort;
|
||||||
|
|
||||||
|
@Schema(description = "基地排序")
|
||||||
|
private Integer baseStepSort;
|
||||||
|
}
|
||||||
@ -7,6 +7,7 @@ import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqBaseVmsstbprptVo;
|
|||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDayDataVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDayDataVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDrtpDataVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDrtpDataVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDayIntervalVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDayIntervalVo;
|
||||||
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqdsVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqHourIntervalVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqHourIntervalVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqIntervalVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqIntervalVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqLimitQueryVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqLimitQueryVo;
|
||||||
@ -65,4 +66,6 @@ public interface EngEqDataService {
|
|||||||
DataSourceResult<String> getDefaultYear(DataSourceRequest dataSourceRequest);
|
DataSourceResult<String> getDefaultYear(DataSourceRequest dataSourceRequest);
|
||||||
|
|
||||||
StcdInfoVo getStInfoByStcd(String stcd);
|
StcdInfoVo getStInfoByStcd(String stcd);
|
||||||
|
|
||||||
|
DataSourceResult<EngEqdsVo> getEqdsKendoListCust(DataSourceRequest dataSourceRequest);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDataVo;
|
|||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDayDataVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDayDataVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDrtpDataVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDrtpDataVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDayIntervalVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqDayIntervalVo;
|
||||||
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqdsVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqLimitQueryVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqLimitQueryVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqLimitVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngEqLimitVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.EngFidVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.EngFidVo;
|
||||||
@ -36,6 +37,7 @@ import com.yfd.platform.qgc_eng.eq.entity.vo.WbsbVo;
|
|||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.StBaseInfo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.StBaseInfo;
|
||||||
import com.yfd.platform.qgc_eng.eq.entity.vo.StcdInfoVo;
|
import com.yfd.platform.qgc_eng.eq.entity.vo.StcdInfoVo;
|
||||||
import com.yfd.platform.qgc_eng.eq.service.EngEqDataService;
|
import com.yfd.platform.qgc_eng.eq.service.EngEqDataService;
|
||||||
|
import com.yfd.platform.qgc_env.wt.utils.SiteAvoidanceUtils;
|
||||||
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
@ -5889,4 +5891,123 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
}
|
}
|
||||||
return dataSourceResult;
|
return dataSourceResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DataSourceResult<EngEqdsVo> getEqdsKendoListCust(DataSourceRequest dataSourceRequest) {
|
||||||
|
DataSourceResult<EngEqdsVo> dataSourceResult = new DataSourceResult<>();
|
||||||
|
dataSourceResult.setAggregates(new HashMap<>());
|
||||||
|
|
||||||
|
if (dataSourceRequest == null) {
|
||||||
|
dataSourceResult.setData(new ArrayList<>());
|
||||||
|
dataSourceResult.setTotal(0L);
|
||||||
|
return dataSourceResult;
|
||||||
|
}
|
||||||
|
|
||||||
|
StringBuilder sql = new StringBuilder();
|
||||||
|
sql.append("SELECT ")
|
||||||
|
.append("a.STCD AS stcd, ")
|
||||||
|
.append("a.STNM AS stnm, ")
|
||||||
|
.append("a.RSTCD AS rstcd, ")
|
||||||
|
.append("eng.ENNM AS ennm, ")
|
||||||
|
.append("a.STTP AS sttp, ")
|
||||||
|
.append("a.BASE_ID AS baseId, ")
|
||||||
|
.append("a.LGTD AS lgtd, ")
|
||||||
|
.append("a.LTTD AS lttd, ")
|
||||||
|
.append("a.ELEV AS dtmel, ")
|
||||||
|
.append("a.BLDSTT_CODE AS bldsttCode, ")
|
||||||
|
.append("a.RVCD AS rvcd, ")
|
||||||
|
.append("a.ADDVCD AS addvcd, ")
|
||||||
|
.append("NVL(siteSort.SORT, 999999) AS siteStepSort, ")
|
||||||
|
.append("NVL(along.ORDER_INDEX, 999999) AS rvcdStepSort, ")
|
||||||
|
.append("NVL(rstSort.SORT, 999999) AS rstcdStepSort, ")
|
||||||
|
.append("NVL(hb.ORDER_INDEX, 999999) AS baseStepSort ")
|
||||||
|
.append("FROM SD_EQ_B_H a ")
|
||||||
|
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = a.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ")
|
||||||
|
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
||||||
|
.append("LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ")
|
||||||
|
.append("LEFT JOIN ( ")
|
||||||
|
.append(" SELECT det.SORT, cfg.RVCD, det.STCD ")
|
||||||
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
|
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
||||||
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
||||||
|
.append(") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = a.RSTCD ")
|
||||||
|
.append("LEFT JOIN ( ")
|
||||||
|
.append(" SELECT det.SORT, cfg.RVCD, det.STCD ")
|
||||||
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
|
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
||||||
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
||||||
|
.append(") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = a.STCD ")
|
||||||
|
.append("WHERE NVL(a.IS_DELETED, 0) = 0 ")
|
||||||
|
.append("AND NVL(a.USFL, 1) = 1 ")
|
||||||
|
.append("AND a.LGTD IS NOT NULL ")
|
||||||
|
.append("AND a.LTTD IS NOT NULL ")
|
||||||
|
.append("AND a.STTP IN (SELECT STTP_CODE FROM SD_STTP_B WHERE DESCRIPTION = 'EQ') ")
|
||||||
|
.append("AND a.RSTCD IS NOT NULL ")
|
||||||
|
.append("ORDER BY NVL(siteSort.SORT, 999999), NVL(along.ORDER_INDEX, 999999), NVL(rstSort.SORT, 999999), NVL(hb.ORDER_INDEX, 999999), a.STNM ");
|
||||||
|
|
||||||
|
DataSourceLoadOptionsBase loadOptions = dataSourceRequest.toDevRequest();
|
||||||
|
Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
|
||||||
|
List<EngEqdsVo> eqdsVoList = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), new HashMap<>(), EngEqdsVo.class);
|
||||||
|
|
||||||
|
List<EngEqdsVo> resultList = new ArrayList<>();
|
||||||
|
for (EngEqdsVo eqdsVo : eqdsVoList) {
|
||||||
|
String sttpCode = eqdsVo.getSttp();
|
||||||
|
List<String> sttpCodeSplit = StrUtil.split(sttpCode, "_");
|
||||||
|
eqdsVo.setSttpMap(sttpCodeSplit.get(0));
|
||||||
|
eqdsVo.setEqtp(Integer.valueOf(sttpCodeSplit.get(1)));
|
||||||
|
eqdsVo.setSttp(sttpCodeSplit.get(0));
|
||||||
|
eqdsVo.setTitleName(eqdsVo.getStnm());
|
||||||
|
|
||||||
|
String bldsttCode = eqdsVo.getBldsttCode();
|
||||||
|
if ("2".equals(bldsttCode)) {
|
||||||
|
eqdsVo.setAnchoPointState(sttpCode);
|
||||||
|
} else {
|
||||||
|
eqdsVo.setAnchoPointState(sttpCode + "_incomplete");
|
||||||
|
}
|
||||||
|
|
||||||
|
eqdsVo.setSttpCode("EQ");
|
||||||
|
|
||||||
|
String rstcd = eqdsVo.getRstcd();
|
||||||
|
if (rstcd != null && rstcd.contains(",")) {
|
||||||
|
EngEqdsVo eqdsVoNew = new EngEqdsVo();
|
||||||
|
eqdsVoNew.setStcd(eqdsVo.getStcd());
|
||||||
|
eqdsVoNew.setStnm(eqdsVo.getStnm());
|
||||||
|
eqdsVoNew.setSttp(eqdsVo.getSttp());
|
||||||
|
eqdsVoNew.setSttpMap(eqdsVo.getSttpMap());
|
||||||
|
eqdsVoNew.setSttpCode(eqdsVo.getSttpCode());
|
||||||
|
eqdsVoNew.setEqtp(eqdsVo.getEqtp());
|
||||||
|
eqdsVoNew.setAnchoPointState(eqdsVo.getAnchoPointState());
|
||||||
|
eqdsVoNew.setTitleName(eqdsVo.getTitleName());
|
||||||
|
eqdsVoNew.setLgtd(eqdsVo.getLgtd());
|
||||||
|
eqdsVoNew.setLttd(eqdsVo.getLttd());
|
||||||
|
eqdsVoNew.setDtmel(eqdsVo.getDtmel());
|
||||||
|
eqdsVoNew.setBaseId(eqdsVo.getBaseId());
|
||||||
|
eqdsVoNew.setBldsttCode(eqdsVo.getBldsttCode());
|
||||||
|
|
||||||
|
List<String> stcdSplit = StrUtil.split(rstcd, ',');
|
||||||
|
eqdsVo.setRstcd(stcdSplit.get(0));
|
||||||
|
eqdsVoNew.setRstcd(stcdSplit.get(1));
|
||||||
|
|
||||||
|
String ennm = eqdsVo.getEnnm();
|
||||||
|
if (ennm != null && ennm.contains(",")) {
|
||||||
|
List<String> ennmSplit = StrUtil.split(ennm, ',');
|
||||||
|
eqdsVo.setEnnm(ennmSplit.get(0));
|
||||||
|
eqdsVoNew.setEnnm(ennmSplit.get(1));
|
||||||
|
}
|
||||||
|
resultList.add(eqdsVoNew);
|
||||||
|
}
|
||||||
|
resultList.add(eqdsVo);
|
||||||
|
}
|
||||||
|
|
||||||
|
SiteAvoidanceUtils.calcSiteMapLev(resultList,
|
||||||
|
EngEqdsVo::getStcd,
|
||||||
|
EngEqdsVo::getLgtd,
|
||||||
|
EngEqdsVo::getLttd,
|
||||||
|
EngEqdsVo::getAnchoPointState,
|
||||||
|
EngEqdsVo::setDistance);
|
||||||
|
|
||||||
|
dataSourceResult.setData(resultList);
|
||||||
|
dataSourceResult.setTotal(page == null ? resultList.size() : page.getTotal());
|
||||||
|
return dataSourceResult;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -111,9 +111,10 @@ spring:
|
|||||||
matching-strategy: ant_path_matcher
|
matching-strategy: ant_path_matcher
|
||||||
data:
|
data:
|
||||||
redis:
|
redis:
|
||||||
host: ${REDIS_HOST:localhost}
|
host: ${REDIS_HOST:172.16.21.142}
|
||||||
port: ${REDIS_PORT:6379}
|
port: ${REDIS_PORT:6379}
|
||||||
password: ${REDIS_PASSWORD:}
|
password: ${REDIS_PASSWORD:zny5678}
|
||||||
|
database: ${REDIS_DATABASE:15}
|
||||||
timeout: 10000ms
|
timeout: 10000ms
|
||||||
lettuce:
|
lettuce:
|
||||||
pool:
|
pool:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user