Browse Source

Merge pull request 'dev-xjf' (#29) from dev-xjf into master

Reviewed-on: http://120.26.116.243:3000/root/alert-backend/pulls/29
master
xiaojinfei 7 hours ago
parent
commit
76e1e3700e
  1. 9
      yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/controller/admin/exa/EXAController.java
  2. 9
      yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/controller/admin/exa/vo/EXANowListReqVO.java
  3. 2
      yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/controller/admin/exa/vo/EXAResult.java
  4. 4
      yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/service/exa/EXAService.java
  5. 5
      yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/service/exa/EXAServiceImpl.java
  6. 32
      yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/utils/EXAUtils.java

9
yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/controller/admin/exa/EXAController.java

@ -52,6 +52,15 @@ public class EXAController {
return success(nowList);
}
@PostMapping("/nowListReal")
@Operation(summary = "获取带实时值的列表")
@PreAuthorize("@ss.hasPermission('alert:exa:query')")
public CommonResult<EXAResult> getNowList(@RequestBody EXANowListReqVO list) throws IOException, URISyntaxException {
EXAResult nowList=exaService.getEXAListNowReal(list);
return success(nowList);
}
@GetMapping("/now")
@Operation(summary = "根据点号获取测点实时值-单点或多点")
@PreAuthorize("@ss.hasPermission('alert:exa:query')")

9
yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/controller/admin/exa/vo/EXANowListReqVO.java

@ -0,0 +1,9 @@
package cn.iocoder.yudao.module.alert.controller.admin.exa.vo;
import lombok.Data;
@Data
public class EXANowListReqVO {
private String[] ItemNameArray;
}

2
yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/controller/admin/exa/vo/EXAResult.java

@ -5,4 +5,6 @@ import com.alibaba.fastjson.annotation.JSONField;
public class EXAResult {
@JSONField(name="ReturnValue")
public Long ReturnValue;
@JSONField(name="ValueArray")
public double[] ValueArray;
}

4
yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/service/exa/EXAService.java

@ -22,6 +22,10 @@ public interface EXAService {
List<EXAHttp> getEXAListNow(List<EXAHttp> list) throws URISyntaxException, IOException;
EXAResult getEXAListNowReal(EXANowListReqVO list) throws URISyntaxException, IOException;
String getEXANow(String itemName) throws URISyntaxException, IOException;
List<List<Double>> getEXAHistory(EXAHistoryReqVO exaHistoryReqVo);

5
yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/service/exa/EXAServiceImpl.java

@ -62,7 +62,10 @@ public class EXAServiceImpl implements EXAService {
return list;
}
@Override
public EXAResult getEXAListNowReal(EXANowListReqVO list) throws URISyntaxException, IOException {
return exaUtils.getNowDataList(EXA_IP,list);
}
@Override
public String getEXANow(String itemName) throws URISyntaxException, IOException {
return exaUtils.getNowData(EXA_IP,itemName).get(0);

32
yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/utils/EXAUtils.java

@ -1,9 +1,6 @@
package cn.iocoder.yudao.module.alert.utils;
import cn.iocoder.yudao.module.alert.controller.admin.exa.vo.EXAHistoryReqVO;
import cn.iocoder.yudao.module.alert.controller.admin.exa.vo.EXAHttp;
import cn.iocoder.yudao.module.alert.controller.admin.exa.vo.EXAPageReqVO;
import cn.iocoder.yudao.module.alert.controller.admin.exa.vo.Point;
import cn.iocoder.yudao.module.alert.controller.admin.exa.vo.*;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.google.gson.Gson;
@ -14,11 +11,14 @@ import org.apache.http.client.fluent.Request;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpDelete;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.utils.URIBuilder;
import org.apache.http.entity.ContentType;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.springframework.beans.factory.annotation.Value;
import java.io.IOException;
import java.lang.reflect.Type;
@ -31,6 +31,7 @@ import java.util.List;
public class EXAUtils {
/**
* 根据分页条件和测点名称测点描述模糊查询
*
@ -147,6 +148,29 @@ public class EXAUtils {
return result;
}
public EXAResult getNowDataList(String EXA_IP,EXANowListReqVO exaNowListReqVO) throws URISyntaxException, IOException {
EXAResult result = new EXAResult();
try {
// 目标 RPC 服务的 URL
String url = "http://"+EXA_IP+":9000/exawebapi/exanow/GetFloatValueBatch";
String param = JSON.toJSONString(exaNowListReqVO);
String resultStr = Request.Post(url)
.addHeader("Content-type", "application/json")
.bodyString(param, ContentType.APPLICATION_JSON)
.execute().returnContent().asString(Charset.forName("utf-8"));
Gson gson=new Gson();
result= gson.fromJson(resultStr, EXAResult.class);
} catch (Exception e) {
}
return result;
}
/**
* 根据分页条件和测点名称测点描述模糊查询
*

Loading…
Cancel
Save