| | |
| | | throw new IllegalArgumentException("不支持的queryType: " + queryType); |
| | | } |
| | | |
| | | |
| | | // 查询历史数据 |
| | | ApiPointValueQueryDTO query = new ApiPointValueQueryDTO(); |
| | | query.setPointNo(pointNo); |
| | |
| | | }) |
| | | .collect(Collectors.toList()); |
| | | |
| | | List<Double> valueList = chartData.stream().map(pv -> { |
| | | return pv.getV(); |
| | | }).collect(Collectors.toList()); |
| | | powerHistoryDTO.setDataList(dataList); |
| | | |
| | | //查询月最大最小值 |
| | | ApiPointValueQueryDTO apiPointValueQueryDTO1 = new ApiPointValueQueryDTO(); |
| | | /*ApiPointValueQueryDTO apiPointValueQueryDTO1 = new ApiPointValueQueryDTO(); |
| | | apiPointValueQueryDTO1.setStart(start1); |
| | | apiPointValueQueryDTO1.setEnd(new Date()); |
| | | apiPointValueQueryDTO1.setPointNo(pointNo); |
| | |
| | | } |
| | | if (minV != null && minV.containsKey(pointNo)) { |
| | | powerHistoryDTO.setMin(new BigDecimal(minV.get(pointNo).toString())); |
| | | }*/ |
| | | |
| | | |
| | | double max = 0; |
| | | double min = 0; |
| | | double avg = 0; |
| | | String maxTime = ""; |
| | | String minTime = ""; |
| | | if (!CollectionUtils.isEmpty(valueList)) { |
| | | // max = valueList.stream().mapToDouble(Double::doubleValue).max().getAsDouble(); |
| | | // min = valueList.stream().mapToDouble(Double::doubleValue).min().getAsDouble(); |
| | | avg = valueList.stream().mapToDouble(Double::doubleValue).average().getAsDouble(); |
| | | max = valueList.get(0).doubleValue(); |
| | | min = valueList.get(0).doubleValue(); |
| | | for (Object[] dataItem : dataList) { |
| | | String time = (String) dataItem[0]; |
| | | double value = (double)dataItem[1]; |
| | | if (value > max) { |
| | | max = value; |
| | | maxTime = time; |
| | | } |
| | | if (value < min) { |
| | | min = value; |
| | | minTime = time; |
| | | } |
| | | } |
| | | } |
| | | |
| | | powerHistoryDTO.setMax(new BigDecimal(max).setScale(2, BigDecimal.ROUND_HALF_UP)); |
| | | powerHistoryDTO.setMin(new BigDecimal(min).setScale(2, BigDecimal.ROUND_HALF_UP)); |
| | | powerHistoryDTO.setAvg(new BigDecimal(avg).setScale(2, BigDecimal.ROUND_HALF_UP)); |
| | | powerHistoryDTO.setMaxTime(maxTime); |
| | | powerHistoryDTO.setMinTime(minTime); |
| | | powerHistoryDTO.setDataList(dataList); |
| | | |
| | | result.put(code, powerHistoryDTO); |
| | | } |
| | | |