diff --git a/ems-system/src/main/java/com/xzzn/ems/service/impl/FXXDataProcessServiceImpl.java b/ems-system/src/main/java/com/xzzn/ems/service/impl/FXXDataProcessServiceImpl.java index 3b8491b..ff9988e 100644 --- a/ems-system/src/main/java/com/xzzn/ems/service/impl/FXXDataProcessServiceImpl.java +++ b/ems-system/src/main/java/com/xzzn/ems/service/impl/FXXDataProcessServiceImpl.java @@ -843,7 +843,7 @@ public class FXXDataProcessServiceImpl extends AbstractBatteryDataProcessor impl currentDischargeData = currentDischargeData != null ? currentDischargeData : BigDecimal.ZERO; // 获取上次实时总收益+当日实时总收益,初始化电价 - Map revenueMap = getLastData(SITE_ID); + Map revenueMap = getRealTimeData(SITE_ID); BigDecimal totalRevenue = revenueMap.get("totalRevenue") == null ? BigDecimal.ZERO : revenueMap.get("totalRevenue"); BigDecimal dayRevenue = revenueMap.get("dayRevenue") == null ? BigDecimal.ZERO : revenueMap.get("dayRevenue"); BigDecimal price = BigDecimal.ZERO; @@ -906,12 +906,18 @@ public class FXXDataProcessServiceImpl extends AbstractBatteryDataProcessor impl // 总收益 = 上次实时总收益+今日实时增加的收益 totalRevenue = totalRevenue.add(addRevenue); energyData.setTotalRevenue(totalRevenue); + + // 存redis便于下次取用 + String redisKey = RedisKeyConstants.FXX_REALTIME_REVENUE + SITE_ID; + Map realTimeRevenue = new HashMap<>(); + realTimeRevenue.put("totalRevenue", totalRevenue); + realTimeRevenue.put("dayRevenue",dayRevenue); + redisCache.setCacheObject(redisKey, realTimeRevenue, 1, TimeUnit.DAYS); } - private Map getLastData(String siteId) { - // dds存的是累计到昨日总收益 - String yestDate = DateUtils.getYesterdayDayString(); - String redisKey = RedisKeyConstants.FXX_REALTIME_REVENUE + siteId + "_" + yestDate; + private Map getRealTimeData(String siteId) { + // fx取实时总收益和当天实时收益 + String redisKey = RedisKeyConstants.FXX_REALTIME_REVENUE + siteId; Map realTimeRevenue = redisCache.getCacheObject(redisKey); if (realTimeRevenue == null) { realTimeRevenue = emsDailyEnergyDataMapper.getRealTimeRevenue(siteId);