Kaynağa Gözat

质检-资料填报-同步质检资料
cl08表单数据有问题

LHB 2 ay önce
ebeveyn
işleme
5674dbcd7d

+ 62 - 60
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreeContractServiceImpl.java

@@ -1899,38 +1899,42 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
                                     values.set(i, String.join("☆",heightDeviationList));
                                 }
                             }
-                            if(rowMin==null){
-                                continue;
-                            }
-                            List<String> list = new ArrayList<>();
+                            if(rowMin!=null){
+                                List<String> list = new ArrayList<>();
 
-                            //获取当前key对应的坐标
-                            Set<String> strings = coordinateMap.get(initTabName);
-                            String index = null;
-                            for (String string : strings) {
-                                String[] split = string.split("__");
-                                if(Objects.equals(split[0],actualElevationNew)){
-                                    index = split[1];
+                                //获取当前key对应的坐标
+                                Set<String> strings = coordinateMap.get(initTabName);
+                                String index = null;
+                                for (String string : strings) {
+                                    String[] split = string.split("__");
+                                    if(Objects.equals(split[0],actualElevationNew)){
+                                        index = split[1];
+                                    }
                                 }
-                            }
-                            //按照最小行数来计算
-                            for (int i = rowMin; i <= rowMax; i++) {
-                                BigDecimal designed = designedElevationNewMap.get(i);
-                                BigDecimal height = heightDeviationNewMap.get(i);
+                                //按照最小行数来计算
+                                for (int i = rowMin; i <= rowMax; i++) {
+                                    BigDecimal designed = designedElevationNewMap.get(i);
+                                    BigDecimal height = heightDeviationNewMap.get(i);
 
-                                if(designed == null || height == null){
-                                    continue;
+                                    if(designed == null || height == null){
+                                        continue;
+                                    }
+                                    BigDecimal v = designed.add(height.divide(new BigDecimal(1000)));
+                                    //第5列,索引为4
+                                    list.add(v.doubleValue() + "_^_"+ i + "_" + index);
+                                }
+                                //未获取到当前key的坐标就不设置值
+                                if(index != null){
+                                    //设置实际标高的值
+                                    if(keys.indexOf(actualElevationNew) > -1){
+                                        values.set(keys.indexOf(actualElevationNew), String.join("☆",list));
+                                    }else{
+                                        keys.add(actualElevationNew);
+                                        values.add(String.join("☆",list));
+                                    }
                                 }
-                                BigDecimal v = designed.add(height.divide(new BigDecimal(1000)));
-                                //第5列,索引为4
-                                list.add(v.doubleValue() + "_^_"+ i + "_" + index);
-                            }
-                            //未获取到当前key的坐标就不设置值
-                            if(index == null){
-                                continue;
                             }
-                            //设置实际标高的值
-                            values.set(keys.indexOf(actualElevationNew), String.join("☆",list));
+
                         }else if(planePositionTableName.equals(initTabName)){
                             //CL10平面位置检测记录表(监理)
                             //差值
@@ -1993,42 +1997,40 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
                                 }
                                 values.set(i, String.join("☆",list));
                             }
-                            if(rowMin==null){
-                                continue;
-                            }
-                            List<String> list = new ArrayList<>();
-                            //获取当前key对应的坐标
-                            Set<String> strings = coordinateMap.get(initTabName);
-                            String index = null;
-                            for (String string : strings) {
-                                String[] split = string.split("__");
-                                if(Objects.equals(split[0],deviationNew)){
-                                    index = split[1];
+                            if(rowMin!=null){
+                                List<String> list = new ArrayList<>();
+                                //获取当前key对应的坐标
+                                Set<String> strings = coordinateMap.get(initTabName);
+                                String index = null;
+                                for (String string : strings) {
+                                    String[] split = string.split("__");
+                                    if(Objects.equals(split[0],deviationNew)){
+                                        index = split[1];
+                                    }
                                 }
-                            }
-                            //按照最小行数来计算
-                            for (int i = rowMin; i <= rowMax; i++) {
-                                BigDecimal x = differenceNewXMap.get(i);
-                                BigDecimal y = differenceNewYMap.get(i);
+                                //按照最小行数来计算
+                                for (int i = rowMin; i <= rowMax; i++) {
+                                    BigDecimal x = differenceNewXMap.get(i);
+                                    BigDecimal y = differenceNewYMap.get(i);
 
-                                if(x == null || y == null){
-                                    continue;
-                                }
-                                BigDecimal sqrt = sqrt(x.multiply(x).add(y.multiply(y)), 0);
+                                    if(x == null || y == null){
+                                        continue;
+                                    }
+                                    BigDecimal sqrt = sqrt(x.multiply(x).add(y.multiply(y)), 0);
 
-                                //第9列,索引为8
-                                list.add(sqrt.intValue() + "_^_"+ i + "_" + index);
-                            }
-                            //未获取到当前key的坐标就不设置值
-                            if(index == null){
-                                continue;
-                            }
-                            //设置实际标高的值
-                            if(keys.indexOf(deviationNew) > -1){
-                                values.set(keys.indexOf(deviationNew), String.join("☆",list));
-                            }else{
-                                keys.add(deviationNew);
-                                values.add(String.join("☆",list));
+                                    //第9列,索引为8
+                                    list.add(sqrt.intValue() + "_^_"+ i + "_" + index);
+                                }
+                                //未获取到当前key的坐标就不设置值
+                                if(index != null){
+                                    //设置实际标高的值
+                                    if(keys.indexOf(deviationNew) > -1){
+                                        values.set(keys.indexOf(deviationNew), String.join("☆",list));
+                                    }else{
+                                        keys.add(deviationNew);
+                                        values.add(String.join("☆",list));
+                                    }
+                                }
                             }
                         }