Преглед на файлове

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

chenminghua преди 2 години
родител
ревизия
4fb28677d5

+ 5 - 0
gyee-sample-impala/src/main/java/com/gyee/impala/common/feign/IAdapterService.java

@@ -9,6 +9,7 @@ import feign.Param;
 import feign.RequestLine;
 
 import java.util.List;
+import java.util.Map;
 
 
 public interface IAdapterService {
@@ -53,6 +54,10 @@ public interface IAdapterService {
     @RequestLine("GET /ts/history/section?tagNames={tagNames}&ts={ts}")
     List<TsBooleanData> getHistorySectionDI(@Param(value = "tagNames") String tagNames, @Param(value = "ts") long ts);
 
+    @Headers({"Content-Type: application/json", "Accept: application/json"})
+    @RequestLine("GET /ts/history/section?tagNames={tagNames}&ts={ts}")
+    Map<String,TsDoubleData> getHistorySection(@Param(value = "tagNames") String tagNames, @Param(value = "ts") long ts);
+
     /**
      * 通过UniformCode获取历史数据(注意其中有的参数设置为了固定值)
      * @param uniformCode 唯一识别码

+ 1 - 1
gyee-sample-impala/src/main/java/com/gyee/impala/controller/sample/cases/CaseFaultAlgController.java

@@ -46,7 +46,7 @@ public class CaseFaultAlgController {
      */
     @PostMapping("/faultalg/insert")
     public JSONObject faultAlgInsert(@RequestBody List<Casefaultalg> list){
-        casefaultalgService.insertBatch(list);
+        casefaultalgService.insertBatchAddspeed(list);
         return JsonResult.success(ResultCode.SUCCESS);
     }
 

+ 2 - 0
gyee-sample-impala/src/main/java/com/gyee/impala/model/master/Casefault.java

@@ -61,6 +61,8 @@ public class Casefault extends Model<Casefault> implements ToData<Object> {
 
     private String createtime;
 
+    private String speed;
+
 
 
     /**

+ 2 - 0
gyee-sample-impala/src/main/java/com/gyee/impala/model/master/Casefaultalg.java

@@ -65,6 +65,8 @@ public class Casefaultalg extends Model<Casefaultalg> {
 
     private String createtime;
 
+    private String speed;
+
 
     @Override
     protected Serializable pkVal() {

+ 40 - 2
gyee-sample-impala/src/main/java/com/gyee/impala/service/impl/master/CasefaultalgServiceImpl.java

@@ -5,23 +5,31 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.gyee.impala.common.base.ExcludeQueryWrapper;
 import com.gyee.impala.common.config.datasource.KuduDataSourceConfig;
 import com.gyee.impala.common.exception.CustomException;
+import com.gyee.impala.common.feign.RemoteServiceBuilder;
 import com.gyee.impala.common.result.ResultCode;
 import com.gyee.impala.common.spring.InitialRunner;
 import com.gyee.impala.common.util.DateUtil;
 import com.gyee.impala.common.util.SnowFlakeUtil;
 import com.gyee.impala.mapper.master.CasefaultalgMapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gyee.impala.mapper.slave.Windturbinetestingpointai2Mapper;
+import com.gyee.impala.model.custom.TsDoubleData;
 import com.gyee.impala.model.master.Casefault;
 import com.gyee.impala.model.master.Casefaultalg;
+import com.gyee.impala.model.slave.Windturbinetestingpointai2;
 import com.gyee.impala.service.master.CasefaultService;
 import com.gyee.impala.service.master.CasefaultalgService;
 import org.apache.kudu.client.*;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cache.annotation.Cacheable;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.ArrayList;
-import java.util.List;
+import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.function.Function;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -38,7 +46,20 @@ public class CasefaultalgServiceImpl extends ServiceImpl<CasefaultalgMapper, Cas
     private KuduDataSourceConfig kuduConfig;
     @Autowired
     private CasefaultService casefaultService;
+    @Resource
+    private Windturbinetestingpointai2Mapper windturbinetestingpointai2Mapper;
+    @Autowired
+    private RemoteServiceBuilder remoteServiceBuilder;
+
+    private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
 
+    @Cacheable("aisAI022")
+    public Map<String, Windturbinetestingpointai2> getWindpointai2s() {
+        Map<String, Object> wrapper = new HashMap<>();
+            wrapper.put("uniformcode", "AI022");
+        List<Windturbinetestingpointai2> ai2s = windturbinetestingpointai2Mapper.selectByMap(wrapper);
+        return ai2s.stream().collect(Collectors.toMap(Windturbinetestingpointai2::getWindturbineid, Function.identity()));
+    }
 
     @Override
     public void insertBatch(List<Casefaultalg> list) {
@@ -52,6 +73,23 @@ public class CasefaultalgServiceImpl extends ServiceImpl<CasefaultalgMapper, Cas
         }
     }
 
+    public void insertBatchAddspeed(List<Casefaultalg> list) {
+        if (list == null || list.size() == 0)
+            return;
+        Map<String, Windturbinetestingpointai2> windpointai2s = getWindpointai2s();
+        try{
+            for (Casefaultalg casefaultalg : list) {
+                Map<String,TsDoubleData> historySection = remoteServiceBuilder.adapter().getHistorySection(windpointai2s.get(casefaultalg.getWindturbineid()).getId(), sdf.parse(casefaultalg.getStarttime()).getTime());
+                TsDoubleData value = historySection.entrySet().iterator().next().getValue();
+                casefaultalg.setSpeed(String.valueOf(value.getDoubleValue()));
+            }
+            insert(list);
+        } catch (Exception e) {
+            log.error(e.getMessage());
+            throw new CustomException(ResultCode.ERROR_DATA);
+        }
+    }
+
 
     @Override
     public List<Casefaultalg> getAll(String station, String wtId, String[] id, Long[] faultid, String[] model, String[] faultcode,

+ 2 - 0
gyee-sample-impala/src/main/java/com/gyee/impala/service/master/CasefaultalgService.java

@@ -75,4 +75,6 @@ public interface CasefaultalgService extends IService<Casefaultalg> {
      * @param remark
      */
     void faultAlgEditRemark(String id,String remark);
+    //加入风速
+    void insertBatchAddspeed(List<Casefaultalg> list);
 }

+ 1 - 0
gyee-sample-impala/src/main/resources/application.yaml

@@ -3,6 +3,7 @@ gyee:
   golden-url: http://10.155.32.4:8011
   # 报警url
   alert-url: http://192.168.1.14:8075
+  #alert-url: http://localhost:8075
   host-url: http://10.155.32.14:8520
   # 样本数据统计开始时间
   init-time: 2022-01-01 00:00:00

+ 16 - 0
gyee-sample-impala/src/test/java/com/gyee/impala/FilterFaultTest.java

@@ -1,12 +1,28 @@
 package com.gyee.impala;
 
+import com.gyee.impala.common.feign.RemoteServiceBuilder;
+import com.gyee.impala.model.custom.TsDoubleData;
+import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
+import java.util.List;
+import java.util.Map;
+
 
 @RunWith(SpringRunner.class)
 @SpringBootTest
 public class FilterFaultTest {
 
+    @Autowired
+    private RemoteServiceBuilder remoteServiceBuilder;
+
+    @Test
+    public void golden(){
+        Map<String,TsDoubleData> historySection = remoteServiceBuilder.adapter().getHistorySection("HZJDJL.NX_GD_HZJG_DD_P1_L1_001_FXYG002", 1660893483000L);
+        TsDoubleData value = historySection.entrySet().iterator().next().getValue();
+        System.out.println(historySection);
+    }
 }