浏览代码

首页功率,电量取值修改

wangb@gyee-china.com 1 年之前
父节点
当前提交
cd71130865

+ 47 - 0
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/controller/ProEconTargetdataCopyController.java

@@ -0,0 +1,47 @@
+package com.gyee.runeconomy.controller;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.gyee.common.config.R;
+import com.gyee.runeconomy.model.auto.ProEconTargetdataCopy;
+import com.gyee.runeconomy.service.auto.IProEconTargetdataCopyService;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author wang
+ * @since 2023-07-24
+ */
+@RestController
+@RequestMapping("//pro-econ-targetdata-copy")
+public class ProEconTargetdataCopyController {
+
+    @Resource
+    private IProEconTargetdataCopyService proEconTargetdataCopyService;
+
+    @GetMapping(value = "/list")
+    @ApiOperation(value = "后台查询-列表", notes = "后台查询-列表")
+    public R findList(@RequestParam(value = "windpowerstationid", required = false) String windpowerstationid,
+                      @RequestParam(value = "windpowerstationName", required = false) String windpowerstationName,
+                      @RequestParam(value = "recorddate", required = false) String recorddate,
+                      @RequestParam(value = "pageNum", required = true) String pageNum,
+                      @RequestParam(value = "pageSize", required = true) String pageSize) {
+        IPage<ProEconTargetdataCopy> list = proEconTargetdataCopyService.getList(windpowerstationid, windpowerstationName, recorddate, pageNum, pageSize);
+        if (null != list) {
+            return R.ok().data(list);
+        } else {
+            return R.error().data("查询失败!");
+        }
+    }
+
+
+}

+ 16 - 0
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/mapper/auto/ProEconTargetdataCopyMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.runeconomy.mapper.auto;
+
+import com.gyee.runeconomy.model.auto.ProEconTargetdataCopy;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author wang
+ * @since 2023-07-24
+ */
+public interface ProEconTargetdataCopyMapper extends BaseMapper<ProEconTargetdataCopy> {
+
+}

+ 2 - 0
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/model/auto/ProEconTargetdata.java

@@ -40,5 +40,7 @@ public class ProEconTargetdata extends Model {
 
     private Double speedOrBeam;
 
+    private Date operationTime;
+
 
 }

+ 45 - 0
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/model/auto/ProEconTargetdataCopy.java

@@ -0,0 +1,45 @@
+package com.gyee.runeconomy.model.auto;
+
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author wang
+ * @since 2023-07-24
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class ProEconTargetdataCopy extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    private String id;
+
+    private String windpowerstationId;
+
+    private String windpowerstationName;
+
+    private BigDecimal generationDay;
+
+    private BigDecimal generationMonth;
+
+    private BigDecimal generationYear;
+
+    private BigDecimal power;
+
+    private BigDecimal speedOrBeam;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date recordDate;
+
+
+}

+ 19 - 0
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/service/auto/IProEconTargetdataCopyService.java

@@ -0,0 +1,19 @@
+package com.gyee.runeconomy.service.auto;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gyee.runeconomy.model.auto.ProEconTargetdataCopy;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author wang
+ * @since 2023-07-24
+ */
+public interface IProEconTargetdataCopyService extends IService<ProEconTargetdataCopy> {
+
+    IPage<ProEconTargetdataCopy> getList(String windpowerstationid, String windpowerstationName, String recorddate, String pageNum, String pageSize);
+
+}

+ 4 - 1
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/service/auto/IProEconTargetdataService.java

@@ -1,7 +1,9 @@
 package com.gyee.runeconomy.service.auto;
 
-import com.gyee.runeconomy.model.auto.ProEconTargetdata;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.gyee.runeconomy.model.auto.ProEconTargetdata;
+
+import java.util.List;
 
 /**
  * <p>
@@ -12,5 +14,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * @since 2023-05-16
  */
 public interface IProEconTargetdataService extends IService<ProEconTargetdata> {
+    List<ProEconTargetdata> qwtlist();
 
 }

+ 55 - 0
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/service/auto/impl/ProEconTargetdataCopyServiceImpl.java

@@ -0,0 +1,55 @@
+package com.gyee.runeconomy.service.auto.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gyee.common.model.StringUtils;
+import com.gyee.runeconomy.mapper.auto.ProEconTargetdataCopyMapper;
+import com.gyee.runeconomy.model.auto.ProEconTargetdataCopy;
+import com.gyee.runeconomy.service.auto.IProEconTargetdataCopyService;
+import org.springframework.stereotype.Service;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author wang
+ * @since 2023-07-24
+ */
+@Service
+public class ProEconTargetdataCopyServiceImpl extends ServiceImpl<ProEconTargetdataCopyMapper, ProEconTargetdataCopy> implements IProEconTargetdataCopyService {
+
+    @Override
+    public IPage<ProEconTargetdataCopy> getList(String windpowerstationid, String windpowerstationName, String recorddate, String pageNum, String pageSize) {
+        QueryWrapper<ProEconTargetdataCopy> qw = new QueryWrapper<>();
+
+        if (StringUtils.isNotEmpty(windpowerstationid)){
+            qw.eq("windpowerstation_id",windpowerstationid);
+        }
+
+        if (StringUtils.isNotEmpty(windpowerstationName)){
+            qw.like("windpowerstation_name",windpowerstationName);
+        }
+
+        if (StringUtils.isNotEmpty(recorddate)){
+            try {
+                Date beginDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(recorddate);
+                qw.ge("record_date", beginDate);
+            } catch (ParseException e) {
+                e.printStackTrace();
+            }
+        }
+
+
+        Page<ProEconTargetdataCopy> page = new Page<>(Integer.parseInt(pageNum),Integer.parseInt(pageSize));
+        IPage<ProEconTargetdataCopy> InputPage = getBaseMapper().selectPage(page, qw);
+//        List<Windpowerstation> list = companysPage.getRecords();
+        return InputPage;
+    }
+}

+ 247 - 2
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/service/auto/impl/ProEconTargetdataServiceImpl.java

@@ -1,11 +1,17 @@
 package com.gyee.runeconomy.service.auto.impl;
 
-import com.gyee.runeconomy.model.auto.ProEconTargetdata;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.gyee.runeconomy.mapper.auto.ProEconTargetdataMapper;
+import com.gyee.runeconomy.model.auto.ProEconTargetdata;
 import com.gyee.runeconomy.service.auto.IProEconTargetdataService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
 /**
  * <p>
  *  服务实现类
@@ -16,5 +22,244 @@ import org.springframework.stereotype.Service;
  */
 @Service
 public class ProEconTargetdataServiceImpl extends ServiceImpl<ProEconTargetdataMapper, ProEconTargetdata> implements IProEconTargetdataService {
+@Resource
+private IProEconTargetdataService proEconTargetdataService;
+    @Override
+    public List<ProEconTargetdata> qwtlist() {
+        List<ProEconTargetdata> qwt = new ArrayList<>();;
+        Date current = com.gyee.common.util.DateUtils.getCurrentDate();
+        QueryWrapper<ProEconTargetdata> qw1 = new QueryWrapper<>();
+        qw1.like("windpowerstation_id", "MLJ_FDC");
+        qw1.ge("record_date",current);
+        qw1.orderByDesc("operation_time");
+        qw1.last("LIMIT 1");
+        List<ProEconTargetdata> qwt1 = proEconTargetdataService.list(qw1);
+        if (qwt1 != null) {
+            qwt.addAll(qwt1);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw2 = new QueryWrapper<>();
+        qw2.like("windpowerstation_id", "GJY_FDC");
+        qw2.ge("record_date",current);
+        qw2.orderByDesc("operation_time");
+        qw2.last("LIMIT 1");
+        List<ProEconTargetdata> qwt2 = proEconTargetdataService.list(qw2);
+        if (qwt2 != null) {
+            qwt.addAll(qwt2);
+        }
+
+
+        QueryWrapper<ProEconTargetdata> qw3 = new QueryWrapper<>();
+        qw3.like("windpowerstation_id", "QYRG_GDC");
+        qw3.ge("record_date",current);
+        qw3.orderByDesc("operation_time");
+        qw3.last("LIMIT 1");
+        List<ProEconTargetdata> qwt3 = proEconTargetdataService.list(qw3);
+        if (qwt3 != null) {
+            qwt.addAll(qwt3);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw4 = new QueryWrapper<>();
+        qw4.like("windpowerstation_id", "CZXY_GDC");
+        qw4.ge("record_date",current);
+        qw4.orderByDesc("operation_time");
+        qw4.last("LIMIT 1");
+        List<ProEconTargetdata> qwt4 = proEconTargetdataService.list(qw4);
+        if (qwt4 != null) {
+            qwt.addAll(qwt4);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw5 = new QueryWrapper<>();
+        qw5.like("windpowerstation_id", "YQXC");
+        qw5.ge("record_date",current);
+        qw5.orderByDesc("operation_time");
+        qw5.last("LIMIT 1");
+        List<ProEconTargetdata> qwt5 = proEconTargetdataService.list(qw5);
+        if (qwt5 != null) {
+            qwt.addAll(qwt5);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw6 = new QueryWrapper<>();
+        qw6.like("windpowerstation_id", "HJFA_GDC");
+        qw6.ge("record_date",current);
+        qw6.orderByDesc("operation_time");
+        qw6.last("LIMIT 1");
+        List<ProEconTargetdata> qwt6 = proEconTargetdataService.list(qw6);
+        if (qwt6 != null) {
+            qwt.addAll(qwt6);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw7 = new QueryWrapper<>();
+        qw7.like("windpowerstation_id", "WXYX_GDC");
+        qw7.ge("record_date",current);
+        qw7.orderByDesc("operation_time");
+        qw7.last("LIMIT 1");
+        List<ProEconTargetdata> qwt7 = proEconTargetdataService.list(qw7);
+        if (qwt7 != null) {
+            qwt.addAll(qwt7);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw8 = new QueryWrapper<>();
+        qw8.like("windpowerstation_id", "WXYL_GDC");
+        qw8.ge("record_date",current);
+        qw8.orderByDesc("operation_time");
+        qw8.last("LIMIT 1");
+        List<ProEconTargetdata> qwt8 = proEconTargetdataService.list(qw8);
+        if (qwt8 != null) {
+            qwt.addAll(qwt8);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw9 = new QueryWrapper<>();
+        qw9.like("windpowerstation_id", "PSSX_GDC");
+        qw9.ge("record_date",current);
+        qw9.orderByDesc("operation_time");
+        qw9.last("LIMIT 1");
+        List<ProEconTargetdata> qwt9 = proEconTargetdataService.list(qw9);
+        if (qwt9 != null) {
+            qwt.addAll(qwt9);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw10 = new QueryWrapper<>();
+        qw10.like("windpowerstation_id", "HGFD_GDC");
+        qw10.ge("record_date",current);
+        qw10.orderByDesc("operation_time");
+        qw10.last("LIMIT 1");
+        List<ProEconTargetdata> qwt10 = proEconTargetdataService.list(qw10);
+        if (qwt10 != null) {
+            qwt.addAll(qwt10);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw11 = new QueryWrapper<>();
+        qw11.like("windpowerstation_id", "YX_GDC");
+        qw11.ge("record_date",current);
+        qw11.orderByDesc("operation_time");
+        qw11.last("LIMIT 1");
+        List<ProEconTargetdata> qwt11 = proEconTargetdataService.list(qw11);
+        if (qwt11 != null) {
+            qwt.addAll(qwt11);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw12 = new QueryWrapper<>();
+        qw12.like("windpowerstation_id", "JK_GDC");
+        qw12.ge("record_date",current);
+        qw12.orderByDesc("operation_time");
+        qw12.last("LIMIT 1");
+        List<ProEconTargetdata> qwt12 = proEconTargetdataService.list(qw12);
+        if (qwt12 != null) {
+            qwt.addAll(qwt12);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw13 = new QueryWrapper<>();
+        qw13.like("windpowerstation_id", "TZ_GDC");
+        qw13.ge("record_date",current);
+        qw13.orderByDesc("operation_time");
+        qw13.last("LIMIT 1");
+        List<ProEconTargetdata> qwt13= proEconTargetdataService.list(qw13);
+        if (qwt13 != null) {
+            qwt.addAll(qwt13);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw14 = new QueryWrapper<>();
+        qw14.like("windpowerstation_id", "YQ_GDC");
+        qw14.ge("record_date",current);
+        qw14.orderByDesc("operation_time");
+        qw14.last("LIMIT 1");
+        List<ProEconTargetdata> qwt14 = proEconTargetdataService.list(qw14);
+        if (qwt14 != null) {
+            qwt.addAll(qwt14);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw15 = new QueryWrapper<>();
+        qw15.like("windpowerstation_id", "YLZ_GDC");
+        qw15.ge("record_date",current);
+        qw15.orderByDesc("operation_time");
+        qw15.last("LIMIT 1");
+        List<ProEconTargetdata> qwt15 = proEconTargetdataService.list(qw15);
+        if (qwt15 != null) {
+            qwt.addAll(qwt15);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw16 = new QueryWrapper<>();
+        qw16.like("windpowerstation_id", "LHS_GDC");
+        qw16.ge("record_date",current);
+        qw16.orderByDesc("operation_time");
+        qw16.last("LIMIT 1");
+        List<ProEconTargetdata> qwt16 = proEconTargetdataService.list(qw16);
+        if (qwt16 != null) {
+            qwt.addAll(qwt16);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw17 = new QueryWrapper<>();
+        qw17.like("windpowerstation_id", "FS_GDC");
+        qw17.ge("record_date",current);
+        qw17.orderByDesc("operation_time");
+        qw17.last("LIMIT 1");
+        List<ProEconTargetdata> qwt17 = proEconTargetdataService.list(qw17);
+        if (qwt17 != null) {
+            qwt.addAll(qwt17);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw18 = new QueryWrapper<>();
+        qw18.like("windpowerstation_id", "ZK_FDC");
+        qw18.ge("record_date",current);
+        qw18.orderByDesc("operation_time");
+        qw18.last("LIMIT 1");
+        List<ProEconTargetdata> qwt18 = proEconTargetdataService.list(qw18);
+        if (qwt18 != null) {
+            qwt.addAll(qwt18);
+        }
+
+
+        QueryWrapper<ProEconTargetdata> qw19 = new QueryWrapper<>();
+        qw19.like("windpowerstation_id", "SY_GDC");
+        qw19.ge("record_date",current);
+        qw19.orderByDesc("operation_time");
+        qw19.last("LIMIT 1");
+        List<ProEconTargetdata> qwt19 = proEconTargetdataService.list(qw19);
+        if (qwt19 != null) {
+            qwt.addAll(qwt19);
+        }
+
+
+        QueryWrapper<ProEconTargetdata> qw20 = new QueryWrapper<>();
+        qw20.like("windpowerstation_id", "BHB_FDC");
+        qw20.ge("record_date",current);
+        qw20.orderByDesc("operation_time");
+        qw20.last("LIMIT 1");
+        List<ProEconTargetdata> qwt20 = proEconTargetdataService.list(qw20);
+        if (qwt20 != null) {
+            qwt.addAll(qwt20);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw21 = new QueryWrapper<>();
+        qw21.like("windpowerstation_id", "HSM_FDC");
+        qw21.ge("record_date",current);
+        qw21.orderByDesc("operation_time");
+        qw21.last("LIMIT 1");
+        List<ProEconTargetdata> qwt21 = proEconTargetdataService.list(qw21);
+        if (qwt21 != null) {
+            qwt.addAll(qwt21);
+        }
+
+        QueryWrapper<ProEconTargetdata> qw22 = new QueryWrapper<>();
+        qw22.like("windpowerstation_id", "YTY_FDC");
+        qw22.ge("record_date",current);
+        qw22.orderByDesc("operation_time");
+        qw22.last("LIMIT 1");
+        List<ProEconTargetdata> qwt22 = proEconTargetdataService.list(qw22);
+        if (qwt22 != null) {
+            qwt.addAll(qwt22);
+        }
 
+        QueryWrapper<ProEconTargetdata> qw23 = new QueryWrapper<>();
+        qw23.like("windpowerstation_id", "BHB3_FDC");
+        qw23.ge("record_date",current);
+        qw23.orderByDesc("operation_time");
+        qw23.last("LIMIT 1");
+        List<ProEconTargetdata> qwt23 = proEconTargetdataService.list(qw23);
+        if (qwt23 != null) {
+            qwt.addAll(qwt23);
+        }
+        return qwt;
+    }
 }

+ 86 - 66
web/runeconomy-xk/src/main/java/com/gyee/runeconomy/service/monitor/MonitorService.java

@@ -37,6 +37,9 @@ public class MonitorService {
     private IProBasicCompanyService proBasicCompanyService;
     @Resource
     private IProEconTargetdataService proEconTargetdataService;
+    @Resource
+    private IProEconTargetdataFristService proEconTargetdataFristService;
+
     private final String QS = "0";
     private final String FD = "-1";
     private final String GF = "-2";
@@ -501,14 +504,11 @@ public class MonitorService {
 
             }
             Date current = com.gyee.common.util.DateUtils.getCurrentDate();
-            List<ProEconTargetdata> qwt =null;
 
             double gflr = 0.0;
             double fdlr = 0.0;
+            List<ProEconTargetdata> qwt = proEconTargetdataService.qwtlist();
 
-            QueryWrapper<ProEconTargetdata> qw1 = new QueryWrapper<>();
-            qw1.eq("record_date", current);
-            qwt = proEconTargetdataService.list(qw1);
 
 
             gflr = qwt.stream()
@@ -1773,51 +1773,52 @@ public class MonitorService {
 
                 String str = wpId;
 
-//                Date current = com.gyee.common.util.DateUtils.getCurrentDate();
-//                List<ProEconTargetdata> qwt =null;
-//
-//                double gfrlr = 0.0;
-//                double gfylr = 0.0;
-//                double gfnlr = 0.0;
-//
-//                double fdrlr = 0.0;
-//                double fdylr = 0.0;
-//                double fdnlr = 0.0;
-//
-//                QueryWrapper<ProEconTargetdata> qw = new QueryWrapper<>();
-//                qw.eq("record_date", current);
-//                qwt = proEconTargetdataService.list(qw);
-
-//
-//                gfrlr = qwt.stream()
-//                        .filter(gf -> gf.getWindpowerstationId().endsWith("GDC_STA"))
-//                        .mapToDouble(gf -> gf.getGenerationDay())
-//                        .sum();
-//
-//                fdrlr = qwt.stream()
-//                        .filter(gf -> gf.getWindpowerstationId().endsWith("FDC_STA"))
-//                        .mapToDouble(gf -> gf.getGenerationDay())
-//                        .sum();
-//
-//                gfylr = qwt.stream()
-//                        .filter(gf -> gf.getWindpowerstationId().endsWith("GDC_STA"))
-//                        .mapToDouble(gf -> gf.getGenerationMonth())
-//                        .sum();
-//
-//                fdylr = qwt.stream()
-//                        .filter(gf -> gf.getWindpowerstationId().endsWith("FDC_STA"))
-//                        .mapToDouble(gf -> gf.getGenerationMonth())
-//                        .sum();
-//
-//                gfnlr = qwt.stream()
-//                        .filter(gf -> gf.getWindpowerstationId().endsWith("GDC_STA"))
-//                        .mapToDouble(gf -> gf.getGenerationYear())
-//                        .sum();
-//
-//                fdnlr = qwt.stream()
-//                        .filter(gf -> gf.getWindpowerstationId().endsWith("FDC_STA"))
-//                        .mapToDouble(gf -> gf.getGenerationYear())
-//                        .sum();
+                Date current = com.gyee.common.util.DateUtils.getCurrentDate();
+                Calendar calendar = Calendar.getInstance();
+                calendar.setTime(current);
+                calendar.add(Calendar.DAY_OF_MONTH, -1);
+                Date previousDay = calendar.getTime();
+                List<ProEconTargetdataFrist> qwt =null;
+
+                double gfrlr = 0.0;
+                double gfylr = 0.0;
+                double gfnlr = 0.0;
+
+                double fdrlr = 0.0;
+                double fdylr = 0.0;
+                double fdnlr = 0.0;
+
+                QueryWrapper<ProEconTargetdataFrist> qw = new QueryWrapper<>();
+                qw.eq("record_date", previousDay);
+                qwt = proEconTargetdataFristService.list(qw);
+
+
+                if (qwt != null) {
+                    gfrlr = qwt.stream()
+                            .filter(gf -> gf != null && gf.getType() != null && gf.getType().endsWith("GF"))
+                            .mapToDouble(gf -> gf != null && gf.getRfdl() != null ? gf.getRfdl() : 0)
+                            .sum();
+                    fdrlr = qwt.stream()
+                            .filter(gf -> gf != null && gf.getType() != null && gf.getType().endsWith("FD"))
+                            .mapToDouble(gf -> gf != null && gf.getRfdl() != null ? gf.getRfdl() : 0)
+                            .sum();
+                    gfylr = qwt.stream()
+                            .filter(gf -> gf != null && gf.getType() != null && gf.getType().endsWith("GF"))
+                            .mapToDouble(gf -> gf != null && gf.getYfdl() != null ? gf.getYfdl() : 0)
+                            .sum();
+                    fdylr = qwt.stream()
+                            .filter(gf -> gf != null && gf.getType() != null && gf.getType().endsWith("FD"))
+                            .mapToDouble(gf -> gf != null && gf.getYfdl() != null ? gf.getYfdl() : 0)
+                            .sum();
+                    gfnlr = qwt.stream()
+                            .filter(gf -> gf != null && gf.getType() != null && gf.getType().endsWith("GF"))
+                            .mapToDouble(gf -> gf != null && gf.getNfdl() != null ? gf.getNfdl() : 0)
+                            .sum();
+                    fdnlr = qwt.stream()
+                            .filter(gf -> gf != null && gf.getType() != null && gf.getType().endsWith("FD"))
+                            .mapToDouble(gf -> gf != null && gf.getNfdl() != null ? gf.getNfdl() : 0)
+                            .sum();
+                }
 
                 if (wpId.endsWith(QS)) {
                     fdstr = str.substring(0, str.indexOf("0")) + "-1";
@@ -1840,37 +1841,56 @@ public class MonitorService {
                     ProBasicPowerstationPoint gfnfdlvalue = proBasicPowerstationPointService.getPowerstationPoint(gfstr, ContantXk.NFDL);
                     gfnfdlsj = edosUtil.getRealData(gfnfdlvalue).getPointValueInDouble();
 
-                    fd_r_sjdl = fd_r_sjdl + rfdlsj;
-                    fd_y_sjdl = fd_y_sjdl + yfdlsj;
-                    fd_n_sjdl = fd_n_sjdl + nfdlsj;
+                    if (fdrlr!=0 && fdylr!=0 && fdnlr!=0 && gfrlr!=0 && gfylr!=0 && gfnlr !=0) {
+                        fd_r_sjdl = fd_r_sjdl + fdrlr * 10000;
+                        fd_y_sjdl = fd_y_sjdl + fdylr * 10000;
+                        fd_n_sjdl = fd_n_sjdl + fdnlr * 10000;
 
-                    gf_r_sjdl = gf_r_sjdl + gfrfdlsj;
-                    gf_y_sjdl = gf_y_sjdl + gfyfdlsj;
-                    gf_n_sjdl = gf_n_sjdl + gfnfdlsj;
+                        gf_r_sjdl = gf_r_sjdl + gfrlr * 10000;
+                        gf_y_sjdl = gf_y_sjdl + gfylr * 10000;
+                        gf_n_sjdl = gf_n_sjdl + gfnlr * 10000;
+                    } else {
+                        fd_r_sjdl = fd_r_sjdl + rfdlsj;
+                        fd_y_sjdl = fd_y_sjdl + yfdlsj;
+                        fd_n_sjdl = fd_n_sjdl + nfdlsj;
+
+                        gf_r_sjdl = gf_r_sjdl + gfrfdlsj;
+                        gf_y_sjdl = gf_y_sjdl + gfyfdlsj;
+                        gf_n_sjdl = gf_n_sjdl + gfnfdlsj;
+                    }
                 } else if (wpId.endsWith(FD) || wpId.endsWith(GF)) {
                     ProBasicPowerstationPoint rfdlvalue = proBasicPowerstationPointService.getPowerstationPoint(wpId, ContantXk.RFDL);
 
-                        rfdlsj = edosUtil.getRealData(rfdlvalue).getPointValueInDouble() ;
+                        rfdlsj = edosUtil.getRealData(rfdlvalue).getPointValueInDouble();
 
                     //月发电量
                     ProBasicPowerstationPoint yfdlvalue = proBasicPowerstationPointService.getPowerstationPoint(wpId, ContantXk.YFDL);
 
-                        yfdlsj = edosUtil.getRealData(yfdlvalue).getPointValueInDouble() ;
+                        yfdlsj = edosUtil.getRealData(yfdlvalue).getPointValueInDouble();
 
 
                     //年发电量
                     ProBasicPowerstationPoint nfdlvalue = proBasicPowerstationPointService.getPowerstationPoint(wpId, ContantXk.NFDL);
 
-                        nfdlsj = edosUtil.getRealData(nfdlvalue).getPointValueInDouble() ;
+                        nfdlsj = edosUtil.getRealData(nfdlvalue).getPointValueInDouble();
 
+                    if (fdrlr!=0 && fdylr!=0 && fdnlr!=0 && gfrlr!=0 && gfylr!=0 && gfnlr !=0) {
+                        fd_r_sjdl = fd_r_sjdl + fdrlr * 10000;
+                        fd_y_sjdl = fd_y_sjdl + fdylr * 10000;
+                        fd_n_sjdl = fd_n_sjdl + fdnlr * 10000;
 
-                    fd_r_sjdl = fd_r_sjdl + rfdlsj;
-                    fd_y_sjdl = fd_y_sjdl + yfdlsj;
-                    fd_n_sjdl = fd_n_sjdl + nfdlsj;
+                        gf_r_sjdl = gf_r_sjdl + gfrlr * 10000;
+                        gf_y_sjdl = gf_y_sjdl + gfylr * 10000;
+                        gf_n_sjdl = gf_n_sjdl + gfnlr * 10000;
+                    } else {
+                        fd_r_sjdl = fd_r_sjdl + rfdlsj;
+                        fd_y_sjdl = fd_y_sjdl + yfdlsj;
+                        fd_n_sjdl = fd_n_sjdl + nfdlsj;
 
-                    gf_r_sjdl = gf_r_sjdl + rfdlsj;
-                    gf_y_sjdl = gf_y_sjdl + yfdlsj;
-                    gf_n_sjdl = gf_n_sjdl + nfdlsj;
+                        gf_r_sjdl = gf_r_sjdl + rfdlsj;
+                        gf_y_sjdl = gf_y_sjdl + yfdlsj;
+                        gf_n_sjdl = gf_n_sjdl + nfdlsj;
+                    }
                 }
 
             }
@@ -1889,8 +1909,8 @@ public class MonitorService {
                     double yfdlsj = 0.0;
                     double nfdljh = 0.0;
                     double nfdlsj = 0.0;
-                        yfdljh = monthjh.stream().mapToDouble(ProBasicProjectPlan::getGeneratingCapacity).sum();;
-                        nfdljh = currentjh.stream().mapToDouble(ProBasicProjectPlan::getGeneratingCapacity).sum(); ;
+                        yfdljh = monthjh.stream().mapToDouble(ProBasicProjectPlan::getGeneratingCapacity).sum();
+                        nfdljh = currentjh.stream().mapToDouble(ProBasicProjectPlan::getGeneratingCapacity).sum();
 
                     if (wp.getId().indexOf("FDC_STA") >= 0) {