diff --git a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java index 008916e0..8273505c 100644 --- a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java +++ b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java @@ -408,7 +408,6 @@ public class ResultRecordController extends AbstractController { BigDecimal weight = BigDecimal.ZERO; for (ResultModel model:resultModels ) { - setCalculateValue(calculateModels, model); ResultRecortModelDto resultRecortModelDto = new ResultRecortModelDto(); BeanUtils.copyProperties(model, resultRecortModelDto); if(resultRecortModelDto.getWeight().compareTo(BigDecimal.ZERO) == 0){//不限权重的 @@ -421,6 +420,7 @@ public class ResultRecordController extends AbstractController { resultDetailService.selectDtosByRecordId(resultRecord.getId(), model.getType()); for (ResultDetailDto dto:detailDtos ) { + //下面设置计算公式 dto.setCalculate(setCalculateValue(calculateModels, dto)) ; weight = weight.add(dto.getCheckWeight()); //获取评分详细 @@ -460,7 +460,7 @@ public class ResultRecordController extends AbstractController { dto.setScoreDtos(scoreDtos); } } - //下面设置计算公式 + resultRecortModelDto.setDetailDtos(detailDtos); resultRecortModelDtos.add(resultRecortModelDto); @@ -476,8 +476,10 @@ public class ResultRecordController extends AbstractController { private String setCalculateValue(List calculateModels, Object model){ String mName = model.getClass().getName();//.replace("req", "dto"); String cal = ""; - for (CalculateModel calculate:calculateModels - ) { + //for (CalculateModel calculate:calculateModels + //) { + for(int i = 0; i < calculateModels.size(); i++){ + CalculateModel calculate = calculateModels.get(i); if(mName.contains("." + calculate.getTaboleBeanName())){//支持表名生成的req和dto //获取值 try { @@ -487,8 +489,9 @@ public class ResultRecordController extends AbstractController { if(obj != null){ calculate.setFieldValue(obj.toString()); } - if(calculate.getFieldValue() == null){ - cal += calculate.getFieldBeanName(); + //最后一个对象为自己,或者获取的对象中的属性为null + if(calculate.getFieldValue() == null || i == calculateModels.size()){ + cal += ("{" + calculate.getFieldBeanName() + "}"); }else{ cal += calculate.getFieldValue(); }