feat: 沿程鱼类变化情况二级页面tab页签数据
This commit is contained in:
parent
6865cf7317
commit
7e89aefe6a
@ -93,6 +93,12 @@ public class WeFishController {
|
||||
return ResponseResult.successData(weFishService.getWeFishDetailList(dataSourceRequest));
|
||||
}
|
||||
|
||||
@PostMapping("/we/fisht/statTab/GetKendoListCust")
|
||||
@Operation(summary = "沿程鱼类变化情况二级页面tab页签数据")
|
||||
public ResponseResult getWeFishStatTabList(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||
return ResponseResult.successData(weFishService.getWeFishStatTabList(dataSourceRequest));
|
||||
}
|
||||
|
||||
@PostMapping("/we/fishList/stat/qgc/GetKendoListCust")
|
||||
@Operation(summary = "环保部-水生生态调查-水生生态面板")
|
||||
public ResponseResult getQgcFishListStat(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||
|
||||
@ -0,0 +1,20 @@
|
||||
package com.yfd.platform.qgc_env.wte.entity.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@Schema(description = "沿程鱼类变化情况二级页面tab页签数据")
|
||||
public class WeFishStatTabVo {
|
||||
|
||||
@Schema(description = "鱼类类型")
|
||||
private String ty;
|
||||
|
||||
@Schema(description = "鱼类类型名称")
|
||||
private String tyName;
|
||||
|
||||
@Schema(description = "鱼类数量")
|
||||
private Long num;
|
||||
}
|
||||
@ -8,6 +8,7 @@ import com.yfd.platform.qgc_env.wte.entity.vo.WeFishDetailVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeMsstbprptVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeFishPointQgcVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeFishStatQgcVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeFishStatTabVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeFishTQgcVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeStaticsVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeTeSpecialAnimalVo;
|
||||
@ -44,6 +45,8 @@ public interface WeFishService {
|
||||
|
||||
DataSourceResult<WeFishDetailVo> getWeFishDetailList(DataSourceRequest dataSourceRequest);
|
||||
|
||||
DataSourceResult<WeFishStatTabVo> getWeFishStatTabList(DataSourceRequest dataSourceRequest);
|
||||
|
||||
DataSourceResult<WeFishListStatQgcVo> getQgcFishListStat(DataSourceRequest dataSourceRequest);
|
||||
|
||||
DataSourceResult<WeFishPointQgcVo> getQgcWeFishPoint(DataSourceRequest dataSourceRequest);
|
||||
|
||||
@ -16,6 +16,7 @@ import com.yfd.platform.qgc_env.wte.entity.vo.WeFishDetailVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeMsstbprptVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeFishPointQgcVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeFishStatQgcVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeFishStatTabVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeFishTQgcVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeRvcdYearVo;
|
||||
import com.yfd.platform.qgc_env.wte.entity.vo.WeStaticsVo;
|
||||
@ -464,6 +465,35 @@ public class WeFishServiceImpl implements WeFishService {
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DataSourceResult<WeFishStatTabVo> getWeFishStatTabList(DataSourceRequest dataSourceRequest) {
|
||||
Map<String, Object> paramMap = new HashMap<>();
|
||||
DataSourceRequest.FilterDescriptor filter = dataSourceRequest == null ? null : dataSourceRequest.getFilter();
|
||||
|
||||
String baseId = firstNonBlankWeFishFilter(filter, "baseId", "base_id");
|
||||
String rstcd = getFirstWeFishFilterText(filter, "stcd");
|
||||
String rvcd = firstNonBlankWeFishFilter(filter, "rvcd", "hbrvcd");
|
||||
String yr = getFirstWeFishFilterText(filter, "yr");
|
||||
|
||||
String sql = buildWeFishStatTabSql(baseId, rstcd, rvcd, yr, paramMap);
|
||||
List<WeFishStatTabVo> list = microservicDynamicSQLMapper.getAllListWithResultType(
|
||||
sql,
|
||||
paramMap,
|
||||
WeFishStatTabVo.class
|
||||
);
|
||||
if (CollUtil.isNotEmpty(list)) {
|
||||
for (WeFishStatTabVo item : list) {
|
||||
item.setTyName(resolveTyName(toWeFishIntegerValue(item.getTy())));
|
||||
}
|
||||
}
|
||||
|
||||
DataSourceResult<WeFishStatTabVo> result = new DataSourceResult<>();
|
||||
result.setData(list);
|
||||
result.setTotal(list == null ? 0L : list.size());
|
||||
result.setAggregates(new HashMap<>());
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DataSourceResult<WeFishStatQgcVo> getQgcWeFishStatList(DataSourceRequest dataSourceRequest) {
|
||||
Map<String, Object> paramMap = new HashMap<>();
|
||||
@ -1004,6 +1034,59 @@ public class WeFishServiceImpl implements WeFishService {
|
||||
return sql.toString();
|
||||
}
|
||||
|
||||
private String buildWeFishStatTabSql(String baseId,
|
||||
String rstcd,
|
||||
String rvcd,
|
||||
String yr,
|
||||
Map<String, Object> paramMap) {
|
||||
StringBuilder sql = new StringBuilder();
|
||||
sql.append("SELECT COUNT(DISTINCT fish.FTP) AS num, ")
|
||||
.append("CASE ")
|
||||
.append("WHEN dict.SPEC_ORIGIN = 2 THEN '1' ")
|
||||
.append("WHEN dict.SPEC_ORIGIN = 1 AND NVL(dict.PTYPE, -1) <> 6 THEN '2' ")
|
||||
.append("WHEN dict.SPEC_ORIGIN = 1 AND dict.PTYPE = 6 THEN '3' ")
|
||||
.append("END AS ty ")
|
||||
.append("FROM SD_WE_B_H section ")
|
||||
.append("INNER JOIN SD_WE_R we ON section.STCD = we.STCD ")
|
||||
.append(" AND NVL(we.IS_DELETED, 0) = 0 ")
|
||||
.append(" AND NVL(we.STATUS, 1) = 1 ")
|
||||
.append("INNER JOIN SD_WEFISH_R fish ON we.ID = fish.WER_ID ")
|
||||
.append(" AND NVL(fish.IS_DELETED, 0) = 0 ")
|
||||
.append("LEFT JOIN SD_FISHDICTORY_B dict ON fish.FTP = dict.ID ")
|
||||
.append(" AND NVL(dict.IS_DELETED, 0) = 0 ")
|
||||
.append("WHERE NVL(section.USFL, 0) = 1 ");
|
||||
|
||||
if (StrUtil.isNotBlank(baseId)) {
|
||||
paramMap.put("weFishStatTabBaseId", baseId);
|
||||
sql.append("AND section.BASE_ID = #{map.weFishStatTabBaseId} ");
|
||||
}
|
||||
if (StrUtil.isNotBlank(rvcd)) {
|
||||
paramMap.put("weFishStatTabRvcd", rvcd);
|
||||
sql.append("AND section.HBRVCD = #{map.weFishStatTabRvcd} ");
|
||||
}
|
||||
if (StrUtil.isNotBlank(rstcd)) {
|
||||
paramMap.put("weFishStatTabRstcd", rstcd);
|
||||
sql.append("AND section.RSTCD = #{map.weFishStatTabRstcd} ");
|
||||
}
|
||||
if (StrUtil.isNotBlank(yr)) {
|
||||
paramMap.put("weFishStatTabYr", yr);
|
||||
sql.append("AND TO_CHAR(we.TM, 'yyyy') = #{map.weFishStatTabYr} ");
|
||||
}
|
||||
|
||||
sql.append("AND CASE ")
|
||||
.append("WHEN dict.SPEC_ORIGIN = 2 THEN '1' ")
|
||||
.append("WHEN dict.SPEC_ORIGIN = 1 AND NVL(dict.PTYPE, -1) <> 6 THEN '2' ")
|
||||
.append("WHEN dict.SPEC_ORIGIN = 1 AND dict.PTYPE = 6 THEN '3' ")
|
||||
.append("END IS NOT NULL ")
|
||||
.append("GROUP BY CASE ")
|
||||
.append("WHEN dict.SPEC_ORIGIN = 2 THEN '1' ")
|
||||
.append("WHEN dict.SPEC_ORIGIN = 1 AND NVL(dict.PTYPE, -1) <> 6 THEN '2' ")
|
||||
.append("WHEN dict.SPEC_ORIGIN = 1 AND dict.PTYPE = 6 THEN '3' ")
|
||||
.append("END ")
|
||||
.append("ORDER BY ty ASC");
|
||||
return sql.toString();
|
||||
}
|
||||
|
||||
private List<WeFishDetailVo> buildWeFishDetailResult(List<Map<String, Object>> rows) {
|
||||
List<WeFishDetailVo> result = new ArrayList<>();
|
||||
if (CollUtil.isEmpty(rows)) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user