feat: 鱼类调查装置锚点信息

This commit is contained in:
tangwei 2026-07-09 09:16:59 +08:00
parent 1240ad91af
commit 04b0f8dd3a
3 changed files with 50 additions and 12 deletions

View File

@ -89,8 +89,15 @@ public class FprMonitorController {
@PostMapping("/sdFprdR/point/getFprdPointList") @PostMapping("/sdFprdR/point/getFprdPointList")
@Operation(summary = "鱼类调查装置锚点信息") @Operation(summary = "鱼类调查装置锚点信息")
public ResponseResult getFprdPointList(@RequestBody FprdRunDataAo ao) { public ResponseResult getFprdPointList(@RequestBody DataSourceRequest dataSourceRequest) {
List<FprdPointInfoVo> result = fprMonitorService.getFprdInfoList(ao); List<FprdPointInfoVo> result = fprMonitorService.getFprdPointList(dataSourceRequest);
return ResponseResult.successData(result);
}
@PostMapping("/point/getFprdPointList")
@Operation(summary = "鱼类调查装置锚点信息(AO入参)")
public ResponseResult getFprdPointListByAo(@RequestBody FprdRunDataAo ao) {
List<FprdPointInfoVo> result = fprMonitorService.getFprdPointList(ao);
return ResponseResult.successData(result); return ResponseResult.successData(result);
} }

View File

@ -31,5 +31,7 @@ public interface FprMonitorService {
List<String> getFishInfo(); List<String> getFishInfo();
List<FprdPointInfoVo> getFprdInfoList(FprdRunDataAo ao); List<FprdPointInfoVo> getFprdPointList(FprdRunDataAo ao);
List<FprdPointInfoVo> getFprdPointList(DataSourceRequest dataSourceRequest);
} }

View File

@ -129,11 +129,24 @@ public class FprMonitorServiceImpl implements FprMonitorService {
} }
@Override @Override
public List<FprdPointInfoVo> getFprdInfoList(FprdRunDataAo ao) { public List<FprdPointInfoVo> getFprdPointList(FprdRunDataAo ao) {
validateFprdRunDataAo(ao); validateFprdPointAo(ao);
return listFprdPointInfo(ao.getBaseId(), ao.getHbrvcd(), ao.getStcd());
}
@Override
public List<FprdPointInfoVo> getFprdPointList(DataSourceRequest dataSourceRequest) {
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
String baseId = QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "baseId");
String hbrvcd = QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "hbrvcd");
String stcd = QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "stcd");
validateFprdPointRequest(baseId);
return listFprdPointInfo(baseId, hbrvcd, stcd);
}
private List<FprdPointInfoVo> listFprdPointInfo(String baseId, String hbrvcd, String stcd) {
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
paramMap.put("baseId", ao.getBaseId());
StringBuilder sql = new StringBuilder("SELECT ") StringBuilder sql = new StringBuilder("SELECT ")
.append("aim.STCD AS stcd, ") .append("aim.STCD AS stcd, ")
@ -179,17 +192,20 @@ public class FprMonitorServiceImpl implements FprMonitorService {
.append(" AND NVL(sttp.ENABLE, 1) = 1 ") .append(" AND NVL(sttp.ENABLE, 1) = 1 ")
.append("WHERE NVL(aim.IS_DELETED, 0) = 0 ") .append("WHERE NVL(aim.IS_DELETED, 0) = 0 ")
.append(" AND aim.STTP = 'FPRD' ") .append(" AND aim.STTP = 'FPRD' ")
.append(" AND aim.LGTD IS NOT NULL ") .append(" AND aim.LGTD IS NOT NULL ");
.append(" AND aim.BASE_ID = #{map.baseId}");
if (StrUtil.isNotBlank(ao.getHbrvcd())) { if (StrUtil.isNotBlank(baseId)) {
sql.append(" AND aim.BASE_ID = #{map.baseId}");
}
paramMap.put("baseId", baseId);
if (StrUtil.isNotBlank(hbrvcd)) {
sql.append(" AND aim.HBRVCD = #{map.hbrvcd}"); sql.append(" AND aim.HBRVCD = #{map.hbrvcd}");
paramMap.put("hbrvcd", ao.getHbrvcd()); paramMap.put("hbrvcd", hbrvcd);
} }
if (StrUtil.isNotBlank(ao.getStcd())) { if (StrUtil.isNotBlank(stcd)) {
sql.append(" AND aim.STCD = #{map.stcd}"); sql.append(" AND aim.STCD = #{map.stcd}");
paramMap.put("stcd", ao.getStcd()); paramMap.put("stcd", stcd);
} }
List<FprdPointInfoVo> resultList = microservicDynamicSQLMapper.getAllListWithResultType( List<FprdPointInfoVo> resultList = microservicDynamicSQLMapper.getAllListWithResultType(
@ -691,6 +707,19 @@ public class FprMonitorServiceImpl implements FprMonitorService {
} }
} }
private void validateFprdPointRequest(String baseId) {
// if (StrUtil.isBlank(baseId)) {
// throw new BizException("基地编码(baseId)不能为空.");
// }
}
private void validateFprdPointAo(FprdRunDataAo ao) {
if (ao == null) {
throw new BizException("请求参数不能为空.");
}
validateFprdPointRequest(ao.getBaseId());
}
private String buildFishDicBaseSql() { private String buildFishDicBaseSql() {
return "SELECT " + return "SELECT " +
"src.ID AS id, " + "src.ID AS id, " +