Jelajahi Sumber

Merge branch 'master' of http://124.70.43.205:3000/xieshengjie/sis

xushili 1 tahun lalu
induk
melakukan
bca1316c64

+ 30 - 4
web/runeconomy-jjyx/src/main/java/com/gyee/runeconomy/controller/Economic/EconomicController.java

@@ -1,10 +1,7 @@
 package com.gyee.runeconomy.controller.Economic;
 
 import com.gyee.common.model.StringUtils;
-import com.gyee.runeconomy.dto.Glqx;
-import com.gyee.runeconomy.dto.PowercurveVo;
-import com.gyee.runeconomy.dto.R;
-import com.gyee.runeconomy.dto.ResultMsg;
+import com.gyee.runeconomy.dto.*;
 import com.gyee.runeconomy.service.Economic.EconomicService;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.log4j.Log4j2;
@@ -139,4 +136,33 @@ public class EconomicController {
     }
 
 
+    /**
+     * 光资源分析
+     *
+     * @return
+     */
+    @GetMapping("/timeliness")
+    @ResponseBody
+    @CrossOrigin(origins = "*", maxAge = 3600)
+    public R timeliness(@RequestParam(value = "companys", required = true) String companys,
+                        @RequestParam(value = "type", required = true) String type,
+                        @RequestParam(value = "wpids", required = false) String wpids,
+                        @RequestParam(value = "windturbineids", required = false) String windturbineids,
+                        @RequestParam(value = "starttime", required = false) String starttime,
+                        @RequestParam(value = "endtime", required = false) String endtime,
+                        @RequestParam(value = "dateType", required = false) String dateType
+    ) throws Exception {
+        List<Tmelinessvo>  timeliness = null;
+        if (StringUtils.isEmpty(type)) type = "-2";
+        if (StringUtils.isEmpty(dateType)) dateType = "1";
+
+        timeliness = economicService.timeliness(companys,wpids, type, starttime, endtime, dateType, windturbineids);
+        if (StringUtils.isNotNull(timeliness)) {
+            return R.data(ResultMsg.ok(timeliness));
+        } else {
+            return R.error(ResultMsg.error());
+        }
+
+    }
+
 }

+ 88 - 0
web/runeconomy-jjyx/src/main/java/com/gyee/runeconomy/dto/Tmelinessvo.java

@@ -0,0 +1,88 @@
+package com.gyee.runeconomy.dto;
+
+import java.util.Date;
+
+public class Tmelinessvo {
+
+    private String wpid;
+    private String wpname;
+    private String wtid;
+    private String wtname;
+    private Double frequency;
+    private Double zfrequency;
+    private Double jsl;
+    private Date beginDate;
+    private Date endDate;
+
+    public String getWpid() {
+        return wpid;
+    }
+
+    public void setWpid(String wpid) {
+        this.wpid = wpid;
+    }
+
+    public String getWpname() {
+        return wpname;
+    }
+
+    public void setWpname(String wpname) {
+        this.wpname = wpname;
+    }
+
+    public String getWtid() {
+        return wtid;
+    }
+
+    public void setWtid(String wtid) {
+        this.wtid = wtid;
+    }
+
+    public String getWtname() {
+        return wtname;
+    }
+
+    public void setWtname(String wtname) {
+        this.wtname = wtname;
+    }
+
+    public Double getFrequency() {
+        return frequency;
+    }
+
+    public void setFrequency(Double frequency) {
+        this.frequency = frequency;
+    }
+
+    public Date getBeginDate() {
+        return beginDate;
+    }
+
+    public void setBeginDate(Date beginDate) {
+        this.beginDate = beginDate;
+    }
+
+    public Date getEndDate() {
+        return endDate;
+    }
+
+    public void setEndDate(Date endDate) {
+        this.endDate = endDate;
+    }
+
+    public Double getZfrequency() {
+        return zfrequency;
+    }
+
+    public void setZfrequency(Double zfrequency) {
+        this.zfrequency = zfrequency;
+    }
+
+    public Double getJsl() {
+        return jsl;
+    }
+
+    public void setJsl(Double jsl) {
+        this.jsl = jsl;
+    }
+}

+ 46 - 5
web/runeconomy-jjyx/src/main/java/com/gyee/runeconomy/service/Economic/EconomicService.java

@@ -4,10 +4,7 @@ import com.gyee.common.contant.ContantXk;
 import com.gyee.common.model.PointData;
 import com.gyee.runeconomy.dto.*;
 import com.gyee.runeconomy.init.CacheContext;
-import com.gyee.runeconomy.model.auto.ProBasicEquipmentPoint;
-import com.gyee.runeconomy.model.auto.ProBasicOrganizeTree;
-import com.gyee.runeconomy.model.auto.ProBasicPowerstationPoint;
-import com.gyee.runeconomy.model.auto.ProEconPowerstationInfoDay1;
+import com.gyee.runeconomy.model.auto.*;
 import com.gyee.runeconomy.model.fitting.ProBasicOrganizeEquipment;
 import com.gyee.runeconomy.service.auto.*;
 import com.gyee.runeconomy.util.DateUtils;
@@ -35,7 +32,7 @@ public class EconomicService {
     private IProEconPowerstationInfoDay7Service proEconPowerstationInfoDay7Service;//光伏
 
     @Autowired
-    private IProEconPowerstationInfoDay4Service proEconPowerstationInfoDay4Service;//场站三率mtbf
+    private IProEconFaultFaultService proEconFaultFaultService;
 
     @Resource
     private IProBasicPowerstationPointService proBasicPowerstationPointService;
@@ -578,4 +575,48 @@ public class EconomicService {
         return map;
     }
 
+
+    public  List<Tmelinessvo> timeliness(String companys, String wpids, String type, String starttime, String endtime, String dateType, String windturbineids) throws Exception {
+
+
+        Date beginDate = DateUtils.parseDate1(starttime);
+        Date endDate = DateUtils.parseDate1(endtime);
+
+
+        List<Tmelinessvo> vos = new ArrayList<>();
+
+        List<ProEconFaultFault> getlist = proEconFaultFaultService.getlist(beginDate,endDate);
+
+
+        Map<String,List<ProEconFaultFault>> zfrequencyls = getlist.stream()
+                .filter( wp-> wpids.equals(wp.getWindpowerstationId())).collect(Collectors.groupingBy(ProEconFaultFault::getEquipmentId));
+
+        for (String wtid : zfrequencyls.keySet()) {
+            Tmelinessvo vo = new Tmelinessvo();
+
+            //总处理次数
+            List<ProEconFaultFault> faults = zfrequencyls.get(wtid);
+
+            //及时处理次数
+            List<ProEconFaultFault> stream = faults.stream().filter(wt -> wt.getPlanEnddate().after(wt.getActualEnddate())).collect(Collectors.toList());
+
+
+            vo.setWtid(wtid);
+            vo.setWtname(faults.get(0).getEquipmentName());
+            vo.setZfrequency((double) faults.size());
+            vo.setFrequency((double) stream.size());
+            if (stream.size() != 0) {
+                vo.setJsl((double) ((stream.size() / faults.size()) * 100));
+            } else {
+                vo.setJsl(0.0); // 或者设置为其他合适的默认值
+            }
+            vo.setBeginDate(faults.get(0).getBegindate());
+            vo.setEndDate(faults.get(0).getActualEnddate());
+
+            vos.add(vo);
+        }
+
+        return vos;
+    }
+
 }

+ 2 - 0
web/runeconomy-jjyx/src/main/java/com/gyee/runeconomy/service/auto/IProEconFaultFaultService.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.gyee.runeconomy.model.auto.ProEconFaultFault;
 
 import java.util.Date;
+import java.util.List;
 
 /**
  * <p>
@@ -16,5 +17,6 @@ import java.util.Date;
  */
 public interface IProEconFaultFaultService extends IService<ProEconFaultFault> {
     IPage<ProEconFaultFault> getList(String windpowerstationId, String windpowerstationName, String begindate, String planEnddate, String pageNum, String pageSize);
+    List<ProEconFaultFault> getlist(Date beginDate, Date endDate);
 
 }

+ 0 - 1
web/runeconomy-jjyx/src/main/java/com/gyee/runeconomy/service/auto/impl/ProEconCleaningInputServiceImpl.java

@@ -8,7 +8,6 @@ import com.gyee.common.model.StringUtils;
 import com.gyee.runeconomy.mapper.auto.ProEconCleaningInputMapper;
 import com.gyee.runeconomy.model.auto.ProEconCleaningInput;
 import com.gyee.runeconomy.service.auto.IProEconCleaningInputService;
-import com.gyee.runeconomy.util.DateUtils;
 import org.springframework.stereotype.Service;
 
 import java.text.ParseException;

+ 10 - 0
web/runeconomy-jjyx/src/main/java/com/gyee/runeconomy/service/auto/impl/ProEconFaultFaultServiceImpl.java

@@ -13,6 +13,7 @@ import org.springframework.stereotype.Service;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.Date;
+import java.util.List;
 
 /**
  * <p>
@@ -60,4 +61,13 @@ public class ProEconFaultFaultServiceImpl extends ServiceImpl<ProEconFaultFaultM
 //        List<Windpowerstation> list = companysPage.getRecords();
         return InputPage;
     }
+
+    @Override
+    public List<ProEconFaultFault> getlist(Date beginDate,Date endDate) {
+        QueryWrapper<ProEconFaultFault> qw = new QueryWrapper<>();
+        qw.ge("begindate",beginDate ).le("actual_enddate", endDate);
+        Page<ProEconFaultFault> page = new Page<>();
+        List<ProEconFaultFault> InputPage = getBaseMapper().selectList(qw);
+        return InputPage;
+    }
 }