|
@@ -1132,10 +1132,14 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
|
|
}
|
|
}
|
|
if(fd.getCoordsList().size()>1&&f.split("[/+\\-*]").length>1){
|
|
if(fd.getCoordsList().size()>1&&f.split("[/+\\-*]").length>1){
|
|
LinkedHashMap<String,FormData> fdMap=step(ele);
|
|
LinkedHashMap<String,FormData> fdMap=step(ele);
|
|
- List<LocalVariable> local= slice2Local(f,fdMap,tec);
|
|
|
|
- if(local.size()>0){
|
|
|
|
- List<Object> values = FormulaUtils.slice(local,f);
|
|
|
|
- FormulaUtils.write(fd,values, !fd.getTableName().equals(checkTable));
|
|
|
|
|
|
+ if(fdMap!=null) {
|
|
|
|
+ List<LocalVariable> local = slice2Local(f, fdMap, tec);
|
|
|
|
+ if (local.size() > 0) {
|
|
|
|
+ List<Object> values = FormulaUtils.slice(local, f);
|
|
|
|
+ FormulaUtils.write(fd, values, !fd.getTableName().equals(checkTable));
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ tec.getLog().put(FormulaLog.CALC,fd.getEName()+"存在依赖错位");
|
|
}
|
|
}
|
|
}else{
|
|
}else{
|
|
putEle(f,ele,currentMap,fd);
|
|
putEle(f,ele,currentMap,fd);
|
|
@@ -1168,7 +1172,12 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
|
|
if (maxFormData.getValues().size() != minFormData.getValues().size()) {
|
|
if (maxFormData.getValues().size() != minFormData.getValues().size()) {
|
|
int baseLength = maxFormData.getValues().size();
|
|
int baseLength = maxFormData.getValues().size();
|
|
for (FormData formData : ele) {
|
|
for (FormData formData : ele) {
|
|
- formData.setStep(baseLength / formData.getValues().size());
|
|
|
|
|
|
+ /*如果无法被整除,说明已经错位*/
|
|
|
|
+ if(baseLength % formData.getValues().size()==0) {
|
|
|
|
+ formData.setStep(baseLength / formData.getValues().size());
|
|
|
|
+ }else{
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ele.forEach(e->{
|
|
ele.forEach(e->{
|