浏览代码

Merge remote-tracking branch 'origin/master'

wangchangsheng 2 年之前
父节点
当前提交
4c5ac1ab01

+ 155 - 0
common/src/main/java/com/gyee/common/contant/ContantXk.java

@@ -0,0 +1,155 @@
+package com.gyee.common.contant;
+
+/**
+ * 信控统一编码
+ */
+
+public class ContantXk {
+
+    public static final String  CZZT= "CZZT";//场站状态
+    public static final String  SBJRZT= "SBJRZT";//场站设备接入状态
+    public static final String  DQJRZT= "DQJRZT";//场站电气接入状态
+    public static final String  AGCJRZT= "AGCJRZT";//场站AGC/AVC接入状态
+    public static final String  GLYCJRZT= "GLYCJRZT";//场站功率预测接入状态
+    public static final String  QXZJRZT= "QXZJRZT";//场站测风塔接入状态
+    public static final String  SSPJFS= "SSPJFS";//场站实时平均风速
+    public static final String  SSZGL= "SSZGL";//场站实时总功率
+    public static final String  SSZLLGL= "SSZLLGL";//场站实时总理论功率
+    public static final String  SSZBZGL= "SSZBZGL";//场站实时总保证功率
+    public static final String  SSZNHGLZS= "SSZNHGLZS";//场站实时总拟合功率(自算)
+    public static final String  SSZZYGL= "SSZZYGL";//场站实时总最优功率
+    public static final String  SSZKYGL= "SSZKYGL";//场站实时总可用功率
+    public static final String  RPJGL= "RPJGL";//日平均功率
+    public static final String  RPJFS= "RPJFS";//日平均风速
+    public static final String  RFDL= "RFDL";//日发电量
+    public static final String  RKYDL= "RKYDL";//日可用电量
+    public static final String  RLLFDL= "RLLFDL";//日理论发电量
+    public static final String  RGZSSDL= "RGZSSDL";//日故障损失电量
+    public static final String  RCNSLGZSSDL= "RCNSLGZSSDL";//日场内受累故障损失电量
+    public static final String  RJXSSDL= "RJXSSDL";//日检修损失电量
+    public static final String  RCNSLJXSSDL= "RCNSLJXSSDL";//日场内受累检修损失电量
+    public static final String  RDJSSDL= "RDJSSDL";//日待机损失电量
+    public static final String  RQXJCLSSDL= "RQXJCLSSDL";//日缺陷降出力损失电量
+    public static final String  RSDTJSSDL= "RSDTJSSDL";//日手动停机损失电量
+    public static final String  RXNSSDL= "RXNSSDL";//日性能损失电量
+    public static final String  RXDTJSSDL= "RXDTJSSDL";//日限电停机损失电量
+    public static final String  RXDJCLSSDL= "RXDJCLSSDL";//日限电降出力损失电量
+    public static final String  RCWSLDWSSDL= "RCWSLDWSSDL";//日场外受累电网损失电量
+    public static final String  RCWSLTQSSDL= "RCWSLTQSSDL";//日场外受累天气损失电量
+    public static final String  RZFDL= "RZFDL";//日增发电量
+    public static final String  RQFDL= "RQFDL";//日欠发电量
+    public static final String  YPJGL= "YPJGL";//月平均功率
+    public static final String  YPJFS= "YPJFS";//月平均风速
+    public static final String  YFDL= "YFDL";//月发电量
+    public static final String  YKYDL= "YKYDL";//月可用电量
+    public static final String  YLLFDL= "YLLFDL";//月理论发电量
+    public static final String  YGZSSDL= "YGZSSDL";//月故障损失电量
+    public static final String  YCNSLGZSSDL= "YCNSLGZSSDL";//月场内受累故障损失电量
+    public static final String  YJXSSDL= "YJXSSDL";//月检修损失电量
+    public static final String  YCNSLJXSSDL= "YCNSLJXSSDL";//月场内受累检修损失电量
+    public static final String  YDJSSDL= "YDJSSDL";//月待机损失电量
+    public static final String  YQXJCLSSDL= "YQXJCLSSDL";//月缺陷降出力损失电量
+    public static final String  YSDTJSSDL= "YSDTJSSDL";//月手动停机损失电量
+    public static final String  YXNSSDL= "YXNSSDL";//月性能损失电量
+    public static final String  YXDTJSSDL= "YXDTJSSDL";//月限电停机损失电量
+    public static final String  YXDJCLSSDL= "YXDJCLSSDL";//月限电降出力损失电量
+    public static final String  YCWSLDWSSDL= "YCWSLDWSSDL";//月场外受累电网损失电量
+    public static final String  YCWSLTQSSDL= "YCWSLTQSSDL";//月场外受累天气损失电量
+    public static final String  YZFDL= "YZFDL";//月增发电量
+    public static final String  YQFDL= "YQFDL";//月欠发电量
+    public static final String  NPJGL= "NPJGL";//年平均功率
+    public static final String  NPJFS= "NPJFS";//年平均风速
+    public static final String  NFDL= "NFDL";//年发电量
+    public static final String  NKYDL= "NKYDL";//年可用电量
+    public static final String  NLLFDL= "NLLFDL";//年理论发电量
+    public static final String  NGZSSDL= "NGZSSDL";//年故障损失电量
+    public static final String  NCNSLGZSSDL= "NCNSLGZSSDL";//年场内受累故障损失电量
+    public static final String  NJXSSDL= "NJXSSDL";//年检修损失电量
+    public static final String  NCNSLJXSSDL= "NCNSLJXSSDL";//年场内受累检修损失电量
+    public static final String  NDJSSDL= "NDJSSDL";//年待机损失电量
+    public static final String  NQXJCLSSDL= "NQXJCLSSDL";//年缺陷降出力损失电量
+    public static final String  NSDTJSSDL= "NSDTJSSDL";//年手动停机损失电量
+    public static final String  NXNSSDL= "NXNSSDL";//年性能损失电量
+    public static final String  NXDTJSSDL= "NXDTJSSDL";//年限电停机损失电量
+    public static final String  NXDJCLSSDL= "NXDJCLSSDL";//年限电降出力损失电量
+    public static final String  NCWSLDWSSDL= "NCWSLDWSSDL";//年场外受累电网损失电量
+    public static final String  NCWSLTQSSDL= "NCWSLTQSSDL";//年场外受累天气损失电量
+    public static final String  NZFDL= "NZFDL";//年增发电量
+    public static final String  NQFDL= "NQFDL";//年欠发电量
+    public static final String  PJFS15= "PJFS15";//15分钟平均风速
+    public static final String  PJGL15= "PJGL15";//15分钟平均功率
+    public static final String  FDL15= "FDL15";//15分钟发电量
+    public static final String  KYDL15= "KYDL15";//15分钟可用电量
+    public static final String  LLFDL15= "LLFDL15";//15分钟理论发电量
+    public static final String  GZSSDL15= "GZSSDL15";//15分钟故障损失电量
+    public static final String  CNSLGZSSDL15= "CNSLGZSSDL15";//15分钟场内受累故障损失电量
+    public static final String  JXSSDL15= "JXSSDL15";//15分钟检修损失电量
+    public static final String  CNSLJXSSDL15= "CNSLJXSSDL15";//15分钟场内受累检修损失电量
+    public static final String  DJSSDL15= "DJSSDL15";//15分钟待机损失电量
+    public static final String  QXJCLSSDL15= "QXJCLSSDL15";//15分钟缺陷降出力损失电量
+    public static final String  SDTJSSDL15= "SDTJSSDL15";//15分钟手动停机损失电量
+    public static final String  XNSSDL15= "XNSSDL15";//15分钟性能损失电量
+    public static final String  XDTJSSDL15= "XDTJSSDL15";//15分钟限电停机损失电量
+    public static final String  XDJCLSSDL15= "XDJCLSSDL15";//15分钟限电降出力损失电量
+    public static final String  CWSLDWSSDL15= "CWSLDWSSDL15";//15分钟场外受累电网损失电量
+    public static final String  CWSLTQSSDL15= "CWSLTQSSDL15";//15分钟场外受累天气损失电量
+    public static final String  ZFDL15= "ZFDL15";//15分钟增发电量
+    public static final String  QFDL15= "QFDL15";//15分钟欠发电量
+    public static final String  RFDLSYZ= "RFDLSYZ";//日发电量(升压站)
+    public static final String  YFDLSYZ= "YFDLSYZ";//月发电量(升压站)
+    public static final String  NFDLSYZ= "NFDLSYZ";//年发电量(升压站)
+    public static final String  RSWDL= "RSWDL";//日上网电量
+    public static final String  YSWDL= "YSWDL";//月上网电量
+    public static final String  NSWDL= "NSWDL";//年上网电量
+    public static final String  RGWGWDL= "RGWGWDL";//日工网购网电量
+    public static final String  YGWGWDL= "YGWGWDL";//月工网购网电量
+    public static final String  NGWGWDL= "NGWGWDL";//年工网购网电量
+    public static final String  RNWGWDL= "RNWGWDL";//日农网购网电量
+    public static final String  YNWGWDL= "YNWGWDL";//月农网购网电量
+    public static final String  NNWGWDL= "NNWGWDL";//年农网购网电量
+    public static final String  RCYDL= "RCYDL";//日厂用电量
+    public static final String  YCYDL= "YCYDL";//月厂用电量
+    public static final String  NCYDL= "NCYDL";//年厂用电量
+    public static final String  GZTSMX= "GZTSMX";//故障台数(明细)
+    public static final String  CNSLGZTSMX= "CNSLGZTSMX";//场内受累故障台数(明细)
+    public static final String  JXTSMX= "JXTSMX";//检修台数(明细)
+    public static final String  CNSLJXTSMX= "CNSLJXTSMX";//场内受累检修台数(明细)
+    public static final String  DJTSMX= "DJTSMX";//待机台数(明细)
+    public static final String  QXJCLTSMX= "QXJCLTSMX";//缺陷降出力台数(明细)
+    public static final String  SDTJTSMX= "SDTJTSMX";//手动停机台数(明细)
+    public static final String  XNTSMX= "XNTSMX";//性能台数(明细)
+    public static final String  XDTJTSMX= "XDTJTSMX";//限电停机台数(明细)
+    public static final String  XDJCLTSMX= "XDJCLTSMX";//限电降出力台数(明细)
+    public static final String  CWSLDWTSMX= "CWSLDWTSMX";//场外受累电网台数(明细)
+    public static final String  CWSLTQTSMX= "CWSLTQTSMX";//场外受累天气台数(明细)
+    public static final String  LXTSMX= "LXTSMX";//离线台数(明细)
+    public static final String  TXZDTSMX= "TXZDTSMX";//通讯中断台数(明细)
+    public static final String  DJTS= "DJTS";//待机台数
+    public static final String  GZTJTS= "GZTJTS";//故障停机台数
+    public static final String  TXZDTS= "TXZDTS";//通讯中断台数
+    public static final String  JXTJTS= "JXTJTS";//维护停机台数
+    public static final String  XDTS= "XDTS";//限电台数
+    public static final String  YXTS= "YXTS";//运行台数
+    public static final String  RZHD= "RZHD";//日自耗电
+    public static final String  YZHD= "YZHD";//月自耗电
+    public static final String  NZHD= "NZHD";//年自耗电
+    public static final String  ZHD15= "ZHD15";//15分钟自耗电
+    public static final String  SBZT= "SBZT";//设备状态
+    public static final String  MXZT= "MXZT";//设备明细状态
+    public static final String  ZTCXSJ= "ZTCXSJ";//设备当前状态下持续时间
+    public static final String  SSBF= "SSBF";//设备实时补风风速
+    public static final String  XDZT= "XDZT";//设备限电状态
+    public static final String  GPZT= "GPZT";//设备挂牌状态(原限电受累)
+    public static final String  LSQFZT= "LSQFZT";//设备历史欠发状态
+    public static final String  SSQFZT= "SSQFZT";//设备实时欠发状态
+    public static final String  LLGL= "LLGL";//设备理论功率
+    public static final String  BZGL= "BZGL";//设备保证功率
+    public static final String  ZSGL= "ZSGL";//设备拟合功率(自算)
+    public static final String  ZYGL= "ZYGL";//设备最优功率
+    public static final String  KYGL= "KYGL";//设备可用功率
+
+
+
+
+
+}

+ 40 - 22
web/gdsx-ghost/src/main/java/com/gyee/ghost/service/RealtimeService.java

@@ -26,6 +26,8 @@ import org.apache.ibatis.annotations.Update;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -43,6 +45,7 @@ public class RealtimeService {
     public void saveWindturbineStatus2() {
 
         List<ProEconWindturbineStatus2> resultList = new ArrayList<>();
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
 
         List<Windturbine> wtls = CacheContext.wtls;
         Map<Integer, String> statusmxMap = CacheContext.statusmxMap;
@@ -72,13 +75,14 @@ public class RealtimeService {
                 double tempDouble = sectionData.getPointValueInDouble();
                 double speed = edosUtil.getRealData(windturbinetestingpointaifs).getPointValueInDouble();
 
-                if (currentDate.equals(startOfDay) || aDouble != tempDouble){
+                if (isEq(DateUtils.toDate(currentDate),DateUtils.toDate(startOfDay)) || aDouble != tempDouble){
                     ProEconWindturbineStatus2 proEconWindturbineStatus2 = new ProEconWindturbineStatus2();
                     proEconWindturbineStatus2.setId(CommonUtils.getUUID());
                     proEconWindturbineStatus2.setWindpowerstationId(wt.getWindpowerstationid());
                     proEconWindturbineStatus2.setWindturbineId(wt.getId());
-                    proEconWindturbineStatus2.setStopTime(DateUtils.parseLongToDate(currentDate.getTime()));
-                    proEconWindturbineStatus2.setStartTime(DateUtils.parseLongToDate(currentDate.getTime()));
+
+                    proEconWindturbineStatus2.setStopTime(DateUtils.parseLongToDate(sdf.parse(DateUtils.toDate1(currentDate)).getTime()));
+                    proEconWindturbineStatus2.setStartTime(DateUtils.parseLongToDate(sdf.parse(DateUtils.toDate1(currentDate)).getTime()));
                     proEconWindturbineStatus2.setStopHours(DateUtils.hoursDiff2(proEconWindturbineStatus2.getStopTime(), proEconWindturbineStatus2.getStartTime()));
                     proEconWindturbineStatus2.setLossPower(0.0);
                     proEconWindturbineStatus2.setShutdownEventId("");
@@ -88,11 +92,14 @@ public class RealtimeService {
                     proEconWindturbineStatus2.setAvgSpeed(0.0);
                     String statusName = statusmxMap.get(new Double(aDouble).intValue());
                     proEconWindturbineStatus2.setStatusDesc(statusName);
-                    resultList.add(proEconWindturbineStatus2);
+//                    resultList.add(proEconWindturbineStatus2);
+                    proEconWindturbineStatus2Service.save(proEconWindturbineStatus2);
 
                     QueryWrapper<ProEconWindturbineStatus2> qw = new QueryWrapper<>();
                     qw.eq("windTurbine_Id",wt.getId());
-                    Date beforeFive = DateUtils.addMinutes(currentDate, -5);
+                    Date beforeFive = DateUtils.addMinutes(sdf.parse(DateUtils.toDate1(currentDate)), -5);
+//                    String toDate = DateUtils.toDate(beforeFive);
+//                    Date parse = sdf.parse(toDate);
                     qw.eq("stop_Time",beforeFive);
                     Optional<ProEconWindturbineStatus2> first = proEconWindturbineStatus2Service.list(qw).stream().findFirst();
                     if (first.isPresent()){
@@ -102,30 +109,34 @@ public class RealtimeService {
                         proEconWindturbineStatus.setLossPower(0.0);
                         proEconWindturbineStatus.setSpeed(speed);
                         proEconWindturbineStatus.setAvgSpeed(0.0);
-                        resultList.add(proEconWindturbineStatus2);
+//                        resultList.add(proEconWindturbineStatus2);
+                        proEconWindturbineStatus2Service.updateById(proEconWindturbineStatus2);
                     }
 
                 }else {
                     QueryWrapper<ProEconWindturbineStatus2> qw = new QueryWrapper<>();
                     qw.eq("windTurbine_Id",wt.getId());
-                    Date beforeFive = DateUtils.addMinutes(currentDate, -5);
+                    Date beforeFive = DateUtils.addMinutes(sdf.parse(DateUtils.toDate1(currentDate)), -5);
+//                    String toDate = DateUtils.toDate(beforeFive);
+//                    Date parse = sdf.parse(toDate);
                     qw.eq("stop_Time",beforeFive);
                     Optional<ProEconWindturbineStatus2> first = proEconWindturbineStatus2Service.list(qw).stream().findFirst();
                     if (first.isPresent()){
                         ProEconWindturbineStatus2 proEconWindturbineStatus2 = first.get();
-                        proEconWindturbineStatus2.setStopTime(DateUtils.parseLongToDate(currentDate.getTime()));
+                        proEconWindturbineStatus2.setStopTime(DateUtils.parseLongToDate(sdf.parse(DateUtils.toDate1(currentDate)).getTime()));
                         proEconWindturbineStatus2.setStopHours(DateUtils.hoursDiff2(proEconWindturbineStatus2.getStopTime(), proEconWindturbineStatus2.getStartTime()));
                         proEconWindturbineStatus2.setLossPower(0.0);
                         proEconWindturbineStatus2.setSpeed(speed);
                         proEconWindturbineStatus2.setAvgSpeed(0.0);
-                        resultList.add(proEconWindturbineStatus2);
+                        proEconWindturbineStatus2Service.updateById(proEconWindturbineStatus2);
+//                        resultList.add(proEconWindturbineStatus2);
                     }else {
                         ProEconWindturbineStatus2 proEconWindturbineStatus2 = new ProEconWindturbineStatus2();
                         proEconWindturbineStatus2.setId(CommonUtils.getUUID());
                         proEconWindturbineStatus2.setWindpowerstationId(wt.getWindpowerstationid());
                         proEconWindturbineStatus2.setWindturbineId(wt.getId());
-                        proEconWindturbineStatus2.setStopTime(DateUtils.parseLongToDate(currentDate.getTime()));
-                        proEconWindturbineStatus2.setStartTime(DateUtils.parseLongToDate(currentDate.getTime()));
+                        proEconWindturbineStatus2.setStopTime(DateUtils.parseLongToDate(sdf.parse(DateUtils.toDate1(currentDate)).getTime()));
+                        proEconWindturbineStatus2.setStartTime(DateUtils.parseLongToDate(sdf.parse(DateUtils.toDate1(currentDate)).getTime()));
                         proEconWindturbineStatus2.setStopHours(DateUtils.hoursDiff2(proEconWindturbineStatus2.getStopTime(), proEconWindturbineStatus2.getStartTime()));
                         proEconWindturbineStatus2.setLossPower(0.0);
                         proEconWindturbineStatus2.setShutdownEventId("");
@@ -135,8 +146,8 @@ public class RealtimeService {
                         proEconWindturbineStatus2.setAvgSpeed(0.0);
                         String statusName = statusmxMap.get(new Double(aDouble).intValue());
                         proEconWindturbineStatus2.setStatusDesc(statusName);
-                        resultList.add(proEconWindturbineStatus2);
-
+//                        resultList.add(proEconWindturbineStatus2);
+                        proEconWindturbineStatus2Service.save(proEconWindturbineStatus2);
                     }
                 }
             } catch (Exception e) {
@@ -145,7 +156,7 @@ public class RealtimeService {
 
         });
 
-        proEconWindturbineStatus2Service.saveOrUpdateBatch(resultList);
+//        proEconWindturbineStatus2Service.saveOrUpdateBatch(resultList);
 
     }
 
@@ -301,14 +312,21 @@ public class RealtimeService {
      * @param endDate
      * @return
      */
-    private List<String> getDays(String beginDate, String endDate) {
-        List<String> days = null;
-        if (StringUtils.isNotEmpty(beginDate) && StringUtils.isNotEmpty(endDate)) {
-            days = DateUtils.getDays(beginDate, endDate);
-        } else {
-            days = new ArrayList<>();
-            days.add(DateUtils.getYesterdayStr("yyyy-MM-dd"));
+    private boolean isEq(String beginDate, String endDate) throws ParseException {
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+
+
+
+        Date date1 = sdf.parse(beginDate);
+
+        Date date2 = sdf.parse(endDate);
+
+        if(date1.equals(date2)) {
+
+            return true;
+
+        }else {
+            return false;
         }
-        return days;
     }
 }