Browse Source

按需求调整代码:
1、信息点排序按一级标签排序

lijie 3 years ago
parent
commit
745efdb6f6

+ 137 - 136
dmp-rwd-datautils/src/test/java/com/persagy/dmp/rwd/dic/ImportKnowledgeForEdit.java

@@ -48,142 +48,142 @@ public class ImportKnowledgeForEdit {
         // 空间分区
         //initSpace(classes);
         // 专业\系统\设备\部件
-        initEquipment(classes,"major");
-        writeFuncSqlToFile(classes, "major");
-        classes.clear();
-        // 工具
-        initToolOrMaterial(classes,"tool","工具类");
-        writeFuncSqlToFile(classes, "tool");
-        classes.clear();
-        // 耗材
-        initToolOrMaterial(classes,"material","耗材类 ");
-        writeFuncSqlToFile(classes, "material");
-        classes.clear();
-        // 省市区编号
-        initCityLocation(classes,"cityLocation","省市区编号");
-        writeFuncSqlToFile(classes, "cityLocation");
-        classes.clear();
-        // 气候分区
-        initClimaticDivision(classes,"climaticDivision","气候分区");
-        writeFuncSqlToFile(classes, "climaticDivision");
-        classes.clear();
-        // 信息点编码词汇
-        initFuncidCodeVocabulary(classes,"funcidCodeVocabulary","Sheet1");
-        writeFuncSqlToFile(classes, "funcidCodeVocabulary");
-        classes.clear();
-        // 地理分区
-        initGeographicalDivision(classes,"geographicalDivision","地理分区");
-        writeFuncSqlToFile(classes, "geographicalDivision");
-        classes.clear();
-        // 城市发展水平
-        initCityDevelopmentLevel(classes,"cityDevelopmentLevel","城市发展水平");
-        writeFuncSqlToFile(classes, "cityDevelopmentLevel");
-        classes.clear();
-        // 天气状态
-        initWeatherConditions(classes,"weatherConditions","天气状态");
-        writeFuncSqlToFile(classes, "weatherConditions");
-        classes.clear();
-        // 空气风力等级
-        initAirWindRating(classes,"airWindRating","空气风力等级");
-        writeFuncSqlToFile(classes, "airWindRating");
-        classes.clear();
-        // 方向代码
-        initDirectionCode(classes,"directionCode","方向代码");
-        writeFuncSqlToFile(classes, "directionCode");
-        classes.clear();
-        // 抗震设防烈度
-        initSeismicFortificationIntensity(classes,"seismicFortificationIntensity","抗震设防烈度");
-        writeFuncSqlToFile(classes, "seismicFortificationIntensity");
-        classes.clear();
-        // 防尘等级
-        initDustproofLevel(classes,"dustproofLevel","防护等级");
-        writeFuncSqlToFile(classes, "dustproofLevel");
-        classes.clear();
-        // 防尘等级
-        initWaterproofLevel(classes,"waterproofLevel","防护等级");
-        writeFuncSqlToFile(classes, "waterproofLevel");
-        classes.clear();
-        // 污秽等级
-        initFilthLevel(classes,"filthLevel","污秽等级");
-        writeFuncSqlToFile(classes, "filthLevel");
-        classes.clear();
-        // 污染等级
-        initContaminatedLevel(classes,"contaminatedLevel","污染等级");
-        writeFuncSqlToFile(classes, "contaminatedLevel");
-        classes.clear();
-        // 职业分类
-        initOccupationalClassification(classes,"occupationalClassification","职业分类");
-        writeFuncSqlToFile(classes, "occupationalClassification");
-        classes.clear();
-        // 项目类型
-        initProjectType(classes,"projectType","项目类型");
-        writeFuncSqlToFile(classes, "projectType");
-        classes.clear();
-        // 建筑功能类型
-        initBuildFuncType(classes,"buildFuncType","建筑功能类型");
-        writeFuncSqlToFile(classes, "buildFuncType");
-        classes.clear();
-        // 空间功能类型
-        initSpaceFuncType(classes,"spaceFuncType","空间功能类型");
-        writeFuncSqlToFile(classes, "spaceFuncType");
-        classes.clear();
-        // 商业租赁业态类型
-        initCommercialLeasingType(classes,"commercialLeasingType","商业租赁业态类型");
-        writeFuncSqlToFile(classes, "commercialLeasingType");
-        classes.clear();
-        // 通用面积树
-        initThreeLevelData(classes,"universalAreaTree","A0");
-        writeFuncSqlToFile(classes, "universalAreaTree");
-        classes.clear();
-        // 商业综合体面积树
-        initFourLevelData(classes,"businessSynthesisAreaTree","A1");
-        writeFuncSqlToFile(classes, "businessSynthesisAreaTree");
-        classes.clear();
-        // 办公面积树
-        initFourLevelData(classes,"officeSpaceTree","A2");
-        writeFuncSqlToFile(classes, "officeSpaceTree");
-        classes.clear();
-        // 商场面积树
-        initFourLevelData(classes,"shoppingMallAreaTree","A3");
-        writeFuncSqlToFile(classes, "shoppingMallAreaTree");
-        classes.clear();
-        // 宾馆酒店面积树
-        initFourLevelData(classes,"hotelAreaTree","A4");
-        writeFuncSqlToFile(classes, "hotelAreaTree");
-        classes.clear();
-        // 医院面积树
-        initFourLevelData(classes,"hospitalAreaTree","A5");
-        writeFuncSqlToFile(classes, "hospitalAreaTree");
-        classes.clear();
-        // 学校面积树
-        initFourLevelData(classes,"schoolAreaTree","A6");
-        writeFuncSqlToFile(classes, "schoolAreaTree");
-        classes.clear();
-        // 通用分项树
-        initSevenLevelData(classes,"generalSubTree","S0");
-        writeFuncSqlToFile(classes, "generalSubTree");
-        classes.clear();
-        // 商业综合体分项树
-        initFiveLevelData(classes,"businessSynthesisItemizedTree","S1");
-        writeFuncSqlToFile(classes, "businessSynthesisItemizedTree");
-        classes.clear();
-        // 办公分项树
-        initFiveLevelData(classes,"officeItemizedTree","S2");
-        writeFuncSqlToFile(classes, "officeItemizedTree");
-        classes.clear();
-        // 商场分项树
-        initFiveLevelData(classes,"shoppingMallItemTree","S3");
-        writeFuncSqlToFile(classes, "shoppingMallItemTree");
-        classes.clear();
-        // 宾馆酒店分项树
-        initFiveLevelData(classes,"hotelSubTree","S4");
-        writeFuncSqlToFile(classes, "hotelSubTree");
-        classes.clear();
-        // 医院分项树
-        initFiveLevelData(classes,"hospitalItemizedTree","S4");
-        writeFuncSqlToFile(classes, "hospitalItemizedTree");
-        classes.clear();
-        // 医院分项树
+//        initEquipment(classes,"major");
+//        writeFuncSqlToFile(classes, "major");
+//        classes.clear();
+//        // 工具
+//        initToolOrMaterial(classes,"tool","工具类");
+//        writeFuncSqlToFile(classes, "tool");
+//        classes.clear();
+//        // 耗材
+//        initToolOrMaterial(classes,"material","耗材类 ");
+//        writeFuncSqlToFile(classes, "material");
+//        classes.clear();
+//        // 省市区编号
+//        initCityLocation(classes,"cityLocation","省市区编号");
+//        writeFuncSqlToFile(classes, "cityLocation");
+//        classes.clear();
+//        // 气候分区
+//        initClimaticDivision(classes,"climaticDivision","气候分区");
+//        writeFuncSqlToFile(classes, "climaticDivision");
+//        classes.clear();
+//        // 信息点编码词汇
+//        initFuncidCodeVocabulary(classes,"funcidCodeVocabulary","Sheet1");
+//        writeFuncSqlToFile(classes, "funcidCodeVocabulary");
+//        classes.clear();
+//        // 地理分区
+//        initGeographicalDivision(classes,"geographicalDivision","地理分区");
+//        writeFuncSqlToFile(classes, "geographicalDivision");
+//        classes.clear();
+//        // 城市发展水平
+//        initCityDevelopmentLevel(classes,"cityDevelopmentLevel","城市发展水平");
+//        writeFuncSqlToFile(classes, "cityDevelopmentLevel");
+//        classes.clear();
+//        // 天气状态
+//        initWeatherConditions(classes,"weatherConditions","天气状态");
+//        writeFuncSqlToFile(classes, "weatherConditions");
+//        classes.clear();
+//        // 空气风力等级
+//        initAirWindRating(classes,"airWindRating","空气风力等级");
+//        writeFuncSqlToFile(classes, "airWindRating");
+//        classes.clear();
+//        // 方向代码
+//        initDirectionCode(classes,"directionCode","方向代码");
+//        writeFuncSqlToFile(classes, "directionCode");
+//        classes.clear();
+//        // 抗震设防烈度
+//        initSeismicFortificationIntensity(classes,"seismicFortificationIntensity","抗震设防烈度");
+//        writeFuncSqlToFile(classes, "seismicFortificationIntensity");
+//        classes.clear();
+//        // 防尘等级
+//        initDustproofLevel(classes,"dustproofLevel","防护等级");
+//        writeFuncSqlToFile(classes, "dustproofLevel");
+//        classes.clear();
+//        // 防尘等级
+//        initWaterproofLevel(classes,"waterproofLevel","防护等级");
+//        writeFuncSqlToFile(classes, "waterproofLevel");
+//        classes.clear();
+//        // 污秽等级
+//        initFilthLevel(classes,"filthLevel","污秽等级");
+//        writeFuncSqlToFile(classes, "filthLevel");
+//        classes.clear();
+//        // 污染等级
+//        initContaminatedLevel(classes,"contaminatedLevel","污染等级");
+//        writeFuncSqlToFile(classes, "contaminatedLevel");
+//        classes.clear();
+//        // 职业分类
+//        initOccupationalClassification(classes,"occupationalClassification","职业分类");
+//        writeFuncSqlToFile(classes, "occupationalClassification");
+//        classes.clear();
+//        // 项目类型
+//        initProjectType(classes,"projectType","项目类型");
+//        writeFuncSqlToFile(classes, "projectType");
+//        classes.clear();
+//        // 建筑功能类型
+//        initBuildFuncType(classes,"buildFuncType","建筑功能类型");
+//        writeFuncSqlToFile(classes, "buildFuncType");
+//        classes.clear();
+//        // 空间功能类型
+//        initSpaceFuncType(classes,"spaceFuncType","空间功能类型");
+//        writeFuncSqlToFile(classes, "spaceFuncType");
+//        classes.clear();
+//        // 商业租赁业态类型
+//        initCommercialLeasingType(classes,"commercialLeasingType","商业租赁业态类型");
+//        writeFuncSqlToFile(classes, "commercialLeasingType");
+//        classes.clear();
+//        // 通用面积树
+//        initThreeLevelData(classes,"universalAreaTree","A0");
+//        writeFuncSqlToFile(classes, "universalAreaTree");
+//        classes.clear();
+//        // 商业综合体面积树
+//        initFourLevelData(classes,"businessSynthesisAreaTree","A1");
+//        writeFuncSqlToFile(classes, "businessSynthesisAreaTree");
+//        classes.clear();
+//        // 办公面积树
+//        initFourLevelData(classes,"officeSpaceTree","A2");
+//        writeFuncSqlToFile(classes, "officeSpaceTree");
+//        classes.clear();
+//        // 商场面积树
+//        initFourLevelData(classes,"shoppingMallAreaTree","A3");
+//        writeFuncSqlToFile(classes, "shoppingMallAreaTree");
+//        classes.clear();
+//        // 宾馆酒店面积树
+//        initFourLevelData(classes,"hotelAreaTree","A4");
+//        writeFuncSqlToFile(classes, "hotelAreaTree");
+//        classes.clear();
+//        // 医院面积树
+//        initFourLevelData(classes,"hospitalAreaTree","A5");
+//        writeFuncSqlToFile(classes, "hospitalAreaTree");
+//        classes.clear();
+//        // 学校面积树
+//        initFourLevelData(classes,"schoolAreaTree","A6");
+//        writeFuncSqlToFile(classes, "schoolAreaTree");
+//        classes.clear();
+//        // 通用分项树
+//        initSevenLevelData(classes,"generalSubTree","S0");
+//        writeFuncSqlToFile(classes, "generalSubTree");
+//        classes.clear();
+//        // 商业综合体分项树
+//        initFiveLevelData(classes,"businessSynthesisItemizedTree","S1");
+//        writeFuncSqlToFile(classes, "businessSynthesisItemizedTree");
+//        classes.clear();
+//        // 办公分项树
+//        initFiveLevelData(classes,"officeItemizedTree","S2");
+//        writeFuncSqlToFile(classes, "officeItemizedTree");
+//        classes.clear();
+//        // 商场分项树
+//        initFiveLevelData(classes,"shoppingMallItemTree","S3");
+//        writeFuncSqlToFile(classes, "shoppingMallItemTree");
+//        classes.clear();
+//        // 宾馆酒店分项树
+//        initFiveLevelData(classes,"hotelSubTree","S4");
+//        writeFuncSqlToFile(classes, "hotelSubTree");
+//        classes.clear();
+//        // 医院分项树
+//        initFiveLevelData(classes,"hospitalItemizedTree","S4");
+//        writeFuncSqlToFile(classes, "hospitalItemizedTree");
+//        classes.clear();
+        // 对象间关系
         initObjectRelation(classes,"objectRelation","新版");
         writeFuncSqlToFile(classes, "objectRelation");
         classes.clear();
@@ -290,6 +290,7 @@ public class ImportKnowledgeForEdit {
                 model.setCodePath(refKey+"-"+target.thirdLevelCode+"-"+target.fourthLevelCode);
                 model.setParentCode(target.thirdLevelCode);
                 ObjectNode dataSource = objectMapper.createObjectNode();
+                dataSource.put("imageClassification",target.secondLevelName);
                 dataSource.put("relationshipObjectCategory",target.firstLevelName);
                 dataSource.put("levelName","边");
                 if (StringUtils.isNotBlank(edgeDirectivity)){

+ 23 - 4
dmp-rwd-edit/src/main/java/com/persagy/dmp/rwd/edit/service/FuncidDefService.java

@@ -1,6 +1,7 @@
 package com.persagy.dmp.rwd.edit.service;
 
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.StrUtil;
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import com.persagy.common.criteria.CriteriaUtils;
@@ -68,12 +69,30 @@ public class FuncidDefService {
      * Update By lijie 2021/6/22 12:19
      */
     private void sortFuncidForEdit(List<FuncidDefModel> list) {
-        // TODO:暂时不做,通过Excel格式归纳到一起.一级按照“技术参数-运行参数-设定参数-台账参数”的逻辑展示;
+        // 一级按照“技术参数-运行参数-设定参数-台账参数”的逻辑展示;
+
         // 二级按通用信息点、个性化信息点的excel表格进行排序展示;
         // 三级按照excel表格的逻辑进行排序展示
-        list.sort(Comparator
-                .comparing(FuncidDefModel::getShareType)
-                .thenComparingInt(FuncidDefModel::getOrderSeq));
+        list.sort((k1,k2)->{
+            if (StrUtil.isBlank(k1.getFirstTag()) && StrUtil.isBlank(k2.getFirstTag())){
+                return 0;
+            }
+            if (StrUtil.isBlank(k2.getFirstTag())){
+                k2.setFirstTag("");
+            }
+            if (StrUtil.isBlank(k1.getFirstTag())){
+                k1.setFirstTag("");
+            }
+            int firstTagSort = k1.getFirstTag().compareTo(k2.getFirstTag());
+            if (0==firstTagSort){
+                int compareTo = StrUtil.blankToDefault(k1.getShareType(),"").compareTo(StrUtil.blankToDefault(k2.getShareType(),""));
+                if (0==compareTo) {
+                    return k1.getOrderSeq().compareTo(k2.getOrderSeq());
+                }
+                return compareTo;
+            }
+            return firstTagSort;
+        });
     }
 
     public PagedResponse<FuncidDefModel> query(JacksonCriteria criteria) {