|
@@ -3,21 +3,17 @@ package org.springblade.manager.formula;
|
|
import com.mixsmart.utils.ListUtils;
|
|
import com.mixsmart.utils.ListUtils;
|
|
import com.mixsmart.utils.StringUtils;
|
|
import com.mixsmart.utils.StringUtils;
|
|
import org.springblade.core.tool.utils.Func;
|
|
import org.springblade.core.tool.utils.Func;
|
|
-import org.springblade.core.tool.utils.StringPool;
|
|
|
|
-
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
-
|
|
|
|
import static com.mixsmart.utils.CustomFunction.rangeList;
|
|
import static com.mixsmart.utils.CustomFunction.rangeList;
|
|
-import static com.mixsmart.utils.CustomFunction.objToArray;
|
|
|
|
import static java.math.BigDecimal.ROUND_HALF_UP;
|
|
import static java.math.BigDecimal.ROUND_HALF_UP;
|
|
|
|
+import static org.springblade.manager.formula.TurnPoint.*;
|
|
|
|
|
|
/**
|
|
/**
|
|
* @author yangyj
|
|
* @author yangyj
|
|
*/
|
|
*/
|
|
public interface ITurnPointCalculator {
|
|
public interface ITurnPointCalculator {
|
|
- public static final String TURN_POINT_FIELD="测点,仪器高,前视,后视,实测高程,设计高程,偏差值";
|
|
|
|
|
|
|
|
|
|
|
|
static List<Object> create( List<Map<String,Object>> data, LinkedHashMap<String,String> configMap){
|
|
static List<Object> create( List<Map<String,Object>> data, LinkedHashMap<String,String> configMap){
|
|
@@ -33,18 +29,18 @@ public interface ITurnPointCalculator {
|
|
String field =kv.getValue();
|
|
String field =kv.getValue();
|
|
String value= StringUtils.handleNull(dm.get(field));
|
|
String value= StringUtils.handleNull(dm.get(field));
|
|
switch (key){
|
|
switch (key){
|
|
- case "测点":tp.setName(value);break;
|
|
|
|
- case "仪器高":tp.setBmd(value);break;
|
|
|
|
- case "前视":tp.setQ(value);break;
|
|
|
|
- case "后视":tp.setH(value);break;
|
|
|
|
- case "实测高程":tp.setSc(value);break;
|
|
|
|
- case "设计高程":tp.setSj(value);break;
|
|
|
|
- case "偏差值":tp.setDx(value);break;
|
|
|
|
|
|
+ case CD:tp.setName(value);break;
|
|
|
|
+ case YG:tp.setBmd(value);break;
|
|
|
|
+ case HS:tp.setH(value);break;
|
|
|
|
+ case QS:tp.setQ(value);break;
|
|
|
|
+ case SC:tp.setSc(value);break;
|
|
|
|
+ case SJ:tp.setSj(value);break;
|
|
|
|
+ case GC:tp.setDx(value);break;
|
|
default:dataMap.put(key,value);
|
|
default:dataMap.put(key,value);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if(i==0){
|
|
if(i==0){
|
|
- if(StringUtils.isNotEmpty(tp.getSj(),tp.getH())){
|
|
|
|
|
|
+ if(tp.checkBmd()){
|
|
tp.setType(TurnPoint.BMD);
|
|
tp.setType(TurnPoint.BMD);
|
|
tp.setBmd(tp.getSj0L()+tp.getH0L());
|
|
tp.setBmd(tp.getSj0L()+tp.getH0L());
|
|
levelInfo.setBmdName(tp.getName());
|
|
levelInfo.setBmdName(tp.getName());
|
|
@@ -76,10 +72,10 @@ public interface ITurnPointCalculator {
|
|
close.setSc(close.getSj0L()+ldx);
|
|
close.setSc(close.getSj0L()+ldx);
|
|
close.setDx(ldx);
|
|
close.setDx(ldx);
|
|
close.setType(TurnPoint.CLOSE);
|
|
close.setType(TurnPoint.CLOSE);
|
|
- close.getDataMap().put("测点", close.getName());
|
|
|
|
- close.getDataMap().put("仪器高",close.getBmd());
|
|
|
|
- close.getDataMap().put("前视", close.getQ());
|
|
|
|
- close.getDataMap().put("后视", close.getH());
|
|
|
|
|
|
+ close.getDataMap().put(CD, close.getName());
|
|
|
|
+ close.getDataMap().put(YG,close.getBmd());
|
|
|
|
+ close.getDataMap().put(QS, close.getQ());
|
|
|
|
+ close.getDataMap().put(HS, close.getH());
|
|
tmp.add(close);
|
|
tmp.add(close);
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
@@ -155,7 +151,7 @@ public interface ITurnPointCalculator {
|
|
}
|
|
}
|
|
tp.setQ(info.getSightHeight() - tp.getSc0L());
|
|
tp.setQ(info.getSightHeight() - tp.getSc0L());
|
|
} else if (StringUtils.isNotEmpty(tp.getSj())) {
|
|
} else if (StringUtils.isNotEmpty(tp.getSj())) {
|
|
- String dx = rangeList(1, 0, info.getDx(), 0.001, 3, 1).get(0).toString();
|
|
|
|
|
|
+ String dx = rangeList(1, 0, info.getDx(), 1, 0, 1).get(0).toString();
|
|
tp.setDx(dx);
|
|
tp.setDx(dx);
|
|
tp.setSc(tp.getSj0L() + tp.getDx0L());
|
|
tp.setSc(tp.getSj0L() + tp.getDx0L());
|
|
tp.setQ(info.getSightHeight() - tp.getSc0L());
|
|
tp.setQ(info.getSightHeight() - tp.getSc0L());
|
|
@@ -174,13 +170,13 @@ public interface ITurnPointCalculator {
|
|
st.setType(TurnPoint.ZD);
|
|
st.setType(TurnPoint.ZD);
|
|
tp.getLevelInfo().getCloseZd().add(st);
|
|
tp.getLevelInfo().getCloseZd().add(st);
|
|
}
|
|
}
|
|
- tp.getDataMap().put("测点", tp.getName());
|
|
|
|
- tp.getDataMap().put("仪器高", tp.getBmd());
|
|
|
|
- tp.getDataMap().put("前视", tp.getQ());
|
|
|
|
- tp.getDataMap().put("后视", tp.getH());
|
|
|
|
- tp.getDataMap().put("实测高程", tp.getSc());
|
|
|
|
- tp.getDataMap().put("设计高程", tp.getSj());
|
|
|
|
- tp.getDataMap().put("偏差值", StringUtils.number2StringZero(StringUtils.isNotEmpty(tp.getDx())?tp.getDx0L()*1000:"",0));
|
|
|
|
|
|
+ tp.getDataMap().put(CD, tp.getName());
|
|
|
|
+ tp.getDataMap().put(YG, tp.getBmd());
|
|
|
|
+ tp.getDataMap().put(QS, tp.getQ());
|
|
|
|
+ tp.getDataMap().put(HS, tp.getH());
|
|
|
|
+ tp.getDataMap().put(SC, tp.getSc());
|
|
|
|
+ tp.getDataMap().put(SJ, tp.getSj());
|
|
|
|
+ tp.getDataMap().put(GC, StringUtils.number2StringZero(StringUtils.isNotEmpty(tp.getDx())?tp.getDx0L()*1000:"",0));
|
|
result.add(tp);
|
|
result.add(tp);
|
|
}catch (Exception e){
|
|
}catch (Exception e){
|
|
tp.getDataMap().put("数据异常", tp.getName());
|
|
tp.getDataMap().put("数据异常", tp.getName());
|