| | |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | | import java.text.DecimalFormat; |
| | | import java.time.*; |
| | | |
| | | |
| | |
| | | // } |
| | | // Set<String> strings = map.keySet(); |
| | | |
| | | mongoChargingOrderQuery.setPageSize(2); |
| | | mongoChargingOrderQuery.setPageSize(10); |
| | | List<UploadRealTimeMonitoringData> data1 = uploadRealTimeMonitoringDataClient.getAll(mongoChargingOrderQuery).getData(); |
| | | |
| | | List<ChargingOrderAndUploadRealTimeMonitoringDataDto> dtos = new ArrayList<>(); |
| | |
| | | BeanUtils.copyProperties(uploadRealTimeMonitoringData,dataDto); |
| | | dataDto.setStartTime(uploadRealTimeMonitoringData.getStartTime()); |
| | | dataDto.setEndTime(uploadRealTimeMonitoringData.getEndTime()==null?null:uploadRealTimeMonitoringData.getEndTime()); |
| | | dataDto.setStatus(uploadRealTimeMonitoringData.getStatus()); |
| | | dtos.add(dataDto); |
| | | }else { |
| | | continue; |
| | |
| | | |
| | | |
| | | tCharingOrderMapVO.setMaps(maps); |
| | | BigDecimal allMoney = new BigDecimal(0); |
| | | for (Map<String, Object> map : maps) { |
| | | BigDecimal periodElectricPrice = (BigDecimal) map.get("period_electric_price"); |
| | | allMoney = allMoney.add(periodElectricPrice); |
| | | BigDecimal total_amount = (BigDecimal) map.get("total_amount"); |
| | | allMoney = allMoney.add(total_amount); |
| | | } |
| | | allMoney = allMoney.multiply(new BigDecimal("0.006")); |
| | | |
| | | |
| | | tCharingOrderMapVO.setAllMoney(allMoney); |
| | | return R.ok(tCharingOrderMapVO); |
| | | |
| | | } |
| | |
| | | return R.ok(tCharingUserEquimentVO); |
| | | } |
| | | |
| | | |
| | | private static double calculateAveragePercent(List<Map<String, Object>> mapList1, List<Map<String, Object>> mapList2) { |
| | | private static final DecimalFormat DF = new DecimalFormat("#.00"); |
| | | public static double calculateAveragePercent(List<Map<String, Object>> mapList1, List<Map<String, Object>> mapList2) { |
| | | int totalElements = mapList1.size() + mapList2.size(); |
| | | double sum = 0.0; |
| | | |
| | |
| | | } |
| | | |
| | | // 计算平均值 |
| | | return sum / totalElements; |
| | | double average = sum / totalElements; |
| | | |
| | | // 格式化为两位小数 |
| | | return Double.parseDouble(DF.format(average)); |
| | | } |
| | | |
| | | @ResponseBody |