zhuwei 6 өдөр өмнө
parent
commit
b3f039c611

+ 6 - 6
blade-service/blade-manager/src/main/java/org/springblade/manager/formula/ITurnPointCalculator.java

@@ -131,11 +131,11 @@ public interface ITurnPointCalculator {
         return true;
     }
 
-
+    // 数据校验
     static boolean identifying(LevelInfo levelInfo, List<TurnPoint> tmp,TurnPoint tp,boolean isHead,boolean isTail ){
         if (isHead) {
-            if (tp.checkBmd()) {
-                tp.setType(TurnPoint.BMD);
+            if (tp.checkBmd()) { ///*合法水准点,设计标高、后视必须为数字*/
+                tp.setType(TurnPoint.BMD); //起始点,水准点
                 tp.setBmd(tp.getSj0L() + tp.getH0L());
                 levelInfo.setBmdName(tp.getName());
                 levelInfo.setBmdSj(tp.getSj0L());
@@ -144,7 +144,7 @@ public interface ITurnPointCalculator {
                 return false;
             }
         } else if (tp.getName().matches(ZD_REG)) {
-            tp.setType(TurnPoint.ZD);
+            tp.setType(TurnPoint.ZD); //转点
         } else if (isTail) {
             if (StringUtils.isEquals(tp.getName(), levelInfo.getBmdName())) {
                 if (tp.getSj() == null) {
@@ -155,9 +155,9 @@ public interface ITurnPointCalculator {
                     tp.setSc(tp.getSj0L() + ldx);
                     tp.setDx(ldx);
                 }
-                tp.setType(TurnPoint.CLOSE);
+                tp.setType(TurnPoint.CLOSE);//闭合点
             } else {
-                tp.setType(TurnPoint.CE);
+                tp.setType(TurnPoint.CE); //普通测点
                 tmp.add(tp);
                 TurnPoint close = new TurnPoint(levelInfo, new HashMap<>());
                 close.setName(levelInfo.getBmdName());

+ 2 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/formula/impl/FormulaTurnPoint.java

@@ -82,6 +82,7 @@ public class FormulaTurnPoint implements FormulaStrategy {
             List<List<Map<String, Object>>> total = group(tableData);
             /*项目配置*/
             LevelInfo info = new LevelInfo();
+            //数获取G8偏差范围
             String dev=Expression.parse(F_DEV).calculate(tec.getConstantMap());
             if(Func.isNotBlank(dev)){
                 info.setDx(dev);
@@ -93,7 +94,7 @@ public class FormulaTurnPoint implements FormulaStrategy {
             }
             /*获取水准点里程*/
             milestone(tec.getContractId(),info);
-           /* 分组计算*/
+           /* 分组计算 ITurnPointCalculator.create 并组装值*/
             List<List<TurnPoint>> result = total.stream().map(e->ITurnPointCalculator.create(e,configMap,info)).collect(Collectors.toList());
             /*附加属性如:顶面和底面高程判断*/
             forG8(cur,result, (Map<String, Object>)tec.getConstantMap().computeIfAbsent("G8", k -> new HashMap<>()),tec);

+ 3 - 70
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/FormulaServiceImpl.java

@@ -1324,7 +1324,7 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
             checkTable = op.get().getInitTableName();
         }
         for (FormData fd : tec.formDataList) {
-            if(fd.getCode().equals("_20240528110420_1795289980302524416:key_8")){
+            if(fd.getCode().equals("m_20220929100217_1575304930258845696:key_10")){
                 System.out.println("111");
             }
             if (fd.verify()) {
@@ -1449,75 +1449,8 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
                             /*错位计算偏移量重置*/
                             ele.stream().filter(s -> s.getOffset() > 0).forEach(FormData::restore);
                         } else {
-                            // 做特殊监抽检76 现浇墩、台帽或盖梁抽检记录 特殊处理
-                            Object data = null;
-//                            Boolean flage=true;
-//                            List<TableInfo> tableInfos = tec.getTableInfoList();
-//                            if(!tableInfos.isEmpty()){
-//                                //只有监理才特殊处理
-//                                flage=tableInfos.get(0).getClassify().equals("2");
-//                            }
-//                            if(flage){
-//                                if(f.contains("G8") && f.contains("dx")){
-//                                    String data2 ="";
-//                                    String map = formula.getMap();
-//                                    JSONObject jsonObject = JSON.parseObject(map);
-//                                    String tabKey =jsonObject.keySet().stream().toArray()[0]+"";
-//                                    String[] split = tabKey.split(":");
-//
-//                                    List<NodeTable> tableList = tec.getTableAll();
-//                                    List<Map<String, String>> dataMap = new ArrayList<>();
-//                                    List<TableInfo> tableAll = tec.getTableInfoList();
-//
-//                                    for(NodeTable appwbsTree : tableList){
-//                                        if(appwbsTree.getInitTableName().equals(split[0])){
-//                                            String p_key= appwbsTree.getPKeyId()+"";
-//                                            for(TableInfo nodeTable:tableAll){
-//                                                if(p_key.contains(nodeTable.getPkeyId())){
-//                                                    System.out.println(appwbsTree.getNodeName());
-//                                                    dataMap.add(nodeTable.getDataMap());
-//                                                }
-//                                            }
-//                                        }
-//                                    }
-//                                    List<KeyMapper> keyMappers = tec.getKeyMappers();
-//                                    // 高程偏差 key
-//                                    String dataKeyVal = "key_3";
-//                                /*for(KeyMapper datakey:keyMappers){
-//                                    if(datakey.getEName().indexOf("高程偏差")>=0 && split[0].equals(datakey.getTableName()) && p_key.contains(datakey.getPkId()+"")){
-//                                        dataKeyVal = datakey.getField();
-//                                    }
-//                                }*/
-//                                    //
-//                                    for(Map<String, String> dataMa:dataMap){
-//                                        String dataVal = dataMa.get(split[1]);
-//                                        String[] split1 = dataVal.split("☆");
-//                                        Arrays.sort(split1, Comparator.comparingInt(valu -> Integer.parseInt(((valu+"").split("_\\^_")[1]).split("_")[0])));
-//                                        String dataVal2 = dataMa.get(dataKeyVal);
-//                                        String[] split2 = dataVal2.split("☆");
-//                                        Arrays.sort(split2, Comparator.comparingInt(valu -> Integer.parseInt(((valu+"").split("_\\^_")[1]).split("_")[0])));
-//                                        for(String s:split1){
-//                                            if(s.indexOf("K")>=0){
-//                                                String s1 = "_^_"+s.split("_\\^_")[1].split("_")[0];
-//                                                for(String s2:split2){
-//                                                    if(s2.indexOf(s1)>=0){
-//                                                        data2 = data2 + s2.split("_\\^_")[0] + ",";
-//                                                    }
-//                                                }
-//                                            }
-//                                        }
-//                                    }
-//                                    if(!data2.isEmpty()){
-//                                        data = data2.substring(0,data2.length()-1);
-//                                    }
-//                                    else {
-//                                        data =Expression.parse(formula.getFormula()).calculate(currentMap);
-//                                    }
-//                                }
-//                            }else{
-//
-//                            }
-                            data = Expression.parse(formula.getFormula()).calculate(currentMap);
+                            // 特殊处理 获取值
+                            Object data = Expression.parse(formula.getFormula()).calculate(currentMap);
                             write(tec, fd, data);
                         }
                     } catch (Exception e) {