Explorar o código

历史计算服务修正优化

shilin %!s(int64=2) %!d(string=hai) anos
pai
achega
4d96fc5fb1
Modificáronse 51 ficheiros con 2560 adicións e 1259 borrados
  1. 1 1
      realtime/healthmodel-server/pom.xml
  2. 16 22
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/config/GeneratorCodeConfig.java
  3. 11 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/config/V2Config.java
  4. 47 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/init/CacheContext.java
  5. 0 211
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/init/Constant.java
  6. 19 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/AlarmcountMapper.java
  7. 8 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/AlertrulefailureMapper.java
  8. 0 38
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/Alertrulefailuresub.java
  9. 23 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/AlertrulefailuresubMapper.java
  10. 0 46
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/Alertrulesub.java
  11. 16 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/AlertrulesubMapper.java
  12. 1 1
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/ProEconPartWarnCountMapper.java
  13. 5 3
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/ProEconRecommenMainMapper.java
  14. 16 7
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/ProEconShutdownEventMapper.java
  15. 4 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/ProEconStateJudgmentDayMapper.java
  16. 1 3
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/auto/Alertrulefailure.java
  17. 1 160
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/auto/ProEconWeatherFd.java
  18. 2 12
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/ShutdowneventVo.java
  19. 2 2
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/TsysTables.java
  20. 1 1
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/autocode/BeanColumn.java
  21. 2 1
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/autocode/GlobalConfig.java
  22. 1 1
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/autocode/TableConfig.java
  23. 3 3
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/weather/JsonRootBean.java
  24. 29 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/AlarmcountResultVo.java
  25. 19 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/AlarmcountVo.java
  26. 18 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/DataVlueVo.java
  27. 19 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/EquipmentInfoDayTopSubVo.java
  28. 21 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/EquipmentInfoDayTopVo.java
  29. 19 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/HealthNumVo.java
  30. 20 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/ShutdownEventTypeVo.java
  31. 28 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/StateJudgmentVo.java
  32. 35 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/WtTopScoreLevel.java
  33. 12 11
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/HealthJudgeService.java
  34. 1669 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/HealthReportService.java
  35. 4 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IAlarmcountService.java
  36. 4 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IAlertrulefailureService.java
  37. 0 11
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IProEconPointCodeService.java
  38. 3 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IProEconRecommenMainService.java
  39. 1 1
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IProEconShutdownEvent2Service.java
  40. 3 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IProEconShutdownEventService.java
  41. 1 1
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IProEconStateJudgmentDayService.java
  42. 13 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/AlarmcountServiceImpl.java
  43. 10 1
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/AlertrulefailureServiceImpl.java
  44. 0 629
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconPointCodeServiceImpl.java
  45. 5 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconRecommenMainServiceImpl.java
  46. 1 1
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconShutdownEvent2ServiceImpl.java
  47. 24 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconShutdownEventServiceImpl.java
  48. 4 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconStateJudgmentDayServiceImpl.java
  49. 0 18
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconStateTranRatesSub2ServiceImpl.java
  50. 344 0
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/util/SortUtils.java
  51. 74 74
      realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/util/realtimesource/EdosUtil.java

+ 1 - 1
realtime/healthmodel-server/pom.xml

@@ -9,7 +9,7 @@
     </parent>
     <modelVersion>4.0.0</modelVersion>
 
-    <artifactId>healthmodel-server-cph</artifactId>
+    <artifactId>healthmodel-server</artifactId>
 
 
     <properties>

+ 16 - 22
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/config/GeneratorCodeConfig.java

@@ -10,7 +10,6 @@ import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
 
 import java.util.Scanner;
 
-
 /**
  *@ClassName GeneratorCodeConfig
  *@Description 自动生成mybatisplus的相关代码
@@ -40,8 +39,8 @@ public class GeneratorCodeConfig {
         // 全局配置
         GlobalConfig gc = new GlobalConfig();
         String projectPath = System.getProperty("user.dir");
-        gc.setOutputDir(projectPath + "/src/main/java");
-        gc.setAuthor("石林");
+        gc.setOutputDir(projectPath+"\\realtime\\healthmodel-server\\src\\main\\java");
+        gc.setAuthor("shilin");
         gc.setOpen(false);
         //实体属性 Swagger2 注解
         gc.setSwagger2(false);
@@ -49,28 +48,24 @@ public class GeneratorCodeConfig {
 
         // 数据源配置
         DataSourceConfig dsc = new DataSourceConfig();
-
-//        dsc.setUrl("jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true");
-//        dsc.setDriverName("com.mysql.jdbc.Driver");
-//        dsc.setUsername("root");
-//        dsc.setPassword("root");
-//        mpg.setDataSource(dsc);
-
-        dsc.setDriverName("oracle.jdbc.driver.OracleDriver");
-        dsc.setUsername("gdprod");
+        /*dsc.setUrl("jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true");
+        dsc.setDriverName("com.mysql.jdbc.Driver");
+        dsc.setUsername("root");
+        dsc.setPassword("root");
+        mpg.setDataSource(dsc);*/
+//        dsc.setDriverName("oracle.jdbc.driver.OracleDriver"); 注意大写
+//        dsc.setUsername("gdprod");
+//        dsc.setPassword("gd123");
+//        dsc.setUrl("jdbc:oracle:thin:@10.81.3.151:1521:gdsj");
+
+        dsc.setDriverName("org.postgresql.Driver");
+        dsc.setUsername("postgres");
         dsc.setPassword("gd123");
-        dsc.setUrl("jdbc:oracle:thin:@10.0.118.71:1521:gdsj");
+        dsc.setUrl("jdbc:postgresql://127.0.0.1:5432/IMS_NEM_JN");
+
         mpg.setDataSource(dsc);
 
-//        dsc.setDriverName("com.cloudera.impala.jdbc41.Driver");
-//        dsc.setUrl("jdbc:impala://192.168.1.67:21050/gyee_test");
-//        mpg.setDataSource(dsc);
 
-//        dsc.setDriverName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
-//        dsc.setUsername("sa");
-//        dsc.setPassword("Gd!123456");
-//        dsc.setUrl("jdbc:sqlserver://10.0.118.71:1433;DatabaseName=fdeamnew");
-//        mpg.setDataSource(dsc);
 
         // 包配置
         PackageConfig pc = new PackageConfig();
@@ -80,7 +75,6 @@ public class GeneratorCodeConfig {
         pc.setMapper("mapper.auto");
         pc.setService("service.auto");
         pc.setServiceImpl("service.auto.impl");
-        pc.setController("controller.auto");
         mpg.setPackageInfo(pc);
 
         // 自定义配置

+ 11 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/config/V2Config.java

@@ -22,6 +22,8 @@ public class V2Config
     /**健康管理数据适配器网址 **/
     private static String healthurl;
 
+    private static  String firstIntegratedTime;
+
     public static String getHealthurl() {
         return healthurl;
     }
@@ -53,4 +55,13 @@ public class V2Config
     public  void setBaseurl(String baseurl) {
         V2Config.baseurl = baseurl;
     }
+
+
+    public static String getFirstIntegratedTime() {
+        return firstIntegratedTime;
+    }
+
+    public  void setFirstIntegratedTime(String firstIntegratedTime) {
+        V2Config.firstIntegratedTime = firstIntegratedTime;
+    }
 }

+ 47 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/init/CacheContext.java

@@ -14,6 +14,7 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * @ClassName : CacheContext
@@ -69,6 +70,12 @@ public class CacheContext implements CommandLineRunner {
     public static Map<String, ProEconEquipmentmodel> mlmap = new HashMap<String, ProEconEquipmentmodel>();// 风电机模型
     public static Map<String, List<ProBasicEquipment>> wtlinemap = new HashMap<String, List<ProBasicEquipment>>(); // 
     public static List<Alertrule2> alarmrulels = new ArrayList<>();
+
+    public static List<ProBasicPowerstationPoint> powerpointls = new ArrayList<>();
+    public static Map<String, Map<String, ProBasicPowerstationPoint>> pointwpmap = new HashMap<>();
+
+    public static Map<String, Map<String, ProBasicPowerstationPoint>> lnPointmap = new HashMap<>();//线路测点
+    public static Map<String, Map<String, ProBasicPowerstationPoint>> pjPointmap = new HashMap<>(); //期次测点
     @Override
     public void run(String... args) throws Exception {
 
@@ -184,6 +191,46 @@ public class CacheContext implements CommandLineRunner {
             }
         }
 
+
+        Map<String, ProBasicPowerstationPoint> items = null;
+        powerpointls = proBasicPowerstationPointService.list().stream().filter(i -> i.getId() != null).collect(Collectors.toList());
+        if (powerpointls != null && !powerpointls.isEmpty()) {
+            for (int i = 0; i < powerpointls.size(); i++) {
+
+                if (pjmap.containsKey(powerpointls.get(i).getWindpowerstationId())) {
+                    ProBasicPowerstationPoint point = powerpointls.get(i);
+                    if (pjPointmap.containsKey(point.getWindpowerstationId())) {
+                        items = pjPointmap.get(point.getWindpowerstationId());
+                        items.put(point.getUniformCode(), point);
+                    } else {
+                        items = new HashMap<String, ProBasicPowerstationPoint>();
+                        pjPointmap.put(point.getWindpowerstationId(), items);
+                        items.put(point.getUniformCode(), point);
+                    }
+                } else if (lnmap.containsKey(powerpointls.get(i).getWindpowerstationId())) {
+                    ProBasicPowerstationPoint point = powerpointls.get(i);
+                    if (lnPointmap.containsKey(point.getWindpowerstationId())) {
+                        items = lnPointmap.get(point.getWindpowerstationId());
+                        items.put(point.getUniformCode(), point);
+                    } else {
+                        items = new HashMap<String, ProBasicPowerstationPoint>();
+                        lnPointmap.put(point.getWindpowerstationId(), items);
+                        items.put(point.getUniformCode(), point);
+                    }
+                } else {
+                    ProBasicPowerstationPoint point = powerpointls.get(i);
+                    if (pointwpmap.containsKey(point.getWindpowerstationId())) {
+                        items = pointwpmap.get(point.getWindpowerstationId());
+                        items.put(point.getUniformCode(), point);
+                    } else {
+                        items = new HashMap<String, ProBasicPowerstationPoint>();
+                        pointwpmap.put(point.getWindpowerstationId(), items);
+                        items.put(point.getUniformCode(), point);
+                    }
+                }
+            }
+        }
+
         log.info("-------------------------------缓存结束--------------------------------------");
     }
 //  取redis

+ 0 - 211
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/init/Constant.java

@@ -1,211 +0,0 @@
-package com.gyee.healthmodel.init;
-
-/**
- * 
- * 
- * 项目名称:nxfd 类名称:Constant 类描述: 创建人:石林 创建时间:2014-3-4 上午10:07:03 修改人:shilinno1
- * 修改时间:2014-3-4 上午10:07:03 修改备注:
- * 
- * @version
- * 
- */
-public class Constant {
-    /**
-     * EdnaAPI 时间间隔
-     */
-    public static final Long EDNAAPI_PRIED = 30l;
-    public static final Long TOP_PRIED = 1800l;
-
-    public static final String TPOINT_ALL_RFDL = "RFDL"; // 汇总日发电量
-    public static final String TPOINT_ALL_YFDL = "YFDL"; // 汇总月发电量
-    public static final String TPOINT_ALL_NFDL = "NFDL"; // 汇总年发电量
-    public static final String TPOINT_ALL_SJGL = "RPJGL"; // 汇总日实际功率
-    public static final String TPOINT_ALL_PJFS = "RPJFS"; // 汇总日平均风速
-
-    public static final String TPOINT_WP_FGLYC = "FCFGCDQ0001,FCFGCDQ0003,FCFGCDQ0005,FCFGCDQ0007,FCFGCDQ0009,FCFGCDQ0011,FCFGCDQ0013,FCFGCDQ0015";
-    public static final String TPOINT_WP_FGLYC2 = "FCFGCDQ0002,FCFGCDQ0004,FCFGCDQ0006,FCFGCDQ0008,FCFGCDQ0010,FCFGCDQ0012,FCFGCDQ0014,FCFGCDQ0016";
-    public static final String TPOINT_WP_FGLYC24 = "FCFGCDQ0004,FCFGCDQ0008,FCFGCDQ0012,FCFGCDQ0016";
-    public static final String ycPoints2 = "FCFGCDQ0001,FCFGCDQ0002,FCFGCDQ0003,FCFGCDQ0004,FCFGCDQ0005,FCFGCDQ0006,FCFGCDQ0007,FCFGCDQ0008,FCFGCDQ0009,FCFGCDQ0010,FCFGCDQ0011,FCFGCDQ0012,FCFGCDQ0013,FCFGCDQ0014,FCFGCDQ0015,FCFGCDQ0016";
-    public static final String TPOINT_WP_YCGL = "RPJGL"; // 风场预测功率短期次天00:00:00
-    public static final String TPOINT_WP_PJFS = "RPJFS"; // 电场日平均风速
-
-    public static final String TPOINT_WP_SWDL = "SWDLB"; // 风场上网电量
-    public static final String TPOINT_WP_GWDL = "GWGWB"; // 风场购网电量
-    public static final String TPOINT_WP_NWGWDL = "NWGWB"; // 农网购网电量
-    /**
-     * 空气温度
-     */
-    public static final String TPOINT_WP_FCCFTWD = "FCCFTWD";// 温度
-
-    public static int WAITING_STATUS = 0;// 待机
-    public static int RUN_STATUS = 1;// 并网
-    public static int FAULT_STATUS = 2;// 故障停机
-    public static int INTERRUPTION_STATUS = 3;// 通讯中断
-    public static int MAINTENANCE_STATUS = 4;// 维护停机
-    public static String FAULT_NAME = "故障";
-    public static String MAINTENANCE_NAME = "维护";
-    public static String WAITING_NAME = "待机";
-    public static String RUN_NAME = "运行";
-    public static String INTERRUPTION_NAME = "离线";
-
-    public static final String TPOINT_WP_SJGL = "SSZGL"; // 日实际功率
-    public static final String TPOINT_WP_SFDL = "SFDL";// 总发电量(升压站)
-    public static final String TPOINT_WP_SSFS = "SSFS"; // 实时平均风速
-    public static final String TPOINT_WP_RFDL = "RFDLB"; // 日发电量
-    public static final String TPOINT_WP_YFDL = "YFDLB"; // 月发电量
-    public static final String TPOINT_WP_NFDL = "NFDLB"; // 年发电量
-
-    public static final String TPOINT_WT_RFDL = "RFDL";// 风机日发电量与SCADA日风场发电量
-    public static final String TPOINT_WT_DCRFDL = "AI064";// 导出单机发电量
-    public static final String TPOINT_WT_YFDL = "YFDL";// 风机月发电量
-    public static final String TPOINT_WT_NFDL = "NFDL";// 风机年发电量
-
-    public static final String TPOINT_WT_RFDL2 = "RFDLREAD";// 逆变器日发电量
-
-    public static final String TPOINT_WT_XDTS = "XDTS";// 限电台数
-    public static final String TPOINT_WT_YXTS = "YXTS";// 运行台数
-    public static final String TPOINT_WT_DJTS = "DJTS"; // 待机台数
-    public static final String TPOINT_WT_WHTJ = "WHTJ";// 维护台数
-    public static final String TPOINT_WT_GZTJ = "GZTJ";// 故障台数
-    public static final String TPOINT_WT_TXZD = "TXZD";// 离线台数
-
-    public static final String TPOINT_WT_U1YZDL = "AI061";// U1项绕组电流
-    public static final String TPOINT_WT_U2YZDL = "AI062";// U2项绕组电流
-    public static final String TPOINT_WT_U3YZDL = "AI063";// U3项绕组电流
-    public static final String TPOINT_WT_U1YZDY = "AI058";// U1项绕组电压
-    public static final String TPOINT_WT_U2YZDY = "AI059";// U2项绕组电压
-    public static final String TPOINT_WT_U3YZDY = "AI060";// U3项绕组电压
-    public static final String TPOINT_WT_FDJZS = "AI128";// 发电机转速
-    public static final String TPOINT_WT_U1YZWD = "AI045";// U1绕组温度
-    public static final String TPOINT_WT_V1YZWD = "AI047";// V1绕组温度
-    public static final String TPOINT_WT_W1YZWD = "AI049";// W1绕组温度
-    public static final String TPOINT_WT_YLZS = "AI012";// 叶轮转速
-    public static final String TPOINT_WT_FJJJJ = "AI085";// 风机浆距角
-	public static final String TPOINT_WT_DWZWD = "AI038";// 齿轮箱轴1温度
-    public static final String TPOINT_WT_GWZWD = "AI039";// 齿轮箱轴2温度
-    public static final String TPOINT_WT_CLXWD = "AI041";// 齿轮箱油温
-    public static final String TPOINT_WT_BJJD1 = "AI076";// 变桨角度1
-    public static final String TPOINT_WT_PHWZ = "AI034";// 偏航位置
-    public static final String TPOINT_WT_PJFS = "RPJFS"; // 日平均风速
-    public static final String TPOINT_WT_FJGL = "AI130";// 风机功率
-    public static final String TPOINT_WT_PJGL = "RPJGL";// 风机平均功率
-    public static final String TPOINT_WT_GLYS = "AI067";// 功率因数
-    public static final String TPOINT_WT_JCWWD = "AI056";// 机舱外温度
-    public static final String TPOINT_WT_JCWD = "AI057";// 机舱温度
-    public static final String TPOINT_WT_TDGWD = "AI069";// 塔底柜温度
-    public static final String TPOINT_WT_JCGWD = "AI069";// 机舱柜温度
-    public static final String TPOINT_WT_FJFX = "AI008";// 风机风向
-    public static final String TPOINT_WT_DFJD = "AI036";// 对风角度
-    public static final String TPOINT_WT_FJPL = "AI068";// 风机频率
-    public static final String TPOINT_WT_WGGL = "AI131";// 无功功率
-    public static final String TPOINT_WT_FJKYL = "AI001";// 风机可用率
-    public static final String TPOINT_WT_FJZSXZ = "AI051";// 风机转速限值
-    public static final String TPOINT_WT_FJSSFS = "AI022";// 风机实时风速
-
-    public static final String TPOINT_WT_FDJZCAWD = "AI052";// 发电机轴承A温度
-    public static final String TPOINT_WT_FDJZCBWD = "AI053";// 发电机轴承B温度
-
-    public static final String TPOINT_WT_FJGLKZXZ = "AI426";// UP97 取值 功率控制限值
-    public static final String TPOINT_WT_LLGL = "BZGL";// 风机理论功率
-    public static final String TPOINT_WT_YFGL = "ZSGL";// 风机应发功率
-    public static final String TPOINT_WT_RFDLBZ = "RFDLZS";// 日理论发电量
-
-    // public static final String TPOINT_WT_RFDLBZ = "RFDLLL";//日理论发电量
-
-    public static final String TPOINT_WT_RFDLZS = "RFDLZS";// 日应发电量
-
-    public static final String TPOINT_WT_NBQJLDY = "AIG061";// 逆变器交流电压
-    public static final String TPOINT_WT_NBQJLDL = "AIG060";// 逆变器交流电流
-    public static final String TPOINT_WT_NBQZLDY = "AIG081";// 逆变器直流电压
-    public static final String TPOINT_WT_NBQZLDL = "AIG078";// 逆变器直流电流
-
-    public static final String TPOINT_WT_NBQPL = "AIG073";// 逆变器频率
-    public static final String TPOINT_WT_NBQGLYSSZ = "AIG069";// 功率因数设置
-    public static final String TPOINT_WT_NBQGLYSSZ2 = "AIG104";// 功率因数设置
-    public static final String TPOINT_WT_NBQZFDL = "AIG064";// 逆变相总发电量
-    public static final String TPOINT_WT_NBQKQWD = "AIG071";// 逆变器空气温度
-    public static final String TPOINT_WT_NBQXL = "AIG072";// 逆变器效率
-
-    public static final String RFDLD = "RFDLD"; // 日理论发电量
-    public static final String RFDLE = "RFDLE"; // 日应发发电量
-    public static final String FJZT = "FJZT"; // 风场状态
-
-    public static final String ZBZGL = "ZBZGL";// 理论功率
-    public static final String ZSGLZZSGL = "ZZSGL";// 应发功率
-
-    public static final String RLZSSDL = "RLZSSDL"; // 日场内受累检修
-    public static final String RSZSSDL = "RSZSSDL"; // 日场内受累故障
-    public static final String RWZSSDL = "RWZSSDL"; // 日场外受累电网
-    public static final String RTZSSDL = "RTZSSDL"; // 日场外受累天气
-
-    public static final String YLZSSDL = "YLZSSDL"; // 月场内受累检修
-    public static final String YSZSSDL = "YSZSSDL"; // 月场内受累故障
-    public static final String YWZSSDL = "YWZSSDL"; // 月场外受累电网
-    public static final String YTZSSDL = "YTZSSDL"; // 月场外受累天气
-
-    public static final String NLZSSDL = "NLZSSDL"; // 年场内受累检修
-    public static final String NSZSSDL = "NSZSSDL"; // 年场内受累故障
-    public static final String NWZSSDL = "NWZSSDL"; // 年场外受累电网
-    public static final String NTZSSDL = "NTZSSDL"; // 年场外受累天气
-
-    public static final String RQFSSDL = "RQFSSDL"; // 日欠发损失电量
-    public static final String RGZSSDL = "RGZSSDL"; // 日故障损失电量
-    public static final String RJXSSDL = "RJXSSDL"; // 日检修损失电量
-    public static final String RXDSSDL = "RXDSSDL"; // 日限电损失电量
-
-    public static final String YQFSSDL = "YQFSSDL"; // 月欠发损失电量
-    public static final String YGZSSDL = "YGZSSDL"; // 月故障损失电量
-    public static final String YJXSSDL = "YJXSSDL"; // 月检修损失电量
-    public static final String YXDSSDL = "YXDSSDL"; // 月限电损失电量
-
-    public static final String NQFSSDL = "NQFSSDL"; // 年欠发损失电量
-    public static final String NGZSSDL = "NGZSSDL"; // 年故障损失电量
-    public static final String NJXSSDL = "NJXSSDL"; // 年检修损失电量
-    public static final String NXDSSDL = "NXDSSDL"; // 年限电损失电量
-
-    public static final String FCCFTFS10 = "FCCFTFS10";// 测风塔10米风速
-    public static final String FCCFTFS30 = "FCCFTFS30";// 测风塔30米风速
-    public static final String FCCFTFS50 = "FCCFTFS50";// 测风塔50米风速
-    public static final String FCCFTFS60 = "FCCFTFS60";// 测风塔60米风速
-    public static final String FCCFTFS70 = "FCCFTFS70";// 测风塔70米风速
-    public static final String FCCFTFS80 = "FCCFTFS80";// 测风塔80米风速
-
-    public static final String FCCFTFX10 = "FCCFTFX10";// 测风塔10米风向
-    public static final String FCCFTFX30 = "FCCFTFX30";// 测风塔30米风向
-    public static final String FCCFTFX50 = "FCCFTFX50";// 测风塔50米风向
-    public static final String FCCFTFX60 = "FCCFTFX60";// 测风塔60米风向
-    public static final String FCCFTFX70 = "FCCFTFX70";// 测风塔70米风向
-    public static final String FCCFTFX80 = "FCCFTFX80";// 测风塔80米风向
-
-    public static final String FCCFTWD = "FCCFTWD";// 测风塔温度
-    public static final String FCCFTSD = "FCCFTSD";// 测风塔湿度
-    public static final String FCCFTYQ = "FCCFTYQ";// 测风塔压强
-    
-    public static final String FJJKJL = "JKJL001";//风机健康状态值
-    public static final String CLXJKJL = "JKJL002";//齿轮箱健康状态值
-    public static final String FDJJKJL = "JKJL003";//发电机健康状态值
-    public static final String BJJKJL = "JKJL004";//变浆健康值
-    public static final String ZKJKJL = "JKJL005";//主控健康状态值
-    
-    public static final String FJLHSL = "JKSLLH001";//风机良好健康状态数量
-    public static final String FJZCSL = "JKSLHG001";//风机正常健康状态数量
-    public static final String FJZYSL = "JKSLZY001";//风机注意健康状态数量
-    public static final String FJYZSL = "JKSLYZ001";//风机严重健康状态数量
-    
-    public static final String YCFJJKZT4HOUR = "JKYC001";//风机健康状态未来4小时
-    public static final String YCFJJKZT1DAY = "JKYC006";//风机健康状态未来1天
-    public static final String YCFJJKZT3DAY = "JKYC011";//风机健康状态未来3天
-    public static final String YCFJJKZT7DAY = "JKYC016";//风机健康状态未来7天
-    public static final String YCFJJKZT1MONTH = "JKYC021";//风机健康状态未来1个月
-    
-    public static final String FJJKZZ = "JKZT100";//风机健康总状态得分
-    
-    public static final String FJJKZT = "JKZT001";//风机健康状态
-    public static final String CLXJKZT = "JKZT002";//齿轮箱健康状态
-    public static final String FDJJKZT = "JKZT003";//发电机健康状态
-    public static final String BJJKZT = "JKZT004";//变浆健康
-    public static final String ZKJKZT = "JKZT005";//主控健康状态
-    
-    
-    
-}

+ 19 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/AlarmcountMapper.java

@@ -2,6 +2,7 @@ package com.gyee.healthmodel.mapper.auto;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.gyee.healthmodel.model.auto.Alarmcount;
+import com.gyee.healthmodel.model.vo.AlarmcountVo;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 
@@ -21,4 +22,22 @@ public interface AlarmcountMapper extends BaseMapper<Alarmcount> {
     @Select(" select * from alarmcount where time is not null and snapid=#{snapid} and  alarmdate>=#{beginDate} and alarmdate<=#{endDate}   ")
     public List<Alarmcount> findAlarmcount(@Param(value = "snapid") Long snapid,@Param(value = "beginDate") Date beginDate, @Param(value = "endDate")Date endDate);
 
+
+    @Select(" select s.alerttext as alertText,p.name as name ,s.windturbineid as wtId ,a.count as counts,a.time as times " +
+            "    from   (select snapid,sum(count) as count,sum(time) as time from alarmcount" +
+            "    where alarmdate>=#{beginDate} and  alarmdate<=#{endDate} group by snapid )" +
+            "    a,alarmsnap s,windturbine_parts p where s.id=a.snapid and s.category3=p.id" +
+            " and s.windturbineid=#{wtId}  ")
+    public List<AlarmcountVo> findAlarmCountByWt(@Param(value = "wtId") String wtId, @Param(value = "beginDate") Date beginDate, @Param(value = "endDate")Date endDate);
+
+
+    @Select(" select s.alerttext as alertText,p.name as name ,w.modelid as modelId ,a.count as counts,a.time as times " +
+            "    from   (select snapid,sum(count) as count,sum(time) as time from alarmcount" +
+            "    where alarmdate>=#{beginDate} and  alarmdate<=#{endDate} group by snapid )" +
+            "    a,alarmsnap s,windturbine_parts p,windturbine w where s.id=a.snapid and s.category3=p.id" +
+            "  and w.id=s.windturbineid and  s.modelid =w.modelid and w.modelid=#{wtId}  ")
+    public List<AlarmcountVo> findAlarmCountByModelId(@Param(value = "modelId") String modelId, @Param(value = "beginDate") Date beginDate, @Param(value = "endDate")Date endDate);
+
+
+   
 }

+ 8 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/AlertrulefailureMapper.java

@@ -2,6 +2,10 @@ package com.gyee.healthmodel.mapper.auto;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.gyee.healthmodel.model.auto.Alertrulefailure;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
 
 /**
  * <p>
@@ -13,4 +17,8 @@ import com.gyee.healthmodel.model.auto.Alertrulefailure;
  */
 public interface AlertrulefailureMapper extends BaseMapper<Alertrulefailure> {
 
+
+    @Select(" select * from public.alertrulefailure f " +
+            "where name=#{name} and model= #{model} order by name")
+    public List<Alertrulefailure> getPartByAlertrule(@Param(value = "name") String name,@Param(value = "model") String model);
 }

+ 0 - 38
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/Alertrulefailuresub.java

@@ -1,38 +0,0 @@
-package com.gyee.healthmodel.mapper.auto;
-
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import com.baomidou.mybatisplus.extension.activerecord.Model;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-/**
- * <p>
- * 
- * </p>
- *
- * @author 石林
- * @since 2022-01-21
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-@TableName("ALERTRULEFAILURESUB")
-public class Alertrulefailuresub extends Model {
-
-    private static final long serialVersionUID = 1L;
-
-    @TableId("ID")
-    private String id;
-
-    @TableField("TID")
-    private String tid;
-
-    @TableField("NAME")
-    private String name;
-
-    @TableField("ALTYPE")
-    private String altype;
-
-
-}

+ 23 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/AlertrulefailuresubMapper.java

@@ -0,0 +1,23 @@
+package com.gyee.healthmodel.mapper.auto;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gyee.healthmodel.model.auto.Alertrulefailuresub;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-21
+ */
+public interface AlertrulefailuresubMapper extends BaseMapper<Alertrulefailuresub> {
+
+    @Select(" select altype from alertrulefailuresub where tid=#{tid}  ")
+    public List<String> getPartByAlertruleid(@Param(value = "tid") String tid);
+
+}

+ 0 - 46
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/Alertrulesub.java

@@ -1,46 +0,0 @@
-package com.gyee.healthmodel.mapper.auto;
-
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import com.baomidou.mybatisplus.extension.activerecord.Model;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-import java.math.BigDecimal;
-
-/**
- * <p>
- * 
- * </p>
- *
- * @author 石林
- * @since 2022-01-20
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-@TableName("ALERTRULESUB")
-public class Alertrulesub extends Model {
-
-    private static final long serialVersionUID = 1L;
-
-    @TableId("ID")
-    private String id;
-
-    @TableField("RID")
-    private String rid;
-
-    @TableField("FREQUENCY")
-    private BigDecimal frequency;
-
-    @TableField("TIMEINTERVAL")
-    private BigDecimal timeinterval;
-
-    @TableField("TIMERANGE")
-    private String timerange;
-
-    @TableField("TIMENUM")
-    private BigDecimal timenum;
-
-
-}

+ 16 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/AlertrulesubMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.healthmodel.mapper.auto;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gyee.healthmodel.model.auto.Alertrulesub;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-20
+ */
+public interface AlertrulesubMapper extends BaseMapper<Alertrulesub> {
+
+}

+ 1 - 1
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/ProEconPartWarnCountMapper.java

@@ -26,7 +26,7 @@ public interface ProEconPartWarnCountMapper extends BaseMapper<ProEconPartWarnCo
 
     @Insert(" insert into pro_econ_part_warn_count(id,ln_id,record_date,alertrule_id,total,average_quantity,part)" +
             " values(#{id,jdbcType=VARCHAR},#{ln_id,jdbcType=VARCHAR},#{record_date},#{alertrule_id,jdbcType=VARCHAR}," +
-            ",#{total,jdbcType=Integer},,#{average_quantity,jdbcType=Double},#{part,jdbcType=VARCHAR}) ")
+            ",#{total,jdbcType=INTEGER},,#{average_quantity,jdbcType=DOUBLE},#{part,jdbcType=VARCHAR}) ")
     public int insertPartbjcount(ProEconPartWarnCount ProEconPartWarnCount);
 
 

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 5 - 3
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/ProEconRecommenMainMapper.java


+ 16 - 7
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/ProEconShutdownEventMapper.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.gyee.healthmodel.model.auto.ProEconShutdownEvent;
 import com.gyee.healthmodel.model.custom.ShutdowneventVo;
 import com.gyee.healthmodel.model.custom.SimpleVo;
+import com.gyee.healthmodel.model.vo.ShutdownEventTypeVo;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 import org.apache.ibatis.annotations.Update;
@@ -24,10 +25,10 @@ public interface ProEconShutdownEventMapper extends BaseMapper<ProEconShutdownEv
 
 
     @Select("<script> select * from pro_econ_shutdown_event where  " +
-            "  <when test='wpId !=null'>  windpowerstation_id = #{wpId}   </when> " +
-            "  <when test='wtId !=null && wpId==null '> windturbine_id = #{wtId}   </when> " +
-            "  <when test='wtId !=null && wpId!=null '> and windturbine_id = #{wtId}   </when> " +
-            "  and stop_time >= #{beginDate}  and stop_time <= #{endDate} " +
+
+            "  <when test='wtId !=null  '> windturbine_id = #{wtId}   </when> " +
+            "  <when test='wpId !=null'>  and windpowerstation_id = #{wpId}   </when> " +
+            "  and stop_time >= #{beginDate}  and stop_time &lt;= #{endDate} " +
             "  <when test='type !=null  '> and status_code = #{type}   </when> " +
             " order by windturbine_id,start_time desc" +
             "</script>")
@@ -48,7 +49,7 @@ public interface ProEconShutdownEventMapper extends BaseMapper<ProEconShutdownEv
     List<SimpleVo> countStopByPj();
 
 
-    @Select("select * from pro_econ_shutdown_event t  where  t.stop_time>=#{beginDate}   and  t.stop_time<=#{endDate} and t.status_code=2  and t.warning_id is null and t.stop_time is not null  order by t.windturbine_id")
+    @Select("select * from pro_econ_shutdown_event t  where  t.stop_time>=#{beginDate}   and  t.stop_time<=#{endDate} and t.stoptype_id<>'wh'  and t.warning_id is null and t.stop_time is not null  order by t.windturbine_id")
     public List<ProEconShutdownEvent> queryShutdowneventList(@Param(value = "beginDate") Date beginDate, @Param(value = "endDate")Date endDate);
 
     @Select(" select h.id id,s.windturbineid windTurbineId,s.alertvalue warningId,s.alerttext warnDesc,h.alerttime stopTime,s.category2 stopTypeId " +
@@ -63,7 +64,15 @@ public interface ProEconShutdownEventMapper extends BaseMapper<ProEconShutdownEv
     public List<ShutdowneventVo> queryAlerthistoryList(@Param(value = "alerthistory")String alerthistory, @Param(value = "windturbineid")String windturbineid, @Param(value = "beginDate")Date beginDate, @Param(value = "endDate")Date endDate);
 
 
-    @Update("update pro_econ_shutdown_event t  set t.warning_id=#{warning_id},t.stop_type_id=#{stop_type_id}  where t.id=#{stopid}")
-    public int  updateShutdownevent(@Param(value = "warning_id") String warning_id, @Param(value = "stop_type_id")String stop_type_id, @Param(value = "stopid")String stopid);
+    @Update("update pro_econ_shutdown_event t  set t.warning_id=#{warning_id},t.stoptype_id=#{stoptype_id}  where t.id=#{stopid}")
+    public int  updateShutdownevent(@Param(value = "warning_id") String warning_id, @Param(value = "stoptype_id")String stoptype_id, @Param(value = "stopid")String stopid);
+
+
+    @Select("select windturbine_id as wtId,max(t.stop_time) as stopTime ,count(*) as stopNum from pro_econ_shutdown_event t  where  t.stop_time>=#{beginDate}   and  t.stop_time<=#{endDate} and t.stoptype_id=#{stoptype_id}   group by windturbine_id  order by t.windturbine_id")
+    public List<ShutdownEventTypeVo> queryShutdowneventListByType(@Param(value = "beginDate") Date beginDate, @Param(value = "endDate")Date endDate, @Param(value = "stoptype_id")String stoptype_id);
+
+
+    @Select("select windturbine_id as wtId,max(t.stop_time) as stopTime ,count(*) as stopNum from pro_econ_shutdown_event t  where  t.stop_time>=#{beginDate}   and  t.stop_time<=#{endDate} and t.stoptype_id!='wh'   group by windturbine_id  order by t.windturbine_id")
+    public List<ShutdownEventTypeVo> queryShutdowneventListByStop(@Param(value = "beginDate") Date beginDate, @Param(value = "endDate")Date endDate);
 
 }

+ 4 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/mapper/auto/ProEconStateJudgmentDayMapper.java

@@ -30,4 +30,8 @@ public interface ProEconStateJudgmentDayMapper extends BaseMapper<ProEconStateJu
 
     @Select(" select * from pro_econ_state_judgment_day where  judgment_describe like '%推荐检修%' ")
     public List<ProEconStateJudgmentDay> findProEconStateJudgmentDay();
+
+
+    @Select(" select * from pro_econ_state_judgment_day  ")
+    public List<ProEconStateJudgmentDay> findProEconStateJudgmentAll();
 }

+ 1 - 3
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/auto/Alertrulefailure.java

@@ -7,8 +7,6 @@ import com.baomidou.mybatisplus.extension.activerecord.Model;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
-import java.math.BigDecimal;
-
 /**
  * <p>
  * 
@@ -40,7 +38,7 @@ public class Alertrulefailure extends Model {
     private String gqj;
 
     @TableField("XQSC")
-    private BigDecimal xqsc;
+    private Double xqsc;
 
     @TableField("NAME")
     private String name;

+ 1 - 160
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/auto/ProEconWeatherFd.java

@@ -1,18 +1,10 @@
 package com.gyee.healthmodel.model.auto;
 
 import com.baomidou.mybatisplus.extension.activerecord.Model;
-import com.gyee.common.model.StringUtils;
-import com.gyee.healthmodel.init.CacheContext;
-import com.gyee.healthmodel.service.Alertrule2sService;
-import com.gyee.healthmodel.service.auto.IProEconRecommenMainService;
-import com.gyee.healthmodel.service.auto.IProEconStateJudgmentDayService;
-import com.gyee.healthmodel.util.RandomUtil;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
-import org.springframework.stereotype.Service;
 
-import javax.annotation.Resource;
-import java.util.*;
+import java.util.Date;
 
 /**
  * <p>
@@ -149,156 +141,5 @@ public class ProEconWeatherFd extends Model {
     private Double gust2;
 
 
-    /**
-     * @ClassName : RecommenmainsService
-     * @Description : 健康诊断结果统计service
-     */
-    @Service
-    public static class RecommenmainsService {
-
-        private final int DIGIT=2;
-        @Resource
-        private IProEconRecommenMainService proEconRecommenMainService;
-        @Resource
-        private Alertrule2sService alertrule2sService;
-        @Resource
-        private IProEconStateJudgmentDayService proEconStateJudgmentDayService;
-
-        public int deleteList(Date recodeDate)
-        {
-            if(StringUtils.notEmp(recodeDate))
-            {
-                Calendar cal = Calendar.getInstance();
-                cal.setTime(recodeDate);
-                cal.set(Calendar.HOUR_OF_DAY, 0);
-                cal.set(Calendar.MINUTE, 0);
-                cal.set(Calendar.SECOND, 0);
-
-                Date beginDate = cal.getTime();
-                cal.add(Calendar.DAY_OF_MONTH, 1);
-                Date endDate = cal.getTime();
-
-                return proEconRecommenMainService.deleteList(beginDate, endDate);
-            }else
-            {
-                return -1;
-            }
-
-        }
-
-
-        public int insertRecommenmain(ProEconRecommenMain recommenmain)
-        {
-            return proEconRecommenMainService.insertRecommenmain(recommenmain);
-        }
-
-        public List<ProEconRecommenMain> findRecommenmainList(Date recodeDate)
-        {
-            if(StringUtils.notEmp(recodeDate))
-            {
-                Calendar c = Calendar.getInstance();
-                c.setTime(recodeDate);
-                c.set(Calendar.HOUR_OF_DAY, 0);
-                c.set(Calendar.MINUTE, 0);
-                c.set(Calendar.SECOND, 0);
-
-                Date endDate = c.getTime();
-                c.add(Calendar.DAY_OF_MONTH, -3);
-                Date beginDate = c.getTime();
-                return proEconRecommenMainService.findRecommenmainList(beginDate, endDate);
-            }else
-            {
-                return new ArrayList<>();
-            }
-
-        }
-
-
-
-        public void recommenMainWt() {
-
-            Calendar cal = Calendar.getInstance();
-
-            deleteList(cal.getTime());
-            /************************************************* 进行昨天健康诊断记录数据初始化 ******************************************************************/
-            List<ProEconStateJudgmentDay> sjls = proEconStateJudgmentDayService.findProEconStateJudgmentDay();// 获得所有预测结论
-
-            Map<String, ProEconStateJudgmentDay> sjmap = new HashMap<>();
-
-            if (!sjls.isEmpty()) {
-                for (ProEconStateJudgmentDay sj : sjls) {
-                    sjmap.put(sj.getWtId(), sj);
-                }
-            }
-            /************************************************* 完成昨天健康诊断记录数据初始化 ******************************************************************/
-
-
-            /************************************************* 进行健康管理日信息分析功能 ******************************************************************/
-
-            for (ProBasicEquipment wt : CacheContext.wtls) {
-
-                if (sjmap.containsKey(wt.getId())) {
-
-                    ProEconRecommenMain rm = new ProEconRecommenMain();
-                    rm.setId(StringUtils.getUUID());
-                    rm.setWpId(wt.getWindpowerstationId());
-                    rm.setWtId(wt.getId());
-                    rm.setCreateDate(cal.getTime());
-                    rm.setIsmain(0);
-
-
-
-                    if (sjmap.containsKey(wt.getId())) {
-
-
-                        ProEconStateJudgmentDay sj= sjmap.get(wt.getId());
-                        rm.setReason(sj.getStateJudgment());
-                        String partnames = sj.getTop1() + "," + sj.getTop2()
-                                + ","
-                                + sj.getTop3();
-
-                        rm.setFormulas(sj.getFormulas());
-                        rm.setFormulasText(sj.getFormulasText());
-                        rm.setTopThreeFault(partnames);
-                        setJudgeWeatherAndSpeed( wt, rm);
-
-    //					if (!rmmap.containsKey(rm.getWtId())) {
-                        if (StringUtils.notEmp(sj.getStateJudgment()) && !sj.getStateJudgment().equals("null")) {
-                            insertRecommenmain(rm);
-                        }
-
-                    }
-
-                }
-            }
-
-            /************************************************* 完成健康管理日信息分析功能 ******************************************************************/
-
-        }
-
-
-
-        private String getAlertRuleIDByName(ProBasicEquipment wt, String partName) {
-
-            if (StringUtils.notEmp(wt) && StringUtils.notEmp(partName)) {
-               return alertrule2sService.getAlertRuleIdByName(wt.getWindpowerstationId(),wt.getModelId(),partName);
-            }
-            return null;
-
-        }
-
-        private void setJudgeWeatherAndSpeed( ProBasicEquipment wt, ProEconRecommenMain rm) {
-
-                rm.setSpeed(RandomUtil.getRandomForDoubleBounded(1.2,3.2));
-                Calendar c = Calendar.getInstance();
-                c.set(Calendar.HOUR_OF_DAY, 11);
-                c.set(Calendar.MINUTE, 0);
-                c.set(Calendar.SECOND, 0);
-
-                c.add(Calendar.DAY_OF_MONTH, 1);
-                rm.setRecordDate(c.getTime());
-
 
-        }
-    }
 }

+ 2 - 12
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/ShutdowneventVo.java

@@ -1,7 +1,7 @@
 
 package com.gyee.healthmodel.model.custom;
 
-import com.gyee.datatraining.init.Constant;
+
 
 import java.util.Date;
 
@@ -181,16 +181,6 @@ public class ShutdowneventVo {
 	public void setStatusCode(Integer statusCode) {
 		this.statusCode = statusCode;
 	}
-	public String getStatusName(){
-		String result = null;
-		if(statusCode != null){
-			if(statusCode==2){
-				result = Constant.FAULT_NAME;
-			}else if(statusCode==4){
-				result = Constant.MAINTENANCE_NAME;
-			}
-		}
-		return result;
-	}
+
 	
 }	

+ 2 - 2
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/TsysTables.java

@@ -1,8 +1,8 @@
 package com.gyee.healthmodel.model.custom;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
-import com.gyee.datatraining.model.custom.autocode.AutoCodeConfig;
-import com.gyee.datatraining.util.StringUtils;
+import com.gyee.healthmodel.model.custom.autocode.AutoCodeConfig;
+import com.gyee.healthmodel.util.StringUtils;
 
 import java.io.Serializable;
 import java.util.Date;

+ 1 - 1
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/autocode/BeanColumn.java

@@ -1,6 +1,6 @@
 package com.gyee.healthmodel.model.custom.autocode;
 
-import com.gyee.datatraining.util.StringUtils;
+import com.gyee.healthmodel.util.StringUtils;
 
 /**
  * 实体列

+ 2 - 1
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/autocode/GlobalConfig.java

@@ -1,6 +1,7 @@
 package com.gyee.healthmodel.model.custom.autocode;
 
-import com.gyee.datatraining.util.StringUtils;
+
+import com.gyee.healthmodel.util.StringUtils;
 
 import java.util.List;
 

+ 1 - 1
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/autocode/TableConfig.java

@@ -1,6 +1,6 @@
 package com.gyee.healthmodel.model.custom.autocode;
 
-import com.gyee.datatraining.util.StringUtils;
+import com.gyee.healthmodel.util.StringUtils;
 
 public class TableConfig {
     //表名称

+ 3 - 3
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/custom/weather/JsonRootBean.java

@@ -16,7 +16,7 @@ public class JsonRootBean {
     private String cod;
     private int message;
     private int cnt;
-    private List<com.gyee.datatraining.model.custom.weather.List> list;
+    private List<com.gyee.healthmodel.model.custom.weather.List> list;
     private City city;
     public void setCod(String cod) {
          this.cod = cod;
@@ -39,10 +39,10 @@ public class JsonRootBean {
          return cnt;
      }
 
-    public void setList(List<com.gyee.datatraining.model.custom.weather.List> list) {
+    public void setList(List<com.gyee.healthmodel.model.custom.weather.List> list) {
          this.list = list;
      }
-     public List<com.gyee.datatraining.model.custom.weather.List> getList() {
+     public List<com.gyee.healthmodel.model.custom.weather.List> getList() {
          return list;
      }
 

+ 29 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/AlarmcountResultVo.java

@@ -0,0 +1,29 @@
+package com.gyee.healthmodel.model.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class AlarmcountResultVo {
+
+
+    //风机编号
+    public String wtId;
+    //部件名称
+    public String name;
+    //型号编号
+    public String modelId;
+    //报警描述
+    public String alertText;
+    //时长
+    public Integer times;
+    //平均时长
+    public Integer avgtimes;
+    //次数
+    public Integer counts;
+    //平均次数
+    public Integer avgcounts;
+}

+ 19 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/AlarmcountVo.java

@@ -0,0 +1,19 @@
+package com.gyee.healthmodel.model.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class AlarmcountVo {
+
+
+    public String wtId;
+    public String name;
+    public String modelId;
+    public String alertText;
+    public Integer times;
+    public Integer counts;
+}

+ 18 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/DataVlueVo.java

@@ -0,0 +1,18 @@
+package com.gyee.healthmodel.model.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class DataVlueVo {
+
+    public String wpId;
+    public String wtId;
+    public Date recordDate;
+    public Double value;
+}

+ 19 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/EquipmentInfoDayTopSubVo.java

@@ -0,0 +1,19 @@
+package com.gyee.healthmodel.model.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class EquipmentInfoDayTopSubVo {
+
+
+    public String types;
+    public String targetName;
+    public Double value;
+    public Double num;
+    public Double score;
+
+}

+ 21 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/EquipmentInfoDayTopVo.java

@@ -0,0 +1,21 @@
+package com.gyee.healthmodel.model.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class EquipmentInfoDayTopVo {
+
+
+    public String wtId;
+    public String wtName;
+    public String wtLevel;
+    public Integer wtNum;
+    public List<EquipmentInfoDayTopSubVo> topls;
+
+}

+ 19 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/HealthNumVo.java

@@ -0,0 +1,19 @@
+package com.gyee.healthmodel.model.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class HealthNumVo {
+
+
+    public String dateRange;
+    public Integer fdj;
+    public Integer clx;
+    public Integer bj;
+    public Integer zz;
+    public Integer total;
+}

+ 20 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/ShutdownEventTypeVo.java

@@ -0,0 +1,20 @@
+package com.gyee.healthmodel.model.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+public class ShutdownEventTypeVo implements Serializable{
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	
+	private String  wtId;
+	private Date stopTime;
+	private int stopNum;
+
+}

+ 28 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/StateJudgmentVo.java

@@ -0,0 +1,28 @@
+package com.gyee.healthmodel.model.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class StateJudgmentVo {
+
+
+    public String wtId;
+    public String wtName;
+    public String top1;
+    public String top2;
+    public String top3;
+    public String gzpc;
+    public String gzcl;
+    public String gqj;
+    public Double xqsc;
+    public Date recordDate;
+
+
+
+}

+ 35 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/model/vo/WtTopScoreLevel.java

@@ -55,5 +55,40 @@ public enum WtTopScoreLevel {
         return null;
     }
 
+    /**
+     * 根据code获取message
+     *
+     * @param score
+     * @return
+     */
+    public static String getCodeByScore(Double score) {
 
+        String result="AAA";
+        if(score<100 && score>90)
+        {
+            result="AAA";
+        }else if(score<90 && score>80)
+        {
+            result="AA";
+        }else if(score<=80 && score>75)
+        {
+            result="A";
+        }else if(score<=75 && score>65)
+        {
+            result="BBB";
+        }else if(score<=65 && score>60)
+        {
+            result="BB";
+        }else if(score<=60 && score>40)
+        {
+            result="B";
+        }else if(score<=40 && score>20)
+        {
+            result="C";
+        }else  if(score<=20)
+        {
+            result="C-";
+        }
+        return result;
+    }
 }

+ 12 - 11
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/HealthJudgeService.java

@@ -1,10 +1,11 @@
 package com.gyee.healthmodel.service;
 
 
+import com.gyee.common.contant.ContantXk;
 import com.gyee.common.model.PointData;
 import com.gyee.healthmodel.init.CacheContext;
-import com.gyee.healthmodel.init.Constant;
 import com.gyee.healthmodel.model.auto.*;
+import com.gyee.healthmodel.model.vo.StatusDetailValue;
 import com.gyee.healthmodel.service.auto.*;
 import com.gyee.healthmodel.util.*;
 import com.gyee.healthmodel.vo.healthsystem.DataVo;
@@ -74,10 +75,10 @@ public class HealthJudgeService {
 //        healthInitialService.healthInitial();// 初始化函数算法模型数据
 
         List<String> codels = new ArrayList<String>();
-        codels.add(Constant.CLXJKZT);
-        codels.add(Constant.FDJJKZT);
-        codels.add(Constant.BJJKZT);
-        codels.add(Constant.ZKJKZT);
+        codels.add(ContantXk.JKZT002);
+        codels.add(ContantXk.JKZT003);
+        codels.add(ContantXk.JKZT004);
+        codels.add(ContantXk.JKZT005);
 
         List<ProEconStateJudgmentReal> pols = new ArrayList<>();
         for (ProBasicEquipment wt : CacheContext.wtls) {
@@ -93,12 +94,12 @@ public class HealthJudgeService {
 
                 double fjzt = 0;
                 double score = 100;
-                ProBasicEquipmentPoint ai = proBasicEquipmentPointsService.getEquipmentPoint(wt.getId(), Constant.FJZT);
+                ProBasicEquipmentPoint ai = proBasicEquipmentPointsService.getEquipmentPoint(wt.getId(), ContantXk.MXZT);
                 PointData point = realApiUtil.getRealData(ai);
 
                 if (StringUtils.notEmp(point)) {
-                    if (point.getPointValueInDouble() == 2) {
-                        fjzt = 2;
+                    if (point.getPointValueInDouble() == StatusDetailValue.GZ.getCode()) {
+                        fjzt = StatusDetailValue.GZ.getCode();
                     }
                 }
 
@@ -116,7 +117,7 @@ public class HealthJudgeService {
                     }
                 }
 
-                ProBasicEquipmentPoint fjjkzf = proBasicEquipmentPointsService.getEquipmentPoint(wt.getId(), Constant.FJJKZZ);
+                ProBasicEquipmentPoint fjjkzf = proBasicEquipmentPointsService.getEquipmentPoint(wt.getId(), ContantXk.JKZT100);
                 List<PointData> ssvalues = realApiUtil.getRealData(points);
 //                DNAVal[] ssvalues = realApiUtil.getRealtimeTagValues(points);
 
@@ -140,7 +141,7 @@ public class HealthJudgeService {
                 realApiUtil.updatePoint(fjjkzfpoint);
 
                 // 出现故障状态,直接降到10分 差
-                if (fjzt == 2) {
+                if (fjzt ==StatusDetailValue.GZ.getCode()) {
                     score = 10.0;
                     statejudgment.append("1-");
                 } else {
@@ -202,7 +203,7 @@ public class HealthJudgeService {
                     statejudgment.append("0-");
                 }
 
-                fjjkzf = proBasicEquipmentPointsService.getEquipmentPoint(wt.getId(), Constant.FJJKZZ);
+                fjjkzf = proBasicEquipmentPointsService.getEquipmentPoint(wt.getId(), ContantXk.JKZT100);
 
                 fjjkzfpoint = new PointData();
                 fjjkzfpoint.setEdnaId(fjjkzf.getNemCode());

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1669 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/HealthReportService.java


+ 4 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IAlarmcountService.java

@@ -2,6 +2,7 @@ package com.gyee.healthmodel.service.auto;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.gyee.healthmodel.model.auto.Alarmcount;
+import com.gyee.healthmodel.model.vo.AlarmcountVo;
 
 import java.util.Date;
 import java.util.List;
@@ -17,5 +18,8 @@ import java.util.List;
 public interface IAlarmcountService extends IService<Alarmcount> {
 
       public List<Alarmcount> findAlarmcount(Long snapid, Date beginDate, Date endDate);
+      public List<AlarmcountVo> findAlarmCountByWt(String wtId, Date beginDate, Date endDate);
 
+      public List<AlarmcountVo> findAlarmCountByModelId(String modelId, Date beginDate, Date endDate);
 }
+

+ 4 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IAlertrulefailureService.java

@@ -3,6 +3,8 @@ package com.gyee.healthmodel.service.auto;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.gyee.healthmodel.model.auto.Alertrulefailure;
 
+import java.util.List;
+
 /**
  * <p>
  *  服务类
@@ -13,4 +15,6 @@ import com.gyee.healthmodel.model.auto.Alertrulefailure;
  */
 public interface IAlertrulefailureService extends IService<Alertrulefailure> {
 
+    public List<Alertrulefailure> getPartByAlertrule(String name,String model);
+
 }

+ 0 - 11
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IProEconPointCodeService.java

@@ -2,10 +2,6 @@ package com.gyee.healthmodel.service.auto;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.gyee.healthmodel.model.auto.ProEconPointCode;
-import com.gyee.healthmodel.model.dto.response.ProEconPointCodeDTO;
-
-import java.util.Date;
-import java.util.List;
 
 /**
  * <p>
@@ -17,11 +13,4 @@ import java.util.List;
  */
 public interface IProEconPointCodeService extends IService<ProEconPointCode> {
 
-
-    List<ProEconPointCode> getEconPointCodeList();
-
-    ProEconPointCode getProEconPointCode(String nemCode);
-
-    List<ProEconPointCodeDTO>  getEconPointRanking(String regionId, String companyId, String pointCode, Date date, String dateType, boolean popup, String statype);
-
 }

+ 3 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IProEconRecommenMainService.java

@@ -27,4 +27,7 @@ public interface IProEconRecommenMainService extends IService<ProEconRecommenMai
     public int insertRecommenmain(ProEconRecommenMain recommenmain);
 
     public List<ProEconRecommenMain> findRecommenmainList(Date beginDate,Date endDate);
+
+    public List<ProEconRecommenMain> findRecommenmainList(String wtId,  Date recordDate);
+
 }

+ 1 - 1
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IProEconShutdownEvent2Service.java

@@ -2,7 +2,7 @@ package com.gyee.healthmodel.service.auto;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.gyee.healthmodel.model.auto.ProEconShutdownEvent2;
-import com.gyee.healthmodel.vo.ShutdowneventVo;
+import com.gyee.healthmodel.model.custom.ShutdowneventVo;
 
 import java.util.Date;
 import java.util.List;

+ 3 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IProEconShutdownEventService.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.gyee.healthmodel.model.auto.ProEconShutdownEvent;
 import com.gyee.healthmodel.model.custom.ShutdowneventVo;
 import com.gyee.healthmodel.model.custom.SimpleVo;
+import com.gyee.healthmodel.model.vo.ShutdownEventTypeVo;
 
 import java.util.Date;
 import java.util.List;
@@ -44,4 +45,6 @@ public interface IProEconShutdownEventService extends IService<ProEconShutdownEv
 
     public int  updateShutdownevent(String warningid, String stoptypeid, String stopid);
 
+    public List<ShutdownEventTypeVo> queryShutdowneventListByType(Date beginDate, Date endDate, String type);
+    public List<ShutdownEventTypeVo> queryShutdowneventListByStop(Date beginDate, Date endDate);
 }

+ 1 - 1
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/IProEconStateJudgmentDayService.java

@@ -23,7 +23,7 @@ public interface IProEconStateJudgmentDayService extends IService<ProEconStateJu
     public int insertProEconStateJudgmentDay(ProEconStateJudgmentDay ProEconStateJudgmentDay);
 
     public List<ProEconStateJudgmentDay> findProEconStateJudgmentDay();
-
+    public List<ProEconStateJudgmentDay> findProEconStateJudgmentAll();
 
 
 }

+ 13 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/AlarmcountServiceImpl.java

@@ -3,6 +3,7 @@ package com.gyee.healthmodel.service.auto.impl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.gyee.healthmodel.mapper.auto.AlarmcountMapper;
 import com.gyee.healthmodel.model.auto.Alarmcount;
+import com.gyee.healthmodel.model.vo.AlarmcountVo;
 import com.gyee.healthmodel.service.auto.IAlarmcountService;
 import org.springframework.stereotype.Service;
 
@@ -24,8 +25,20 @@ public class AlarmcountServiceImpl extends ServiceImpl<AlarmcountMapper, Alarmco
     @Resource
     private AlarmcountMapper alarmcountMapper;
 
+    @Override
     public List<Alarmcount> findAlarmcount(Long snapid, Date beginDate, Date endDate)
     {
         return alarmcountMapper.findAlarmcount(snapid, beginDate, endDate);
     }
+
+    @Override
+    public List<AlarmcountVo> findAlarmCountByWt(String wtId, Date beginDate, Date endDate)
+    {
+        return alarmcountMapper.findAlarmCountByWt(wtId, beginDate, endDate);
+    }
+    @Override
+    public List<AlarmcountVo> findAlarmCountByModelId(String modelId, Date beginDate, Date endDate)
+    {
+        return alarmcountMapper.findAlarmCountByModelId(modelId, beginDate, endDate);
+    }
 }

+ 10 - 1
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/AlertrulefailureServiceImpl.java

@@ -6,6 +6,9 @@ import com.gyee.healthmodel.model.auto.Alertrulefailure;
 import com.gyee.healthmodel.service.auto.IAlertrulefailureService;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.List;
+
 /**
  * <p>
  *  服务实现类
@@ -17,7 +20,13 @@ import org.springframework.stereotype.Service;
 @Service
 public class AlertrulefailureServiceImpl extends ServiceImpl<AlertrulefailureMapper, Alertrulefailure> implements IAlertrulefailureService {
 
-
+    @Resource
+    private AlertrulefailureMapper alertrulefailureMapper;
+    @Override
+    public List<Alertrulefailure> getPartByAlertrule(String name, String model)
+    {
+        return alertrulefailureMapper.getPartByAlertrule(name,model);
+    }
 
 
 

+ 0 - 629
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconPointCodeServiceImpl.java

@@ -35,633 +35,4 @@ import java.util.stream.Collectors;
 public class ProEconPointCodeServiceImpl extends ServiceImpl<ProEconPointCodeMapper, ProEconPointCode> implements IProEconPointCodeService {
 
 
-    @Autowired
-    private IProEconPowerstationInfoDay1Service proEconPowerstationInfoDay1Service;
-
-    @Autowired
-    private ProBasicPowerstationServiceImpl proBasicPowerstationService;
-
-    @Autowired
-    private IProEconPowerstationInfoDay4Service proEconPowerstationInfoDay4Service;
-
-
-
-    @Override
-    public List<ProEconPointCode> getEconPointCodeList() {
-        QueryWrapper<ProEconPointCode> qw = new QueryWrapper<>();
-        List<ProEconPointCode> list = baseMapper.selectList(qw);
-        return list;
-    }
-
-    @Override
-    public ProEconPointCode getProEconPointCode(String nemCode) {
-        QueryWrapper<ProEconPointCode> qw = new QueryWrapper<>();
-
-        if (StringUtils.isNotEmpty(nemCode)) {
-            qw.lambda().eq(ProEconPointCode::getNemCode, nemCode);
-        }
-        ProEconPointCode one = baseMapper.selectOne(qw);
-        return one;
-    }
-
-    @Override
-    public List<ProEconPointCodeDTO> getEconPointRanking(String regionId, String companyId, String pointCode, Date date, String dateType, boolean popup, String statype) {
-        List<ProBasicPowerstation> powerstationList = proBasicPowerstationService.getProBasicPowerstationlist(regionId, companyId, statype);
-
-        ProEconPointCode proEconPointCode = getProEconPointCode(pointCode);
-        if (null == proEconPointCode){
-            proEconPointCode = getProEconPointCode("fnlyl");
-            pointCode = "fnlyl";
-        }
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-
-        switch (pointCode) {
-            case "fdl":
-                dtos = fdl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "qfdl":
-                dtos = qfdl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "fnlyl":
-                dtos = fnlyl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "slssdl":
-                dtos = slssdl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "jxssdl":
-                dtos = jxssdl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "xdjclssdl":
-                dtos = xdjclssdl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "gzssdl":
-                dtos = gzssdl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "xnssdl":
-                dtos = xnssdl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "fwjsl":
-                dtos = fwjsl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "ztzhjsl":
-                dtos = ztzhjsl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "gzxqjsl":
-                dtos = gzxqjsl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "slssl":
-                dtos = slssl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "jxssl":
-                dtos = jxssl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "xdjclssl":
-                dtos = xdjclssl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "gzssl":
-                dtos = gzssl(powerstationList, date, dateType, proEconPointCode);
-                break;
-            case "xnssl":
-                dtos = xnssl(powerstationList, date, dateType, proEconPointCode);
-                break;
-        }
-
-
-        List<String> newsto = dtos.stream().map(ProEconPointCodeDTO::getStationcode).collect(Collectors.toList());
-        List<String> newsta = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-        List<String> reduce1 = newsta.stream().filter(item -> !newsto.contains(item)).collect(Collectors.toList());
-        for (String i : reduce1) {
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(proEconPointCode.getDescription() + "(" + proEconPointCode.getUnit() + ")");
-            if(null == CacheContext.wpmap.get(i)){
-                continue;
-            }
-            dto.setStationcode(null == CacheContext.wpmap.get(i) ? "" : CacheContext.wpmap.get(i).getNemCode());
-            dto.setStationname(null == CacheContext.wpmap.get(i) ? "" : CacheContext.wpmap.get(i).getName());
-            dtos.add(dto);
-        }
-        List<ProEconPointCodeDTO> dtoss = dtos.stream().sorted(Comparator.comparing(ProEconPointCodeDTO::getValue).reversed()).limit(popup ? dtos.size() : 5).collect(Collectors.toList());
-        return dtoss;
-    }
-
-
-    /**
-     * 发电量
-     */
-    private List<ProEconPointCodeDTO> fdl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue(i.getRfdl().divide(new BigDecimal(pointCode.getRatio()), 2, BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "y":
-                    dto.setValue(i.getYfdl().divide(new BigDecimal(pointCode.getRatio()), 2, BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "n":
-                    dto.setValue(i.getNfdl().divide(new BigDecimal(pointCode.getRatio()), 2, BigDecimal.ROUND_HALF_UP));
-                    break;
-            }
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-
-    /**
-     * 欠发电量
-     */
-    private List<ProEconPointCodeDTO> qfdl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue(i.getRqfdl().divide(new BigDecimal(pointCode.getRatio()), 2, BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "y":
-                    dto.setValue(i.getYqfdl().divide(new BigDecimal(pointCode.getRatio()), 2, BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "n":
-                    dto.setValue(i.getNqfdl().divide(new BigDecimal(pointCode.getRatio()), 2, BigDecimal.ROUND_HALF_UP));
-                    break;
-            }
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-
-    // 风能利用率
-    private List<ProEconPointCodeDTO> fnlyl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            if(compare0(i.getRllfdl())){
-                switch (dateType) {
-                    case "r":
-                        //发电量/理论发电量*100
-                        //divide(fdinfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"))
-                        dto.setValue(i.getRfdl().divide(i.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())));
-                        break;
-                    case "y":
-                        dto.setValue(i.getRfdl().divide(i.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())));
-                        break;
-                    case "n":
-                        dto.setValue(i.getRfdl().divide(i.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())));
-                        break;
-                }
-                dto.setValue(compare100(dto.getValue()));
-            }
-
-
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-    /**
-     * 受累损失电量
-     */
-    private List<ProEconPointCodeDTO> slssdl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue((i.getRcwsltqssdl().add(i.getRcwsldwssdl())).divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "y":
-                    dto.setValue((i.getYcwsltqssdl().add(i.getYcwsldwssdl())).divide(new BigDecimal(pointCode.getRatio()),2,BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "n":
-                    dto.setValue((i.getNcwsltqssdl().add(i.getNcwsldwssdl())).divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-            }
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-
-    /** 检修损失电量 */
-    private List<ProEconPointCodeDTO> jxssdl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue(i.getRjxssdl().divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "y":
-                    dto.setValue(i.getYjxssdl().divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "n":
-                    dto.setValue(i.getNjxssdl().divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-            }
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-    /** 限电损失电量*/
-    private List<ProEconPointCodeDTO> xdjclssdl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue((i.getRxdtjssdl().add(i.getRxdjclssdl())).divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "y":
-                    dto.setValue((i.getYxdtjssdl().add(i.getYxdjclssdl())).divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "n":
-                    dto.setValue((i.getNxdtjssdl().add(i.getNxdjclssdl())).divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-            }
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-   /** 故障损失电量*/
-    private List<ProEconPointCodeDTO> gzssdl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue(i.getRgzssdl().divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "y":
-                    dto.setValue(i.getYgzssdl().divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "n":
-                    dto.setValue(i.getNgzssdl().divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-            }
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-    /** 性能损失电量*/
-    private List<ProEconPointCodeDTO> xnssdl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue(i.getRxnssdl().divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "y":
-                    dto.setValue(i.getYxnssdl().divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-                case "n":
-                    dto.setValue(i.getNxnssdl().divide(new BigDecimal(pointCode.getRatio()), 2,BigDecimal.ROUND_HALF_UP));
-                    break;
-            }
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-   /** 复位及时率 */
-    private List<ProEconPointCodeDTO> fwjsl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay4> list = proEconPowerstationInfoDay4Service.getEconThreeRateCurvelist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue(compare100(i.getRfwjsl().divide(new BigDecimal(pointCode.getRatio()))));
-                    break;
-                case "y":
-                    dto.setValue(compare100(i.getYfwjsl().divide(new BigDecimal(pointCode.getRatio()))));
-                    break;
-                case "n":
-                    dto.setValue(compare100(i.getNfwjsl().divide(new BigDecimal(pointCode.getRatio()))));
-                    break;
-            }
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-    /** 状态转换及时率 */
-    private List<ProEconPointCodeDTO> ztzhjsl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay4> list = proEconPowerstationInfoDay4Service.getEconThreeRateCurvelist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue(compare100(i.getRztzhjsl().divide(new BigDecimal(pointCode.getRatio()))));
-                    break;
-                case "y":
-                    dto.setValue(compare100(i.getYztzhjsl().divide(new BigDecimal(pointCode.getRatio()))));
-                    break;
-                case "n":
-                    dto.setValue(compare100(i.getNztzhjsl().divide(new BigDecimal(pointCode.getRatio()))));
-                    break;
-            }
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-    /** 故障消缺及时率 */
-    private List<ProEconPointCodeDTO> gzxqjsl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay4> list = proEconPowerstationInfoDay4Service.getEconThreeRateCurvelist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue(compare100(i.getRgzxqjsl().divide(new BigDecimal(pointCode.getRatio()))));
-                    break;
-                case "y":
-                    dto.setValue(compare100(i.getYgzxqjsl().divide(new BigDecimal(pointCode.getRatio()))));
-                    break;
-                case "n":
-                    dto.setValue(compare100(i.getNgzxqjsl().divide(new BigDecimal(pointCode.getRatio()))));
-                    break;
-            }
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-    /** 受累损失率 */
-    private List<ProEconPointCodeDTO> slssl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-
-                switch (dateType) {
-                    case "r":
-                        dto.setValue(compare0(i.getRllfdl())?(i.getRcwsltqssdl().add(i.getRcwsldwssdl())).divide(i.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())): new BigDecimal(0));
-                        break;
-                    case "y":
-                        dto.setValue(compare0(i.getYllfdl())?(i.getYcwsltqssdl().add(i.getYcwsldwssdl())).divide(i.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())):new BigDecimal(0));
-                        break;
-                    case "n":
-                        dto.setValue(compare0(i.getNllfdl())?(i.getNcwsltqssdl().add(i.getNcwsldwssdl())).divide(i.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())):new BigDecimal(0));
-                        break;
-                }
-                dto.setValue(compare100(dto.getValue()));
-
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-    /** 检修损失率 */
-    private List<ProEconPointCodeDTO> jxssl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-
-
-            switch (dateType) {
-                case "r":
-                    dto.setValue(compare0(i.getRllfdl())?i.getRjxssdl().divide(i.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())): new BigDecimal(0));
-                    break;
-                case "y":
-                    dto.setValue(compare0(i.getYllfdl())?i.getYjxssdl().divide(i.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())):new BigDecimal(0));
-                    break;
-                case "n":
-                    dto.setValue(compare0(i.getNllfdl())?i.getNjxssdl().divide(i.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())):new BigDecimal(0));
-                    break;
-            }
-            dto.setValue(compare100(dto.getValue()));
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-    /** 限电损失率 */
-    private List<ProEconPointCodeDTO> xdjclssl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue(compare0(i.getRllfdl())?i.getRxdtjssdl().divide(i.getRxdjclssdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())): new BigDecimal(0));
-                    break;
-                case "y":
-                    dto.setValue(compare0(i.getYllfdl())?i.getYxdtjssdl().divide(i.getYxdjclssdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())):new BigDecimal(0));
-                    break;
-                case "n":
-                    dto.setValue(compare0(i.getNllfdl())?i.getNxdtjssdl().divide(i.getNxdjclssdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())):new BigDecimal(0));
-                    break;
-            }
-            dto.setValue(compare100(dto.getValue()));
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-   /** 故障损失率*/
-    private List<ProEconPointCodeDTO> gzssl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue(compare0(i.getRllfdl())?i.getRgzssdl().divide(i.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())): new BigDecimal(0));
-                    break;
-                case "y":
-                    dto.setValue(compare0(i.getYllfdl())?i.getYgzssdl().divide(i.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())):new BigDecimal(0));
-                    break;
-                case "n":
-                    dto.setValue(compare0(i.getNllfdl())?i.getNgzssdl().divide(i.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())):new BigDecimal(0));
-                    break;
-            }
-            dto.setValue(compare100(dto.getValue()));
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-    /** 性能损失率 */
-    private List<ProEconPointCodeDTO> xnssl(List<ProBasicPowerstation> powerstationList, Date date, String dateType, ProEconPointCode pointCode) {
-        List<String> stationlist = powerstationList.stream().map(ProBasicPowerstation::getNemCode).collect(Collectors.toList());
-
-        List<ProEconPowerstationInfoDay1> list = proEconPowerstationInfoDay1Service.getEconFiveLosslist(stationlist, date);
-        List<ProEconPointCodeDTO> dtos = new ArrayList<>();
-        list.stream().forEach(i -> {
-
-            ProEconPointCodeDTO dto = new ProEconPointCodeDTO();
-            dto.setDescription(pointCode.getDescription() + "(" + pointCode.getUnit() + ")");
-            dto.setStationcode(i.getForeignKeyId());
-            dto.setStationname(CacheContext.wpmap.get(i.getForeignKeyId()).getName());
-            switch (dateType) {
-                case "r":
-                    dto.setValue(compare0(i.getRllfdl())?i.getRxnssdl().divide(i.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())): new BigDecimal(0));
-                    break;
-                case "y":
-                    dto.setValue(compare0(i.getYllfdl())?i.getYxnssdl().divide(i.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())):new BigDecimal(0));
-                    break;
-                case "n":
-                    dto.setValue(compare0(i.getNllfdl())?i.getNxnssdl().divide(i.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(pointCode.getRatio())):new BigDecimal(0));
-                    break;
-            }
-            dto.setValue(compare100(dto.getValue()));
-            dtos.add(dto);
-        });
-
-        return dtos;
-    }
-
-
-
-    private BigDecimal compare100(BigDecimal a) {
-        BigDecimal b = new BigDecimal(100);
-
-        if (null == a) {
-            a = new BigDecimal(0);
-
-        }
-        if (b.compareTo(a) == -1) {
-            a = new BigDecimal(100);
-
-        }
-
-        if (a.compareTo(BigDecimal.ZERO) == -1) {
-            a = new BigDecimal(0);
-        }
-        return a;
-
-    }
-
-    private boolean compare0(BigDecimal a) {
-        BigDecimal b = new BigDecimal(0.00);
-        if (b.compareTo(a.setScale(2, BigDecimal.ROUND_HALF_UP)) == 0) {
-            return false;
-        }
-        return true;
-    }
-
 }

+ 5 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconRecommenMainServiceImpl.java

@@ -85,4 +85,9 @@ public class ProEconRecommenMainServiceImpl extends ServiceImpl<ProEconRecommenM
     {
         return proEconRecommenMainMapper.findRecommenmainList(beginDate, endDate);
     }
+    @Override
+    public List<ProEconRecommenMain> findRecommenmainList(String wtId,  Date recordDate)
+    {
+        return proEconRecommenMainMapper.findRecommenmainList(wtId, recordDate);
+    }
 }

+ 1 - 1
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconShutdownEvent2ServiceImpl.java

@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.gyee.healthmodel.mapper.auto.ProEconShutdownEvent2Mapper;
 import com.gyee.healthmodel.model.auto.ProEconShutdownEvent2;
 import com.gyee.healthmodel.service.auto.IProEconShutdownEvent2Service;
-import com.gyee.healthmodel.vo.ShutdowneventVo;
+import com.gyee.healthmodel.model.custom.ShutdowneventVo;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;

+ 24 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconShutdownEventServiceImpl.java

@@ -11,6 +11,7 @@ import com.gyee.healthmodel.model.auto.ProBasicProject;
 import com.gyee.healthmodel.model.auto.ProEconShutdownEvent;
 import com.gyee.healthmodel.model.custom.ShutdowneventVo;
 import com.gyee.healthmodel.model.custom.SimpleVo;
+import com.gyee.healthmodel.model.vo.ShutdownEventTypeVo;
 import com.gyee.healthmodel.service.auto.IProEconShutdownEventService;
 import com.gyee.healthmodel.util.StringUtils;
 import org.springframework.stereotype.Service;
@@ -210,4 +211,27 @@ public class ProEconShutdownEventServiceImpl extends ServiceImpl<ProEconShutdown
 
         return proEconShutdownEventMapper.updateShutdownevent(warningid,stoptypeid,stopid);
     }
+
+    public List<ShutdownEventTypeVo> queryShutdowneventListByType(Date beginDate, Date endDate, String type)
+    {
+        List<ShutdownEventTypeVo> ls=new ArrayList<>();
+        if(StringUtils.notEmp(beginDate) && StringUtils.notEmp(endDate) && StringUtils.notEmp(type))
+        {
+            ls= proEconShutdownEventMapper.queryShutdowneventListByType( beginDate,  endDate,  type);
+        }
+
+        return ls;
+    }
+
+    public List<ShutdownEventTypeVo> queryShutdowneventListByStop(Date beginDate, Date endDate)
+    {
+        List<ShutdownEventTypeVo> ls=new ArrayList<>();
+        if(StringUtils.notEmp(beginDate) && StringUtils.notEmp(endDate) )
+        {
+            ls= proEconShutdownEventMapper.queryShutdowneventListByStop( beginDate,  endDate);
+        }
+
+        return ls;
+    }
+
 }

+ 4 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconStateJudgmentDayServiceImpl.java

@@ -54,5 +54,9 @@ public class ProEconStateJudgmentDayServiceImpl extends ServiceImpl<ProEconState
     public List<ProEconStateJudgmentDay> findProEconStateJudgmentDay() {
         return  proEconStateJudgmentDayMapper.findProEconStateJudgmentDay();
     }
+    @Override
+    public List<ProEconStateJudgmentDay> findProEconStateJudgmentAll() {
+        return  proEconStateJudgmentDayMapper.findProEconStateJudgmentAll();
+    }
 
 }

+ 0 - 18
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/service/auto/impl/ProEconStateTranRatesSub2ServiceImpl.java

@@ -1,18 +0,0 @@
-package com.gyee.healthmodel.service.auto.impl;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springframework.stereotype.Service;
-
-/**
- * <p>
- * 状态转换及时率子表2 服务实现类
- * </p>
- *
- * @author shilin
- * @since 2022-11-07
- */
-@Service
-public class ProEconStateTranRatesSub2ServiceImpl extends ServiceImpl<ProEconStateTranRatesSub2Mapper, ProEconStateTranRatesSub2> implements IService<ProEconStateTranRatesSub2> {
-
-}

+ 344 - 0
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/util/SortUtils.java

@@ -0,0 +1,344 @@
+package com.gyee.healthmodel.util;
+
+import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @ClassName : SortUtils
+ * @Author : xieshengjie
+ * @Date: 2021/6/5 20:06
+ * @Description : 排序
+ */
+public class SortUtils {
+    public static final String DESC = "desc";
+    public static final String ASC = "asc";
+
+    /**
+     * 对list中的元素按升序排列.
+     *
+     * @param list
+     *            排序集合
+     * @param field
+     *            排序字段
+     * @return
+     */
+    public static List<?> sort(List<?> list, final String field) {
+        return sort(list, field, null);
+    }
+
+    /**
+     * 对list中的元素进行排序.
+     *
+     * @param list
+     *            排序集合
+     * @param field
+     *            排序字段
+     * @param sort
+     *            排序方式: SortListUtil.DESC(降序) SortListUtil.ASC(升序).
+     * @return
+     */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
+    public static List<?> sort(List<?> list, final String field,
+                               final String sort) {
+        Collections.sort(list, new Comparator() {
+            public int compare(Object a, Object b) {
+                int ret = 0;
+                try {
+                    Field f = a.getClass().getDeclaredField(field);
+                    f.setAccessible(true);
+                    Class<?> type = f.getType();
+
+                    if (type == int.class) {
+                        ret = ((Integer) f.getInt(a)).compareTo((Integer) f
+                                .getInt(b));
+                    } else if (type == double.class) {
+                        ret = ((Double) f.getDouble(a)).compareTo((Double) f
+                                .getDouble(b));
+                    } else if (type == long.class) {
+                        ret = ((Long) f.getLong(a)).compareTo((Long) f
+                                .getLong(b));
+                    } else if (type == float.class) {
+                        ret = ((Float) f.getFloat(a)).compareTo((Float) f
+                                .getFloat(b));
+                    } else if (type == Date.class) {
+                        ret = ((Date) f.get(a)).compareTo((Date) f.get(b));
+                    } else if (isImplementsOf(type, Comparable.class)) {
+                        ret = ((Comparable) f.get(a)).compareTo((Comparable) f
+                                .get(b));
+                    } else {
+                        ret = String.valueOf(f.get(a)).compareTo(
+                                String.valueOf(f.get(b)));
+                    }
+
+                } catch (SecurityException e) {
+                    e.printStackTrace();
+                } catch (NoSuchFieldException e) {
+                    e.printStackTrace();
+                } catch (IllegalArgumentException e) {
+                    e.printStackTrace();
+                } catch (IllegalAccessException e) {
+                    e.printStackTrace();
+                }
+                if (sort != null && sort.toLowerCase().equals(DESC)) {
+                    return -ret;
+                } else {
+                    return ret;
+                }
+            }
+        });
+        return list;
+    }
+
+    /**
+     * 对list中的元素按fields和sorts进行排序,
+     * fields[i]指定排序字段,sorts[i]指定排序方式.如果sorts[i]为空则默认按升序排列.
+     *
+     * @param list
+     *            排序集合
+     * @param fields
+     *            排序字段-数组(一个或多个)
+     * @param sorts
+     *            排序规则-数组(一个或多个)
+     * @return
+     */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
+    public static List<?> sort(List<?> list, String[] fields, String[] sorts) {
+        if (fields != null && fields.length > 0) {
+            for (int i = fields.length - 1; i >= 0; i--) {
+                final String field = fields[i];
+                String tmpSort = ASC;
+                if (sorts != null && sorts.length > i && sorts[i] != null) {
+                    tmpSort = sorts[i];
+                }
+                final String sort = tmpSort;
+                Collections.sort(list, new Comparator() {
+                    public int compare(Object a, Object b) {
+                        int ret = 0;
+                        try {
+                            Field f = a.getClass().getDeclaredField(field);
+                            f.setAccessible(true);
+                            Class<?> type = f.getType();
+                            if (type == int.class) {
+                                ret = ((Integer) f.getInt(a))
+                                        .compareTo((Integer) f.getInt(b));
+                            } else if (type == double.class) {
+                                ret = ((Double) f.getDouble(a))
+                                        .compareTo((Double) f.getDouble(b));
+                            } else if (type == long.class) {
+                                ret = ((Long) f.getLong(a)).compareTo((Long) f
+                                        .getLong(b));
+                            } else if (type == float.class) {
+                                ret = ((Float) f.getFloat(a))
+                                        .compareTo((Float) f.getFloat(b));
+                            } else if (type == Date.class) {
+                                ret = ((Date) f.get(a)).compareTo((Date) f
+                                        .get(b));
+                            } else if (isImplementsOf(type, Comparable.class)) {
+                                ret = ((Comparable) f.get(a))
+                                        .compareTo((Comparable) f.get(b));
+                            } else {
+                                ret = String.valueOf(f.get(a)).compareTo(
+                                        String.valueOf(f.get(b)));
+                            }
+
+                        } catch (SecurityException e) {
+                            e.printStackTrace();
+                        } catch (NoSuchFieldException e) {
+                            e.printStackTrace();
+                        } catch (IllegalArgumentException e) {
+                            e.printStackTrace();
+                        } catch (IllegalAccessException e) {
+                            e.printStackTrace();
+                        }
+
+                        if (sort != null && sort.toLowerCase().equals(DESC)) {
+                            return -ret;
+                        } else {
+                            return ret;
+                        }
+                    }
+                });
+            }
+        }
+        return list;
+    }
+
+    /**
+     * 默认按正序排列
+     *
+     * @param list
+     *            排序集合
+     * @param method
+     *            排序方法 "getXxx()"
+     * @return
+     */
+    public static List<?> sortByMethod(List<?> list, final String method) {
+        return sortByMethod(list, method, null);
+    }
+
+    /**
+     * 集合排序
+     *
+     * @param list
+     *            排序集合
+     * @param method
+     *            排序方法 "getXxx()"
+     * @param sort
+     *            排序方式: SortListUtil.DESC(降序) SortListUtil.ASC(升序).
+     * @return
+     */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
+    public static List<?> sortByMethod(List<?> list, final String method,
+                                       final String sort) {
+        Collections.sort(list, new Comparator() {
+            public int compare(Object a, Object b) {
+                int ret = 0;
+                try {
+                    Method m = a.getClass().getMethod(method, null);
+                    m.setAccessible(true);
+                    Class<?> type = m.getReturnType();
+                    if (type == int.class) {
+                        ret = ((Integer) m.invoke(a, null))
+                                .compareTo((Integer) m.invoke(b, null));
+                    } else if (type == double.class) {
+                        ret = ((Double) m.invoke(a, null)).compareTo((Double) m
+                                .invoke(b, null));
+                    } else if (type == long.class) {
+                        ret = ((Long) m.invoke(a, null)).compareTo((Long) m
+                                .invoke(b, null));
+                    } else if (type == float.class) {
+                        ret = ((Float) m.invoke(a, null)).compareTo((Float) m
+                                .invoke(b, null));
+                    } else if (type == Date.class) {
+                        ret = ((Date) m.invoke(a, null)).compareTo((Date) m
+                                .invoke(b, null));
+                    } else if (isImplementsOf(type, Comparable.class)) {
+                        ret = ((Comparable) m.invoke(a, null))
+                                .compareTo((Comparable) m.invoke(b, null));
+                    } else {
+                        ret = String.valueOf(m.invoke(a, null)).compareTo(
+                                String.valueOf(m.invoke(b, null)));
+                    }
+
+                    if (isImplementsOf(type, Comparable.class)) {
+                        ret = ((Comparable) m.invoke(a, null))
+                                .compareTo((Comparable) m.invoke(b, null));
+                    } else {
+                        ret = String.valueOf(m.invoke(a, null)).compareTo(
+                                String.valueOf(m.invoke(b, null)));
+                    }
+
+                } catch (NoSuchMethodException ne) {
+                    System.out.println(ne);
+                } catch (IllegalAccessException ie) {
+                    System.out.println(ie);
+                } catch (InvocationTargetException it) {
+                    System.out.println(it);
+                }
+
+                if (sort != null && sort.toLowerCase().equals(DESC)) {
+                    return -ret;
+                } else {
+                    return ret;
+                }
+            }
+        });
+        return list;
+    }
+
+    @SuppressWarnings("unchecked")
+    public static List<?> sortByMethod(List<?> list, final String methods[],
+                                       final String sorts[]) {
+        if (methods != null && methods.length > 0) {
+            for (int i = methods.length - 1; i >= 0; i--) {
+                final String method = methods[i];
+                String tmpSort = ASC;
+                if (sorts != null && sorts.length > i && sorts[i] != null) {
+                    tmpSort = sorts[i];
+                }
+                final String sort = tmpSort;
+                Collections.sort(list, new Comparator() {
+                    public int compare(Object a, Object b) {
+                        int ret = 0;
+                        try {
+                            Method m = a.getClass().getMethod(method, null);
+                            m.setAccessible(true);
+                            Class<?> type = m.getReturnType();
+                            if (type == int.class) {
+                                ret = ((Integer) m.invoke(a, null))
+                                        .compareTo((Integer) m.invoke(b, null));
+                            } else if (type == double.class) {
+                                ret = ((Double) m.invoke(a, null))
+                                        .compareTo((Double) m.invoke(b, null));
+                            } else if (type == long.class) {
+                                ret = ((Long) m.invoke(a, null))
+                                        .compareTo((Long) m.invoke(b, null));
+                            } else if (type == float.class) {
+                                ret = ((Float) m.invoke(a, null))
+                                        .compareTo((Float) m.invoke(b, null));
+                            } else if (type == Date.class) {
+                                ret = ((Date) m.invoke(a, null))
+                                        .compareTo((Date) m.invoke(b, null));
+                            } else if (isImplementsOf(type, Comparable.class)) {
+                                ret = ((Comparable) m.invoke(a, null))
+                                        .compareTo((Comparable) m.invoke(b,
+                                                null));
+                            } else {
+                                ret = String.valueOf(m.invoke(a, null))
+                                        .compareTo(
+                                                String.valueOf(m
+                                                        .invoke(b, null)));
+                            }
+
+                        } catch (NoSuchMethodException ne) {
+                            System.out.println(ne);
+                        } catch (IllegalAccessException ie) {
+                            System.out.println(ie);
+                        } catch (InvocationTargetException it) {
+                            System.out.println(it);
+                        }
+
+                        if (sort != null && sort.toLowerCase().equals(DESC)) {
+                            return -ret;
+                        } else {
+                            return ret;
+                        }
+                    }
+                });
+            }
+        }
+        return list;
+    }
+
+    /**
+     * 判断对象实现的所有接口中是否包含szInterface
+     *
+     * @param clazz
+     * @param szInterface
+     * @return
+     */
+    public static boolean isImplementsOf(Class<?> clazz, Class<?> szInterface) {
+        boolean flag = false;
+
+        Class<?>[] face = clazz.getInterfaces();
+        for (Class<?> c : face) {
+            if (c == szInterface) {
+                flag = true;
+            } else {
+                flag = isImplementsOf(c, szInterface);
+            }
+        }
+
+        if (!flag && null != clazz.getSuperclass()) {
+            return isImplementsOf(clazz.getSuperclass(), szInterface);
+        }
+
+        return flag;
+    }
+
+}

+ 74 - 74
realtime/healthmodel-server/src/main/java/com/gyee/healthmodel/util/realtimesource/EdosUtil.java

@@ -41,7 +41,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
     @Override
     public PointData getRealData(ProBasicPowerstationPoint point) throws Exception {
 
-        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getCode()) && !point.getCode().startsWith(JKFC) && !point.getCode().startsWith(JKFJ))
+        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getNemCode()) && !point.getNemCode().startsWith(JKFC) && !point.getNemCode().startsWith(JKFJ))
         {
             baseURL = V2Config.getBaseurl();
         }else
@@ -49,13 +49,13 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
             baseURL = V2Config.getHealthurl();
         }
 
-        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getCode()) && !V2Config.getInitialcode().equals(point.getCode()))
+        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getNemCode()) && !V2Config.getInitialcode().equals(point.getNemCode()))
         {
             try {
-                Optional<String> keys = Optional.ofNullable(point.getCode());
+                Optional<String> keys = Optional.ofNullable(point.getNemCode());
                 Optional<String> thingType = Optional.ofNullable("station");
                 Optional<String> thingId = Optional.ofNullable(point.getWindpowerstationId());
-                Optional<String> uniformCodes = Optional.ofNullable(point.getUniformcode());
+                Optional<String> uniformCodes = Optional.ofNullable(point.getUniformCode());
 
                 String url = baseURL + "/latest?null=0";
                 if (keys.isPresent())
@@ -74,14 +74,14 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                     if (list.size() > 0)
                         return list.get(0);
                     else
-                        return ErrorRequest.RequestError(point.getCode());
+                        return ErrorRequest.RequestError(point.getNemCode());
                 } else {
-                    return ErrorRequest.RequestError(point.getCode());
+                    return ErrorRequest.RequestError(point.getNemCode());
                 }
             } catch (HttpClientErrorException exception) {
                 if (exception.getStatusCode() == HttpStatus.NOT_FOUND) {
                     //System.out.println("404请求错误");
-                    return ErrorRequest.RequestError(point.getCode());
+                    return ErrorRequest.RequestError(point.getNemCode());
                 } else {
                     throw exception;
                 }
@@ -89,7 +89,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
         }else
         {
             PointData po=new PointData();
-            po.setEdnaId(point.getCode());
+            po.setEdnaId(point.getNemCode());
             po.setPointValueInDouble(0.0);
             po.setPointTime(0l);
             return po;
@@ -101,19 +101,19 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
     @Override
     public List<PointData> getHistoryDatasSnap(ProBasicPowerstationPoint point, Long beginDate, Long endDate, Long count, Long pried) throws Exception {
 
-        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getCode()) && !point.getCode().startsWith(JKFC) && !point.getCode().startsWith(JKFJ))
+        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getNemCode()) && !point.getNemCode().startsWith(JKFC) && !point.getNemCode().startsWith(JKFJ))
         {
             baseURL = V2Config.getBaseurl();
         }else
         {
             baseURL = V2Config.getHealthurl();
         }
-        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getCode()) && !V2Config.getInitialcode().equals(point.getCode()))
+        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getNemCode()) && !V2Config.getInitialcode().equals(point.getNemCode()))
         {
-            Optional<String> tagName = Optional.ofNullable(point.getCode());
+            Optional<String> tagName = Optional.ofNullable(point.getNemCode());
             Optional<String> thingId = Optional.ofNullable(point.getWindpowerstationId());
             Optional<String> thingType = Optional.ofNullable(point.getModelId());
-            Optional<String> uniformCode = Optional.ofNullable(point.getUniformcode());
+            Optional<String> uniformCode = Optional.ofNullable(point.getUniformCode());
             Optional<Long> startTs = Optional.ofNullable(beginDate * 1000);
             Optional<Long> endTs = Optional.ofNullable(endDate * 1000);
             String pointid =tagName.get();
@@ -124,7 +124,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
             else if (count != null)
                 finalInterval = (endDate - beginDate) / count;
             else
-                return ErrorRequest.RequestListError(point.getCode());
+                return ErrorRequest.RequestListError(point.getNemCode());
             Optional<Integer> interval = Optional.ofNullable(Integer.parseInt(finalInterval.toString()));
 
             try {
@@ -150,13 +150,13 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                 ResponseEntity<JSONArray> resp = restTemplate.getForEntity(url, JSONArray.class);
                 JSONArray jsonArray = resp.getBody();
                 if (jsonArray != null) {
-                    List<PointData> snapList = JsonObjectHelper.phrasePointData(jsonArray, point.getCode());
+                    List<PointData> snapList = JsonObjectHelper.phrasePointData(jsonArray, point.getNemCode());
                     List<PointData> resultList = new ArrayList<>();
 
                     if(snapList.isEmpty())
                     {
 
-                        getHistsnapSameTiem(point.getCode(), beginDate, pried, resultList);
+                        getHistsnapSameTiem(point.getNemCode(), beginDate, pried, resultList);
                     }else
                     {
                         if(StringUtils.notEmp(pointid) && !pointid.startsWith(JKFC) && !pointid.startsWith(JKFJ))
@@ -218,13 +218,13 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
 
 
                 } else {
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 }
 
             } catch (HttpClientErrorException exception) {
                 if (exception.getStatusCode() == HttpStatus.NOT_FOUND) {
                     //System.out.println("404请求错误");
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 } else {
                     throw exception;
                 }
@@ -233,7 +233,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
         {
             List<PointData> pols=new ArrayList<>();
             PointData po=new PointData();
-            po.setEdnaId(point.getCode());
+            po.setEdnaId(point.getNemCode());
             po.setPointValueInDouble(0.0);
             po.setPointTime(0l);
             pols.add(po);
@@ -296,19 +296,19 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
 
     @Override
     public List<PointData> getHistoryDatasRaw(ProBasicPowerstationPoint point, Long beginDate, Long endDate) throws Exception {
-        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getCode()) && !point.getCode().startsWith(JKFC) && !point.getCode().startsWith(JKFJ))
+        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getNemCode()) && !point.getNemCode().startsWith(JKFC) && !point.getNemCode().startsWith(JKFJ))
         {
             baseURL = V2Config.getBaseurl();
         }else
         {
             baseURL = V2Config.getHealthurl();
         }
-        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getCode()) && !V2Config.getInitialcode().equals(point.getCode()))
+        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getNemCode()) && !V2Config.getInitialcode().equals(point.getNemCode()))
         {
-            Optional<String> tagName = Optional.ofNullable(point.getCode());
+            Optional<String> tagName = Optional.ofNullable(point.getNemCode());
             Optional<String> thingId = Optional.ofNullable(point.getWindpowerstationId());
             Optional<String> thingType = Optional.ofNullable(point.getModelId());
-            Optional<String> uniformCode = Optional.ofNullable(point.getUniformcode());
+            Optional<String> uniformCode = Optional.ofNullable(point.getUniformCode());
             Optional<Long> startTs = Optional.ofNullable(beginDate * 1000);
             Optional<Long> endTs = Optional.ofNullable(endDate * 1000);
 
@@ -334,15 +334,15 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                 ResponseEntity<JSONArray> resp = restTemplate.getForEntity(url, JSONArray.class);
                 JSONArray jsonArray = resp.getBody();
                 if (jsonArray != null)
-                    return JsonObjectHelper.phrasePointData(jsonArray, point.getCode());
+                    return JsonObjectHelper.phrasePointData(jsonArray, point.getNemCode());
                 else {
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 }
 
             } catch (HttpClientErrorException exception) {
                 if (exception.getStatusCode() == HttpStatus.NOT_FOUND) {
                     //System.out.println("404请求错误");
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 } else {
                     throw exception;
                 }
@@ -351,7 +351,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
         {
             List<PointData> pols=new ArrayList<>();
             PointData po=new PointData();
-            po.setEdnaId(point.getCode());
+            po.setEdnaId(point.getNemCode());
             po.setPointValueInDouble(0.0);
             po.setPointTime(0l);
             pols.add(po);
@@ -362,19 +362,19 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
 
     @Override
     public PointData getRealData(ProBasicEquipmentPoint point) throws Exception {
-        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getCode()) && !point.getCode().startsWith(JKFC) && !point.getCode().startsWith(JKFJ))
+        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getNemCode()) && !point.getNemCode().startsWith(JKFC) && !point.getNemCode().startsWith(JKFJ))
         {
             baseURL = V2Config.getBaseurl();
         }else
         {
             baseURL = V2Config.getHealthurl();
         }
-        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getCode()) && !V2Config.getInitialcode().equals(point.getCode()))
+        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getNemCode()) && !V2Config.getInitialcode().equals(point.getNemCode()))
         {
-            Optional<String> keys = Optional.ofNullable(point.getCode());
+            Optional<String> keys = Optional.ofNullable(point.getNemCode());
             Optional<String> thingType = Optional.ofNullable(point.getModelId());
             Optional<String> thingId = Optional.ofNullable(point.getWindpowerstationId());
-            Optional<String> uniformCodes = Optional.ofNullable(point.getUniformcode());
+            Optional<String> uniformCodes = Optional.ofNullable(point.getUniformCode());
 
             try {
                 String url = baseURL + "/latest?null=0";
@@ -396,15 +396,15 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                     if (list.size() > 0)
                         return list.get(0);
                     else
-                        return ErrorRequest.RequestError(point.getCode());
+                        return ErrorRequest.RequestError(point.getNemCode());
                 } else {
-                    return ErrorRequest.RequestError(point.getCode());
+                    return ErrorRequest.RequestError(point.getNemCode());
                 }
 
             } catch (HttpClientErrorException exception) {
                 if (exception.getStatusCode() == HttpStatus.NOT_FOUND) {
                     //System.out.println("404请求错误");
-                    return ErrorRequest.RequestError(point.getCode());
+                    return ErrorRequest.RequestError(point.getNemCode());
                 } else {
                     throw exception;
                 }
@@ -412,7 +412,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
         }else
         {
             PointData po=new PointData();
-            po.setEdnaId(point.getCode());
+            po.setEdnaId(point.getNemCode());
             po.setPointValueInDouble(0.0);
             po.setPointTime(0l);
             return po;
@@ -422,19 +422,19 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
 
     @Override
     public List<PointData> getHistoryDatasSnap(ProBasicEquipmentPoint point, Long beginDate, Long endDate, Long count, Long pried) throws Exception {
-        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getCode()) && !point.getCode().startsWith(JKFC) && !point.getCode().startsWith(JKFJ))
+        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getNemCode()) && !point.getNemCode().startsWith(JKFC) && !point.getNemCode().startsWith(JKFJ))
         {
             baseURL = V2Config.getBaseurl();
         }else
         {
             baseURL = V2Config.getHealthurl();
         }
-        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getCode()) && !V2Config.getInitialcode().equals(point.getCode()))
+        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getNemCode()) && !V2Config.getInitialcode().equals(point.getNemCode()))
         {
-            Optional<String> tagName = Optional.ofNullable(point.getCode());
+            Optional<String> tagName = Optional.ofNullable(point.getNemCode());
             Optional<String> thingId = Optional.ofNullable(point.getWindpowerstationId());
             Optional<String> thingType = Optional.ofNullable(point.getModelId());
-            Optional<String> uniformCode = Optional.ofNullable(point.getUniformcode());
+            Optional<String> uniformCode = Optional.ofNullable(point.getUniformCode());
             Optional<Long> startTs = Optional.ofNullable(beginDate * 1000);
             Optional<Long> endTs = Optional.ofNullable(endDate * 1000);
 
@@ -446,7 +446,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
             else if (count != null)
                 finalInterval = (endDate - beginDate) / count;
             else
-                return ErrorRequest.RequestListError(point.getCode());
+                return ErrorRequest.RequestListError(point.getNemCode());
             Optional<Integer> interval = Optional.ofNullable(Integer.parseInt(finalInterval.toString()));
 
             try {
@@ -472,13 +472,13 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                 ResponseEntity<JSONArray> resp = restTemplate.getForEntity(url, JSONArray.class);
                 JSONArray jsonArray = resp.getBody();
                 if (jsonArray != null) {
-                    List<PointData> snapList = JsonObjectHelper.phrasePointData(jsonArray, point.getCode());
+                    List<PointData> snapList = JsonObjectHelper.phrasePointData(jsonArray, point.getNemCode());
                     List<PointData> resultList = new ArrayList<>();
 
                     if(snapList.isEmpty())
                     {
 
-                        getHistsnapSameTiem(point.getCode(), beginDate, pried, resultList);
+                        getHistsnapSameTiem(point.getNemCode(), beginDate, pried, resultList);
                     }else
                     {
 
@@ -494,7 +494,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                                 //查询时间区间的截面值(截面值为传入时间节点的上一个最近值,返回时间为值的真实时间),
                                 // 再进行比较,若截面值的时间戳在以快照时间节点前推一个单位的时间区间中,
                                 // 则代表该时间节点快照有效,否则为0
-                                String rawUrl = baseURL + "/history/section?null=0&tagNames=" + point.getCode() + "&ts=" + snapItem.getPointTime() + "000";
+                                String rawUrl = baseURL + "/history/section?null=0&tagNames=" + point.getNemCode() + "&ts=" + snapItem.getPointTime() + "000";
                                 ResponseEntity<JSONObject> sectionResp = restTemplate.getForEntity(rawUrl, JSONObject.class);
                                 JSONObject jsonObjectSection = sectionResp.getBody();
 
@@ -506,7 +506,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                                         }
                                         else{
                                             PointData data = new PointData();
-                                            data.setEdnaId(point.getCode());
+                                            data.setEdnaId(point.getNemCode());
                                             data.setPointTime(snapItem.getPointTime());
                                             data.setPointValue("0");
                                             data.setPointName("1");
@@ -515,7 +515,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                                         }
                                     } else {
                                         PointData data = new PointData();
-                                        data.setEdnaId(point.getCode());
+                                        data.setEdnaId(point.getNemCode());
                                         data.setPointTime(snapItem.getPointTime());
                                         data.setPointValue("0");
                                         data.setPointName("1");
@@ -524,7 +524,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                                     }
                                 } else {
                                     PointData data = new PointData();
-                                    data.setEdnaId(point.getCode());
+                                    data.setEdnaId(point.getNemCode());
                                     data.setPointTime(snapItem.getPointTime());
                                     data.setPointValue("0");
                                     data.setPointName("1");
@@ -539,12 +539,12 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
 
                     return resultList;
                 } else {
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 }
             } catch (HttpClientErrorException exception) {
                 if (exception.getStatusCode() == HttpStatus.NOT_FOUND) {
                     //System.out.println("404请求错误");
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 } else {
                     throw exception;
                 }
@@ -553,7 +553,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
         {
             List<PointData> pols=new ArrayList<>();
             PointData po=new PointData();
-            po.setEdnaId(point.getCode());
+            po.setEdnaId(point.getNemCode());
             po.setPointValueInDouble(0.0);
             po.setPointTime(0l);
             pols.add(po);
@@ -566,7 +566,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
     @Override
     public List<PointData> getHistoryDatasRaw(ProBasicEquipmentPoint point, Long beginDate, Long endDate) throws Exception {
 
-        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getCode()) && !point.getCode().startsWith(JKFC) && !point.getCode().startsWith(JKFJ))
+        if(StringUtils.notEmp(point) &&  StringUtils.notEmp(point.getNemCode()) && !point.getNemCode().startsWith(JKFC) && !point.getNemCode().startsWith(JKFJ))
         {
             baseURL = V2Config.getBaseurl();
         }else
@@ -574,12 +574,12 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
             baseURL = V2Config.getHealthurl();
         }
 
-        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getCode()) && !V2Config.getInitialcode().equals(point.getCode()))
+        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getNemCode()) && !V2Config.getInitialcode().equals(point.getNemCode()))
         {
-            Optional<String> tagName = Optional.ofNullable(point.getCode());
+            Optional<String> tagName = Optional.ofNullable(point.getNemCode());
             Optional<String> thingId = Optional.ofNullable(point.getWindpowerstationId());
             Optional<String> thingType = Optional.ofNullable(point.getModelId());
-            Optional<String> uniformCode = Optional.ofNullable(point.getUniformcode());
+            Optional<String> uniformCode = Optional.ofNullable(point.getUniformCode());
             Optional<Long> startTs = Optional.ofNullable(beginDate);
             Optional<Long> endTs = Optional.ofNullable(endDate);
             try {
@@ -604,14 +604,14 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                 ResponseEntity<JSONArray> resp = restTemplate.getForEntity(url, JSONArray.class);
                 JSONArray jsonArray = resp.getBody();
                 if (jsonArray != null)
-                    return JsonObjectHelper.phrasePointData(jsonArray, point.getCode());
+                    return JsonObjectHelper.phrasePointData(jsonArray, point.getNemCode());
                 else {
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 }
             } catch (HttpClientErrorException exception) {
                 if (exception.getStatusCode() == HttpStatus.NOT_FOUND) {
                     //System.out.println("404请求错误");
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 } else {
                     throw exception;
                 }
@@ -620,7 +620,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
         {
             List<PointData> pols=new ArrayList<>();
             PointData po=new PointData();
-            po.setEdnaId(point.getCode());
+            po.setEdnaId(point.getNemCode());
             po.setPointValueInDouble(0.0);
             po.setPointTime(0l);
             pols.add(po);
@@ -1263,19 +1263,19 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
     @Override
     public List<PointData> getHistStat(ProBasicEquipmentPoint point, Long beginDate, Long endDate, Long count, Long pried, int type) throws Exception {
 
-        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getCode()) &&   !point.getCode().startsWith(JKFC) && !point.getCode().startsWith(JKFJ))
+        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getNemCode()) &&   !point.getNemCode().startsWith(JKFC) && !point.getNemCode().startsWith(JKFJ))
         {
             baseURL = V2Config.getBaseurl();
         }else
         {
             baseURL = V2Config.getHealthurl();
         }
-        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getCode()) && !V2Config.getInitialcode().equals(point.getCode()))
+        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getNemCode()) && !V2Config.getInitialcode().equals(point.getNemCode()))
         {
-            Optional<String> tagName = Optional.ofNullable(point.getCode());
+            Optional<String> tagName = Optional.ofNullable(point.getNemCode());
             Optional<String> thingId = Optional.ofNullable(point.getWindpowerstationId());
             Optional<String> thingType = Optional.ofNullable(point.getModelId());
-            Optional<String> uniformCode = Optional.ofNullable(point.getUniformcode());
+            Optional<String> uniformCode = Optional.ofNullable(point.getUniformCode());
             Optional<Long> startTs = Optional.ofNullable(beginDate * 1000);
             Optional<Long> endTs = Optional.ofNullable(endDate * 1000);
 
@@ -1292,7 +1292,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
             else if (count != null)
                 finalInterval = (endDate - beginDate) / count;
             else
-                return ErrorRequest.RequestListError(point.getCode());
+                return ErrorRequest.RequestListError(point.getNemCode());
             Optional<Integer> interval = Optional.ofNullable(Integer.parseInt(finalInterval.toString()));
 
             try {
@@ -1318,14 +1318,14 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                 ResponseEntity<JSONArray> resp = restTemplate.getForEntity(url, JSONArray.class);
                 JSONArray jsonArray = resp.getBody();
                 if (jsonArray != null)
-                    return JsonObjectHelper.GeneralTsDataToPointDataByStat(jsonArray, point.getCode(), type);
+                    return JsonObjectHelper.GeneralTsDataToPointDataByStat(jsonArray, point.getNemCode(), type);
                 else {
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 }
             } catch (HttpClientErrorException exception) {
                 if (exception.getStatusCode() == HttpStatus.NOT_FOUND) {
                     //System.out.println("404请求错误");
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 } else {
                     throw exception;
                 }
@@ -1334,7 +1334,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
         {
             List<PointData> pols=new ArrayList<>();
             PointData po=new PointData();
-            po.setEdnaId(point.getCode());
+            po.setEdnaId(point.getNemCode());
             po.setPointValueInDouble(0.0);
             po.setPointTime(0l);
             pols.add(po);
@@ -1345,19 +1345,19 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
 
     @Override
     public List<PointData> getHistStat(ProBasicPowerstationPoint point, Long beginDate, Long endDate, Long count, Long pried, int type) throws Exception {
-        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getCode()) && !point.getCode().startsWith(JKFC) && !point.getCode().startsWith(JKFJ))
+        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getNemCode()) && !point.getNemCode().startsWith(JKFC) && !point.getNemCode().startsWith(JKFJ))
         {
             baseURL = V2Config.getBaseurl();
         }else
         {
             baseURL = V2Config.getHealthurl();
         }
-        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getCode()) && !V2Config.getInitialcode().equals(point.getCode()))
+        if(StringUtils.notEmp(point) && StringUtils.notEmp(point.getNemCode()) && !V2Config.getInitialcode().equals(point.getNemCode()))
         {
-            Optional<String> tagName = Optional.ofNullable(point.getCode());
+            Optional<String> tagName = Optional.ofNullable(point.getNemCode());
             Optional<String> thingId = Optional.ofNullable(point.getWindpowerstationId());
             Optional<String> thingType = Optional.ofNullable(point.getModelId());
-            Optional<String> uniformCode = Optional.ofNullable(point.getUniformcode());
+            Optional<String> uniformCode = Optional.ofNullable(point.getUniformCode());
             Optional<Long> startTs = Optional.ofNullable(beginDate * 1000);
             Optional<Long> endTs = Optional.ofNullable(endDate * 1000);
             //通过时间区间和时间间隔获取点数
@@ -1367,7 +1367,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
             else if (count != null)
                 finalInterval = (endDate - beginDate) / count;
             else
-                return ErrorRequest.RequestListError(point.getCode());
+                return ErrorRequest.RequestListError(point.getNemCode());
             Optional<Integer> interval = Optional.ofNullable(Integer.parseInt(finalInterval.toString()));
 
             try {
@@ -1393,14 +1393,14 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
                 ResponseEntity<JSONArray> resp = restTemplate.getForEntity(url, JSONArray.class);
                 JSONArray jsonArray = resp.getBody();
                 if (jsonArray != null)
-                    return JsonObjectHelper.GeneralTsDataToPointDataByStat(jsonArray, point.getCode(), type);
+                    return JsonObjectHelper.GeneralTsDataToPointDataByStat(jsonArray, point.getNemCode(), type);
                 else {
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 }
             } catch (HttpClientErrorException exception) {
                 if (exception.getStatusCode() == HttpStatus.NOT_FOUND) {
                     //System.out.println("404请求错误");
-                    return ErrorRequest.RequestListError(point.getCode());
+                    return ErrorRequest.RequestListError(point.getNemCode());
                 } else {
                     throw exception;
                 }
@@ -1409,7 +1409,7 @@ public class EdosUtil implements IRealTimeDataBaseUtil {
         {
             List<PointData> pols=new ArrayList<>();
             PointData po=new PointData();
-            po.setEdnaId(point.getCode());
+            po.setEdnaId(point.getNemCode());
             po.setPointValueInDouble(0.0);
             po.setPointTime(0l);
             pols.add(po);