feat: 查询梯级流域图流域

This commit is contained in:
tangwei 2026-07-07 18:25:01 +08:00
parent ee931da67e
commit cf0ffeea5f
4 changed files with 51 additions and 2 deletions

View File

@ -63,4 +63,10 @@ public class SdEngMonitorController {
public ResponseResult getRsvrcscdBRvcdList(@RequestBody DataSourceRequest dataSourceRequest) {
return ResponseResult.successData(engInfoBHService.getRsvrcscdBRvcdList(dataSourceRequest));
}
@PostMapping("/rsvrcscdb/getQgcRvcd")
@Operation(summary = "查询梯级流域图流域")
public ResponseResult getQgcRvcdList(@RequestBody DataSourceRequest dataSourceRequest) {
return ResponseResult.successData(engInfoBHService.getQgcRvcdList(dataSourceRequest));
}
}

View File

@ -0,0 +1,11 @@
package com.yfd.platform.qgc_base.domain.vo;
import lombok.Data;
@Data
public class EngQgcRvcdVo {
private String rvcd;
private String rvnm;
}

View File

@ -9,6 +9,7 @@ import com.yfd.platform.qgc_base.domain.SdEngInfoBHRequest;
import com.yfd.platform.qgc_base.domain.vo.EngBaseInfoVo;
import com.yfd.platform.qgc_base.domain.vo.EngEiaapprovalVo;
import com.yfd.platform.qgc_base.domain.vo.EngOperatVo;
import com.yfd.platform.qgc_base.domain.vo.EngQgcRvcdVo;
import com.yfd.platform.qgc_base.domain.vo.EngRsvrcscdBVo;
import com.yfd.platform.qgc_base.domain.vo.EngRsvrcscdRvcdVo;
import com.yfd.platform.qgc_base.domain.vo.EngPointVo;
@ -95,4 +96,6 @@ public interface ISdEngInfoBHService extends IService<SdEngInfoBH> {
DataSourceResult<EngRsvrcscdBVo> getRsvrcscdBKendoList(DataSourceRequest dataSourceRequest);
DataSourceResult<EngRsvrcscdRvcdVo> getRsvrcscdBRvcdList(DataSourceRequest dataSourceRequest);
DataSourceResult<EngQgcRvcdVo> getQgcRvcdList(DataSourceRequest dataSourceRequest);
}

View File

@ -27,6 +27,7 @@ import com.yfd.platform.qgc_base.domain.SdEngInfoBHRequest;
import com.yfd.platform.qgc_base.domain.vo.EngBaseInfoVo;
import com.yfd.platform.qgc_base.domain.vo.EngEiaapprovalVo;
import com.yfd.platform.qgc_base.domain.vo.EngOperatVo;
import com.yfd.platform.qgc_base.domain.vo.EngQgcRvcdVo;
import com.yfd.platform.qgc_base.domain.vo.EngRsvrcscdBVo;
import com.yfd.platform.qgc_base.domain.vo.EngRsvrcscdRvcdVo;
import com.yfd.platform.qgc_base.domain.vo.EngPointVo;
@ -2994,14 +2995,19 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
sql.append("SELECT DISTINCT ")
.append("dic.HBRVCD AS wbsCode, ")
.append("dic.HBRVNM AS wbsName, ")
.append("dic.BASEID AS objId ")
.append("dic.BASEID AS objId, ")
.append("NVL(dic.BASEID, 'ZZZZZZZZ') AS baseOrder, ")
.append("NVL(dic.ORDER_INDEX, 999999) AS orderIndex ")
.append("FROM SD_HBRV_DIC dic ")
.append("INNER JOIN SD_RSVRCSCD_B r ON r.RVCD = dic.HBRVCD AND NVL(r.IS_DELETED, 0) = 0 ")
.append("WHERE NVL(dic.IS_DELETED, 0) = 0 ")
.append("AND NVL(dic.ENABLED, 1) = 1 ");
// 动态过滤条件原有代码
appendRsvrcscdRvcdPresetFilters(dataSourceRequest == null ? null : dataSourceRequest.getFilter(), sql, paramMap, new int[]{0});
sql.append(" ORDER BY NVL(dic.BASEID, 'ZZZZZZZZ') ASC, NVL(dic.ORDER_INDEX, 999999) ASC, dic.HBRVCD ASC");
// 使用别名排序
sql.append(" ORDER BY baseOrder ASC, orderIndex ASC, wbsCode ASC");
List<EngRsvrcscdRvcdVo> list = microservicDynamicSQLMapper.getAllListWithResultType(
sql.toString(), paramMap, EngRsvrcscdRvcdVo.class);
@ -3010,6 +3016,29 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
return result;
}
@Override
public DataSourceResult<EngQgcRvcdVo> getQgcRvcdList(DataSourceRequest dataSourceRequest) {
DataSourceResult<EngQgcRvcdVo> result = new DataSourceResult<>();
result.setAggregates(new HashMap<>());
StringBuilder sql = new StringBuilder();
sql.append("SELECT DISTINCT ")
.append("rv.RVCD AS rvcd, ")
.append("rv.RVNM AS rvnm, ")
.append("NVL(rv.ORDER_INDEX, 999999) AS order_index ")
.append("FROM SD_RVCD_DIC rv ")
.append("INNER JOIN MS_LYSXJGX_B rel ON rel.QGC_RVCD = rv.RVCD AND NVL(rel.IS_DELETED, 0) = 0 ")
.append("WHERE NVL(rv.IS_DELETED, 0) = 0 ")
.append("AND NVL(rv.ENABLED, 1) = 1 ")
.append("ORDER BY order_index ASC, rv.RVCD ASC");
List<EngQgcRvcdVo> list = microservicDynamicSQLMapper.getAllListWithResultType(
sql.toString(), new HashMap<>(), EngQgcRvcdVo.class);
result.setData(list);
result.setTotal(list.size());
return result;
}
private String buildRsvrcscdBFilterCondition(DataSourceRequest.FilterDescriptor filter,
Map<String, Object> paramMap,
int[] indexHolder) {