Ver código fonte

驾驶舱设备状态数量统计

wangchangsheng 3 anos atrás
pai
commit
eca36d3701

+ 318 - 278
src/main/java/com/gyee/frame/service/websocket/GenreSetPushService.java

@@ -540,7 +540,6 @@ public class GenreSetPushService {
                     List<MatrixVo> vos = new ArrayList<>();
                     List<String> fjzbls = new ArrayList<>();
                     List<String> gfzbls = new ArrayList<>();
-
                     //光伏没有明细计算点,所以区分开
                     if (wp.getId().endsWith("FDC")) {
                         for (Windturbine wt : wtls) {
@@ -554,6 +553,7 @@ public class GenreSetPushService {
                         }
                     }
 
+
                     List<PointData> fjzblist = realApiUtil.getRealData(fjzbls);
                     List<PointData> gfzblist = realApiUtil.getRealData(gfzbls);
 
@@ -614,7 +614,6 @@ public class GenreSetPushService {
                         }
                     }
 
-
                     if (!gfzblist.isEmpty() && gfzblist.size() == gfzblist.size()) {
                         for (int i = 0; i < wtls.size(); i++) {
                             double gfzt = MathUtil.twoBit(MathUtil.twoBit(gfzblist.get(i).getPointValueInDouble()));
@@ -653,6 +652,7 @@ public class GenreSetPushService {
 
                 mxztmap.put("jrts", djnum + sdtjnum + zcfdnum + qxjclnum + xdjclnum + xdtjnum + gztjnum + cnsltjnum + jxtjnum + cnsljxnum + dwslnum + hjslnum + lxnum);
 
+
                 mxztmap.put("djts", djnum);
                 mxztmap.put("sdtjts", sdtjnum);
                 mxztmap.put("yxts", zcfdnum);
@@ -667,8 +667,6 @@ public class GenreSetPushService {
                 mxztmap.put("hjslts", hjslnum);
                 mxztmap.put("lxts", lxnum);
 
-
-
             } else {
 
                 //待机台数
@@ -698,6 +696,7 @@ public class GenreSetPushService {
                 // 风机离线台数
                 Double lxnum = 0.0;
 
+
                 if (id.endsWith("FDC")) {
                     List<String> mxztls = new ArrayList<>();
                     //待机台数
@@ -774,48 +773,90 @@ public class GenreSetPushService {
                         mxztmap.put("lxts", lxnum);
 
 
-                    } else if (id.endsWith("GDC")) {
-                        List<String> gfzbls = new ArrayList<>();
+                        mxztmap.put("jrts", djnum + sdtjnum + zcfdnum + qxjclnum + xdjclnum + xdtjnum + gztjnum + cnsltjnum + jxtjnum + cnsljxnum + dwslnum + hjslnum + lxnum);
+
+                    } else {
+
+                        mxztmap.put("djts", 0.0);
+                        mxztmap.put("sdtjts", 0.0);
+                        mxztmap.put("yxts", 0.0);
+                        mxztmap.put("fdjclts", 0.0);
+                        mxztmap.put("xdjclts", 0.0);
+                        mxztmap.put("xdtjts", 0.0);
+                        mxztmap.put("gzts", 0.0);
+                        mxztmap.put("cnslgzts", 0.0);
+                        mxztmap.put("jxts", 0.0);
+                        mxztmap.put("cnsljxts", 0.0);
+                        mxztmap.put("dwslts", 0.0);
+                        mxztmap.put("hjslts", 0.0);
+                        mxztmap.put("lxts", 0.0);
+                        mxztmap.put("jrts", 0.0);
+                    }
+
+                }else if (id.endsWith("GDC")){
+                    List<String> gfzbls = new ArrayList<>();
+
+                    List<Windturbine> wtls = InitialRunner.wp_wtmap.get(id);
+                    for(Windturbine wt:wtls) {
                         //状态
-                        gfzbls.add(windTurbineTestingPointAiService.getWindTurbineTestingPointAi2(id, Constant.FJZT).getId());
-
-                        List<PointData> gfzblist = realApiUtil.getRealData(gfzbls);
-                        if (!gfzblist.isEmpty() && gfzblist.size() == gfzblist.size()) {
-                            List<Windturbine> wtls = InitialRunner.wp_wtmap.get(id);
-                            for (int i = 0; i < wtls.size(); i++) {
-                                double gfzt = MathUtil.twoBit(MathUtil.twoBit(gfzblist.get(i).getPointValueInDouble()));
-                                switch (Double.valueOf(gfzt).intValue()) {
-                                    case 0:
-                                        djnum++;
-                                        break;
-                                    case 1:
-                                        zcfdnum++;
-                                        break;
-                                    case 2:
-                                        gztjnum++;
-                                        break;
-                                    case 3:
-                                        lxnum++;
-                                        break;
-                                    case 4:
-                                        jxtjnum++;
-                                        break;
-                                    case 5:
-                                        xdjclnum++;
-                                        break;
-                                    case 6:
-                                        xdjclnum++;
-                                        break;
-                                    default:
-                                        break;
-                                }
+                        gfzbls.add(windTurbineTestingPointAiService.getWindTurbineTestingPointAi2(wt.getId(), Constant.FJZT).getId());
+                    }
+                    List<PointData> gfzblist = realApiUtil.getRealData(gfzbls);
+                    if (!gfzblist.isEmpty() && gfzblist.size() == gfzblist.size()) {
+                        for (int i = 0; i < wtls.size(); i++) {
+                            double gfzt = MathUtil.twoBit(MathUtil.twoBit(gfzblist.get(i).getPointValueInDouble()));
+                            switch (Double.valueOf(gfzt).intValue()) {
+                                case 0:
+                                    djnum++;
+                                    break;
+                                case 1:
+                                    zcfdnum++;
+                                    break;
+                                case 2:
+                                    gztjnum++;
+                                    break;
+                                case 3:
+                                    lxnum++;
+                                    break;
+                                case 4:
+                                    jxtjnum++;
+                                    break;
+                                case 5:
+                                    xdjclnum++;
+                                    break;
+                                case 6:
+                                    xdjclnum++;
+                                    break;
+                                default:
+                                    break;
                             }
+
                         }
                     }
-                    mxztmap.put("jrts", djnum + sdtjnum + zcfdnum + qxjclnum + xdjclnum + xdtjnum + gztjnum + cnsltjnum + jxtjnum + cnsljxnum + dwslnum + hjslnum + lxnum);
 
-                } else {
+                    //待机台数
+                    mxztmap.put("djts", djnum);
+                    //正常发电台数
+                    mxztmap.put("yxts", zcfdnum);
+                    // 限电降出力台数
+                    mxztmap.put("xdjclts", xdjclnum);
+                    // 故障停机台数
+                    mxztmap.put("gzts", gztjnum);
+                    // 检修停机台数
+                    mxztmap.put("jxts", jxtjnum);
+                    // 电网受累台数
+                    mxztmap.put("dwslts", dwslnum);
+                    // 风机离线台数
+                    mxztmap.put("lxts", lxnum);
+                    mxztmap.put("sdtjts", 0.0);
+                    mxztmap.put("fdjclts", 0.0);
+                    mxztmap.put("xdtjts", 0.0);
+                    mxztmap.put("cnslgzts", 0.0);
+                    mxztmap.put("cnsljxts", 0.0);
+                    mxztmap.put("hjslts", 0.0);
 
+                    mxztmap.put("jrts", djnum + sdtjnum + zcfdnum + qxjclnum + xdjclnum + xdtjnum + gztjnum + cnsltjnum + jxtjnum + cnsljxnum + dwslnum + hjslnum + lxnum);
+                }else {
                     mxztmap.put("djts", 0.0);
                     mxztmap.put("sdtjts", 0.0);
                     mxztmap.put("yxts", 0.0);
@@ -832,7 +873,6 @@ public class GenreSetPushService {
                     mxztmap.put("jrts", 0.0);
                 }
             }
-
             map.put("mxztmap", mxztmap);
 //
 
@@ -1067,7 +1107,7 @@ public class GenreSetPushService {
                 }
 
                 //环比风能利用率
-                 Map<String, Double> hbmap=getHbWs(id);
+                Map<String, Double> hbmap=getHbWs(id);
                 if(hbmap.containsKey("rfnlyl"))
                 {
                     double rhb=hbmap.get("rfnlyl");
@@ -1329,27 +1369,27 @@ public class GenreSetPushService {
 
 
     public Map<String, Object> findPowerInfo(String id) throws Exception {
-            Map<String, Object> map = new HashMap<String, Object>();
-            if (StringUtils.notEmp(id)) {
-
+        Map<String, Object> map = new HashMap<String, Object>();
+        if (StringUtils.notEmp(id)) {
 
-    /****************************************************日功率曲线**********************************************************/
 
-                List<DataVo> glvos = realPowerPushService.findRealPower(id);
-                map.put("glvos", glvos);
-    /*************************************************日功率曲线*************************************************************/
+            /****************************************************日功率曲线**********************************************************/
 
-    /****************************************************日电量历史**********************************************************/
+            List<DataVo> glvos = realPowerPushService.findRealPower(id);
+            map.put("glvos", glvos);
+            /*************************************************日功率曲线*************************************************************/
 
-                List<DataVo> rdlvos = findPowerWpBar(id);
-                map.put("rdlvos", rdlvos);
-    /*************************************************日电量历史*************************************************************/
+            /****************************************************日电量历史**********************************************************/
 
-            }
+            List<DataVo> rdlvos = findPowerWpBar(id);
+            map.put("rdlvos", rdlvos);
+            /*************************************************日电量历史*************************************************************/
 
-            return map;
         }
 
+        return map;
+    }
+
 
 
 
@@ -1365,7 +1405,7 @@ public class GenreSetPushService {
             if (id.equals(GF)) {
                 return 0;
             } else if (InitialRunner.wpmap.containsKey(id)) {
-                    wpId=id;
+                wpId=id;
             } else if (InitialRunner.pjmap.containsKey(id)) {
                 for (Windturbine wt : InitialRunner.pj_wtmap.get(id)) {
                     sb.append("'").append(wt.getId()).append("',");
@@ -1480,112 +1520,112 @@ public class GenreSetPushService {
         return vos;
     }
 
-private   Map<String, Double> getHbWs(String id) throws Exception {
-    Calendar cal = Calendar.getInstance();
-    cal.setTime(new Date());
-    cal.add(Calendar.MONTH,-1);
-    Map<String, Double> wxssmap = new HashMap<>();
-    List<String> wxssls = new ArrayList<>();
-
-    // 日场内受累检修
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RLZSSDL).getCode());
-    // 日场内受累故障
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RSZSSDL).getCode());
-    // 月场内受累检修
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YLZSSDL).getCode());
-    // 月场内受累故障
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YSZSSDL).getCode());
-    // 年场内受累检修
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NLZSSDL).getCode());
-    // 年场内受累故障
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NSZSSDL).getCode());
-
-    //日待机损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RSDJZSDL).getCode());
-    //日手动停机损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RSSTZSDL).getCode());
-    //日性能损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RXNZSDL).getCode());
-    //日缺陷降出力损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RSQXZSDL).getCode());
-    //日故障损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RGZSSDL).getCode());
-    //日检修损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RJXSSDL).getCode());
-
-    //月待机损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YSDJZSDL).getCode());
-    //月手动停机损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YSSTZSDL).getCode());
-    //月性能损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YXNZSDL).getCode());
-    //月缺陷降出力损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YSQXZSDL).getCode());
-    //月故障损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YGZSSDL).getCode());
-    //月检修损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YJXSSDL).getCode());
-
-
-    //年待机损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NSDJZSDL).getCode());
-    //年手动停机损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NSSTZSDL).getCode());
-    //年性能损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NXNZSDL).getCode());
-    //年缺陷降出力损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NSQXZSDL).getCode());
-    //年故障损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NGZSSDL).getCode());
-    //年检修损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NJXSSDL).getCode());
-
-
-    //日限电损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RXDSSDL).getCode());
-    //月限电损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YXDSSDL).getCode());
-    //年限电损失
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NXDSSDL).getCode());
-
-
-    //日场外受累电网
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RWZSSDL).getCode());
-    // 日场外受累天气
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RTZSSDL).getCode());
-    // 月场外受累电网
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YWZSSDL).getCode());
-    // 月场外受累天气
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YTZSSDL).getCode());
-    // 年场外受累电网
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NWZSSDL).getCode());
-    // 年场外受累天气
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NTZSSDL).getCode());
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.TPOINT_WP_RFDL).getCode());
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.TPOINT_WP_YFDL).getCode());
-    wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.TPOINT_WP_NFDL).getCode());
-
-
-    String[] ids=new String[wxssls.size()];
-
-    DNAVal[] wxsslist = realApiUtil.getHistMatrix(wxssls.toArray(ids),DateUtils.truncate(cal.getTime()).getTime());
-
-    if (wxsslist.length == wxssls.size()) {
-
-
-
-
-        Double rjxsl = MathUtil.twoBit(wxsslist[0].DValue);
+    private   Map<String, Double> getHbWs(String id) throws Exception {
+        Calendar cal = Calendar.getInstance();
+        cal.setTime(new Date());
+        cal.add(Calendar.MONTH,-1);
+        Map<String, Double> wxssmap = new HashMap<>();
+        List<String> wxssls = new ArrayList<>();
+
+        // 日场内受累检修
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RLZSSDL).getCode());
         // 日场内受累故障
-        Double rgzzsl = MathUtil.twoBit(wxsslist[1].DValue);
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RSZSSDL).getCode());
         // 月场内受累检修
-        Double yjxsl = MathUtil.twoBit(wxsslist[2].DValue);
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YLZSSDL).getCode());
         // 月场内受累故障
-        Double ygzzsl = MathUtil.twoBit(wxsslist[3].DValue);
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YSZSSDL).getCode());
         // 年场内受累检修
-        Double njxsl = MathUtil.twoBit(wxsslist[4].DValue);
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NLZSSDL).getCode());
         // 年场内受累故障
-        Double ngzzsl = MathUtil.twoBit(wxsslist[5].DValue);
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NSZSSDL).getCode());
+
+        //日待机损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RSDJZSDL).getCode());
+        //日手动停机损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RSSTZSDL).getCode());
+        //日性能损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RXNZSDL).getCode());
+        //日缺陷降出力损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RSQXZSDL).getCode());
+        //日故障损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RGZSSDL).getCode());
+        //日检修损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RJXSSDL).getCode());
+
+        //月待机损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YSDJZSDL).getCode());
+        //月手动停机损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YSSTZSDL).getCode());
+        //月性能损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YXNZSDL).getCode());
+        //月缺陷降出力损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YSQXZSDL).getCode());
+        //月故障损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YGZSSDL).getCode());
+        //月检修损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YJXSSDL).getCode());
+
+
+        //年待机损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NSDJZSDL).getCode());
+        //年手动停机损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NSSTZSDL).getCode());
+        //年性能损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NXNZSDL).getCode());
+        //年缺陷降出力损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NSQXZSDL).getCode());
+        //年故障损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NGZSSDL).getCode());
+        //年检修损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NJXSSDL).getCode());
+
+
+        //日限电损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RXDSSDL).getCode());
+        //月限电损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YXDSSDL).getCode());
+        //年限电损失
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NXDSSDL).getCode());
+
+
+        //日场外受累电网
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RWZSSDL).getCode());
+        // 日场外受累天气
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.RTZSSDL).getCode());
+        // 月场外受累电网
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YWZSSDL).getCode());
+        // 月场外受累天气
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.YTZSSDL).getCode());
+        // 年场外受累电网
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NWZSSDL).getCode());
+        // 年场外受累天气
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.NTZSSDL).getCode());
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.TPOINT_WP_RFDL).getCode());
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.TPOINT_WP_YFDL).getCode());
+        wxssls.add(windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.TPOINT_WP_NFDL).getCode());
+
+
+        String[] ids=new String[wxssls.size()];
+
+        DNAVal[] wxsslist = realApiUtil.getHistMatrix(wxssls.toArray(ids),DateUtils.truncate(cal.getTime()).getTime());
+
+        if (wxsslist.length == wxssls.size()) {
+
+
+
+
+            Double rjxsl = MathUtil.twoBit(wxsslist[0].DValue);
+            // 日场内受累故障
+            Double rgzzsl = MathUtil.twoBit(wxsslist[1].DValue);
+            // 月场内受累检修
+            Double yjxsl = MathUtil.twoBit(wxsslist[2].DValue);
+            // 月场内受累故障
+            Double ygzzsl = MathUtil.twoBit(wxsslist[3].DValue);
+            // 年场内受累检修
+            Double njxsl = MathUtil.twoBit(wxsslist[4].DValue);
+            // 年场内受累故障
+            Double ngzzsl = MathUtil.twoBit(wxsslist[5].DValue);
 
 //                wxssmap.put("rjxsl", rjxsl);
 //                wxssmap.put("rgzzsl", rgzzsl);
@@ -1594,140 +1634,140 @@ private   Map<String, Double> getHbWs(String id) throws Exception {
 //                wxssmap.put("njxsl", njxsl);
 //                wxssmap.put("ngzzsl", ngzzsl);
 
-        //日待机损失
-        Double rdjss = MathUtil.twoBit(wxsslist[6].DValue);
-        //日手动停机损失
-        Double rsdtjss = MathUtil.twoBit(wxsslist[7].DValue);
-        //日性能损失
-        Double rxnss = MathUtil.twoBit(wxsslist[8].DValue);
-        //日缺陷降出力损失
-        Double rqxjclss = MathUtil.twoBit(wxsslist[9].DValue);
+            //日待机损失
+            Double rdjss = MathUtil.twoBit(wxsslist[6].DValue);
+            //日手动停机损失
+            Double rsdtjss = MathUtil.twoBit(wxsslist[7].DValue);
+            //日性能损失
+            Double rxnss = MathUtil.twoBit(wxsslist[8].DValue);
+            //日缺陷降出力损失
+            Double rqxjclss = MathUtil.twoBit(wxsslist[9].DValue);
 
-        //日欠发损失=日待机损失+日手动停机损失+日性能损失+日缺陷降出力损失
-        Double rqfssdl = new BigDecimal(rdjss + rsdtjss + rxnss + rqxjclss).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+            //日欠发损失=日待机损失+日手动停机损失+日性能损失+日缺陷降出力损失
+            Double rqfssdl = new BigDecimal(rdjss + rsdtjss + rxnss + rqxjclss).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
 
-        Double rgzss = MathUtil.twoBit(wxsslist[10].DValue);
-        //日故障损失电量=日故障损失+日故障受累
-        Double rgzssdl = new BigDecimal(rgzss + rgzzsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
-        //日检修损失电量=日检修损失+日检修受累
-        Double rjxss = MathUtil.twoBit(wxsslist[11].DValue);
-        Double rjxssdl = new BigDecimal(rjxss + rjxsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+            Double rgzss = MathUtil.twoBit(wxsslist[10].DValue);
+            //日故障损失电量=日故障损失+日故障受累
+            Double rgzssdl = new BigDecimal(rgzss + rgzzsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+            //日检修损失电量=日检修损失+日检修受累
+            Double rjxss = MathUtil.twoBit(wxsslist[11].DValue);
+            Double rjxssdl = new BigDecimal(rjxss + rjxsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
 
 
-        wxssmap.put("rqfssdl", rqfssdl);
-        wxssmap.put("rgzssdl", rgzssdl);
-        wxssmap.put("rjxssdl", rjxssdl);
+            wxssmap.put("rqfssdl", rqfssdl);
+            wxssmap.put("rgzssdl", rgzssdl);
+            wxssmap.put("rjxssdl", rjxssdl);
 
-        // 月场内受累检修
-        Double ydjss = MathUtil.twoBit(wxsslist[12].DValue);
-        // 月场内受累检修
-        Double ysdtjss = MathUtil.twoBit(wxsslist[13].DValue);
-        // 月场内受累检修
-        Double yxnss = MathUtil.twoBit(wxsslist[14].DValue);
-        // 月场内受累检修
-        Double yqxjclss = MathUtil.twoBit(wxsslist[15].DValue);
-        //月欠发损失=月待机损失+月手动停机损失+月性能损失+月缺陷降出力损失
-        Double yqfssdl = new BigDecimal(ydjss + ysdtjss + yxnss + yqxjclss).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+            // 月场内受累检修
+            Double ydjss = MathUtil.twoBit(wxsslist[12].DValue);
+            // 月场内受累检修
+            Double ysdtjss = MathUtil.twoBit(wxsslist[13].DValue);
+            // 月场内受累检修
+            Double yxnss = MathUtil.twoBit(wxsslist[14].DValue);
+            // 月场内受累检修
+            Double yqxjclss = MathUtil.twoBit(wxsslist[15].DValue);
+            //月欠发损失=月待机损失+月手动停机损失+月性能损失+月缺陷降出力损失
+            Double yqfssdl = new BigDecimal(ydjss + ysdtjss + yxnss + yqxjclss).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
 
-        Double ygzss = MathUtil.twoBit(wxsslist[16].DValue);
-        //月故障损失电量=月故障损失+月故障受累
-        Double ygzssdl = new BigDecimal(ygzss + ygzzsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
-        Double yjxss = MathUtil.twoBit(wxsslist[17].DValue);
-        //月检修损失电量=月检修损失+月检修受累
-        Double yjxssdl = new BigDecimal(yjxss + yjxsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+            Double ygzss = MathUtil.twoBit(wxsslist[16].DValue);
+            //月故障损失电量=月故障损失+月故障受累
+            Double ygzssdl = new BigDecimal(ygzss + ygzzsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+            Double yjxss = MathUtil.twoBit(wxsslist[17].DValue);
+            //月检修损失电量=月检修损失+月检修受累
+            Double yjxssdl = new BigDecimal(yjxss + yjxsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
 
-        wxssmap.put("yqfssdl", yqfssdl);
-        wxssmap.put("ygzssdl", ygzssdl);
-        wxssmap.put("yjxssdl", yjxssdl);
+            wxssmap.put("yqfssdl", yqfssdl);
+            wxssmap.put("ygzssdl", ygzssdl);
+            wxssmap.put("yjxssdl", yjxssdl);
 
-        // 年场内受累检修
-        Double ndjss = MathUtil.twoBit(wxsslist[18].DValue);
-        // 年场内受累检修
-        Double nsdtjss = MathUtil.twoBit(wxsslist[19].DValue);
-        // 年场内受累检修
-        Double nxnss = MathUtil.twoBit(wxsslist[20].DValue);
-        // 年场内受累检修
-        Double nqxjclss = MathUtil.twoBit(wxsslist[21].DValue);
-
-        Double nqfssdl = new BigDecimal(ndjss + nsdtjss + nxnss + nqxjclss).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
-
-        Double ngzss = MathUtil.twoBit(wxsslist[22].DValue);
-        //年故障损失电量=年故障损失+年故障受累
-        Double ngzssdl = new BigDecimal(ngzss + ngzzsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
-        Double njxss = MathUtil.twoBit(wxsslist[23].DValue);
-        //年检修损失电量=年检修损失+年检修受累
-        Double njxssdl = new BigDecimal(njxss + njxsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
-
-        wxssmap.put("nqfssdl", nqfssdl);
-        wxssmap.put("ngzssdl", ngzssdl);
-        wxssmap.put("njxssdl", njxssdl);
-
-        double temp = 0.0;
-        temp = MathUtil.twoBit(wxsslist[24].DValue);
-        Double rxdssdl = new BigDecimal(temp).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
-        temp = MathUtil.twoBit(wxsslist[25].DValue);
-        Double yxdssdl = new BigDecimal(temp).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
-        temp = MathUtil.twoBit(wxsslist[26].DValue);
-        Double nxdssdl = new BigDecimal(temp).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
-
-        wxssmap.put("rxdssdl", StringUtils.round(rxdssdl < 0.0 ? 0.0 : rxdssdl, 2));
-        wxssmap.put("yxdssdl", StringUtils.round(yxdssdl < 0.0 ? 0.0 : yxdssdl, 2));
-        wxssmap.put("nxdssdl", StringUtils.round(nxdssdl < 0.0 ? 0.0 : nxdssdl, 2));
-
-        Double rdwsl = MathUtil.twoBit(wxsslist[27].DValue);
-        Double rtqsl = MathUtil.twoBit(wxsslist[28].DValue);
-        Double rslssdl = new BigDecimal(rdwsl + rtqsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
-        Double ydwsl = MathUtil.twoBit(wxsslist[29].DValue);
-        Double ytqsl = MathUtil.twoBit(wxsslist[30].DValue);
-        Double yslssdl = new BigDecimal(ydwsl + ytqsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
-        Double ndwsl = MathUtil.twoBit(wxsslist[31].DValue);
-        Double ntqsl = MathUtil.twoBit(wxsslist[32].DValue);
-        Double nslssdl = new BigDecimal(ndwsl + ntqsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
-
-
-        double rfdl=MathUtil.twoBit(wxsslist[33].DValue);
-        double yfdl=MathUtil.twoBit(wxsslist[34].DValue);
-        double nfdl=MathUtil.twoBit(wxsslist[35].DValue);
-        wxssmap.put("rslssdl", rslssdl);
-        wxssmap.put("yslssdl", yslssdl);
-        wxssmap.put("nslssdl", nslssdl);
-
-
-        double rllfdl=rfdl+rgzssdl+rjxssdl+rqfssdl+rxdssdl+rslssdl;
-        if(rllfdl!=0)
-        {
-            double rfnlyl=new BigDecimal(rfdl).divide(new BigDecimal(rllfdl), 4, RoundingMode.HALF_EVEN).multiply(new BigDecimal(100)).doubleValue();
-            wxssmap.put("rfnlyl", rfnlyl);
-        }else
-        {
-            wxssmap.put("rfnlyl", 0.0);
-        }
+            // 年场内受累检修
+            Double ndjss = MathUtil.twoBit(wxsslist[18].DValue);
+            // 年场内受累检修
+            Double nsdtjss = MathUtil.twoBit(wxsslist[19].DValue);
+            // 年场内受累检修
+            Double nxnss = MathUtil.twoBit(wxsslist[20].DValue);
+            // 年场内受累检修
+            Double nqxjclss = MathUtil.twoBit(wxsslist[21].DValue);
+
+            Double nqfssdl = new BigDecimal(ndjss + nsdtjss + nxnss + nqxjclss).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+
+            Double ngzss = MathUtil.twoBit(wxsslist[22].DValue);
+            //年故障损失电量=年故障损失+年故障受累
+            Double ngzssdl = new BigDecimal(ngzss + ngzzsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+            Double njxss = MathUtil.twoBit(wxsslist[23].DValue);
+            //年检修损失电量=年检修损失+年检修受累
+            Double njxssdl = new BigDecimal(njxss + njxsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+
+            wxssmap.put("nqfssdl", nqfssdl);
+            wxssmap.put("ngzssdl", ngzssdl);
+            wxssmap.put("njxssdl", njxssdl);
+
+            double temp = 0.0;
+            temp = MathUtil.twoBit(wxsslist[24].DValue);
+            Double rxdssdl = new BigDecimal(temp).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+            temp = MathUtil.twoBit(wxsslist[25].DValue);
+            Double yxdssdl = new BigDecimal(temp).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+            temp = MathUtil.twoBit(wxsslist[26].DValue);
+            Double nxdssdl = new BigDecimal(temp).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+
+            wxssmap.put("rxdssdl", StringUtils.round(rxdssdl < 0.0 ? 0.0 : rxdssdl, 2));
+            wxssmap.put("yxdssdl", StringUtils.round(yxdssdl < 0.0 ? 0.0 : yxdssdl, 2));
+            wxssmap.put("nxdssdl", StringUtils.round(nxdssdl < 0.0 ? 0.0 : nxdssdl, 2));
+
+            Double rdwsl = MathUtil.twoBit(wxsslist[27].DValue);
+            Double rtqsl = MathUtil.twoBit(wxsslist[28].DValue);
+            Double rslssdl = new BigDecimal(rdwsl + rtqsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+            Double ydwsl = MathUtil.twoBit(wxsslist[29].DValue);
+            Double ytqsl = MathUtil.twoBit(wxsslist[30].DValue);
+            Double yslssdl = new BigDecimal(ydwsl + ytqsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+            Double ndwsl = MathUtil.twoBit(wxsslist[31].DValue);
+            Double ntqsl = MathUtil.twoBit(wxsslist[32].DValue);
+            Double nslssdl = new BigDecimal(ndwsl + ntqsl).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
+
+
+            double rfdl=MathUtil.twoBit(wxsslist[33].DValue);
+            double yfdl=MathUtil.twoBit(wxsslist[34].DValue);
+            double nfdl=MathUtil.twoBit(wxsslist[35].DValue);
+            wxssmap.put("rslssdl", rslssdl);
+            wxssmap.put("yslssdl", yslssdl);
+            wxssmap.put("nslssdl", nslssdl);
+
+
+            double rllfdl=rfdl+rgzssdl+rjxssdl+rqfssdl+rxdssdl+rslssdl;
+            if(rllfdl!=0)
+            {
+                double rfnlyl=new BigDecimal(rfdl).divide(new BigDecimal(rllfdl), 4, RoundingMode.HALF_EVEN).multiply(new BigDecimal(100)).doubleValue();
+                wxssmap.put("rfnlyl", rfnlyl);
+            }else
+            {
+                wxssmap.put("rfnlyl", 0.0);
+            }
 
-        double yllfdl=yfdl+ygzssdl+yjxssdl+yqfssdl+yxdssdl+yslssdl;
-        if(yllfdl!=0)
-        {
-            double yfnlyl=new BigDecimal(yfdl).divide(new BigDecimal(yllfdl), 4, RoundingMode.HALF_EVEN).multiply(new BigDecimal(100)).doubleValue();
-            wxssmap.put("yfnlyl", yfnlyl);
-        }else
-        {
-            wxssmap.put("yfnlyl", 0.0);
-        }
+            double yllfdl=yfdl+ygzssdl+yjxssdl+yqfssdl+yxdssdl+yslssdl;
+            if(yllfdl!=0)
+            {
+                double yfnlyl=new BigDecimal(yfdl).divide(new BigDecimal(yllfdl), 4, RoundingMode.HALF_EVEN).multiply(new BigDecimal(100)).doubleValue();
+                wxssmap.put("yfnlyl", yfnlyl);
+            }else
+            {
+                wxssmap.put("yfnlyl", 0.0);
+            }
 
-        double nllfdl=nfdl+ngzssdl+njxssdl+nqfssdl+nxdssdl+nslssdl;
-        if(nllfdl!=0)
-        {
-            double nfnlyl=new BigDecimal(nfdl).divide(new BigDecimal(nllfdl), 4, RoundingMode.HALF_EVEN).multiply(new BigDecimal(100)).doubleValue();
-            wxssmap.put("nfnlyl", nfnlyl);
-        }else
-        {
-            wxssmap.put("nfnlyl", 0.0);
-        }
+            double nllfdl=nfdl+ngzssdl+njxssdl+nqfssdl+nxdssdl+nslssdl;
+            if(nllfdl!=0)
+            {
+                double nfnlyl=new BigDecimal(nfdl).divide(new BigDecimal(nllfdl), 4, RoundingMode.HALF_EVEN).multiply(new BigDecimal(100)).doubleValue();
+                wxssmap.put("nfnlyl", nfnlyl);
+            }else
+            {
+                wxssmap.put("nfnlyl", 0.0);
+            }
 
 
-    }
+        }
 
-    return wxssmap;
-}
+        return wxssmap;
+    }
 
     public List<DataVo> findPowerWpChart(String wpId) throws Exception {
         List<DataVo> vos = new ArrayList<DataVo>();