|  |  | @ -147,8 +147,7 @@ public class HydropowerServiceImpl implements HydropowerService { | 
			
		
	
		
		
			
				
					
					|  |  |  | 		response.setDeptName(station.getName()); |  |  |  | 		response.setDeptName(station.getName()); | 
			
		
	
		
		
			
				
					
					|  |  |  | 		response.setStationCode(station.getCode()); |  |  |  | 		response.setStationCode(station.getCode()); | 
			
		
	
		
		
			
				
					
					|  |  |  | 		// 站点状态
 |  |  |  | 		// 站点状态
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 		List<SoeData> soeDataList = soeClient.getByLastLimitTime(null, station.getCode(), 1).getData(); |  |  |  | 		response.setStationStatus(true); | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | 		response.setStationStatus(!CollectionUtil.isNotEmpty(soeDataList)); |  |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 		// 站点实时天气
 |  |  |  | 		// 站点实时天气
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 		response.setTemp(this.getTemp(weather,station.getCode())); |  |  |  | 		response.setTemp(this.getTemp(weather,station.getCode())); | 
			
		
	
		
		
			
				
					
					|  |  |  | 		// 站点七天天气
 |  |  |  | 		// 站点七天天气
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -167,9 +166,7 @@ public class HydropowerServiceImpl implements HydropowerService { | 
			
		
	
		
		
			
				
					
					|  |  |  | 		response.setPlanPowerMon(this.getPlanPowerrMon(station.getCode())); |  |  |  | 		response.setPlanPowerMon(this.getPlanPowerrMon(station.getCode())); | 
			
		
	
		
		
			
				
					
					|  |  |  | 		// 年计划发电量
 |  |  |  | 		// 年计划发电量
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 		response.setPlanPowerYear(this.getPlanPowerYear(station.getCode())); |  |  |  | 		response.setPlanPowerYear(this.getPlanPowerYear(station.getCode())); | 
			
		
	
		
		
			
				
					
					|  |  |  | 		// 年发电量、年发电完成率
 |  |  |  | 		// 年发电量、月发电量
 | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | 		this.handleStationInfo(station.getRefDept(),response); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		// 月发电量
 |  |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 		this.stationMonthPower(station.getId(),map,response); |  |  |  | 		this.stationMonthPower(station.getId(),map,response); | 
			
		
	
		
		
			
				
					
					|  |  |  | 		// 水位、水位曲线
 |  |  |  | 		// 水位、水位曲线
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 		this.handleWaterLeve(station.getCode(),response); |  |  |  | 		this.handleWaterLeve(station.getCode(),response); | 
			
		
	
	
		
		
			
				
					|  |  | @ -391,33 +388,6 @@ public class HydropowerServiceImpl implements HydropowerService { | 
			
		
	
		
		
			
				
					
					|  |  |  | 		return R.getData(); |  |  |  | 		return R.getData(); | 
			
		
	
		
		
			
				
					
					|  |  |  | 	} |  |  |  | 	} | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 	/** |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * 站点信息处理 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @param deptId |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @param response |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 */ |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 	private void handleStationInfo(Long deptId, HydropowerStationVo response) { |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		response.setPowerYear(0f); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		response.setPowerRateYear(0.0); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		List<HydropowerUnitTargetVo> targetList = (List<HydropowerUnitTargetVo>) redisTemplate.opsForValue().get(load_hydropower_unit_target_key); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		if(CollectionUtil.isEmpty(targetList)){ |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 			return; |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		} |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		// 月发电量
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		float powerMon = (float) targetList.stream().filter(o-> deptId.equals(o.getDeptId())).mapToDouble(HydropowerUnitTargetVo::getPowerMon).sum(); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		response.setPowerYear(powerMon); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		// 年发电量
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		float powerYear = (float) targetList.stream().filter(o-> deptId.equals(o.getDeptId())).mapToDouble(HydropowerUnitTargetVo::getPowerYear).sum(); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		response.setPowerYear(powerYear); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		// 年发电完成率
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		float planPowerYear = response.getPlanPowerYear(); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		if(Math.abs(planPowerYear) <= 0){ |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 			response.setPowerRateYear(0.0); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		} else { |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 			double powerRateYear = BigDecimal.valueOf(powerYear / planPowerYear * 100).setScale(2, RoundingMode.HALF_UP).doubleValue(); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 			response.setPowerRateYear(powerRateYear); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 		} |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 	} |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 	/** |  |  |  | 	/** | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * 月发电量 |  |  |  | 	 * 月发电量 | 
			
		
	
	
		
		
			
				
					|  |  | @ -430,11 +400,24 @@ public class HydropowerServiceImpl implements HydropowerService { | 
			
		
	
		
		
			
				
					
					|  |  |  | 			response.setPowerMon(0f); |  |  |  | 			response.setPowerMon(0f); | 
			
		
	
		
		
			
				
					
					|  |  |  | 			return; |  |  |  | 			return; | 
			
		
	
		
		
			
				
					
					|  |  |  | 		} |  |  |  | 		} | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		// 月发电量
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 		String month = DateUtil.format(new Date(),"yyyy-MM") + "-01"; |  |  |  | 		String month = DateUtil.format(new Date(),"yyyy-MM") + "-01"; | 
			
		
	
		
		
			
				
					
					|  |  |  | 		float powerMon = map.get(id).getOrDefault(month, 0f); |  |  |  | 		float powerMon = map.get(id).getOrDefault(month, 0f); | 
			
		
	
		
		
			
				
					
					|  |  |  | 		if(powerMon > 0){ |  |  |  | 		if(powerMon > 0){ | 
			
		
	
		
		
			
				
					
					|  |  |  | 			response.setPowerMon(powerMon); |  |  |  | 			response.setPowerMon(powerMon); | 
			
		
	
		
		
			
				
					
					|  |  |  | 		} |  |  |  | 		} | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		String year = DateUtil.format(new Date(),"yyyy"); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		// 年发电量
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		float powerYear = (float) map.get(id).entrySet().stream().filter(o->o.getKey().contains(year)).mapToDouble(Map.Entry::getValue).sum(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		response.setPowerYear(powerYear); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		// 年发电完成率
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		float planPowerYear = response.getPlanPowerYear(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		if(Math.abs(planPowerYear) <= 0){ | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 			response.setPowerRateYear(0.0); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		} else { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 			double powerRateYear = BigDecimal.valueOf(powerYear / planPowerYear * 100).setScale(2, RoundingMode.HALF_UP).doubleValue(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 			response.setPowerRateYear(powerRateYear); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		} | 
			
		
	
		
		
			
				
					
					|  |  |  | 	} |  |  |  | 	} | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -559,8 +542,7 @@ public class HydropowerServiceImpl implements HydropowerService { | 
			
		
	
		
		
			
				
					
					|  |  |  | 			hydropower.setDeptName(station.getName()); |  |  |  | 			hydropower.setDeptName(station.getName()); | 
			
		
	
		
		
			
				
					
					|  |  |  | 			hydropower.setStationCode(station.getCode()); |  |  |  | 			hydropower.setStationCode(station.getCode()); | 
			
		
	
		
		
			
				
					
					|  |  |  | 			// 站点状态
 |  |  |  | 			// 站点状态
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 			List<SoeData> soeDataList = soeClient.getByLastLimitTime(null, station.getCode(), 1).getData(); |  |  |  | 			hydropower.setStationStatus(true); | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | 			hydropower.setStationStatus(!CollectionUtil.isNotEmpty(soeDataList)); |  |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 			// 站点实时天气
 |  |  |  | 			// 站点实时天气
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 			hydropower.setTemp(this.getTemp(weather,station.getCode())); |  |  |  | 			hydropower.setTemp(this.getTemp(weather,station.getCode())); | 
			
		
	
		
		
			
				
					
					|  |  |  | 			// 站点七天天气
 |  |  |  | 			// 站点七天天气
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -580,7 +562,7 @@ public class HydropowerServiceImpl implements HydropowerService { | 
			
		
	
		
		
			
				
					
					|  |  |  | 			// 年计划发电量
 |  |  |  | 			// 年计划发电量
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 			hydropower.setPlanPowerYear(this.getPlanPowerYear(station.getCode())); |  |  |  | 			hydropower.setPlanPowerYear(this.getPlanPowerYear(station.getCode())); | 
			
		
	
		
		
			
				
					
					|  |  |  | 			// 月发电量、年发电量、年发电完成率
 |  |  |  | 			// 月发电量、年发电量、年发电完成率
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 			this.handleStationInfo(station.getRefDept(),hydropower); |  |  |  | 			this.stationMonthPower(station.getId(),map,hydropower); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 			// 水位、水位曲线
 |  |  |  | 			// 水位、水位曲线
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 			this.handleWaterLeve(station.getCode(),hydropower); |  |  |  | 			this.handleWaterLeve(station.getCode(),hydropower); | 
			
		
	
		
		
			
				
					
					|  |  |  | 			// 年发电量完成百分比
 |  |  |  | 			// 年发电量完成百分比
 | 
			
		
	
	
		
		
			
				
					|  |  | 
 |