From a657d11cb3d3f70a536da25ef54acfa46602f62c Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期六, 07 六月 2025 15:35:30 +0800 Subject: [PATCH] 系统概览获取半小时核容设备信息添加负载电流load_curr --- src/main/java/com/whyc/service/SubTablePageInfoService.java | 12 ++++++------ src/main/java/com/whyc/service/BattRealdataIdService.java | 11 ++++++++++- src/main/java/com/whyc/service/PwrdevHistorydataIdService.java | 21 +++++++++++++++++++-- 3 files changed, 35 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/whyc/service/BattRealdataIdService.java b/src/main/java/com/whyc/service/BattRealdataIdService.java index fe934ed..f237c32 100644 --- a/src/main/java/com/whyc/service/BattRealdataIdService.java +++ b/src/main/java/com/whyc/service/BattRealdataIdService.java @@ -18,6 +18,8 @@ import javax.annotation.Resource; import java.text.ParseException; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.*; import java.util.concurrent.CountDownLatch; import java.util.concurrent.ThreadPoolExecutor; @@ -164,11 +166,18 @@ public Response getHalfHourBattDevData(Integer battgroupId,Integer granularity) { String dateTime = ActionUtil.sdfwithOutday.format(new Date()); String tableName ="db_data_history.tb_batt_realdata_"+battgroupId+"_"+dateTime; + //鑾峰彇鍓嶅崐涓皬鏃舵暟鎹� + LocalDateTime now = LocalDateTime.now(); + // 璁$畻鍗婂皬鏃跺墠鐨勬椂闂寸偣 + LocalDateTime halfHourAgo = now.minusMinutes(30); + // 鏍煎紡鍖栬緭鍑� + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + String halfHourAgoTime=halfHourAgo.format(formatter); String existTableName = commonMapper.existTable("db_data_history", "tb_batt_realdata_"+battgroupId+"_"+dateTime); if(existTableName == null){ return new Response().set(1,false,"褰撳墠鐢垫睜缁勪笉瀛樺湪鍓嶉潰灏忔椂鏁版嵁"); } - List<BattHisRealDto> datalist=subTablePageInfoService.getHalfHourBattDevData(tableName,granularity); + List<BattHisRealDto> datalist=subTablePageInfoService.getHalfHourBattDevData(tableName,granularity,halfHourAgoTime); return new Response().setII(1,datalist.size()>0,datalist,"鑾峰彇鍗婂皬鏃跺唴鏍稿璁惧淇℃伅"); } //鍘嗗彶瀹炴椂鏁版嵁 diff --git a/src/main/java/com/whyc/service/PwrdevHistorydataIdService.java b/src/main/java/com/whyc/service/PwrdevHistorydataIdService.java index 26f1e48..f5646de 100644 --- a/src/main/java/com/whyc/service/PwrdevHistorydataIdService.java +++ b/src/main/java/com/whyc/service/PwrdevHistorydataIdService.java @@ -12,6 +12,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.Date; import java.util.List; @@ -28,24 +30,39 @@ //绯荤粺姒傝鑾峰彇鍗婂皬鏃朵氦娴佽緭鍏ョ粺璁� public Response getHalfHourPwrHisAcinData(Integer powerId,Integer granularity) { String dateTime = ActionUtil.sdfwithOutday.format(new Date()); + //鑾峰彇鍓嶅崐涓皬鏃舵暟鎹� + LocalDateTime now = LocalDateTime.now(); + // 璁$畻鍗婂皬鏃跺墠鐨勬椂闂寸偣 + LocalDateTime halfHourAgo = now.minusMinutes(30); + // 鏍煎紡鍖栬緭鍑� + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + String halfHourAgoTime=halfHourAgo.format(formatter); String tableName ="db_data_history.tb_pwrdev_historydata_"+powerId+"_"+dateTime; String existTableName = commonMapper.existTable("db_data_history", "tb_pwrdev_historydata_"+powerId+"_"+dateTime); if(existTableName == null){ return new Response().set(1,false,"褰撳墠鐢垫睜缁勪笉瀛樺湪鍓嶉潰灏忔椂鏁版嵁"); } - List<PwrHisRealAcInDto> datalist=subTablePageInfoService.getHalfHourPwrHisAcinData(tableName,granularity); + List<PwrHisRealAcInDto> datalist=subTablePageInfoService.getHalfHourPwrHisAcinData(tableName,granularity,halfHourAgoTime); return new Response().setII(1,datalist.size()>0,datalist,"鑾峰彇鍗婂皬鏃跺唴浜ゆ祦杈撳叆缁熻"); } //绯荤粺姒傝鑾峰彇鍗婂皬鏃剁洿娴佽緭鍑虹粺璁� public Response getHalfHourPwrHisDcoutData(Integer powerId,Integer granularity) { String dateTime = ActionUtil.sdfwithOutday.format(new Date()); + //鑾峰彇鍓嶅崐涓皬鏃舵暟鎹� + LocalDateTime now = LocalDateTime.now(); + // 璁$畻鍗婂皬鏃跺墠鐨勬椂闂寸偣 + LocalDateTime halfHourAgo = now.minusMinutes(30); + // 鏍煎紡鍖栬緭鍑� + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + String halfHourAgoTime=halfHourAgo.format(formatter); + String tableName ="db_data_history.tb_pwrdev_historydata_"+powerId+"_"+dateTime; String existTableName = commonMapper.existTable("db_data_history", "tb_pwrdev_historydata_"+powerId+"_"+dateTime); if(existTableName == null){ return new Response().set(1,false,"褰撳墠鐢垫簮涓嶅瓨鍦ㄥ墠闈㈠皬鏃舵暟鎹�"); } - List<PwrHisRealDcoutInDto> datalist=subTablePageInfoService.getHalfHourPwrHisDcoutData(tableName,granularity); + List<PwrHisRealDcoutInDto> datalist=subTablePageInfoService.getHalfHourPwrHisDcoutData(tableName,granularity,halfHourAgoTime); Long modelCfg=0l; PowerInf pinf=powerInfService.getPowerInfById(powerId); if(pinf!=null){ diff --git a/src/main/java/com/whyc/service/SubTablePageInfoService.java b/src/main/java/com/whyc/service/SubTablePageInfoService.java index bccff51..88522b3 100644 --- a/src/main/java/com/whyc/service/SubTablePageInfoService.java +++ b/src/main/java/com/whyc/service/SubTablePageInfoService.java @@ -560,11 +560,11 @@ return list; } //绯荤粺姒傝鑾峰彇鍗婂皬鏃舵牳瀹硅澶囦俊鎭�(缁勭淇℃伅鍙栦竴涓崟浣撲俊鎭嵆鍙�) - public List<BattHisRealDto> getHalfHourBattDevData(String tableName,Integer granularity) { + public List<BattHisRealDto> getHalfHourBattDevData(String tableName,Integer granularity,String halfHourAgoTime) { String sql="select distinct mon_num,record_time,group_vol,online_vol,group_curr,group_tmp,load_curr " + "from (select a.*, (@i:= @i+1) as number " + " from (select * from "+tableName+" "+ - " where record_time>date_sub(now(),interval 0.5 hour) and mon_num=1) a, " + + " where record_time>='"+halfHourAgoTime+"' and mon_num=1) a, " + " (select @i:=0) b) c "+ " where c.number%"+granularity+"=0 or c.number=1 "; sql+=" order by record_time asc"; @@ -588,12 +588,12 @@ return list; } //绯荤粺姒傝鑾峰彇鍗婂皬鏃朵氦娴佽緭鍏ョ粺璁� - public List<PwrHisRealAcInDto> getHalfHourPwrHisAcinData(String tableName,Integer granularity) { + public List<PwrHisRealAcInDto> getHalfHourPwrHisAcinData(String tableName,Integer granularity,String halfHourAgoTime) { String sql="select distinct record_datetime,acin1_vola,acin1_volb,acin1_volc,acin2_vola,acin2_volb,acin2_volc " + ",acin1_curra,acin1_currb,acin1_currc,acin2_curra,acin2_currb,acin2_currc " + "from (select a.*, (@i:= @i+1) as number " + " from (select * from "+tableName+" "+ - " where record_datetime>date_sub(now(),interval 0.5 hour)) a, " + + " where record_datetime>='"+halfHourAgoTime+"') a, " + " (select @i:=0) b) c "+ " where c.number%"+granularity+"=0 or c.number=1 "; sql+=" order by record_datetime asc"; @@ -624,11 +624,11 @@ return list; } - public List<PwrHisRealDcoutInDto> getHalfHourPwrHisDcoutData(String tableName,Integer granularity) { + public List<PwrHisRealDcoutInDto> getHalfHourPwrHisDcoutData(String tableName,Integer granularity,String halfHourAgoTime) { String sql="select distinct * " + "from (select a.*, (@i:= @i+1) as number " + " from (select * from "+tableName+" "+ - " where record_datetime>date_sub(now(),interval 0.5 hour)) a, " + + " where record_datetime>='"+halfHourAgoTime+"') a, " + " (select @i:=0) b) c "+ " where c.number%"+granularity+"=0 or c.number=1 "; sql+=" order by record_datetime asc"; -- Gitblit v1.9.1