Ver código fonte

修改相应问题

shiyue 2 semanas atrás
pai
commit
8846a6f95b

+ 7 - 1
src/main/java/com/energy/manage/analyse/constant/DetectorTableEnum.java

@@ -67,7 +67,13 @@ public enum DetectorTableEnum {
      * Cp-TSR 联合分布检测器
      * 对应字段:model5_aerodynamics_cp_tsr
      */
-    CP_TSR_DETECTOR("anomaly_cp_tsr", "Cp-TSR联合分布检测器");
+    CP_TSR_DETECTOR("anomaly_cp_tsr", "Cp-TSR联合分布检测器"),
+
+    /**
+     * 降载检测器-新增
+     */
+   ANOMALY_DELOAD_DETECTOR("anomaly_deload", "Cp-TSR联合分布检测器");
+
 
 
 

+ 4 - 0
src/main/java/com/energy/manage/analyse/domain/vo/anomaly/AnomalyCtrlParamVO.java

@@ -1,5 +1,6 @@
 package com.energy.manage.analyse.domain.vo.anomaly;
 
+import com.energy.manage.analyse.po.anomaly.AnomalyDeloadPO;
 import com.energy.manage.analyse.po.anomaly.AnomalyOperationPO;
 import com.energy.manage.analyse.po.anomaly.AnomalyPowerqualityPO;
 import io.swagger.annotations.ApiModel;
@@ -22,6 +23,9 @@ public class AnomalyCtrlParamVO {
     @ApiModelProperty("机械运行状态检测器")
     private AnomalyOperationPO anomalyOperationPO;
 
+    @ApiModelProperty("(运行状态)降载检测器 -新增")
+    private AnomalyDeloadPO anomalyDeloadPO;
+
 
 
 }

+ 2 - 3
src/main/java/com/energy/manage/analyse/domain/vo/anomaly/AnomalyOverviewVO.java

@@ -17,6 +17,8 @@ public class AnomalyOverviewVO {
 
     private String fieldName;
 
+    private String fieldCode;
+
     /**
      * 风场总异常
      */
@@ -37,7 +39,4 @@ public class AnomalyOverviewVO {
 
 
 
-
-
-
 }

+ 2 - 0
src/main/java/com/energy/manage/analyse/domain/vo/healthscores/HealthscoresWindVO.java

@@ -12,4 +12,6 @@ public class HealthscoresWindVO extends HealthscoresWindPO {
 
     private String fieldName;
 
+    private String fieldCode;
+
 }

+ 3 - 0
src/main/java/com/energy/manage/analyse/mappers/anomaly/AnomalyWindfarmMapper.java

@@ -136,4 +136,7 @@ public interface AnomalyWindfarmMapper extends MyMapper<AnomalyWindfarmPO> {
                                  @Param("beginTime") String beginTime,
                                  @Param("endTime") String endTime);
 
+
+    Integer   selectEngineCountByCode ( @Param("companyCode") String companyCode);
+
 }

+ 22 - 7
src/main/java/com/energy/manage/analyse/service/anomaly/impl/AnomalyServiceImpl.java

@@ -65,11 +65,6 @@ public class AnomalyServiceImpl implements AnomalyService {
             fieldId = windFieldPO.getFieldId();
         }
 
-        if (fieldId == null) {
-            log.warn(" 健康检测大唐内部风场编号没有对应台账fieldId  ");
-            return null;
-        }
-
         String beginTime = null;
         String endTime = null;
         if (!StringUtils.isEmpty(anomalyDTO.getDatatime())) {
@@ -86,6 +81,9 @@ public class AnomalyServiceImpl implements AnomalyService {
         DynamicDataSourceContextHolder.push("slave");
 
         List<AnomalyOverviewVO> anomalyOverviewVOList = anomalyWindfarmMapper.selectAnomalyWindfarmAndFieldId(fieldId, beginTime, endTime);
+        if(CollectionUtil.isEmpty(anomalyOverviewVOList)){
+            return null;
+        }
 
         Set<String> fids = anomalyOverviewVOList.parallelStream().map(AnomalyOverviewVO::getFieldId).collect(Collectors.toSet());
         List<WindFieldPO> fList = getWindFGroupList(fids);
@@ -93,6 +91,7 @@ public class AnomalyServiceImpl implements AnomalyService {
             for(WindFieldPO po : fList){
                 if(vo.getFieldId().equals(po.getFieldId())){
                     vo.setFieldName(po.getFieldName());
+                    vo.setFieldCode(po.getFieldCode());
                 }
             }
         }
@@ -826,7 +825,7 @@ public class AnomalyServiceImpl implements AnomalyService {
         DynamicDataSourceContextHolder.push("slave");
 
         BaseAnomalyDetectorPO  staticyaw=  anomalyWindfarmMapper.selectAnomalyDetectorAll(anomalyModelDTO.getFieldId(),
-                DetectorTableEnum.CABLE_TWIST.getFullTableName(year),
+                DetectorTableEnum.STATIC_YAW.getFullTableName(year),
                 anomalyModelDTO.getEngineId(),beginTime,endTime);
         AnomalyStaticyawPO anomalyStaticyawPO = new AnomalyStaticyawPO();
         BeanUtil.copyProperties(staticyaw,anomalyStaticyawPO);
@@ -843,7 +842,7 @@ public class AnomalyServiceImpl implements AnomalyService {
         DynamicDataSourceContextHolder.push("slave");
 
         BaseAnomalyDetectorPO cabletwistPO =  anomalyWindfarmMapper.selectAnomalyDetectorAll(anomalyModelDTO.getFieldId(),
-                DetectorTableEnum.STATIC_YAW.getFullTableName(year),
+                DetectorTableEnum.CABLE_TWIST.getFullTableName(year),
                 anomalyModelDTO.getEngineId(),beginTime,endTime);
         AnomalyCabletwistPO anomalyCabletwistPO = new AnomalyCabletwistPO();
         BeanUtil.copyProperties(cabletwistPO,anomalyCabletwistPO);
@@ -980,6 +979,22 @@ public class AnomalyServiceImpl implements AnomalyService {
             anomalyCtrlParamVO.setAnomalyOperationPO(anomalyOperationPO);
         }
 
+
+        // 清除当前
+        DynamicDataSourceContextHolder.poll();
+        // 切换数据源
+        DynamicDataSourceContextHolder.push("slave");
+        BaseAnomalyDetectorPO anomalyDetectorPO  =  anomalyWindfarmMapper.selectAnomalyDetectorAll(anomalyModelDTO.getFieldId(),
+                DetectorTableEnum.ANOMALY_DELOAD_DETECTOR.getFullTableName(year),
+                anomalyModelDTO.getEngineId(),beginTime,endTime);
+        AnomalyDeloadPO anomalyDeloadPO = new AnomalyDeloadPO();
+        BeanUtil.copyProperties(anomalyDetectorPO,anomalyDeloadPO);
+        if(anomalyDetectorPO != null){
+            anomalyDeloadPO.setFilePath(NetUtils.getFilePath(isIntranet,anomalyDetectorPO.getFilePath()));
+            anomalyDeloadPO.setGraphPath(NetUtils.getFilePath(isIntranet,anomalyDetectorPO.getGraphPath()));
+            anomalyCtrlParamVO.setAnomalyDeloadPO(anomalyDeloadPO);
+        }
+
         return anomalyCtrlParamVO;
     }
 

+ 4 - 0
src/main/java/com/energy/manage/analyse/service/healthscores/impl/HealthscoresServiceImpl.java

@@ -64,13 +64,17 @@ public class HealthscoresServiceImpl implements HealthscoresService {
         }
 
         List<HealthscoresWindVO> list = getHealthscoresWind(fieldId, beginTime, endTime);
+        if(CollectionUtil.isEmpty(list)){
 
+            return null;
+        }
         Set<String> fids = list.parallelStream().map(HealthscoresWindVO::getFieldId).collect(Collectors.toSet());
         List<WindFieldPO> fList = getWindFGroupList(fids);
         for(HealthscoresWindVO vo : list){
             for(WindFieldPO po : fList){
                 if(vo.getFieldId().equals(po.getFieldId())){
                     vo.setFieldName(po.getFieldName());
+                    vo.setFieldCode(po.getFieldCode());
                 }
             }
         }

+ 5 - 0
src/main/java/com/energy/manage/analyse/service/wakediagnosis/impl/WakeWindFarmServiceImpl.java

@@ -1,5 +1,6 @@
 package com.energy.manage.analyse.service.wakediagnosis.impl;
 
+import cn.hutool.core.collection.CollectionUtil;
 import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.energy.manage.analyse.common.NetUtils;
 import com.energy.manage.analyse.domain.vo.healthscores.HealthOverviewListVO;
@@ -85,6 +86,10 @@ public class WakeWindFarmServiceImpl implements WakeWindFarmService {
         String year = String.valueOf(LocalDate.now().getYear());
         List<WakeTurbineVO> wakeTurbinePOList =  wakeWindFarmMapper.selectWakeTurbineAndFieldId(year, fieldId, beginTime, endTime);
 
+        if(CollectionUtil.isEmpty(wakeTurbinePOList)){
+            return null;
+        }
+
         Set<String> eids = wakeTurbinePOList.parallelStream().map(WakeTurbineVO::getEngineId).collect(Collectors.toSet());
         List<WindEngineGroupPO> list = getWindEngineGroupList(eids);
         for(WakeTurbineVO vo : wakeTurbinePOList){

+ 9 - 2
src/main/resources/mybatis/anomaly/AnaomalyMapper.xml

@@ -11,9 +11,9 @@
             anomaly_detection_count as detectorAnomalyCount
         from
             anomaly_windfarm
-        where
+        where 1=1
         <if test="fieldId!=null">
-            field_id = #{fieldId}
+           and  field_id = #{fieldId}
         </if>
         <if test="beginTime != null and beginTime != ''">
             and source_datetime  <![CDATA[>= ]]> #{beginTime}
@@ -397,5 +397,12 @@ GROUP BY field_id;
         </select>
 
 
+    <select id="selectEngineCountByCode" resultType="Integer">
+        select count(1) as engineCount
+        from wind_field wf
+        inner join wind_engine_group weg on wf.field_code = weg.field_code
+        where wf.company_code = #{companyCode}
+    </select>
+
 
     </mapper>

+ 2 - 1
src/main/resources/mybatis/wakediagnosis/WakeWindFarmMapper.xml

@@ -9,7 +9,8 @@
             ww.wake_loss_confident_path as wakeLossConfidentPath,
             ww.velocity_deficit_path as velocityDeficitPath,
             ww.wake_discription_path as wakeDiscriptionPath,
-            ww.wake_rose_diagram_path as wakeRoseDiagramPath
+            ww.wake_rose_diagram_path as wakeRoseDiagramPath,
+            ww.wind_speed_distribution_chart as windSpeedDistributionChart
         from wake_windfarm ww where 1=1
             <if test="fieldId!=null">
                 and ww.field_id = #{fieldId}