feat: 根据基地查询基地流域列表
This commit is contained in:
parent
5ba2f5e9bb
commit
daf0c4e890
@ -87,7 +87,7 @@ public class SwaggerConfig {
|
||||
@Bean
|
||||
public GroupedOpenApi groupEnvVDApi() {
|
||||
return GroupedOpenApi.builder()
|
||||
.group("3.3.1 全过程-生态环保数据服务-过鱼设施-过鱼监测")
|
||||
.group("3.3.1 全过程-生态环保数据服务-过鱼设施-过鱼监测(VD视频模块)")
|
||||
.packagesToScan("com.yfd.platform.qgc_env.vd.controller")
|
||||
.build();
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package com.yfd.platform.qgc_base.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.yfd.platform.common.DataSourceRequest;
|
||||
import com.yfd.platform.annotation.Log;
|
||||
import com.yfd.platform.config.ResponseResult;
|
||||
import com.yfd.platform.qgc_base.domain.SdHbrvDic;
|
||||
@ -112,4 +113,10 @@ public class SdHbrvDicController {
|
||||
@RequestParam(required = false) String baseid) {
|
||||
return ResponseResult.successData(hbrvDicService.regDropdown(hbrvnm, baseid));
|
||||
}
|
||||
}
|
||||
|
||||
@PostMapping("/wbsb/getHbrvdList")
|
||||
@Operation(summary = "根据基地查询基地流域列表")
|
||||
public ResponseResult getHbrvdList(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||
return ResponseResult.successData(hbrvDicService.getHbrvdList(dataSourceRequest));
|
||||
}
|
||||
}
|
||||
|
||||
@ -0,0 +1,21 @@
|
||||
package com.yfd.platform.qgc_base.entity.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
@Schema(description = "基地流域树节点")
|
||||
public class HbrvWbsVo {
|
||||
|
||||
@Schema(description = "基地流域编码")
|
||||
private String hbrvcd;
|
||||
|
||||
@Schema(description = "基地流域名称")
|
||||
private String hbrvcdName;
|
||||
|
||||
@Schema(description = "基地编码")
|
||||
private String baseId;
|
||||
|
||||
@Schema(description = "基地名称")
|
||||
private String baseName;
|
||||
}
|
||||
@ -2,7 +2,9 @@ package com.yfd.platform.qgc_base.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.yfd.platform.common.DataSourceRequest;
|
||||
import com.yfd.platform.qgc_base.domain.SdHbrvDic;
|
||||
import com.yfd.platform.qgc_base.entity.vo.HbrvWbsVo;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
@ -58,4 +60,6 @@ public interface ISdHbrvDicService extends IService<SdHbrvDic> {
|
||||
|
||||
List<SdHbrvDic> regDropdown(String hbrvnm, String baseid);
|
||||
|
||||
}
|
||||
List<HbrvWbsVo> getHbrvdList(DataSourceRequest dataSourceRequest);
|
||||
|
||||
}
|
||||
|
||||
@ -1,22 +1,32 @@
|
||||
package com.yfd.platform.qgc_base.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.yfd.platform.common.DataSourceLoadOptionsBase;
|
||||
import com.yfd.platform.common.DataSourceRequest;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.yfd.platform.qgc_data.domain.SysUserDataScope;
|
||||
import com.yfd.platform.qgc_data.mapper.SysUserDataScopeMapper;
|
||||
import com.yfd.platform.qgc_base.domain.SdEngInfoBH;
|
||||
import com.yfd.platform.qgc_base.domain.SdHbrvDic;
|
||||
import com.yfd.platform.qgc_base.domain.SdHydrobase;
|
||||
import com.yfd.platform.qgc_base.entity.vo.HbrvWbsVo;
|
||||
import com.yfd.platform.qgc_base.mapper.SdEngInfoBHMapper;
|
||||
import com.yfd.platform.qgc_base.mapper.SdHbrvDicMapper;
|
||||
import com.yfd.platform.qgc_base.mapper.SdHydrobaseMapper;
|
||||
import com.yfd.platform.qgc_base.service.ISdHbrvDicService;
|
||||
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
||||
import com.yfd.platform.utils.SecurityUtils;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Comparator;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@ -33,6 +43,9 @@ public class SdHbrvDicServiceImpl extends ServiceImpl<SdHbrvDicMapper, SdHbrvDic
|
||||
@Resource
|
||||
private SdEngInfoBHMapper engInfoBHMapper;
|
||||
|
||||
@Resource
|
||||
private SdHydrobaseMapper hydrobaseMapper;
|
||||
|
||||
private SdHbrvDicMapper hbrvDicMapper;
|
||||
@Override
|
||||
public Page<SdHbrvDic> queryPageList(Page<SdHbrvDic> page, String hbrvnm, String baseid) {
|
||||
@ -200,4 +213,50 @@ public class SdHbrvDicServiceImpl extends ServiceImpl<SdHbrvDicMapper, SdHbrvDic
|
||||
.orderByAsc(SdHbrvDic::getBaseid,SdHbrvDic::getOrderIndex)
|
||||
.list();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HbrvWbsVo> getHbrvdList(DataSourceRequest dataSourceRequest) {
|
||||
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
||||
String baseId = loadOptions == null ? null : QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "baseId");
|
||||
|
||||
LambdaQueryWrapper<SdHbrvDic> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(StringUtils.hasText(baseId), SdHbrvDic::getBaseid, baseId)
|
||||
.eq(SdHbrvDic::getIsDeleted, 0)
|
||||
.eq(SdHbrvDic::getEnabled, 1)
|
||||
.orderByAsc(SdHbrvDic::getBaseid, SdHbrvDic::getOrderIndex, SdHbrvDic::getHbrvcd);
|
||||
|
||||
List<SdHbrvDic> hbrvList = this.list(wrapper);
|
||||
if (hbrvList.isEmpty()) {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
List<String> baseIds = hbrvList.stream()
|
||||
.map(SdHbrvDic::getBaseid)
|
||||
.filter(StringUtils::hasText)
|
||||
.distinct()
|
||||
.toList();
|
||||
|
||||
Map<String, String> baseNameMap;
|
||||
if (!baseIds.isEmpty()) {
|
||||
baseNameMap = hydrobaseMapper.selectBatchIds(baseIds).stream()
|
||||
.collect(Collectors.toMap(SdHydrobase::getBaseid, SdHydrobase::getBasename, (a, b) -> a));
|
||||
} else {
|
||||
baseNameMap = new HashMap<>();
|
||||
}
|
||||
|
||||
return hbrvList.stream()
|
||||
.map(item -> toHbrvWbsVo(item, baseNameMap.get(item.getBaseid())))
|
||||
.sorted(Comparator.comparing(HbrvWbsVo::getBaseId, Comparator.nullsLast(String::compareTo))
|
||||
.thenComparing(HbrvWbsVo::getHbrvcd, Comparator.nullsLast(String::compareTo)))
|
||||
.toList();
|
||||
}
|
||||
|
||||
private HbrvWbsVo toHbrvWbsVo(SdHbrvDic source, String baseName) {
|
||||
HbrvWbsVo vo = new HbrvWbsVo();
|
||||
vo.setHbrvcd(source.getHbrvcd());
|
||||
vo.setHbrvcdName(source.getHbrvnm());
|
||||
vo.setBaseId(source.getBaseid());
|
||||
vo.setBaseName(baseName);
|
||||
return vo;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user