Browse Source

开发监视接口

xieshengjie 2 years ago
parent
commit
0221c6e475

+ 15 - 0
common/src/main/java/com/gyee/common/vo/monitor/MatrixLineVo.java

@@ -0,0 +1,15 @@
+package com.gyee.common.vo.monitor;/*
+@author   谢生杰
+@date   2023/4/14-18:09
+*/
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class MatrixLineVo {
+    private String id;
+    private String name;
+    private List<MatrixVo> wtDataList;
+}

+ 28 - 0
common/src/main/java/com/gyee/common/vo/monitor/MatrixProVo.java

@@ -0,0 +1,28 @@
+package com.gyee.common.vo.monitor;/*
+@author   谢生杰
+@date   2023/4/14-18:12
+*/
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class MatrixProVo {
+
+    private String id;
+    private String name;
+    private Integer djts;
+    private Integer bwts;
+    private Integer gzts;
+    private Integer jxts;
+    private Integer xdts;
+    private Integer slts;
+    private Integer lxts;
+    private Double speed;
+    private Double bzgl;
+    private Double llgl;
+    private Double sjgl;
+    private List<MatrixLineVo> lineVos;
+
+}

+ 14 - 0
common/src/main/java/com/gyee/common/vo/monitor/MatrixWpVo.java

@@ -0,0 +1,14 @@
+package com.gyee.common.vo.monitor;/*
+@author   谢生杰
+@date   2023/4/14-18:22
+*/
+
+import lombok.Data;
+
+@Data
+public class MatrixWpVo {
+
+    private String id;
+    private String name;
+
+}

+ 33 - 1
realtime/generationXK-service/src/main/java/com/gyee/generation/init/CacheContext.java

@@ -68,6 +68,8 @@ public class CacheContext implements CommandLineRunner {
     private IProBasicWeatherStationService proBasicWeatherStationService;
     @Resource
     private IProBasicBranchService proBasicBranchService;
+    @Resource
+    private IProBasicEnergyGroupService proBasicEnergyGroupService;
 
     @Value("${runWindpowerstation}")
     private String runWindpowerstation;
@@ -83,9 +85,11 @@ public class CacheContext implements CommandLineRunner {
     public static List<ProBasicPowerstation>  zwpls = new ArrayList<>();
     public static List<ProBasicCompany>  cpls = new ArrayList<>();
     public static List<ProBasicRegion>  rgls = new ArrayList<>();
+    public static List<ProBasicEnergyGroup>  egls = new ArrayList<>();
     public static Map<String,ProBasicProject> pjmap = new HashMap<>();
     public static Map<String,ProBasicLine> lnmap = new HashMap<>();
     public static Map<String,ProBasicRegion> rgmap = new HashMap<>();
+    public static Map<String,ProBasicEnergyGroup> egmap = new HashMap<>();
     public static Map<String,ProBasicCompany> cpmap = new HashMap<>();
 
     public static Map<String,List<ProBasicPowerstation>> cpwpmap = new HashMap<>();
@@ -112,7 +116,7 @@ public class CacheContext implements CommandLineRunner {
     public static Map<String,Map<String, ProBasicPowerstationPoint>> wswppointmap =new HashMap<>();
     public static Map<String,Map<String, ProBasicPowerstationPoint>> companypointmap =new HashMap<>();
     public static Map<String,Map<String, ProBasicPowerstationPoint>> regionpointmap =new HashMap<>();
-
+    public static Map<String,Map<String, ProBasicPowerstationPoint>> grouppointmap =new HashMap<>();
 
     public static Map<String,Map<Double,Double>> zbzglMap = new HashMap<>();
     public static Map<String,ProEconEquipmentmodel> modelMap = new HashMap<>();
@@ -256,6 +260,34 @@ public class CacheContext implements CommandLineRunner {
             }
         }
 
+        egls=proBasicEnergyGroupService.list().stream().filter(i->i.getIsAble()==1 && !i.getParentid().equals("0")).collect(Collectors.toList());
+        if  (!egls.isEmpty())
+        {
+            for(ProBasicEnergyGroup sq:egls)
+            {
+                egmap.put(sq.getId(),sq);
+
+                if (redisService.hasKey(sq.getId()+"0")){
+                    String eg0String = redisService.get(sq.getId()+"0");
+                    Map<String, ProBasicPowerstationPoint> stringWindpowerstationpointnewMap = JSONObject.parseObject(eg0String, new TypeReference<Map<String, ProBasicPowerstationPoint>>() {
+                    });
+                    grouppointmap.put(sq.getId()+"0",stringWindpowerstationpointnewMap);
+                }
+                if (redisService.hasKey(sq.getId()+"-1")){
+                    String eg1String = redisService.get(sq.getId()+"-1");
+                    Map<String, ProBasicPowerstationPoint> stringWindpowerstationpointnewMap = JSONObject.parseObject(eg1String, new TypeReference<Map<String, ProBasicPowerstationPoint>>() {
+                    });
+                    grouppointmap.put(sq.getId()+"-1",stringWindpowerstationpointnewMap);
+                }
+                if (redisService.hasKey(sq.getId()+"-2")){
+                    String eg2String = redisService.get(sq.getId()+"-2");
+                    Map<String, ProBasicPowerstationPoint> stringWindpowerstationpointnewMap = JSONObject.parseObject(eg2String, new TypeReference<Map<String, ProBasicPowerstationPoint>>() {
+                    });
+                    grouppointmap.put(sq.getId()+"-2",stringWindpowerstationpointnewMap);
+                }
+            }
+        }
+
 
         for(ProBasicCompany cp:cpls)
         {

+ 22 - 0
realtime/generationXK-service/src/main/java/com/gyee/generation/service/initalcache/CacheService.java

@@ -54,6 +54,8 @@ public class CacheService {
     private IProBasicSquareService proBasicSquareService;
     @Resource
     private IProBasicBranchService proBasicBranchService;
+    @Resource
+    private IProBasicEnergyGroupService energyGroupService;
 
 
     public void initRedisCache(){
@@ -215,6 +217,26 @@ public class CacheService {
             String s = JSONObject.toJSONString(codeaimap);
             redisService.set(i,s);
         });
+        log.info("--------------------------redisGroup");
+        List<ProBasicEnergyGroup> groups = energyGroupService.list().stream().filter(i->i.getIsAble().equals(1) && !i.getParentid().equals("0")).collect(Collectors.toList());
+        List<String> groupList = new ArrayList<>();
+//        List<String> regList = regs.stream().map(i->i.getId()).collect(Collectors.toList());
+        groups.stream().forEach(group -> {
+            groupList.add(group.getId()+"0");
+            groupList.add(group.getId()+"-1");
+            groupList.add(group.getId()+"-2");
+        });
+        groupList.stream().forEach(i->{
+            Map<String, ProBasicPowerstationPoint> codeaimap = new HashMap<>();
+            QueryWrapper<ProBasicPowerstationPoint> qw = new QueryWrapper<>();
+            qw.eq("windpowerstation_id",i);
+            List<ProBasicPowerstationPoint> windpowerstationtestingpoint2List = windpowerstationpointnewService.list(qw);
+            windpowerstationtestingpoint2List.stream().forEach(x->{
+                codeaimap.put(x.getUniformCode(),x);
+            });
+            String s = JSONObject.toJSONString(codeaimap);
+            redisService.set(i,s);
+        });
         log.info("--------------------------redis理论保证功率");
         Map<String, Map<Double,ProBasicModelPowerRd>> powerrdMap = new HashMap<>();
 

+ 1489 - 0
realtime/generationXK-service/src/main/java/com/gyee/generation/service/realtimelibrary/RegionCalService.java

@@ -59,6 +59,32 @@ public class RegionCalService {
         edosUtil.sendMultiPoint(resultList);
     }
 
+    public void groupCal() throws Exception {
+
+
+        Date currentDate = DateUtils.getCurrentDate();
+        List<ProBasicEnergyGroup> egls = CacheContext.egls;
+        List<ProBasicPowerstation> zwpls = CacheContext.zwpls;
+        Map<String, Map<String, ProBasicPowerstationPoint>> grouppointmap = CacheContext.grouppointmap;
+        Map<String, Map<String, ProBasicPowerstationPoint>> wppointmap = CacheContext.wppointmap;
+        List<PointData> resultList = new ArrayList<>();
+        egls.stream().forEach(group->{
+            List<ProBasicPowerstation> wps0 = zwpls.stream().filter(wp -> wp.getGroupId().equals(group.getId())).collect(Collectors.toList());
+            List<ProBasicPowerstation> wps1 = wps0.stream().filter(wp -> wp.getId().contains("_FDC_")).collect(Collectors.toList());
+            List<ProBasicPowerstation> wps2 = wps0.stream().filter(wp -> wp.getId().contains("_GDC_")).collect(Collectors.toList());
+            if (wps1.size()>0)
+                weightingGroup(currentDate, grouppointmap, wppointmap, resultList, group, wps1, "-1");
+            if (wps2.size()>0)
+                weightingGroup(currentDate, grouppointmap, wppointmap, resultList, group, wps2, "-2");
+            if (wps0.size()>0)
+                weightingGroup(currentDate, grouppointmap, wppointmap, resultList, group, wps0, "0");
+
+        });
+        edosUtil.sendMultiPoint(resultList);
+    }
+
+
+
     public void RegionCal() throws Exception {
         Date currentDate = DateUtils.getCurrentDate();
         List<ProBasicRegion> rgls = CacheContext.rgls;
@@ -3079,5 +3105,1468 @@ public class RegionCalService {
         resultList.add(PointUtil.createPointData(currentDate,yfnlyl,fnlylPoint.getNemCode(),fnlylPoint.getName()));
 
     }
+    private void weightingGroup(Date currentDate, Map<String, Map<String, ProBasicPowerstationPoint>> grouppointmap, Map<String, Map<String, ProBasicPowerstationPoint>> wppointmap, List<PointData> resultList, ProBasicEnergyGroup group, List<ProBasicPowerstation> wps, String type) {
+        Map<String, ProBasicPowerstationPoint> powerstationPointMap = grouppointmap.get(group.getId()+type);
+        int fdcsize = wps.stream().filter(wp -> wp.getId().contains("_FDC_")).collect(Collectors.toList()).size();
+        int gdcsize = wps.stream().filter(wp -> wp.getId().contains("_GDC_")).collect(Collectors.toList()).size();
+        if (fdcsize==0)
+            fdcsize = 1;
+        if (gdcsize==0)
+            gdcsize=1;
+        ProBasicPowerstationPoint zrpjfsPoint = null;
+        ProBasicPowerstationPoint zypjfsPoint = null;
+        ProBasicPowerstationPoint znpjfsPoint = null;
+        ProBasicPowerstationPoint zpjfs15Point = null;
+        ProBasicPowerstationPoint zrpjgzdPoint = null;
+        ProBasicPowerstationPoint zypjgzdPoint = null;
+        ProBasicPowerstationPoint znpjgzdPoint = null;
+        ProBasicPowerstationPoint zpjgzd15Point = null;
+        if (type.equals("-1")){
+            zrpjfsPoint = powerstationPointMap.get(ContantXk.RPJFS);
+            zypjfsPoint = powerstationPointMap.get(ContantXk.YPJFS);
+            znpjfsPoint = powerstationPointMap.get(ContantXk.NPJFS);
+            zpjfs15Point = powerstationPointMap.get(ContantXk.PJFS15);
+        }else if(type.equals("-2")){
+            zrpjgzdPoint = powerstationPointMap.get(ContantXk.RPJGZD);
+            zypjgzdPoint = powerstationPointMap.get(ContantXk.YPJGZD);
+            znpjgzdPoint = powerstationPointMap.get(ContantXk.NPJGZD);
+            zpjgzd15Point = powerstationPointMap.get(ContantXk.PJGZD15);
+        }else {
+            zrpjfsPoint = powerstationPointMap.get(ContantXk.RPJFS);
+            zrpjgzdPoint = powerstationPointMap.get(ContantXk.RPJGZD);
+            zypjfsPoint = powerstationPointMap.get(ContantXk.YPJFS);
+            zypjgzdPoint = powerstationPointMap.get(ContantXk.YPJGZD);
+            znpjfsPoint = powerstationPointMap.get(ContantXk.NPJFS);
+            znpjgzdPoint = powerstationPointMap.get(ContantXk.NPJGZD);
+            zpjfs15Point = powerstationPointMap.get(ContantXk.PJFS15);
+            zpjgzd15Point = powerstationPointMap.get(ContantXk.PJGZD15);
+        }
+        ProBasicPowerstationPoint zrpjglPoint = powerstationPointMap.get(ContantXk.RPJGL);
+        ProBasicPowerstationPoint zrfdlPoint = powerstationPointMap.get(ContantXk.RFDL);
+        ProBasicPowerstationPoint zrkydlPoint = powerstationPointMap.get(ContantXk.RKYDL);
+        ProBasicPowerstationPoint zrllfdlPoint = powerstationPointMap.get(ContantXk.RLLFDL);
+        ProBasicPowerstationPoint zrllfdlzsPoint = powerstationPointMap.get(ContantXk.RLLFDLZS);
+        ProBasicPowerstationPoint zrgzssdlPoint = powerstationPointMap.get(ContantXk.RGZSSDL);
+        ProBasicPowerstationPoint zrcngzPoint = powerstationPointMap.get(ContantXk.RCNSLGZSSDL);
+        ProBasicPowerstationPoint zrjxPoint = powerstationPointMap.get(ContantXk.RJXSSDL);
+        ProBasicPowerstationPoint zrcnjxPoint = powerstationPointMap.get(ContantXk.RCNSLJXSSDL);
+        ProBasicPowerstationPoint zrdjPoint = powerstationPointMap.get(ContantXk.RDJSSDL);
+        ProBasicPowerstationPoint zrqxjclPoint = powerstationPointMap.get(ContantXk.RQXJCLSSDL);
+        ProBasicPowerstationPoint zrsdtjPoint = powerstationPointMap.get(ContantXk.RSDTJSSDL);
+        ProBasicPowerstationPoint zrxnPoint = powerstationPointMap.get(ContantXk.RXNSSDL);
+        ProBasicPowerstationPoint zrxdtjPoint = powerstationPointMap.get(ContantXk.RXDTJSSDL);
+        ProBasicPowerstationPoint zrxdjclPoint = powerstationPointMap.get(ContantXk.RXDJCLSSDL);
+        ProBasicPowerstationPoint zrcwsldwPoint = powerstationPointMap.get(ContantXk.RCWSLDWSSDL);
+        ProBasicPowerstationPoint zrcwsltqPoint = powerstationPointMap.get(ContantXk.RCWSLTQSSDL);
+        ProBasicPowerstationPoint zrzfdlPoint = powerstationPointMap.get(ContantXk.RZFDL);
+        ProBasicPowerstationPoint zrqfdlPoint = powerstationPointMap.get(ContantXk.RQFDL);
+        ProBasicPowerstationPoint zrzhdPoint = powerstationPointMap.get(ContantXk.RZHD);
+
+
+        ProBasicPowerstationPoint zypjglPoint = powerstationPointMap.get(ContantXk.YPJGL);
+        ProBasicPowerstationPoint zyfdlPoint = powerstationPointMap.get(ContantXk.YFDL);
+        ProBasicPowerstationPoint zykydlPoint = powerstationPointMap.get(ContantXk.YKYDL);
+        ProBasicPowerstationPoint zyllfdlPoint = powerstationPointMap.get(ContantXk.YLLFDL);
+        ProBasicPowerstationPoint zyllfdlzsPoint = powerstationPointMap.get(ContantXk.YLLFDLZS);
+        ProBasicPowerstationPoint zygzssdlPoint = powerstationPointMap.get(ContantXk.YGZSSDL);
+        ProBasicPowerstationPoint zycngzPoint = powerstationPointMap.get(ContantXk.YCNSLGZSSDL);
+        ProBasicPowerstationPoint zyjxPoint = powerstationPointMap.get(ContantXk.YJXSSDL);
+        ProBasicPowerstationPoint zycnjxPoint = powerstationPointMap.get(ContantXk.YCNSLJXSSDL);
+        ProBasicPowerstationPoint zydjPoint = powerstationPointMap.get(ContantXk.YDJSSDL);
+        ProBasicPowerstationPoint zyqxjclPoint = powerstationPointMap.get(ContantXk.YQXJCLSSDL);
+        ProBasicPowerstationPoint zysdtjPoint = powerstationPointMap.get(ContantXk.YSDTJSSDL);
+        ProBasicPowerstationPoint zyxnPoint = powerstationPointMap.get(ContantXk.YXNSSDL);
+        ProBasicPowerstationPoint zyxdtjPoint = powerstationPointMap.get(ContantXk.YXDTJSSDL);
+        ProBasicPowerstationPoint zyxdjclPoint = powerstationPointMap.get(ContantXk.YXDJCLSSDL);
+        ProBasicPowerstationPoint zycwsldwPoint = powerstationPointMap.get(ContantXk.YCWSLDWSSDL);
+        ProBasicPowerstationPoint zycwsltqPoint = powerstationPointMap.get(ContantXk.YCWSLTQSSDL);
+        ProBasicPowerstationPoint zyzfdlPoint = powerstationPointMap.get(ContantXk.YZFDL);
+        ProBasicPowerstationPoint zyqfdlPoint = powerstationPointMap.get(ContantXk.YQFDL);
+        ProBasicPowerstationPoint zyzhdPoint = powerstationPointMap.get(ContantXk.YZHD);
+
+
+
+        ProBasicPowerstationPoint znpjglPoint = powerstationPointMap.get(ContantXk.NPJGL);
+        ProBasicPowerstationPoint znfdlPoint = powerstationPointMap.get(ContantXk.NFDL);
+        ProBasicPowerstationPoint znkydlPoint = powerstationPointMap.get(ContantXk.NKYDL);
+        ProBasicPowerstationPoint znllfdlPoint = powerstationPointMap.get(ContantXk.NLLFDL);
+        ProBasicPowerstationPoint znllfdlzsPoint = powerstationPointMap.get(ContantXk.NLLFDLZS);
+        ProBasicPowerstationPoint zngzssdlPoint = powerstationPointMap.get(ContantXk.NGZSSDL);
+        ProBasicPowerstationPoint zncngzPoint = powerstationPointMap.get(ContantXk.NCNSLGZSSDL);
+        ProBasicPowerstationPoint znjxPoint = powerstationPointMap.get(ContantXk.NJXSSDL);
+        ProBasicPowerstationPoint zncnjxPoint = powerstationPointMap.get(ContantXk.NCNSLJXSSDL);
+        ProBasicPowerstationPoint zndjPoint = powerstationPointMap.get(ContantXk.NDJSSDL);
+        ProBasicPowerstationPoint znqxjclPoint = powerstationPointMap.get(ContantXk.NQXJCLSSDL);
+        ProBasicPowerstationPoint znsdtjPoint = powerstationPointMap.get(ContantXk.NSDTJSSDL);
+        ProBasicPowerstationPoint znxnPoint = powerstationPointMap.get(ContantXk.NXNSSDL);
+        ProBasicPowerstationPoint znxdtjPoint = powerstationPointMap.get(ContantXk.NXDTJSSDL);
+        ProBasicPowerstationPoint znxdjclPoint = powerstationPointMap.get(ContantXk.NXDJCLSSDL);
+        ProBasicPowerstationPoint zncwsldwPoint = powerstationPointMap.get(ContantXk.NCWSLDWSSDL);
+        ProBasicPowerstationPoint zncwsltqPoint = powerstationPointMap.get(ContantXk.NCWSLTQSSDL);
+        ProBasicPowerstationPoint znzfdlPoint = powerstationPointMap.get(ContantXk.NZFDL);
+        ProBasicPowerstationPoint znqfdlPoint = powerstationPointMap.get(ContantXk.NQFDL);
+        ProBasicPowerstationPoint znzhdPoint = powerstationPointMap.get(ContantXk.NZHD);
+
+
+        ProBasicPowerstationPoint zpjgl15Point = powerstationPointMap.get(ContantXk.PJGL15);
+        ProBasicPowerstationPoint zfdl15Point = powerstationPointMap.get(ContantXk.FDL15);
+        ProBasicPowerstationPoint zkydl15Point = powerstationPointMap.get(ContantXk.KYDL15);
+        ProBasicPowerstationPoint zllfdl15Point = powerstationPointMap.get(ContantXk.LLFDL15);
+        ProBasicPowerstationPoint zllfdlzs15Point = powerstationPointMap.get(ContantXk.LLFDL15ZS);
+        ProBasicPowerstationPoint zgzssdl15Point = powerstationPointMap.get(ContantXk.GZSSDL15);
+        ProBasicPowerstationPoint zcngz15Point = powerstationPointMap.get(ContantXk.CNSLGZSSDL15);
+        ProBasicPowerstationPoint zjx15Point = powerstationPointMap.get(ContantXk.JXSSDL15);
+        ProBasicPowerstationPoint zcnjx15Point = powerstationPointMap.get(ContantXk.CNSLJXSSDL15);
+        ProBasicPowerstationPoint zdj15Point = powerstationPointMap.get(ContantXk.DJSSDL15);
+        ProBasicPowerstationPoint zqxjcl15Point = powerstationPointMap.get(ContantXk.QXJCLSSDL15);
+        ProBasicPowerstationPoint zsdtj15Point = powerstationPointMap.get(ContantXk.SDTJSSDL15);
+        ProBasicPowerstationPoint zxn15Point = powerstationPointMap.get(ContantXk.XNSSDL15);
+        ProBasicPowerstationPoint zxdtj15Point = powerstationPointMap.get(ContantXk.XDTJSSDL15);
+        ProBasicPowerstationPoint zxdjcl15Point = powerstationPointMap.get(ContantXk.XDJCLSSDL15);
+        ProBasicPowerstationPoint zcwsldw15Point = powerstationPointMap.get(ContantXk.CWSLDWSSDL15);
+        ProBasicPowerstationPoint zcwsltq15Point = powerstationPointMap.get(ContantXk.CWSLTQSSDL15);
+        ProBasicPowerstationPoint zzfdl15Point = powerstationPointMap.get(ContantXk.ZFDL15);
+        ProBasicPowerstationPoint zqfdl15Point = powerstationPointMap.get(ContantXk.QFDL15);
+        ProBasicPowerstationPoint zzhd15Point = powerstationPointMap.get(ContantXk.ZHD15);
+
+
+        ProBasicPowerstationPoint zrfdlsyzPoint = powerstationPointMap.get(ContantXk.RFDLSYZ);
+        ProBasicPowerstationPoint zyfdlsyzPoint = powerstationPointMap.get(ContantXk.YFDLSYZ);
+        ProBasicPowerstationPoint znfdlsyzPoint = powerstationPointMap.get(ContantXk.NFDLSYZ);
+        ProBasicPowerstationPoint zrswdlPoint = powerstationPointMap.get(ContantXk.RSWDL);
+        ProBasicPowerstationPoint zyswdlPoint = powerstationPointMap.get(ContantXk.YSWDL);
+        ProBasicPowerstationPoint znswdlPoint = powerstationPointMap.get(ContantXk.NSWDL);
+        ProBasicPowerstationPoint zrgwgwdlPoint = powerstationPointMap.get(ContantXk.RGWGWDL);
+        ProBasicPowerstationPoint zygwgwdlPoint = powerstationPointMap.get(ContantXk.YGWGWDL);
+        ProBasicPowerstationPoint zngwgwdlPoint = powerstationPointMap.get(ContantXk.NGWGWDL);
+        ProBasicPowerstationPoint zrnwgwdlPoint = powerstationPointMap.get(ContantXk.RNWGWDL);
+        ProBasicPowerstationPoint zynwgwdlPoint = powerstationPointMap.get(ContantXk.YNWGWDL);
+        ProBasicPowerstationPoint znnwgwdlPoint = powerstationPointMap.get(ContantXk.NNWGWDL);
+        ProBasicPowerstationPoint zrcydlPoint = powerstationPointMap.get(ContantXk.RCYDL);
+        ProBasicPowerstationPoint zycydlPoint = powerstationPointMap.get(ContantXk.YCYDL);
+        ProBasicPowerstationPoint zncydlPoint = powerstationPointMap.get(ContantXk.NCYDL);
+
+        ProBasicPowerstationPoint jymPoint = powerstationPointMap.get(ContantXk.JYM);
+        ProBasicPowerstationPoint jysPoint = powerstationPointMap.get(ContantXk.JYS);
+        ProBasicPowerstationPoint jyeyhtPoint = powerstationPointMap.get(ContantXk.JYEYHT);
+        ProBasicPowerstationPoint jyeyhlPoint = powerstationPointMap.get(ContantXk.JYEYHL);
+        ProBasicPowerstationPoint rlyxsPoint = powerstationPointMap.get(ContantXk.RLYXS);
+        ProBasicPowerstationPoint ylyxsPoint = powerstationPointMap.get(ContantXk.YLYXS);
+        ProBasicPowerstationPoint nlyxsPoint = powerstationPointMap.get(ContantXk.NLYXS);
+        ProBasicPowerstationPoint sbklylPoint = powerstationPointMap.get(ContantXk.SBKLYL);
+        ProBasicPowerstationPoint dxkyxsPoint = powerstationPointMap.get(ContantXk.DXKYXS);
+        ProBasicPowerstationPoint fnlylPoint = powerstationPointMap.get(ContantXk.FNLYL);
+
 
+        AtomicReference<Double> rpjgl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rpjfs = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rpjgzd = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rkydl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rllfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rllfdlzs = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rgzssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rcngzssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rjxssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rcnjxssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rdjssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rqxjclssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rsdtjssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rxnssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rxdtjssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rxdjclssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rcwsldwssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rcwsltqssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rzfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rqfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rzhd = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ypjgl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ypjfs = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ypjgzd = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ykydl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yllfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yllfdlzs = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ygzssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ycngzssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yjxssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ycnjxssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ydjssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yqxjclssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ysdtjssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yxnssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yxdtjssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yxdjclssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ycwsldwssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ycwsltqssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yzfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yqfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yzhd = new AtomicReference<>((double) 0);
+        AtomicReference<Double> npjgl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> npjfs = new AtomicReference<>((double) 0);
+        AtomicReference<Double> npjgzd = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nkydl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nllfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nllfdlzs = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ngzssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ncngzssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> njxssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ncnjxssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ndjssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nqxjclssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nsdtjssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nxnssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nxdtjssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nxdjclssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ncwsldwssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ncwsltqssdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nzfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nqfdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nzhd = new AtomicReference<>((double) 0);
+        AtomicReference<Double> pjgl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> pjgzd15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> pjfs15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> fdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> kydl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> llfdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> llfdlzs15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> gzssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> cngzssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> jxssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> cnjxssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> djssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> qxjclssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> sdtjssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> xnssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> xdtjssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> xdjclssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> cwsldwssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> cwsltqssdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> zfdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> qfdl15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> zhd15 = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rfdlsyz = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yfdlsyz = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nfdlsyz = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rswdlsyz = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yswdlsyz = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nswdlsyz = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rgwgwdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ygwgwdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ngwgwdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rnwgwdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ynwgwdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> nnwgwdl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> rcydl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ycydl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> ncydl = new AtomicReference<>((double) 0);
+
+
+
+        wps.stream().forEach(wp->{
+            Map<String, ProBasicPowerstationPoint> powerstationPointMap1 = wppointmap.get(wp.getId());
+            ProBasicPowerstationPoint rpjfsPoint = null;
+            ProBasicPowerstationPoint ypjfsPoint = null;
+            ProBasicPowerstationPoint npjfsPoint = null;
+            ProBasicPowerstationPoint pjfs15Point = null;
+            ProBasicPowerstationPoint rpjgzdPoint = null;
+            ProBasicPowerstationPoint ypjgzdPoint = null;
+            ProBasicPowerstationPoint npjgzdPoint = null;
+            ProBasicPowerstationPoint pjgzd15Point = null;
+
+            if (wp.getId().contains("_FDC_")){
+                rpjfsPoint = powerstationPointMap1.get(ContantXk.RPJFS);
+                ypjfsPoint = powerstationPointMap1.get(ContantXk.YPJFS);
+                npjfsPoint = powerstationPointMap1.get(ContantXk.NPJFS);
+                pjfs15Point = powerstationPointMap1.get(ContantXk.PJFS15);
+            }else if(wp.getId().contains("_GDC_")){
+                rpjgzdPoint = powerstationPointMap1.get(ContantXk.RPJGZD);
+                ypjgzdPoint = powerstationPointMap1.get(ContantXk.YPJGZD);
+                npjgzdPoint = powerstationPointMap1.get(ContantXk.NPJGZD);
+                pjgzd15Point = powerstationPointMap1.get(ContantXk.PJGZD15);
+            }
+
+            ProBasicPowerstationPoint rpjglPoint = powerstationPointMap1.get(ContantXk.RPJGL);
+            ProBasicPowerstationPoint rfdlPoint = powerstationPointMap1.get(ContantXk.RFDL);
+            ProBasicPowerstationPoint rkydlPoint = powerstationPointMap1.get(ContantXk.RKYDL);
+            ProBasicPowerstationPoint rllfdlPoint = powerstationPointMap1.get(ContantXk.RLLFDL);
+            ProBasicPowerstationPoint rllfdlzsPoint = powerstationPointMap1.get(ContantXk.RLLFDLZS);
+            ProBasicPowerstationPoint rgzssdlPoint = powerstationPointMap1.get(ContantXk.RGZSSDL);
+            ProBasicPowerstationPoint rcngzPoint = powerstationPointMap1.get(ContantXk.RCNSLGZSSDL);
+            ProBasicPowerstationPoint rjxPoint = powerstationPointMap1.get(ContantXk.RJXSSDL);
+            ProBasicPowerstationPoint rcnjxPoint = powerstationPointMap1.get(ContantXk.RCNSLJXSSDL);
+            ProBasicPowerstationPoint rdjPoint = powerstationPointMap1.get(ContantXk.RDJSSDL);
+            ProBasicPowerstationPoint rqxjclPoint = powerstationPointMap1.get(ContantXk.RQXJCLSSDL);
+            ProBasicPowerstationPoint rsdtjPoint = powerstationPointMap1.get(ContantXk.RSDTJSSDL);
+            ProBasicPowerstationPoint rxnPoint = powerstationPointMap1.get(ContantXk.RXNSSDL);
+            ProBasicPowerstationPoint rxdtjPoint = powerstationPointMap1.get(ContantXk.RXDTJSSDL);
+            ProBasicPowerstationPoint rxdjclPoint = powerstationPointMap1.get(ContantXk.RXDJCLSSDL);
+            ProBasicPowerstationPoint rcwsldwPoint = powerstationPointMap1.get(ContantXk.RCWSLDWSSDL);
+            ProBasicPowerstationPoint rcwsltqPoint = powerstationPointMap1.get(ContantXk.RCWSLTQSSDL);
+            ProBasicPowerstationPoint rzfdlPoint = powerstationPointMap1.get(ContantXk.RZFDL);
+            ProBasicPowerstationPoint rqfdlPoint = powerstationPointMap1.get(ContantXk.RQFDL);
+            ProBasicPowerstationPoint rzhdPoint = powerstationPointMap1.get(ContantXk.RZHD);
+
+
+            ProBasicPowerstationPoint ypjglPoint = powerstationPointMap1.get(ContantXk.YPJGL);
+            ProBasicPowerstationPoint yfdlPoint = powerstationPointMap1.get(ContantXk.YFDL);
+            ProBasicPowerstationPoint ykydlPoint = powerstationPointMap1.get(ContantXk.YKYDL);
+            ProBasicPowerstationPoint yllfdlPoint = powerstationPointMap1.get(ContantXk.YLLFDL);
+            ProBasicPowerstationPoint yllfdlzsPoint = powerstationPointMap1.get(ContantXk.YLLFDLZS);
+            ProBasicPowerstationPoint ygzssdlPoint = powerstationPointMap1.get(ContantXk.YGZSSDL);
+            ProBasicPowerstationPoint ycngzPoint = powerstationPointMap1.get(ContantXk.YCNSLGZSSDL);
+            ProBasicPowerstationPoint yjxPoint = powerstationPointMap1.get(ContantXk.YJXSSDL);
+            ProBasicPowerstationPoint ycnjxPoint = powerstationPointMap1.get(ContantXk.YCNSLJXSSDL);
+            ProBasicPowerstationPoint ydjPoint = powerstationPointMap1.get(ContantXk.YDJSSDL);
+            ProBasicPowerstationPoint yqxjclPoint = powerstationPointMap1.get(ContantXk.YQXJCLSSDL);
+            ProBasicPowerstationPoint ysdtjPoint = powerstationPointMap1.get(ContantXk.YSDTJSSDL);
+            ProBasicPowerstationPoint yxnPoint = powerstationPointMap1.get(ContantXk.YXNSSDL);
+            ProBasicPowerstationPoint yxdtjPoint = powerstationPointMap1.get(ContantXk.YXDTJSSDL);
+            ProBasicPowerstationPoint yxdjclPoint = powerstationPointMap1.get(ContantXk.YXDJCLSSDL);
+            ProBasicPowerstationPoint ycwsldwPoint = powerstationPointMap1.get(ContantXk.YCWSLDWSSDL);
+            ProBasicPowerstationPoint ycwsltqPoint = powerstationPointMap1.get(ContantXk.YCWSLTQSSDL);
+            ProBasicPowerstationPoint yzfdlPoint = powerstationPointMap1.get(ContantXk.YZFDL);
+            ProBasicPowerstationPoint yqfdlPoint = powerstationPointMap1.get(ContantXk.YQFDL);
+            ProBasicPowerstationPoint yzhdPoint = powerstationPointMap1.get(ContantXk.YZHD);
+
+
+            ProBasicPowerstationPoint npjglPoint = powerstationPointMap1.get(ContantXk.NPJGL);
+            ProBasicPowerstationPoint nfdlPoint = powerstationPointMap1.get(ContantXk.NFDL);
+            ProBasicPowerstationPoint nkydlPoint = powerstationPointMap1.get(ContantXk.NKYDL);
+            ProBasicPowerstationPoint nllfdlPoint = powerstationPointMap1.get(ContantXk.NLLFDL);
+            ProBasicPowerstationPoint nllfdlzsPoint = powerstationPointMap1.get(ContantXk.NLLFDLZS);
+            ProBasicPowerstationPoint ngzssdlPoint = powerstationPointMap1.get(ContantXk.NGZSSDL);
+            ProBasicPowerstationPoint ncngzPoint = powerstationPointMap1.get(ContantXk.NCNSLGZSSDL);
+            ProBasicPowerstationPoint njxPoint = powerstationPointMap1.get(ContantXk.NJXSSDL);
+            ProBasicPowerstationPoint ncnjxPoint = powerstationPointMap1.get(ContantXk.NCNSLJXSSDL);
+            ProBasicPowerstationPoint ndjPoint = powerstationPointMap1.get(ContantXk.NDJSSDL);
+            ProBasicPowerstationPoint nqxjclPoint = powerstationPointMap1.get(ContantXk.NQXJCLSSDL);
+            ProBasicPowerstationPoint nsdtjPoint = powerstationPointMap1.get(ContantXk.NSDTJSSDL);
+            ProBasicPowerstationPoint nxnPoint = powerstationPointMap1.get(ContantXk.NXNSSDL);
+            ProBasicPowerstationPoint nxdtjPoint = powerstationPointMap1.get(ContantXk.NXDTJSSDL);
+            ProBasicPowerstationPoint nxdjclPoint = powerstationPointMap1.get(ContantXk.NXDJCLSSDL);
+            ProBasicPowerstationPoint ncwsldwPoint = powerstationPointMap1.get(ContantXk.NCWSLDWSSDL);
+            ProBasicPowerstationPoint ncwsltqPoint = powerstationPointMap1.get(ContantXk.NCWSLTQSSDL);
+            ProBasicPowerstationPoint nzfdlPoint = powerstationPointMap1.get(ContantXk.NZFDL);
+            ProBasicPowerstationPoint nqfdlPoint = powerstationPointMap1.get(ContantXk.NQFDL);
+            ProBasicPowerstationPoint nzhdPoint = powerstationPointMap1.get(ContantXk.NZHD);
+
+
+            ProBasicPowerstationPoint pjgl15Point = powerstationPointMap1.get(ContantXk.PJGL15);
+            ProBasicPowerstationPoint fdl15Point = powerstationPointMap1.get(ContantXk.FDL15);
+            ProBasicPowerstationPoint kydl15Point = powerstationPointMap1.get(ContantXk.KYDL15);
+            ProBasicPowerstationPoint llfdl15Point = powerstationPointMap1.get(ContantXk.LLFDL15);
+            ProBasicPowerstationPoint llfdlzs15Point = powerstationPointMap1.get(ContantXk.LLFDL15ZS);
+            ProBasicPowerstationPoint gzssdl15Point = powerstationPointMap1.get(ContantXk.GZSSDL15);
+            ProBasicPowerstationPoint cngz15Point = powerstationPointMap1.get(ContantXk.CNSLGZSSDL15);
+            ProBasicPowerstationPoint jx15Point = powerstationPointMap1.get(ContantXk.JXSSDL15);
+            ProBasicPowerstationPoint cnjx15Point = powerstationPointMap1.get(ContantXk.CNSLJXSSDL15);
+            ProBasicPowerstationPoint dj15Point = powerstationPointMap1.get(ContantXk.DJSSDL15);
+            ProBasicPowerstationPoint qxjcl15Point = powerstationPointMap1.get(ContantXk.QXJCLSSDL15);
+            ProBasicPowerstationPoint sdtj15Point = powerstationPointMap1.get(ContantXk.SDTJSSDL15);
+            ProBasicPowerstationPoint xn15Point = powerstationPointMap1.get(ContantXk.XNSSDL15);
+            ProBasicPowerstationPoint xdtj15Point = powerstationPointMap1.get(ContantXk.XDTJSSDL15);
+            ProBasicPowerstationPoint xdjcl15Point = powerstationPointMap1.get(ContantXk.XDJCLSSDL15);
+            ProBasicPowerstationPoint cwsldw15Point = powerstationPointMap1.get(ContantXk.CWSLDWSSDL15);
+            ProBasicPowerstationPoint cwsltq15Point = powerstationPointMap1.get(ContantXk.CWSLTQSSDL15);
+            ProBasicPowerstationPoint zfdl15xPoint = powerstationPointMap1.get(ContantXk.ZFDL15);
+            ProBasicPowerstationPoint qfdl15Point = powerstationPointMap1.get(ContantXk.QFDL15);
+            ProBasicPowerstationPoint zhd15Point = powerstationPointMap1.get(ContantXk.ZHD15);
+
+            ProBasicPowerstationPoint rfdlsyzPoint = powerstationPointMap1.get(ContantXk.RFDLSYZ);
+            ProBasicPowerstationPoint yfdlsyzPoint = powerstationPointMap1.get(ContantXk.YFDLSYZ);
+            ProBasicPowerstationPoint nfdlsyzPoint = powerstationPointMap1.get(ContantXk.NFDLSYZ);
+            ProBasicPowerstationPoint rswdlPoint = powerstationPointMap1.get(ContantXk.RSWDL);
+            ProBasicPowerstationPoint yswdlPoint = powerstationPointMap1.get(ContantXk.YSWDL);
+            ProBasicPowerstationPoint nswdlPoint = powerstationPointMap1.get(ContantXk.NSWDL);
+            ProBasicPowerstationPoint rgwgwdlPoint = powerstationPointMap1.get(ContantXk.RGWGWDL);
+            ProBasicPowerstationPoint ygwgwdlPoint = powerstationPointMap1.get(ContantXk.YGWGWDL);
+            ProBasicPowerstationPoint ngwgwdlPoint = powerstationPointMap1.get(ContantXk.NGWGWDL);
+            ProBasicPowerstationPoint rnwgwdlPoint = powerstationPointMap1.get(ContantXk.RNWGWDL);
+            ProBasicPowerstationPoint ynwgwdlPoint = powerstationPointMap1.get(ContantXk.YNWGWDL);
+            ProBasicPowerstationPoint nnwgwdlPoint = powerstationPointMap1.get(ContantXk.NNWGWDL);
+            ProBasicPowerstationPoint rcydlPoint = powerstationPointMap1.get(ContantXk.RCYDL);
+            ProBasicPowerstationPoint ycydlPoint = powerstationPointMap1.get(ContantXk.YCYDL);
+            ProBasicPowerstationPoint ncydlPoint = powerstationPointMap1.get(ContantXk.NCYDL);
+
+
+
+            if (wp.getId().contains("_FDC_")){
+                ProBasicPowerstationPoint finalRpjfsPoint = rpjfsPoint;
+                rpjfs.updateAndGet(v -> {
+                    try {
+                        return new Double((double) (v + edosUtil.getSectionData(finalRpjfsPoint, currentDate.getTime()).getPointValueInDouble()));
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                    return v;
+                });
+                ProBasicPowerstationPoint finalYpjfsPoint = ypjfsPoint;
+                ypjfs.updateAndGet(v -> {
+                    try {
+                        return new Double((double) (v + edosUtil.getSectionData(finalYpjfsPoint, currentDate.getTime()).getPointValueInDouble()));
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                    return v;
+                });
+                ProBasicPowerstationPoint finalNpjfsPoint = npjfsPoint;
+                npjfs.updateAndGet(v -> {
+                    try {
+                        return new Double((double) (v + edosUtil.getSectionData(finalNpjfsPoint, currentDate.getTime()).getPointValueInDouble()));
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                    return v;
+                });
+                ProBasicPowerstationPoint finalPjfs15Point = pjfs15Point;
+                pjfs15.updateAndGet(v -> {
+                    try {
+                        return new Double((double) (v + edosUtil.getSectionData(finalPjfs15Point, currentDate.getTime()).getPointValueInDouble()));
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                    return v;
+                });
+            }else if (wp.getId().contains("_GDC_")){
+                ProBasicPowerstationPoint finalRpjgzdPoint = rpjgzdPoint;
+                rpjgzd.updateAndGet(v -> {
+                    try {
+                        return new Double((double) (v + edosUtil.getSectionData(finalRpjgzdPoint, currentDate.getTime()).getPointValueInDouble()));
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                    return v;
+                });
+                ProBasicPowerstationPoint finalYpjgzdPoint = ypjgzdPoint;
+                ypjgzd.updateAndGet(v -> {
+                    try {
+                        return new Double((double) (v + edosUtil.getSectionData(finalYpjgzdPoint, currentDate.getTime()).getPointValueInDouble()));
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                    return v;
+                });
+                ProBasicPowerstationPoint finalNpjgzdPoint = npjgzdPoint;
+                npjgzd.updateAndGet(v -> {
+                    try {
+                        return new Double((double) (v + edosUtil.getSectionData(finalNpjgzdPoint, currentDate.getTime()).getPointValueInDouble()));
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                    return v;
+                });
+                ProBasicPowerstationPoint finalPjgzd15Point = pjgzd15Point;
+                pjgzd15.updateAndGet(v -> {
+                    try {
+                        return new Double((double) (v + edosUtil.getSectionData(finalPjgzd15Point, currentDate.getTime()).getPointValueInDouble()));
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                    return v;
+                });
+            }
+
+
+            rpjgl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rpjglPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rkydl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rkydlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rllfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rllfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rllfdlzs.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rllfdlzsPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rgzssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rgzssdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rcngzssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rcngzPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rjxssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rjxPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rcnjxssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rcnjxPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rdjssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rdjPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rqxjclssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rqxjclPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rsdtjssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rsdtjPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rxnssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rxnPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rxdtjssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rxdtjPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rxdjclssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rxdjclPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rcwsldwssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rcwsldwPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rcwsltqssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rcwsltqPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rzfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rzfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rqfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rqfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rzhd.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rzhdPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+
+            ypjgl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ypjglPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ykydl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ykydlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yllfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yllfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yllfdlzs.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yllfdlzsPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ygzssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ygzssdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+
+            ycngzssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ycngzPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yjxssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yjxPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ycnjxssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ycnjxPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ydjssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ydjPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yqxjclssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yqxjclPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ycngzssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ycngzPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yjxssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yjxPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ycnjxssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ycnjxPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ydjssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ydjPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yqxjclssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yqxjclPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+
+
+            ysdtjssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ysdtjPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yxnssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yxnPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yxdtjssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yxdtjPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+
+            yxdjclssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yxdjclPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ycwsldwssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ycwsldwPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ycwsltqssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ycwsltqPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yzfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yzfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yqfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yqfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yzhd.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yzhdPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+
+            npjgl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(npjglPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nkydl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nkydlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nllfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nllfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nllfdlzs.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nllfdlzsPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ngzssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ngzssdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ncngzssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ncngzPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            njxssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(njxPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ncnjxssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ncnjxPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ndjssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ndjPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nqxjclssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nqxjclPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nsdtjssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nsdtjPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nxnssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nxnPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nxdtjssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nxdtjPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nxdjclssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nxdjclPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ncwsldwssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ncwsldwPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ncwsltqssdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ncwsltqPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nzfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nzfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nqfdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nqfdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nzhd.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nzhdPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+
+
+            pjgl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(pjgl15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            fdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(fdl15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            kydl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(kydl15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            llfdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(llfdl15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            llfdlzs15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(llfdlzs15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            gzssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(gzssdl15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            cngzssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(cngz15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            jxssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(jx15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            cnjxssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(cnjx15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            djssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(dj15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            qxjclssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(qxjcl15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            sdtjssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(sdtj15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            xnssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(xn15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            xdtjssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(xdtj15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            xdjclssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(xdjcl15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            cwsldwssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(cwsldw15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            cwsltqssdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(cwsltq15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            zfdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(zfdl15xPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            qfdl15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(qfdl15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            zhd15.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(zhd15Point, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+
+            rfdlsyz.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rfdlsyzPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yfdlsyz.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yfdlsyzPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nfdlsyz.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nfdlsyzPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rswdlsyz.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rswdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yswdlsyz.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(yswdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nswdlsyz.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nswdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rgwgwdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rgwgwdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ygwgwdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ygwgwdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ngwgwdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ngwgwdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rnwgwdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rnwgwdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ynwgwdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ynwgwdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            nnwgwdl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(nnwgwdlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            rcydl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(rcydlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ycydl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ycydlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            ncydl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getSectionData(ncydlPoint, currentDate.getTime()).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+
+
+        });
+        if (type.equals("-1")){
+            resultList.add(PointUtil.createPointData(currentDate,rpjfs.get()/fdcsize,zrpjfsPoint.getNemCode(),zrpjfsPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,ypjfs.get()/fdcsize,zypjfsPoint.getNemCode(),zypjfsPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,npjfs.get()/fdcsize,znpjfsPoint.getNemCode(),znpjfsPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,pjfs15.get()/fdcsize,zpjfs15Point.getNemCode(),zpjfs15Point.getName()));
+        }else if(type.equals("-2")){
+            resultList.add(PointUtil.createPointData(currentDate,rpjgzd.get()/gdcsize,zrpjgzdPoint.getNemCode(),zrpjgzdPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,ypjgzd.get()/gdcsize,zypjgzdPoint.getNemCode(),zypjgzdPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,npjgzd.get()/gdcsize,znpjgzdPoint.getNemCode(),znpjgzdPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,pjgzd15.get()/gdcsize,zpjgzd15Point.getNemCode(),zpjgzd15Point.getName()));
+        }else {
+            resultList.add(PointUtil.createPointData(currentDate,rpjfs.get()/fdcsize,zrpjfsPoint.getNemCode(),zrpjfsPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,ypjfs.get()/fdcsize,zypjfsPoint.getNemCode(),zypjfsPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,npjfs.get()/fdcsize,znpjfsPoint.getNemCode(),znpjfsPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,pjfs15.get()/fdcsize,zpjfs15Point.getNemCode(),zpjfs15Point.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,rpjgzd.get()/gdcsize,zrpjgzdPoint.getNemCode(),zrpjgzdPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,ypjgzd.get()/gdcsize,zypjgzdPoint.getNemCode(),zypjgzdPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,npjgzd.get()/gdcsize,znpjgzdPoint.getNemCode(),znpjgzdPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,pjgzd15.get()/gdcsize,zpjgzd15Point.getNemCode(),zpjgzd15Point.getName()));
+        }
+
+
+        resultList.add(PointUtil.createPointData(currentDate,rpjgl.get(),zrpjglPoint.getNemCode(),zrpjglPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rfdl.get(),zrfdlPoint.getNemCode(),zrfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rkydl.get(),zrkydlPoint.getNemCode(),zrkydlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rllfdl.get(),zrllfdlPoint.getNemCode(),zrllfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rllfdlzs.get(),zrllfdlzsPoint.getNemCode(),zrllfdlzsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rgzssdl.get(),zrgzssdlPoint.getNemCode(),zrgzssdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rcngzssdl.get(),zrcngzPoint.getNemCode(),zrcngzPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rjxssdl.get(),zrjxPoint.getNemCode(),zrjxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rcnjxssdl.get(),zrcnjxPoint.getNemCode(),zrcnjxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rdjssdl.get(),zrdjPoint.getNemCode(),zrdjPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rqxjclssdl.get(),zrqxjclPoint.getNemCode(),zrqxjclPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rsdtjssdl.get(),zrsdtjPoint.getNemCode(),zrsdtjPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rxnssdl.get(),zrxnPoint.getNemCode(),zrxnPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rxdtjssdl.get(),zrxdtjPoint.getNemCode(),zrxdtjPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rxdjclssdl.get(),zrxdjclPoint.getNemCode(),zrxdjclPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rcwsldwssdl.get(),zrcwsldwPoint.getNemCode(),zrcwsldwPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rcwsltqssdl.get(),zrcwsltqPoint.getNemCode(),zrcwsltqPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rzfdl.get(),zrzfdlPoint.getNemCode(),zrzfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rqfdl.get(),zrqfdlPoint.getNemCode(),zrqfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rzhd.get(),zrzhdPoint.getNemCode(),zrzhdPoint.getName()));
+
+
+        resultList.add(PointUtil.createPointData(currentDate,ypjgl.get(),zypjglPoint.getNemCode(),zypjglPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yfdl.get(),zyfdlPoint.getNemCode(),zyfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ykydl.get(),zykydlPoint.getNemCode(),zykydlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yllfdl.get(),zyllfdlPoint.getNemCode(),zyllfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yllfdlzs.get(),zyllfdlzsPoint.getNemCode(),zyllfdlzsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ygzssdl.get(),zygzssdlPoint.getNemCode(),zygzssdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ycngzssdl.get(),zycngzPoint.getNemCode(),zycngzPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yjxssdl.get(),zyjxPoint.getNemCode(),zyjxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ycnjxssdl.get(),zycnjxPoint.getNemCode(),zycnjxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ydjssdl.get(),zydjPoint.getNemCode(),zydjPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yqxjclssdl.get(),zyqxjclPoint.getNemCode(),zyqxjclPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ysdtjssdl.get(),zysdtjPoint.getNemCode(),zysdtjPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yxnssdl.get(),zyxnPoint.getNemCode(),zyxnPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yxdtjssdl.get(),zyxdtjPoint.getNemCode(),zyxdtjPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yxdjclssdl.get(),zyxdjclPoint.getNemCode(),zyxdjclPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ycwsldwssdl.get(),zycwsldwPoint.getNemCode(),zycwsldwPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ycwsltqssdl.get(),zycwsltqPoint.getNemCode(),zycwsltqPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yzfdl.get(),zyzfdlPoint.getNemCode(),zyzfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yqfdl.get(),zyqfdlPoint.getNemCode(),zyqfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yzhd.get(),zyzhdPoint.getNemCode(),zyzhdPoint.getName()));
+
+
+        resultList.add(PointUtil.createPointData(currentDate,npjgl.get(),znpjglPoint.getNemCode(),znpjglPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nfdl.get(),znfdlPoint.getNemCode(),znfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nkydl.get(),znkydlPoint.getNemCode(),znkydlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nllfdl.get(),znllfdlPoint.getNemCode(),znllfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nllfdlzs.get(),znllfdlzsPoint.getNemCode(),znllfdlzsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ngzssdl.get(),zngzssdlPoint.getNemCode(),zngzssdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ncngzssdl.get(),zncngzPoint.getNemCode(),zncngzPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,njxssdl.get(),znjxPoint.getNemCode(),znjxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ncnjxssdl.get(),zncnjxPoint.getNemCode(),zncnjxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ndjssdl.get(),zndjPoint.getNemCode(),zndjPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nqxjclssdl.get(),znqxjclPoint.getNemCode(),znqxjclPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nsdtjssdl.get(),znsdtjPoint.getNemCode(),znsdtjPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nxnssdl.get(),znxnPoint.getNemCode(),znxnPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nxdtjssdl.get(),znxdtjPoint.getNemCode(),znxdtjPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nxdjclssdl.get(),znxdjclPoint.getNemCode(),znxdjclPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ncwsldwssdl.get(),zncwsldwPoint.getNemCode(),zncwsldwPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ncwsltqssdl.get(),zncwsltqPoint.getNemCode(),zncwsltqPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nzfdl.get(),znzfdlPoint.getNemCode(),znzfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nqfdl.get(),znqfdlPoint.getNemCode(),znqfdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nzhd.get(),znzhdPoint.getNemCode(),znzhdPoint.getName()));
+
+
+        resultList.add(PointUtil.createPointData(currentDate,pjgl15.get(),zpjgl15Point.getNemCode(),zpjgl15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,fdl15.get(),zfdl15Point.getNemCode(),zfdl15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,kydl15.get(),zkydl15Point.getNemCode(),zkydl15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,llfdl15.get(),zllfdl15Point.getNemCode(),zllfdl15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,llfdlzs15.get(),zllfdlzs15Point.getNemCode(),zllfdlzs15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,gzssdl15.get(),zgzssdl15Point.getNemCode(),zgzssdl15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,cngzssdl15.get(),zcngz15Point.getNemCode(),zcngz15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,jxssdl15.get(),zjx15Point.getNemCode(),zjx15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,cnjxssdl15.get(),zcnjx15Point.getNemCode(),zcnjx15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,djssdl15.get(),zdj15Point.getNemCode(),zdj15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,qxjclssdl15.get(),zqxjcl15Point.getNemCode(),zqxjcl15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,sdtjssdl15.get(),zsdtj15Point.getNemCode(),zsdtj15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,xnssdl15.get(),zxn15Point.getNemCode(),zxn15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,xdtjssdl15.get(),zxdtj15Point.getNemCode(),zxdtj15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,xdjclssdl15.get(),zxdjcl15Point.getNemCode(),zxdjcl15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,cwsldwssdl15.get(),zcwsldw15Point.getNemCode(),zcwsldw15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,cwsltqssdl15.get(),zcwsltq15Point.getNemCode(),zcwsltq15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,zfdl15.get(),zzfdl15Point.getNemCode(),zzfdl15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,qfdl15.get(),zqfdl15Point.getNemCode(),zqfdl15Point.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,zhd15.get(),zzhd15Point.getNemCode(),zzhd15Point.getName()));
+
+        resultList.add(PointUtil.createPointData(currentDate,rfdlsyz.get(),zrfdlsyzPoint.getNemCode(),zrfdlsyzPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yfdlsyz.get(),zyfdlsyzPoint.getNemCode(),zyfdlsyzPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nfdlsyz.get(),znfdlsyzPoint.getNemCode(),znfdlsyzPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rswdlsyz.get(),zrswdlPoint.getNemCode(),zrswdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yswdlsyz.get(),zyswdlPoint.getNemCode(),zyswdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nswdlsyz.get(),znswdlPoint.getNemCode(),znswdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rgwgwdl.get(),zrgwgwdlPoint.getNemCode(),zrgwgwdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ygwgwdl.get(),zygwgwdlPoint.getNemCode(),zygwgwdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ngwgwdl.get(),zngwgwdlPoint.getNemCode(),zngwgwdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rnwgwdl.get(),zrnwgwdlPoint.getNemCode(),zrnwgwdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ynwgwdl.get(),zynwgwdlPoint.getNemCode(),zynwgwdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nnwgwdl.get(),znnwgwdlPoint.getNemCode(),znnwgwdlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rcydl.get(),zrcydlPoint.getNemCode(),zrcydlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ycydl.get(),zycydlPoint.getNemCode(),zycydlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ncydl.get(),zncydlPoint.getNemCode(),zncydlPoint.getName()));
+
+
+        double jym = yfdl.get() * 0.37;
+        double jys = yfdl.get() * 3.05;
+        double jyeyht = yfdl.get() * 0.8568;
+        double jyeyhl = yfdl.get() * 0.0059;
+        double rlyxs = 0;
+        double ylyxs = 0;
+        double nlyxs = 0;
+        double ysbklyl = 0;
+        double ydxkyxs = 0;
+        if (type.equals("-1")){
+            rlyxs = group.getJrwindCapacity()!=0?rfdl.get() / group.getJrwindCapacity():0;
+            ylyxs = group.getJrwindCapacity()!=0?yfdl.get() / group.getJrwindCapacity():0;
+            nlyxs = group.getJrwindCapacity()!=0?nfdl.get() / group.getJrwindCapacity():0;
+        }else if(type.equals("-2")){
+            rlyxs = group.getJrCapacity()!=0?rfdl.get() / group.getJrCapacity():0;
+            ylyxs = group.getJrCapacity()!=0?yfdl.get() / group.getJrCapacity():0;
+            nlyxs = group.getJrCapacity()!=0?nfdl.get() / group.getJrCapacity():0;
+        }else {
+            rlyxs = (group.getJrwindCapacity()+group.getJrCapacity())!=0?rfdl.get() / (group.getJrwindCapacity()+group.getJrCapacity()):0;
+            ylyxs = (group.getJrwindCapacity()+group.getJrCapacity())!=0?yfdl.get() / (group.getJrwindCapacity()+group.getJrCapacity()):0;
+            nlyxs = (group.getJrwindCapacity()+group.getJrCapacity())!=0?nfdl.get() / (group.getJrwindCapacity()+group.getJrCapacity()):0;
+        }
+        Date monthFirst = DateUtils.getMonthFirst(currentDate);
+        double hoursDiff = DateUtils.hoursDiff2(currentDate, monthFirst);
+
+        Date toDate1 = DateUtils.parseDate(DateUtils.toDate1(currentDate));
+        Map<String, ProEconPowerstationInfoDay2> tempMap = new HashMap<>();
+        QueryWrapper<ProEconPowerstationInfoDay2> qw = new QueryWrapper<>();
+        qw.eq("record_date",toDate1);
+        if (type.equals("-1")){
+            qw.eq("foreign_key_id",group+"-1");
+        }else if(type.equals("-2")){
+            qw.eq("foreign_key_id",group+"-2");
+        }else {
+            qw.eq("foreign_key_id",group+"0");
+        }
+        List<ProEconPowerstationInfoDay2> powerstationInfoDay2s = proEconPowerstationInfoDay2Service.list(qw);
+        powerstationInfoDay2s.stream().forEach(info->{
+            tempMap.put(info.getForeignKeyId(),info);
+        });
+
+        if (hoursDiff!=0){
+            if (tempMap.containsKey(group.getId())){
+                ProEconPowerstationInfoDay2 powerstationInfoDay2 = tempMap.get(group.getId());
+                ysbklyl = (hoursDiff - powerstationInfoDay2.getYhjgztjxs() - powerstationInfoDay2.getYhjjxtjxs())/hoursDiff*100;
+                ydxkyxs = (hoursDiff - powerstationInfoDay2.getYhjgztjxs() )/hoursDiff*100;
+            }
+        }
+
+        double yfnlyl = yllfdl.get() != 0 ?yfdl.get() / yllfdl.get() * 100:0;
+
+        resultList.add(PointUtil.createPointData(currentDate,jym,jymPoint.getNemCode(),jymPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,jys,jysPoint.getNemCode(),jysPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,jyeyht,jyeyhtPoint.getNemCode(),jyeyhtPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,jyeyhl,jyeyhlPoint.getNemCode(),jyeyhlPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,rlyxs,rlyxsPoint.getNemCode(),rlyxsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ylyxs,ylyxsPoint.getNemCode(),ylyxsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,nlyxs,nlyxsPoint.getNemCode(),nlyxsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ysbklyl,sbklylPoint.getNemCode(),sbklylPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,ydxkyxs,dxkyxsPoint.getNemCode(),dxkyxsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yfnlyl,fnlylPoint.getNemCode(),fnlylPoint.getName()));
+    }
 }

+ 471 - 4
realtime/generationXK-service/src/main/java/com/gyee/generation/service/realtimelibrary/RegionCalreService.java

@@ -4,10 +4,7 @@ import com.gyee.common.contant.ContantXk;
 import com.gyee.common.model.PointData;
 import com.gyee.common.util.DateUtils;
 import com.gyee.generation.init.CacheContext;
-import com.gyee.generation.model.auto.ProBasicCompany;
-import com.gyee.generation.model.auto.ProBasicPowerstation;
-import com.gyee.generation.model.auto.ProBasicPowerstationPoint;
-import com.gyee.generation.model.auto.ProBasicRegion;
+import com.gyee.generation.model.auto.*;
 import com.gyee.generation.util.PointUtil;
 import com.gyee.generation.util.realtimesource.IEdosUtil;
 import org.springframework.stereotype.Service;
@@ -57,6 +54,33 @@ public class RegionCalreService  {
         edosUtil.sendMultiPoint(resultList);
     }
 
+    public void groupCal() throws Exception {
+
+
+        Date currentDate = DateUtils.getCurrentDate();
+        List<ProBasicEnergyGroup> egls = CacheContext.egls;
+        List<ProBasicPowerstation> zwpls = CacheContext.zwpls;
+        Map<String, Map<String, ProBasicPowerstationPoint>> grouppointmap = CacheContext.grouppointmap;
+        Map<String, Map<String, ProBasicPowerstationPoint>> wppointmap = CacheContext.wppointmap;
+        List<PointData> resultList = new ArrayList<>();
+        egls.stream().forEach(group->{
+            List<ProBasicPowerstation> wps0 = zwpls.stream().filter(wp -> wp.getGroupId().equals(group.getId())).collect(Collectors.toList());
+            List<ProBasicPowerstation> wps1 = wps0.stream().filter(wp -> wp.getId().contains("_FDC_")).collect(Collectors.toList());
+            List<ProBasicPowerstation> wps2 = wps0.stream().filter(wp -> wp.getId().contains("_GDC_")).collect(Collectors.toList());
+            if (wps1.size()>0)
+                weightingGroup(currentDate, grouppointmap, wppointmap, resultList, group, wps1, "-1");
+            if (wps2.size()>0)
+                weightingGroup(currentDate, grouppointmap, wppointmap, resultList, group, wps2, "-2");
+            if (wps0.size()>0)
+                weightingGroup(currentDate, grouppointmap, wppointmap, resultList, group, wps0, "0");
+
+        });
+        edosUtil.sendMultiPoint(resultList);
+    }
+
+
+
+
     public void RegionCal() throws Exception {
         Date currentDate = DateUtils.getCurrentDate();
         List<ProBasicRegion> rgls = CacheContext.rgls;
@@ -1002,5 +1026,448 @@ public class RegionCalreService  {
         resultList.add(PointUtil.createPointData(currentDate,slts.get(),zsltsPoint.getNemCode(),zsltsPoint.getName()));
         resultList.add(PointUtil.createPointData(currentDate,lxts.get(),zlxtsPoint.getNemCode(),zlxtsPoint.getName()));
     }
+    private void weightingGroup(Date currentDate, Map<String, Map<String, ProBasicPowerstationPoint>> grouppointmap, Map<String, Map<String, ProBasicPowerstationPoint>> wppointmap, List<PointData> resultList, ProBasicEnergyGroup group, List<ProBasicPowerstation> wps, String type) {
+        Map<String, ProBasicPowerstationPoint> powerstationPointMap = grouppointmap.get(group.getId()+type);
+        int fdcsize = wps.stream().filter(wp -> wp.getId().contains("_FDC_") && wp.getSpare3().equals("1")).collect(Collectors.toList()).size();
+        int gdcsize = wps.stream().filter(wp -> wp.getId().contains("_GDC_") && wp.getSpare3().equals("1")).collect(Collectors.toList()).size();
+        if (fdcsize==0)
+            fdcsize = 1;
+        if (gdcsize==0)
+            gdcsize=1;
+        ProBasicPowerstationPoint zsspjfsPoint = null;
+        ProBasicPowerstationPoint zsspjgzdPoint = null;
+        if (type.equals("-1")){
+            zsspjfsPoint = powerstationPointMap.get(ContantXk.SSPJFS);
+
+        }else if(type.equals("-2")){
+            zsspjgzdPoint = powerstationPointMap.get(ContantXk.SSPJGZD);
+
+        }else {
+            zsspjfsPoint = powerstationPointMap.get(ContantXk.SSPJFS);
+            zsspjgzdPoint = powerstationPointMap.get(ContantXk.SSPJGZD);
+        }
+
+        ProBasicPowerstationPoint zaqtsPoint = powerstationPointMap.get(ContantXk.AQTS);
+        ProBasicPowerstationPoint zczztPoint = powerstationPointMap.get(ContantXk.CZZT);
+        ProBasicPowerstationPoint zsszglPoint = powerstationPointMap.get(ContantXk.SSZGL);
+        ProBasicPowerstationPoint zsszllglPoint = powerstationPointMap.get(ContantXk.SSZLLGL);
+        ProBasicPowerstationPoint zsszbzglPoint = powerstationPointMap.get(ContantXk.SSZBZGL);
+        ProBasicPowerstationPoint zssznhglzsPoint = powerstationPointMap.get(ContantXk.SSZNHGLZS);
+        ProBasicPowerstationPoint zsszzyglPoint = powerstationPointMap.get(ContantXk.SSZZYGL);
+        ProBasicPowerstationPoint zsszkyglPoint = powerstationPointMap.get(ContantXk.SSZKYGL);
+        ProBasicPowerstationPoint zycglPoint = powerstationPointMap.get(ContantXk.ZYCGL);
+
+        ProBasicPowerstationPoint zgztsmxPoint = powerstationPointMap.get(ContantXk.GZTSMX);
+        ProBasicPowerstationPoint zcnslmxPoint = powerstationPointMap.get(ContantXk.CNSLGZTSMX);
+        ProBasicPowerstationPoint zjxtsmxPoint = powerstationPointMap.get(ContantXk.JXTSMX);
+        ProBasicPowerstationPoint zcnjxmxPoint = powerstationPointMap.get(ContantXk.CNSLJXTSMX);
+        ProBasicPowerstationPoint zdjtsmxPoint = powerstationPointMap.get(ContantXk.DJTSMX);
+        ProBasicPowerstationPoint zqxjclmxPoint = powerstationPointMap.get(ContantXk.QXJCLTSMX);
+        ProBasicPowerstationPoint zsdtjmxPoint = powerstationPointMap.get(ContantXk.SDTJTSMX);
+        ProBasicPowerstationPoint zxntsmxPoint = powerstationPointMap.get(ContantXk.XNTSMX);
+        ProBasicPowerstationPoint zxdtjmxPoint = powerstationPointMap.get(ContantXk.XDTJTSMX);
+        ProBasicPowerstationPoint zxdjclmxPoint = powerstationPointMap.get(ContantXk.XDJCLTSMX);
+        ProBasicPowerstationPoint zcwsldwmxPoint = powerstationPointMap.get(ContantXk.CWSLDWTSMX);
+        ProBasicPowerstationPoint zcwsltqmxPoint = powerstationPointMap.get(ContantXk.CWSLTQTSMX);
+        ProBasicPowerstationPoint zlxtsmxPoint = powerstationPointMap.get(ContantXk.LXTSMX);
+        ProBasicPowerstationPoint ztxzdmxPoint = powerstationPointMap.get(ContantXk.TXZDTSMX);
+        ProBasicPowerstationPoint zdjtsPoint = powerstationPointMap.get(ContantXk.DJTS);
+        ProBasicPowerstationPoint zyxtsPoint = powerstationPointMap.get(ContantXk.YXTS);
+        ProBasicPowerstationPoint zgztsPoint = powerstationPointMap.get(ContantXk.GZTJTS);
+        ProBasicPowerstationPoint zwhtsPoint = powerstationPointMap.get(ContantXk.JXTJTS);
+        ProBasicPowerstationPoint zxdtsPoint = powerstationPointMap.get(ContantXk.XDTS);
+        ProBasicPowerstationPoint zsltsPoint = powerstationPointMap.get(ContantXk.SLTS);
+        ProBasicPowerstationPoint zlxtsPoint = powerstationPointMap.get(ContantXk.TXZDTS);
+        AtomicReference<Double> sspjfs = new AtomicReference<>((double) 0);
+        AtomicReference<Double> sspjgzd = new AtomicReference<>((double) 0);
+        AtomicReference<Double> sszgl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> zllgl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> zbzgl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> znhglzs = new AtomicReference<>((double) 0);
+        AtomicReference<Double> zzygl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> zkygl = new AtomicReference<>((double) 0);
+        AtomicReference<Double> zycgl = new AtomicReference<>((double) 0);
+
+        AtomicReference<Double> gztsmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> cngzmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> jxtsmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> cnjxmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> djtsmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> qxjclmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> sdtjmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> xntsmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> xdtjmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> xdjclmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> cwsldwmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> cwsltqmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> lxtsmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> txzdmx = new AtomicReference<>((double) 0);
+        AtomicReference<Double> yxts = new AtomicReference<>((double) 0);
+        AtomicReference<Double> gzts = new AtomicReference<>((double) 0);
+        AtomicReference<Double> lxts = new AtomicReference<>((double) 0);
+        AtomicReference<Double> whts = new AtomicReference<>((double) 0);
+        AtomicReference<Double> xdts = new AtomicReference<>((double) 0);
+        AtomicReference<Double> slts = new AtomicReference<>((double) 0);
+        AtomicReference<Double> djts = new AtomicReference<>((double) 0);
+        Double zczzt = 0.0;
+        List<Double> aqtsList = new ArrayList<>();
+//        wps.stream().forEach(wp->{
+        for(ProBasicPowerstation wp : wps) {
+
+            Map<String, ProBasicPowerstationPoint> powerstationPointMap1 = wppointmap.get(wp.getId());
+
+            ProBasicPowerstationPoint sspjfsPoint = null;
+            ProBasicPowerstationPoint sspjgzdPoint = null;
+
+            if (wp.getId().contains("_FDC_")) {
+                sspjfsPoint = powerstationPointMap1.get(ContantXk.SSPJFS);
+
+            } else if (wp.getId().contains("_GDC_")) {
+                sspjgzdPoint = powerstationPointMap1.get(ContantXk.SSPJGZD);
+
+            }
+            ProBasicPowerstationPoint aqtsPoint = powerstationPointMap1.get(ContantXk.AQTS);
+            ProBasicPowerstationPoint czztPoint = powerstationPointMap1.get(ContantXk.CZZT);
+            ProBasicPowerstationPoint sszglPoint = powerstationPointMap1.get(ContantXk.SSZGL);
+            ProBasicPowerstationPoint sszllglPoint = powerstationPointMap1.get(ContantXk.SSZLLGL);
+            ProBasicPowerstationPoint sszbzglPoint = powerstationPointMap1.get(ContantXk.SSZBZGL);
+            ProBasicPowerstationPoint ssznhglzsPoint = powerstationPointMap1.get(ContantXk.SSZNHGLZS);
+            ProBasicPowerstationPoint sszzyglPoint = powerstationPointMap1.get(ContantXk.SSZZYGL);
+            ProBasicPowerstationPoint sszkyglPoint = powerstationPointMap1.get(ContantXk.SSZKYGL);
+            ProBasicPowerstationPoint sszycglPoint = powerstationPointMap1.get(ContantXk.ZYCGL);
+
+            ProBasicPowerstationPoint gztsmxPoint = powerstationPointMap1.get(ContantXk.GZTSMX);
+            ProBasicPowerstationPoint cnslmxPoint = powerstationPointMap1.get(ContantXk.CNSLGZTSMX);
+            ProBasicPowerstationPoint jxtsmxPoint = powerstationPointMap1.get(ContantXk.JXTSMX);
+            ProBasicPowerstationPoint cnjxmxPoint = powerstationPointMap1.get(ContantXk.CNSLJXTSMX);
+            ProBasicPowerstationPoint djtsmxPoint = powerstationPointMap1.get(ContantXk.DJTSMX);
+            ProBasicPowerstationPoint qxjclmxPoint = powerstationPointMap1.get(ContantXk.QXJCLTSMX);
+            ProBasicPowerstationPoint sdtjmxPoint = powerstationPointMap1.get(ContantXk.SDTJTSMX);
+            ProBasicPowerstationPoint xntsmxPoint = powerstationPointMap1.get(ContantXk.XNTSMX);
+            ProBasicPowerstationPoint xdtjmxPoint = powerstationPointMap1.get(ContantXk.XDTJTSMX);
+            ProBasicPowerstationPoint xdjclmxPoint = powerstationPointMap1.get(ContantXk.XDJCLTSMX);
+            ProBasicPowerstationPoint cwsldwmxPoint = powerstationPointMap1.get(ContantXk.CWSLDWTSMX);
+            ProBasicPowerstationPoint cwsltqmxPoint = powerstationPointMap1.get(ContantXk.CWSLTQTSMX);
+            ProBasicPowerstationPoint lxtsmxPoint = powerstationPointMap1.get(ContantXk.LXTSMX);
+            ProBasicPowerstationPoint txzdmxPoint = powerstationPointMap1.get(ContantXk.TXZDTSMX);
+            ProBasicPowerstationPoint djtsPoint = powerstationPointMap1.get(ContantXk.DJTS);
+            ProBasicPowerstationPoint yxtsPoint = powerstationPointMap1.get(ContantXk.YXTS);
+            ProBasicPowerstationPoint gztsPoint = powerstationPointMap1.get(ContantXk.GZTJTS);
+            ProBasicPowerstationPoint whtsPoint = powerstationPointMap1.get(ContantXk.JXTJTS);
+            ProBasicPowerstationPoint xdtsPoint = powerstationPointMap1.get(ContantXk.XDTS);
+            ProBasicPowerstationPoint sltsPoint = powerstationPointMap1.get(ContantXk.SLTS);
+            ProBasicPowerstationPoint lxtsPoint = powerstationPointMap1.get(ContantXk.TXZDTS);
+
+
+            try {
+                double temp = edosUtil.getRealData(aqtsPoint).getPointValueInDouble();
+                aqtsList.add(temp);
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+
+            try {
+                double temp1 = edosUtil.getRealData(czztPoint).getPointValueInDouble();
+                if (temp1 == 0) {
+                    continue;
+                }else {
+                    zczzt = 1.0;
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+
+            if (wp.getId().contains("_FDC_")) {
+                ProBasicPowerstationPoint finalSspjfsPoint = sspjfsPoint;
+                sspjfs.updateAndGet(v -> {
+                    try {
+                        return new Double((double) (v + edosUtil.getRealData(finalSspjfsPoint).getPointValueInDouble()));
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                    return v;
+                });
+
+            } else if (wp.getId().contains("_GDC_")) {
+                ProBasicPowerstationPoint finalSspjgzdPoint = sspjgzdPoint;
+                sspjgzd.updateAndGet(v -> {
+                    try {
+                        return new Double((double) (v + edosUtil.getRealData(finalSspjgzdPoint).getPointValueInDouble()));
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                    return v;
+                });
+            }
+            sszgl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(sszglPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            zllgl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(sszllglPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            zbzgl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(sszbzglPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            znhglzs.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(ssznhglzsPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            zzygl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(sszzyglPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            zkygl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(sszkyglPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            zycgl.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(sszycglPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+
+
+            gztsmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(gztsmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            cngzmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(cnslmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            jxtsmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(jxtsmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            cnjxmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(cnjxmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            djtsmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(djtsmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            qxjclmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(qxjclmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            sdtjmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(sdtjmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            xntsmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(xntsmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            xdtjmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(xdtjmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            xdjclmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(xdjclmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            cwsldwmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(cwsldwmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            cwsltqmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(cwsltqmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            lxtsmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(lxtsmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            txzdmx.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(txzdmxPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            djts.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(djtsPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            yxts.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(yxtsPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            gzts.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(gztsPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            whts.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(whtsPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            xdts.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(xdtsPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            slts.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(sltsPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+            lxts.updateAndGet(v -> {
+                try {
+                    return new Double((double) (v + edosUtil.getRealData(lxtsPoint).getPointValueInDouble()));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return v;
+            });
+        }
+        if (type.equals("-1")){
+            resultList.add(PointUtil.createPointData(currentDate,sspjfs.get()/fdcsize,zsspjfsPoint.getNemCode(),zsspjfsPoint.getName()));
+
+        }else if(type.equals("-2")){
+            resultList.add(PointUtil.createPointData(currentDate,sspjgzd.get()/gdcsize,zsspjgzdPoint.getNemCode(),zsspjgzdPoint.getName()));
+
+        }else {
+            resultList.add(PointUtil.createPointData(currentDate,sspjfs.get()/fdcsize,zsspjfsPoint.getNemCode(),zsspjfsPoint.getName()));
+            resultList.add(PointUtil.createPointData(currentDate,sspjgzd.get()/gdcsize,zsspjgzdPoint.getNemCode(),zsspjgzdPoint.getName()));
+        }
 
+        Double aqts = Collections.max(aqtsList);
+        resultList.add(PointUtil.createPointData(currentDate,aqts,zaqtsPoint.getNemCode(),zaqtsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,zczzt,zczztPoint.getNemCode(),zczztPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,sszgl.get(),zsszglPoint.getNemCode(),zsszglPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,zllgl.get(),zsszllglPoint.getNemCode(),zsszllglPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,zbzgl.get(),zsszbzglPoint.getNemCode(),zsszbzglPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,znhglzs.get(),zssznhglzsPoint.getNemCode(),zssznhglzsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,zzygl.get(),zsszzyglPoint.getNemCode(),zsszzyglPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,zkygl.get(),zsszkyglPoint.getNemCode(),zsszkyglPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,zycgl.get(),zycglPoint.getNemCode(),zycglPoint.getName()));
+
+        resultList.add(PointUtil.createPointData(currentDate,gztsmx.get(),zgztsmxPoint.getNemCode(),zgztsmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,cngzmx.get(),zcnslmxPoint.getNemCode(),zcnslmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,jxtsmx.get(),zjxtsmxPoint.getNemCode(),zjxtsmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,cnjxmx.get(),zcnjxmxPoint.getNemCode(),zcnjxmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,djtsmx.get(),zdjtsmxPoint.getNemCode(),zdjtsmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,qxjclmx.get(),zqxjclmxPoint.getNemCode(),zqxjclmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,sdtjmx.get(),zsdtjmxPoint.getNemCode(),zsdtjmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,xntsmx.get(),zxntsmxPoint.getNemCode(),zxntsmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,xdtjmx.get(),zxdtjmxPoint.getNemCode(),zxdtjmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,xdjclmx.get(),zxdjclmxPoint.getNemCode(),zxdjclmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,cwsldwmx.get(),zcwsldwmxPoint.getNemCode(),zcwsldwmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,cwsltqmx.get(),zcwsltqmxPoint.getNemCode(),zcwsltqmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,lxtsmx.get(),zlxtsmxPoint.getNemCode(),zlxtsmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,txzdmx.get(),ztxzdmxPoint.getNemCode(),ztxzdmxPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,djts.get(),zdjtsPoint.getNemCode(),zdjtsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,yxts.get(),zyxtsPoint.getNemCode(),zyxtsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,gzts.get(),zgztsPoint.getNemCode(),zgztsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,whts.get(),zwhtsPoint.getNemCode(),zwhtsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,xdts.get(),zxdtsPoint.getNemCode(),zxdtsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,slts.get(),zsltsPoint.getNemCode(),zsltsPoint.getName()));
+        resultList.add(PointUtil.createPointData(currentDate,lxts.get(),zlxtsPoint.getNemCode(),zlxtsPoint.getName()));
+    }
 }

+ 2 - 0
realtime/generationXK-service/src/main/java/com/gyee/generation/task/SaticScheduleCALTask.java

@@ -192,6 +192,7 @@ public class SaticScheduleCALTask {
         try {
             regionCalreService.companyCal();
             regionCalreService.RegionCal();
+            regionCalreService.groupCal();
         } catch (Exception e) {
             e.printStackTrace();
         }
@@ -210,6 +211,7 @@ public class SaticScheduleCALTask {
         try {
             regionCalService.companyCal();
             regionCalService.RegionCal();
+            regionCalService.groupCal();
         } catch (Exception e) {
             e.printStackTrace();
         }

+ 1 - 0
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/RunEconomyApplication.java

@@ -1,5 +1,6 @@
 package com.gyee.runeconomy;
 
+
 import com.gyee.runeconomy.config.GyeeConfig;
 import com.gyee.runeconomy.util.SpringUtils;
 import lombok.extern.log4j.Log4j2;

+ 28 - 0
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/controller/CommonController.java

@@ -134,6 +134,34 @@ public class CommonController {
     }
 
     /**
+     * 查询期次测点
+     *
+     * @return
+     */
+    @GetMapping("/findProPoints")
+    @ResponseBody
+    @ApiOperation(value = "查询场站测点", notes = "查询场站测点")
+    public R findProPoints(@RequestParam(value = "uniformcodes", required = true) String unifromcodes,
+                          @RequestParam(value = "wpid", required = true) String wpid) {
+
+        Map<String, Map<String, ProBasicPowerstationPoint>> propointmap = CacheContext.propointmap;
+        Map<String, ProBasicPowerstationPoint> powerstationPointMap = propointmap.get(wpid);
+
+        List<ProBasicPowerstationPoint> resultList = new ArrayList<>();
+
+        String[] split = unifromcodes.split(",");
+        Arrays.stream(split).forEach(s -> {
+            resultList.add(powerstationPointMap.get(s));
+        });
+
+        if (StringUtils.isNotNull(resultList)) {
+            return R.data(ResultMsg.ok(resultList));
+        } else {
+            return R.error(ResultMsg.error());
+        }
+    }
+
+    /**
      * 查询测点曲线
      *
      * @return

+ 33 - 18
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/service/monitor/MatrixService.java

@@ -7,7 +7,9 @@ package com.gyee.runeconomy.service.monitor;
 import com.gyee.common.contant.ContantXk;
 import com.gyee.common.model.PointData;
 import com.gyee.common.util.DoubleUtils;
+import com.gyee.common.vo.monitor.MatrixLineVo;
 import com.gyee.common.vo.monitor.MatrixPowerVo;
+import com.gyee.common.vo.monitor.MatrixProVo;
 import com.gyee.common.vo.monitor.MatrixVo;
 import com.gyee.runeconomy.init.CacheContext;
 import com.gyee.runeconomy.model.auto.*;
@@ -463,6 +465,8 @@ public class MatrixService {
         wpPoints.add(pointMap.get(ContantXk.ZYCGL).getNemCode());
 
         List<PointData> realData = edosUtil.getRealData(wpPoints);
+        resultMap.put("wpid",powerstation.getId());
+        resultMap.put("wpname",powerstation.getAname());
         resultMap.put("jrts",powerstation.getJrquantityJz()+powerstation.getJrquantityJz()+powerstation.getJrwindQuantityLd()+powerstation.getJrwindQuantityHs());
         resultMap.put("dfts",realData.get(0).getPointValueInDouble());
         resultMap.put("sdtjts",realData.get(1).getPointValueInDouble());
@@ -529,8 +533,11 @@ public class MatrixService {
         Map<String, List<ProBasicProject>> wppromap = CacheContext.wppromap;
         List<ProBasicProject> projects = wppromap.get(wpid);
         Map<String, Map<String, ProBasicPowerstationPoint>> propointmap = CacheContext.propointmap;
-        Map<String,Object> proMap = new HashMap<>();
+        Map<String,Map<String,Object>> wpdatamap = new HashMap<>();
+        List<MatrixProVo> proVos = new ArrayList<>();
         projects.stream().forEach(p->{
+            Map<String,Object> proMap = new HashMap<>();
+            MatrixProVo provo = new MatrixProVo();
             List<String> procodes = new ArrayList<>();
             Map<String, ProBasicPowerstationPoint> powerstationPointMap = propointmap.get(p.getId());
             procodes.add(powerstationPointMap.get(ContantXk.DJTS).getNemCode());
@@ -555,26 +562,30 @@ public class MatrixService {
                 e.printStackTrace();
             }
             if (StringUtils.isNotEmpty(prodatas)){
-                proMap.put("djts",prodatas.get(0).getPointValueInDouble());
-                proMap.put("bwts",prodatas.get(1).getPointValueInDouble());
-                proMap.put("gzts",prodatas.get(2).getPointValueInDouble());
-                proMap.put("jxts",prodatas.get(3).getPointValueInDouble());
-                proMap.put("xdts",prodatas.get(4).getPointValueInDouble());
-                proMap.put("slts",prodatas.get(5).getPointValueInDouble());
-                proMap.put("lxts",prodatas.get(6).getPointValueInDouble());
-                proMap.put("speed",prodatas.get(7).getPointValueInDouble());
-                proMap.put("bzgl",prodatas.get(8).getPointValueInDouble());
-                proMap.put("llgl",prodatas.get(9).getPointValueInDouble());
-                proMap.put("sjgl",prodatas.get(10).getPointValueInDouble());
+                provo.setDjts((int) prodatas.get(0).getPointValueInDouble());
+                provo.setBwts((int) prodatas.get(1).getPointValueInDouble());
+                provo.setGzts((int) prodatas.get(2).getPointValueInDouble());
+                provo.setJxts((int) prodatas.get(3).getPointValueInDouble());
+                provo.setXdts((int) prodatas.get(4).getPointValueInDouble());
+                provo.setSlts((int) prodatas.get(5).getPointValueInDouble());
+                provo.setLxts((int) prodatas.get(6).getPointValueInDouble());
+                provo.setSpeed(prodatas.get(7).getPointValueInDouble());
+                provo.setBzgl(prodatas.get(8).getPointValueInDouble());
+                provo.setLlgl(prodatas.get(9).getPointValueInDouble());
+                provo.setSjgl(prodatas.get(10).getPointValueInDouble());
+
             }
+
             //线路
             Map<String, List<ProBasicLine>> prolinemap = CacheContext.prolinemap;
             Map<String, List<ProBasicEquipment>> lnwtmap = CacheContext.lnwtmap;
             Map<String, Map<String, ProBasicEquipmentPoint>> wtpAimap = CacheContext.wtpAimap;
             Map<String, Double> modelpower = CacheContext.modelpower;
             List<ProBasicLine> lines = prolinemap.get(p.getId());
-            Map<String,Object> lineMap = new HashMap<>();
+            Map<String,Map<String,Object>> lineresultMap = new HashMap<>();
+            List<MatrixLineVo> lineVos = new ArrayList<>();
             lines.stream().forEach(line->{
+                MatrixLineVo linevo = new MatrixLineVo();
                 List<ProBasicEquipment> equipments = lnwtmap.get(line.getId());
                 List<String> wtPoints = new ArrayList<>();
                 equipments.stream().forEach(wt->{
@@ -620,13 +631,17 @@ public class MatrixService {
                         volist.add(vo);
                     }
                 }
-                lineMap.put("lineInfo",line.getAname());
-                lineMap.put("wtDatas",volist);
+                linevo.setId(line.getId());
+                linevo.setName(line.getAname());
+                linevo.setWtDataList(volist);
+                lineVos.add(linevo);
             });
-            proMap.put("lineData",lineMap);
-            proMap.put("proInfo",p.getAname());
+            provo.setLineVos(lineVos);
+            provo.setId(p.getId());
+            provo.setName(p.getName());
+            proVos.add(provo);
         });
-        resultMap.put("proDatas",proMap);
+        resultMap.put("wpDatas",proVos);
 
         return resultMap;
     }

+ 1 - 1
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/service/monitor/StationMonitorService.java

@@ -144,7 +144,7 @@ public class StationMonitorService {
         resultMap.put("nfdl",realData.get(23).getPointValueInDouble());
         resultMap.put("sspjfsgzd",realData.get(24).getPointValueInDouble());
         resultMap.put("yggl",realData.get(25).getPointValueInDouble());
-        resultMap.put("fhl",(proBasicPowerstation.getJrwindCapacity()+proBasicPowerstation.getJrCapacity())!=0?realData.get(25).getPointValueInDouble()/(proBasicPowerstation.getJrwindCapacity()+proBasicPowerstation.getJrCapacity()):0);
+        resultMap.put("fhl",(proBasicPowerstation.getJrwindCapacity()+proBasicPowerstation.getJrCapacity())!=0?realData.get(25).getPointValueInDouble()/(proBasicPowerstation.getJrwindCapacity()+proBasicPowerstation.getJrCapacity())*100:0);
         resultMap.put("ylyxs",realData.get(26).getPointValueInDouble());
         resultMap.put("nlyxs",realData.get(27).getPointValueInDouble());
         resultMap.put("yfgnlyl",realData.get(28).getPointValueInDouble());