字典树新增查询功能

This commit is contained in:
xy
2024-11-28 08:38:35 +08:00
parent f1ad74ea2d
commit 1d5ceca9dc
3 changed files with 46 additions and 14 deletions

View File

@@ -8,6 +8,7 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.common.utils.LogUtil;
import com.njcn.system.mapper.SysDicTreePOMapper;
import com.njcn.system.pojo.param.DictTreeParam;
import com.njcn.system.pojo.po.SysDicTreePO;
import com.njcn.system.pojo.vo.DictTreeVO;
@@ -55,9 +56,7 @@ public class DictTreeController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
}
}
/**
* 修改
* @param dicParam 修改参数
@@ -176,5 +175,15 @@ public class DictTreeController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@GetMapping("/queryDictType")
@ApiOperation("获取指标类型")
@ApiImplicitParam(name = "lineId", value = "监测点id", required = true)
public HttpResult<List<SysDicTreePO>> queryDictType(@RequestParam @Validated String lineId) {
String methodDescribe = getMethodDescribe("queryDictType");
List<SysDicTreePO> result = sysDicTreePOService.queryDictType(lineId);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
}

View File

@@ -1,8 +1,8 @@
package com.njcn.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.system.pojo.param.DictTreeParam;
import com.njcn.system.pojo.po.SysDicTreePO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.system.pojo.vo.DictTreeVO;
import java.util.List;
@@ -63,4 +63,6 @@ public interface SysDicTreePOService extends IService<SysDicTreePO> {
* @param code code
*/
List<SysDicTreePO> queryByCodeList(String code);
List<SysDicTreePO> queryDictType(String lineId);
}

View File

@@ -4,28 +4,27 @@ import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.text.StrPool;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.csdevice.pojo.po.CsEquipmentDeliveryPO;
import com.njcn.redis.pojo.enums.AppRedisKey;
import com.njcn.redis.utils.RedisUtil;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.mapper.SysDicTreePOMapper;
import com.njcn.system.pojo.constant.DicState;
import com.njcn.system.pojo.dto.EpdDTO;
import com.njcn.system.pojo.param.DictTreeParam;
import com.njcn.system.pojo.po.SysDicTreePO;
import com.njcn.system.pojo.vo.DictTreeVO;
import com.njcn.system.service.SysDicTreePOService;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.system.mapper.SysDicTreePOMapper;
import com.njcn.system.pojo.po.SysDicTreePO;
import com.njcn.system.service.SysDicTreePOService;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* Description:
* Date: 2023/6/9 14:00【需求编号】
@@ -66,6 +65,9 @@ public class SysDicTreePOServiceImpl extends ServiceImpl<SysDicTreePOMapper, Sys
sysDicTreePO.setPids(BizParamConstant.PARENT_ID);
}
sysDicTreePO.setStatus(0);
if (Objects.nonNull(dictTreeParam.getType())) {
sysDicTreePO.setType(dictTreeParam.getType());
}
result = this.save(sysDicTreePO);
if (result) {
refreshDictTreeCache();
@@ -174,6 +176,25 @@ public class SysDicTreePOServiceImpl extends ServiceImpl<SysDicTreePOMapper, Sys
}).collect(Collectors.toList());
}
@Override
public List<SysDicTreePO> queryDictType(String lineId) {
DictTreeVO vo = queryByCode("Statistical_Type");
LambdaQueryWrapper<SysDicTreePO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SysDicTreePO::getPid,vo.getId())
.eq(SysDicTreePO::getStatus,0)
.orderByDesc(SysDicTreePO::getSort);
char lastChar = lineId.charAt(lineId.length() - 1);
//治理APF指标
if (Objects.equals(lastChar,'0')) {
queryWrapper.eq(SysDicTreePO::getType,3);
}
//通用指标
else {
queryWrapper.eq(SysDicTreePO::getType,2);
}
return this.list(queryWrapper);
}
private List<SysDicTreePO> getChildren(SysDicTreePO sysDicTreePO, List<SysDicTreePO> all) {
return all.stream().filter(item -> item.getPid().equals(sysDicTreePO.getId())).peek(item -> {