Procházet zdrojové kódy

Merge branch 'lvy' of http://219.151.181.73:3000/zhuwei/bladex into test-merge-02

# Conflicts:
#	blade-service-api/blade-business-api/src/main/java/org/springblade/business/dto/TrialSeleInspectionRecordBaseInfoDTO.java
#	blade-service-api/blade-business-api/src/main/java/org/springblade/business/dto/TrialSelfInspectionRecordDTO.java
#	blade-service-api/blade-business-api/src/main/java/org/springblade/business/entity/TrialSelfInspectionRecord.java
#	blade-service/blade-business/src/main/java/org/springblade/business/controller/TrialDetectionController.java
lvy před 3 měsíci
rodič
revize
8e5260312b

+ 10 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/dto/TrialSeleInspectionRecordBaseInfoDTO.java

@@ -71,7 +71,17 @@ public class TrialSeleInspectionRecordBaseInfoDTO implements Serializable {
 	@ApiModelProperty("判断依据:规范id")
 	private Long standardId;
 
+	@ApiModelProperty("规范信息ids")
+	private String standardInfoIds;
+
+
+	@ApiModelProperty("规范信息")
+	private List<StandardVo> standardInfos;
+
 	@ApiModelProperty("样品信息")
+	private TrialSampleInfo trialSampleInfo;
+
+	@ApiModelProperty("样品信息列表")
 	private List<TrialSampleInfo> trialSampleInfoList;
 
 	@ApiModelProperty("设备信息和使用信息")

+ 1 - 2
blade-service-api/blade-business-api/src/main/java/org/springblade/business/dto/TrialSelfInspectionRecordDTO.java

@@ -40,6 +40,5 @@ public class TrialSelfInspectionRecordDTO extends TrialSelfInspectionRecord {
     @ApiModelProperty(value = "旧报告编号")
     private String oldReportNumber;
 
-    @ApiModelProperty("判断依据:规范id")
-    private Long standardId;
+
 }

+ 3 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/entity/TrialSelfInspectionRecord.java

@@ -83,4 +83,7 @@ public class TrialSelfInspectionRecord extends BaseEntity {
     @ApiModelProperty("判断依据:规范id")
     private Long standardId;
 
+    @ApiModelProperty("规范信息")
+    private String standardInfoIds;
+
 }

+ 74 - 7
blade-service/blade-business/src/main/java/org/springblade/business/controller/TrialDetectionController.java

@@ -565,7 +565,7 @@ public class TrialDetectionController extends BladeController {
         }
         vo.setSupervisionUnit(contractInfo.getSupervisionUnitName());
         vo.setLabName(contractInfo.getLaboratoryName());
-        vo.setContractName(contractInfo.getContractNumber());
+        vo.setContractName(contractInfo.getContractName());
         if (id != null) {
             TrialSelfInspectionRecord record = jdbcTemplate.query("select * from u_trial_self_inspection_record where id = " + id, new BeanPropertyRowMapper<>(TrialSelfInspectionRecord.class)).stream().findAny().orElse(null);
             if (record != null) {
@@ -578,15 +578,37 @@ public class TrialDetectionController extends BladeController {
                     }
                 }
                 List<TrialSelfSample> selfSampleList = jdbcTemplate.query("select * from u_trial_self_sample where self_id = " + id, new BeanPropertyRowMapper<>(TrialSelfSample.class));
+
                 if (!selfSampleList.isEmpty()) {
                     String samplingIds = selfSampleList.stream().map(TrialSelfSample::getSamplingId).map(String::valueOf).collect(Collectors.joining(","));
                     List<TrialSampleInfo> trialSampleInfoList = jdbcTemplate.query("select * from u_trial_sample_info where id in (" + samplingIds + ")", new BeanPropertyRowMapper<>(TrialSampleInfo.class));
                     vo.setTrialSampleInfoList(trialSampleInfoList);
+                    vo.setTrialSampleInfo(trialSampleInfoList.isEmpty() ? new TrialSampleInfo() : trialSampleInfoList.get(0));
                 }
                 if (vo.getProjectPosition() == null) {
                     vo.setProjectPosition(record.getProjectPosition());
                 }
                 vo.setStandardId(record.getStandardId());
+                vo.setStandardInfoIds(record.getStandardInfoIds());
+                if (record.getStandardInfoIds() != null) {
+                    List<StandardInfo> standardInfoList = jdbcTemplate.query("select * from u_standard_info where id in (" + record.getStandardInfoIds() + ")", new BeanPropertyRowMapper<>(StandardInfo.class));
+                    if (!standardInfoList.isEmpty()) {
+                        Set<Long> ids = standardInfoList.stream().map(StandardInfo::getParentId).collect(Collectors.toSet());
+                        List<StandardInfo> parentStandardInfoList = jdbcTemplate.query("select * from u_standard_info where id in (" + org.apache.commons.lang.StringUtils.join(ids, ",") + ")", new BeanPropertyRowMapper<>(StandardInfo.class));
+                        Map<Long, List<StandardInfo>> map = standardInfoList.stream().collect(Collectors.groupingBy(StandardInfo::getParentId));
+                        List<TrialSeleInspectionRecordBaseInfoDTO.StandardVo> standardVos = new ArrayList<>();
+                        parentStandardInfoList.forEach(standardInfo -> {
+                            TrialSeleInspectionRecordBaseInfoDTO.StandardVo standardVo = new TrialSeleInspectionRecordBaseInfoDTO.StandardVo();
+                            List<StandardInfo> list = map.get(standardInfo.getId());
+                            if (list != null && !list.isEmpty()) {
+                                standardVo.setId(list.get(0).getId());
+                                standardVo.setName(standardInfo.getName());
+                                standardVos.add(standardVo);
+                            }
+                        });
+                        vo.setStandardInfos(standardVos);
+                    }
+                }
                 vo.setReportNo(record.getReportNo());
                 vo.setRecordNo(record.getRecordNo());
                 // 获取设备信息和使用信息
@@ -647,16 +669,61 @@ public class TrialDetectionController extends BladeController {
     @ApiOperationSupport(order = 30)
     @ApiOperation(value = "根据 standardId 查询 样品品种,代号和强度等级", notes = "standardId")
     public R<Map<String, List<StandardInfo>>> getStandardInfoByStandardId( @RequestParam Long standardId) {
-        List<StandardInfo> list = uStandardInfoService.list(Wrappers.<StandardInfo>lambdaQuery().eq(StandardInfo::getStandardId, standardId).eq(StandardInfo::getType, 1)
-                .eq(StandardInfo::getParentId, 0).and(query -> query.eq(StandardInfo::getName, "样品品种").or().eq(StandardInfo::getName, "代号").or().eq(StandardInfo::getName, "强度等级")));
+        List<StandardInfo> list = uStandardInfoService.list(Wrappers.<StandardInfo>lambdaQuery().eq(StandardInfo::getStandardId, standardId).eq(StandardInfo::getType, 1));
         if (list == null || list.isEmpty()) {
             return R.data(new HashMap<>());
         }
-        List<Long> ids = list.stream().map(StandardInfo::getId).collect(Collectors.toList());
-        List<StandardInfo> childList = uStandardInfoService.list(Wrappers.<StandardInfo>lambdaQuery().in(StandardInfo::getParentId, ids).eq(StandardInfo::getType, 1));
-        Map<Long, List<StandardInfo>> map = childList.stream().collect(Collectors.groupingBy(StandardInfo::getParentId));
+        Map<Long, List<StandardInfo>> map = list.stream().collect(Collectors.groupingBy(StandardInfo::getParentId));
         Map<String, List<StandardInfo>> result = new HashMap<>();
-        list.forEach(standardInfo -> result.put(standardInfo.getName(), map.get(standardInfo.getId()) == null ? new ArrayList<>() : map.get(standardInfo.getId())));
+        List<StandardInfo> standardInfos = map.get(0L);
+        if (standardInfos != null) {
+            standardInfos.forEach(standardInfo -> result.put(standardInfo.getName(), map.get(standardInfo.getId()) == null ? new ArrayList<>() : map.get(standardInfo.getId())));
+        }
         return R.data(result);
     }
+
+//    /**
+//     * 根据 设备id 查询 设备信息以及设备使用信息
+//     */
+//    @GetMapping("/self/getDeviceInfoByIds")
+//    @ApiOperationSupport(order = 30)
+//    @ApiOperation(value = "根据 设备id 查询 设备信息以及设备使用信息", notes = "standardId")
+//    public R<List<TrailDeviceUseInfoDTO>> getDeviceInfoByIds( @RequestParam String deviceInfoIds) {
+//        if (deviceInfoIds.isEmpty()) {
+//            return R.data(new ArrayList<>());
+//        }
+//        // 校验设备id
+//        try {
+//            String[] split = deviceInfoIds.split(",");
+//            for (String s : split) {
+//                long id = Long.parseLong(s);
+//                if (id <= 0) {
+//                    return R.fail("设备id格式错误");
+//                }
+//            }
+//        } catch (Exception e) {
+//            return R.fail("设备id格式错误");
+//        }
+//        List<TrialDeviceInfo> deviceInfoList = jdbcTemplate.query("select * from u_device_info where id in (" + deviceInfoIds + ")", new BeanPropertyRowMapper<>(TrialDeviceInfo.class));
+//        deviceInfoList.forEach(deviceInfo -> {
+//
+//        });
+//
+//        trialDeviceUseList.forEach(trailDeviceUseInfoDTO -> {
+//            TrialDeviceInfo deviceInfo = trialDeviceInfoMap.get(trailDeviceUseInfoDTO.getDeviceInfoId());
+//            if (deviceInfo != null) {
+//                trailDeviceUseInfoDTO.setMeasuringRange(deviceInfo.getMeasuringRange());
+//                trailDeviceUseInfoDTO.setAccuracy(deviceInfo.getAccuracy());
+//                // 计算使用时长
+//                trailDeviceUseInfoDTO.setUseDuration(DateUtils.dateDiff(trailDeviceUseInfoDTO.getStartDate(), trailDeviceUseInfoDTO.getEndDate()));
+//            }
+//        });
+//
+////        List<TrailDeviceUseInfoDTO> trialDeviceUseList = jdbcTemplate.query("select * from u_trial_device_use where self_inspection_record_id = " + id, new BeanPropertyRowMapper<>(TrailDeviceUseInfoDTO.class));
+////        if (!trialDeviceUseList.isEmpty()) {
+////            Set<Long> ids = trialDeviceUseList.stream().map(TrailDeviceUseInfoDTO::getDeviceInfoId).collect(Collectors.toSet());
+////
+////        }
+//        return R.data(trialDeviceUseList);
+//    }
 }

+ 25 - 9
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialSelfInspectionRecordServiceImpl.java

@@ -1673,7 +1673,7 @@ public class TrialSelfInspectionRecordServiceImpl extends BaseServiceImpl<TrialS
         StringSPUtils spUtils = new StringSPUtils();
         List<TrialSelfInspectionRecord> result = baseMapper.selectAll(dto.getNodeId(), dto.getContractId(), dto.getType());
         List<TrialSelfInspectionRecord> trialSelfInspectionRecords = result.stream().filter(Objects::nonNull).collect(Collectors.toList());
-
+        TrialSelfInspectionRecord trialSelfInspectionRecord = trialSelfInspectionRecords.stream().filter(item -> Objects.equals(item.getId(), dto.getId())).findFirst().orElse(null);
         //两种类型同时生成
         if (dto.getTableType().contains("1,2") || dto.getTableType().contains("2,1") || dto.getTableType().contains("9,10") || dto.getTableType().contains("10,9")) {
             String maxRecordNo = "";
@@ -1731,26 +1731,34 @@ public class TrialSelfInspectionRecordServiceImpl extends BaseServiceImpl<TrialS
             } else {
                 //记录表
                 if (StringUtils.isNotEmpty(maxRecordNo)) {
+                    HashMap<String, String> stringStringHashMap = new HashMap<>();
+                    stringStringHashMap.put("type","记录表");
+                    if (trialSelfInspectionRecord != null) {
+                        stringStringHashMap.put("valueStr",trialSelfInspectionRecord.getRecordNo());
+                        return stringStringHashMap;
+                    }
                     String str1 = "JL" +
                             "-" + contract.getContractNumber() +
                             "-" + year +
                             "-" + spUtils.getStringSP(wbsTreePrivate.getNodeName().trim()) +
                             "-" + maxRecordNo;
-                    HashMap<String, String> stringStringHashMap = new HashMap<>();
-                    stringStringHashMap.put("type","记录表");
                     stringStringHashMap.put("valueStr",str1);
                     return stringStringHashMap;
                 }
 
                 //报告单
                 if (StringUtils.isNotEmpty(maxReportNo)) {
+                    HashMap<String, String> stringStringHashMap = new HashMap<>();
+                    stringStringHashMap.put("type","报告单");
+                    if (trialSelfInspectionRecord != null) {
+                        stringStringHashMap.put("valueStr",trialSelfInspectionRecord.getReportNo());
+                        return stringStringHashMap;
+                    }
                     String str2 = "BG" +
                             "-" + contract.getContractNumber() +
                             "-" + year +
                             "-" + spUtils.getStringSP(wbsTreePrivate.getNodeName().trim()) +
                             "-" + maxReportNo;
-                    HashMap<String, String> stringStringHashMap = new HashMap<>();
-                    stringStringHashMap.put("type","报告单");
                     stringStringHashMap.put("valueStr",str2);
                     return stringStringHashMap;
                 }
@@ -1787,13 +1795,17 @@ public class TrialSelfInspectionRecordServiceImpl extends BaseServiceImpl<TrialS
                     throw new ServiceException("未找到当前项目合同段的节点信息,操作失败!");
                 } else {
                     //记录表
+                    HashMap<String, String> stringStringHashMap = new HashMap<>();
+                    stringStringHashMap.put("type","记录表");
+                    if (trialSelfInspectionRecord != null) {
+                        stringStringHashMap.put("valueStr",trialSelfInspectionRecord.getReportNo());
+                        return stringStringHashMap;
+                    }
                     String str1 = "JL" +
                             "-" + contract.getContractNumber() +
                             "-" + year +
                             "-" + spUtils.getStringSP(wbsTreePrivate.getNodeName().trim()) +
                             "-" + maxRecordNo;
-                    HashMap<String, String> stringStringHashMap = new HashMap<>();
-                    stringStringHashMap.put("type","记录表");
                     stringStringHashMap.put("valueStr",str1);
                     return stringStringHashMap;
                 }
@@ -1830,13 +1842,17 @@ public class TrialSelfInspectionRecordServiceImpl extends BaseServiceImpl<TrialS
                     throw new ServiceException("未找到当前项目合同段的节点信息,操作失败!");
                 } else {
                     //报告单
+                    HashMap<String, String> stringStringHashMap = new HashMap<>();
+                    stringStringHashMap.put("type","报告单");
+                    if (trialSelfInspectionRecord != null) {
+                        stringStringHashMap.put("valueStr",trialSelfInspectionRecord.getReportNo());
+                        return stringStringHashMap;
+                    }
                     String str2 = "BG" +
                             "-" + contract.getContractNumber() +
                             "-" + year +
                             "-" + spUtils.getStringSP(wbsTreePrivate.getNodeName().trim()) +
                             "-" + maxReportNo;
-                    HashMap<String, String> stringStringHashMap = new HashMap<>();
-                    stringStringHashMap.put("type","报告单");
                     stringStringHashMap.put("valueStr",str2);
                     return stringStringHashMap;
                 }

+ 11 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/WbsTreeController.java

@@ -532,6 +532,17 @@ public class WbsTreeController extends BladeController {
         return R.data(result);
     }
 
+    /**
+     * 根据节点类型,内业资料类型查询节点数据
+     */
+    @GetMapping("/getQueryValueByNodeType")
+    @ApiOperationSupport(order = 21)
+    @ApiOperation(value = "根据节点类型,内业资料类型查询节点数据", notes = "传入wbsId、projectId、nodeType、majorDataType")
+    public Object getQueryValueByNodeType(@RequestParam String wbsId, @RequestParam String projectId, @RequestParam(required = false,defaultValue = "6") Integer nodeType, @RequestParam(required = false, defaultValue = "-1") Integer majorDataType) {
+        Object result = wbsTreeService.getQueryValueByNodeType(wbsId, projectId, nodeType, majorDataType);
+        return R.data(result);
+    }
+
     @GetMapping("setContractIsPid")
     public void setContractIsPid(){
         //为合同段节点没有设置is_pid的字段设置isPid

+ 2 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/IWbsTreeService.java

@@ -82,4 +82,6 @@ public interface IWbsTreeService extends BaseService<WbsTree> {
     Object getQueryValueByType(String queryValue, String wbsId, String projectId, String type);
 
     List<WbsTreePrivate> getTitleRange(String projectId);
+
+    Object getQueryValueByNodeType(String wbsId, String projectId, Integer nodeType, Integer majorDataType);
 }

+ 1 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExcelTabServiceImpl.java

@@ -2659,6 +2659,7 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
                 trialSelfInspectionRecordDTO.setContractId(contractId);
                 trialSelfInspectionRecordDTO.setNodeId(nodeId);
                 trialSelfInspectionRecordDTO.setType(type);
+                trialSelfInspectionRecordDTO.setId(groupId);
                 HashMap<String, String> stringStringHashMap = trialSelfInspectionRecordClient.previewGeneratedReportOrRecordNum(trialSelfInspectionRecordDTO);
                 String mapType = stringStringHashMap.get("type");
                 if("报告单".equals(mapType)){

+ 18 - 18
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/TextdictInfoServiceImpl.java

@@ -94,6 +94,21 @@ public class TextdictInfoServiceImpl extends ServiceImpl<TextdictInfoMapper, Tex
                     }else {
                         textdict = new ArrayList<>();
                     }
+                    List<TextdictInfoVO> textdictList= baseMapper.selectTextdictInfoByExcelId(page, textdictInfo);
+                    if (textdict == null || textdict.isEmpty()) {
+                        textdict = textdictList;
+                    } else if (textdictList != null && !textdictList.isEmpty()) {
+                        Map<String, Map<String, TextdictInfoVO>> map = textdict.stream().collect(Collectors.groupingBy(TextdictInfoVO::getColKey, Collectors.toMap(TextdictInfoVO::getSigRoleId, v -> v, (v1, v2) -> v1)));
+                        List<TextdictInfoVO> collect = textdictList.stream().filter(textdictInfoVO -> {
+                            Map<String, TextdictInfoVO> voMap = map.get(textdictInfoVO.getColKey());
+                            textdictInfoVO.setIsSystem(2);
+                            if (voMap != null && !voMap.isEmpty() ) {
+                                return voMap.get(textdictInfoVO.getSigRoleId()) == null;
+                            }
+                            return true;
+                        }).collect(Collectors.toList());
+                        textdict.addAll(collect);
+                    }
                     if (!keys.isEmpty()) {
                         TextdictInfoVO temp = null;
                         if (textdict != null && !textdict.isEmpty()) {
@@ -107,12 +122,12 @@ public class TextdictInfoServiceImpl extends ServiceImpl<TextdictInfoMapper, Tex
                             temp.setType(2);
                         }
                         // 查询电签库配置
-                        List<TextdictInfoVO> textdictList = iSignConfigService.hasSignConfig(privateInfo.getInitTableName(), keys, temp);
+                        List<TextdictInfoVO> textdictConfigList = iSignConfigService.hasSignConfig(privateInfo.getInitTableName(), keys, temp);
                         if (textdict == null || textdict.isEmpty()) {
-                            textdict = textdictList;
+                            textdict = textdictConfigList;
                         } else {
                             Map<String, Map<String, TextdictInfoVO>> map = textdict.stream().collect(Collectors.groupingBy(TextdictInfoVO::getColKey, Collectors.toMap(TextdictInfoVO::getSigRoleId, v -> v, (v1, v2) -> v1)));
-                            List<TextdictInfoVO> collect = textdictList.stream().filter(textdictInfoVO -> {
+                            List<TextdictInfoVO> collect = textdictConfigList.stream().filter(textdictInfoVO -> {
                                 Map<String, TextdictInfoVO> voMap = map.get(textdictInfoVO.getColKey());
                                 if (voMap != null && !voMap.isEmpty() ) {
                                     return voMap.get(textdictInfoVO.getSigRoleId()) == null;
@@ -122,21 +137,6 @@ public class TextdictInfoServiceImpl extends ServiceImpl<TextdictInfoMapper, Tex
                             textdict.addAll(collect);
                         }
                     }
-                    List<TextdictInfoVO> textdictList= baseMapper.selectTextdictInfoByExcelId(page, textdictInfo);
-                    if (textdict == null || textdict.isEmpty()) {
-                        textdict = textdictList;
-                    } else if (textdictList != null && !textdictList.isEmpty()) {
-                        Map<String, Map<String, TextdictInfoVO>> map = textdict.stream().collect(Collectors.groupingBy(TextdictInfoVO::getColKey, Collectors.toMap(TextdictInfoVO::getSigRoleId, v -> v, (v1, v2) -> v1)));
-                        List<TextdictInfoVO> collect = textdictList.stream().filter(textdictInfoVO -> {
-                            Map<String, TextdictInfoVO> voMap = map.get(textdictInfoVO.getColKey());
-                            textdictInfoVO.setIsSystem(2);
-                            if (voMap != null && !voMap.isEmpty() ) {
-                                return voMap.get(textdictInfoVO.getSigRoleId()) == null;
-                            }
-                            return true;
-                        }).collect(Collectors.toList());
-                        textdict.addAll(collect);
-                    }
                 }else{
                     textdict = baseMapper.selectTextdictInfoByExcelId(page, textdictInfo);
                 }

+ 27 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreeServiceImpl.java

@@ -1,6 +1,7 @@
 package org.springblade.manager.service.impl;
 
 import cn.hutool.core.date.DateTime;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -558,6 +559,32 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
         return this.baseMapper.getTitleRange(Long.valueOf(projectId));
     }
 
+    @Override
+    public Object getQueryValueByNodeType(String wbsId, String projectId, Integer nodeType, Integer majorDataType) {
+        Set<WbsTreePrivate> resultNodes = new HashSet<>();
+        LambdaQueryWrapper<WbsTreePrivate> wrapper = Wrappers.<WbsTreePrivate>lambdaQuery()
+                .eq(WbsTreePrivate::getType, 1).eq(WbsTreePrivate::getWbsId, wbsId).eq(WbsTreePrivate::getProjectId, projectId).eq(WbsTreePrivate::getNodeType, nodeType);
+        if (majorDataType != null) {
+            if (majorDataType > 0) {
+                wrapper.eq(WbsTreePrivate::getMajorDataType, majorDataType);
+            } else if (majorDataType == -1) {
+                wrapper.and(wrapper1 -> wrapper1.isNull(WbsTreePrivate::getMajorDataType).or().eq(WbsTreePrivate::getMajorDataType, 0));
+            }
+        }
+        List<WbsTreePrivate> wbsTreePrivates = wbsTreePrivateMapper.selectList(wrapper);
+        this.getParentNodesPrivateWbs(wbsTreePrivates, resultNodes, projectId, wbsId);
+        resultNodes.addAll(wbsTreePrivates);
+        List<WbsTreePrivateQueryValueVO> wbsTreePrivateQueryValueVOS = BeanUtil.copyProperties(resultNodes, WbsTreePrivateQueryValueVO.class);
+        if (wbsTreePrivateQueryValueVOS.size() > 0) {
+            List<WbsTreePrivateQueryValueVO> listRoot = wbsTreePrivateQueryValueVOS.stream().filter(f -> f.getParentId() == 0L).collect(Collectors.toList());
+            Map<Long, List<WbsTreePrivateQueryValueVO>> mapAll = wbsTreePrivateQueryValueVOS.stream().collect(Collectors.groupingBy(WbsTreePrivateQueryValueVO::getParentId));
+            this.buildWbsTreePrivateByGetQueryValueByType(listRoot, mapAll);
+            this.sortListPrivate(listRoot);
+            return listRoot;
+        }
+        return null;
+    }
+
     /**
      * 公有排序
      */