| | |
| | | import java.math.BigDecimal; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | |
| | | @Service |
| | |
| | | } |
| | | |
| | | private BigDecimal calculate(String calculate, List<ApiPointValueDTO> valueList) { |
| | | valueList = valueList.stream().filter(e -> !Double.valueOf(e.getV()).equals(-2.0) ).collect(Collectors.toList()); |
| | | log.debug("开始计算"); |
| | | if (valueList == null || valueList.isEmpty()) { |
| | | throw new IllegalArgumentException("valueList 为空"); |
| | |
| | | BigDecimal prev = BigDecimal.valueOf(valueList.get(0).getV()); |
| | | for (int i = 1; i < valueList.size(); i++) { |
| | | BigDecimal curr = BigDecimal.valueOf(valueList.get(i).getV()); |
| | | if(curr.compareTo(prev) > 0) { |
| | | if(curr.compareTo(prev) > 0 ) { |
| | | value = value.add(curr.subtract(prev)); |
| | | } |
| | | prev = curr; |