From 3db0172561e6b784cba42b6fcf7a68d3061995ea Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: Fri, 08 Mar 2024 13:55:02 +0800
Subject: [PATCH] 雷达报警增加不存在井写入txt
---
ard-work/src/main/java/com/ruoyi/utils/tools/ArdTool.java | 66 ++++++++++++++++++++++++++++----
ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java | 7 +++
2 files changed, 63 insertions(+), 10 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java
index 2762f49..73831f6 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java
@@ -53,9 +53,12 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
+import java.io.File;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
+
+import static com.ruoyi.utils.tools.ArdTool.writeStringToFile;
/**
@@ -1067,7 +1070,9 @@
String alarmpointName = ardAlarmRadar.getName();//兴趣点名称
ArdAlarmpointsWell well = ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(alarmpointName);
if (well == null) {
- return;
+ String path=System.getProperty("user.dir") + File.separator +"noExistWell.txt";
+ writeStringToFile(alarmpointName,path);
+ continue;
}
Double longitude = well.getLongitude();
diff --git a/ard-work/src/main/java/com/ruoyi/utils/tools/ArdTool.java b/ard-work/src/main/java/com/ruoyi/utils/tools/ArdTool.java
index 674b0de..f2185bb 100644
--- a/ard-work/src/main/java/com/ruoyi/utils/tools/ArdTool.java
+++ b/ard-work/src/main/java/com/ruoyi/utils/tools/ArdTool.java
@@ -2,6 +2,7 @@
import lombok.extern.slf4j.Slf4j;
+import java.io.*;
import java.lang.reflect.Field;
import java.text.DecimalFormat;
import java.time.LocalTime;
@@ -20,7 +21,7 @@
/**
* @描述 实体对象转Map
* @参数 [entity]
- * @返回值 java.util.Map<java.lang.String,java.lang.Object>
+ * @返回值 java.util.Map<java.lang.String, java.lang.Object>
* @创建人 刘苏义
* @创建时间 2023/6/2 14:35
* @修改人和其它信息
@@ -39,6 +40,7 @@
}
return map;
}
+
/**
* 求Map<K,V>中最小 Value 对应的Key值
*
@@ -46,13 +48,14 @@
* @return
*/
public static String getKeyByMinValue(Map<String, Double> map) {
- if (map == null||map.size()==0) return null;
+ if (map == null || map.size() == 0) return null;
List<Map.Entry<String, Double>> list = new ArrayList(map.entrySet());
Collections.sort(list, (o1, o2) -> (o1.getValue().intValue() - o2.getValue().intValue()));
String min = list.get(0).getKey();
// String max = list.get(list.size() - 1).getKey();
return min;
}
+
/**
* @描述 通过日夜切换时间判断当前使用通道号
* @参数 []
@@ -61,8 +64,7 @@
* @创建时间 2023/6/17 13:50
* @修改人和其它信息
*/
- public static Integer getChannelBydayNightTime(String dayNightTime)
- {
+ public static Integer getChannelBydayNightTime(String dayNightTime) {
try {
// 获取当前时间
LocalTime currentTime = LocalTime.now();
@@ -79,16 +81,16 @@
} else {
return 2;
}
- }
- catch (Exception ex)
- {
- log.error("光电切换获取通道异常:"+ex.getMessage());
+ } catch (Exception ex) {
+ log.error("光电切换获取通道异常:" + ex.getMessage());
return 1;
}
}
+
/**
* 文件大小智能转换
* 会将文件大小转换为最大满足单位
+ *
* @param size(文件大小,单位为B)
* @return 文件大小
*/
@@ -105,11 +107,13 @@
}
return sizeName;
}
+
/**
* 文件大小智能转换
* 会将文件大小转换为最大满足单位
+ *
* @param size(文件大小,单位为B)
- * @return 文件大小
+ * @return 文件大小
*/
public static String readableFileSize(long size) {
if (size <= 0) {
@@ -124,6 +128,7 @@
* byte数组转字符串
* 刘苏义
* 2023/10/18 8:42:59
+ *
* @param byteArray
*/
public static String byteArrayToString(byte[] byteArray) {
@@ -133,4 +138,47 @@
}
return stringBuilder.toString();
}
+
+ /**
+ * 将数据写入txt文件
+ * 刘苏义
+ * 2024/3/8 12:58:39
+ */
+ public static void writeStringToFile(String data, String fileName) {
+
+ try {
+ File file = new File(fileName);
+ boolean fileExists = file.exists();
+ boolean dataExists = false;
+ if(fileExists) {
+ // 读取文件内容
+ BufferedReader reader = new BufferedReader(new FileReader(fileName));
+ String line;
+ while ((line = reader.readLine()) != null) {
+ if (line.equals(data)) {
+ dataExists = true;
+ break;
+ }
+ }
+ reader.close();
+ }
+
+ // 如果文件不存在或数据不存在,则追加到文件
+ if (!fileExists || !dataExists) {
+ FileWriter writer = new FileWriter(fileName, true);
+ writer.write(data + System.lineSeparator());
+ writer.close();
+ if (!fileExists) {
+ log.debug("File created and data has been appended.");
+ } else {
+ log.debug("Data has been appended to the file.");
+ }
+ } else {
+ log.debug("Data already exists in the file. Not appending.");
+ }
+ } catch (IOException e) {
+ log.error("An error occurred.");
+ e.printStackTrace();
+ }
+ }
}
--
Gitblit v1.9.3