huangxingxing 1 年間 前
コミット
6551ff7abe

+ 6 - 1
src/main/java/com/miniframe/bisiness/system/D00008Service.java

@@ -2,6 +2,7 @@ package com.miniframe.bisiness.system;
 
 
 import com.miniframe.core.ExecProcessFlow;
 import com.miniframe.core.ExecProcessFlow;
 import com.miniframe.core.ext.UtilTools;
 import com.miniframe.core.ext.UtilTools;
+import com.miniframe.disaster.service.LogService;
 import com.miniframe.generate.business.system.model.D00008BaseModel;
 import com.miniframe.generate.business.system.model.D00008BaseModel;
 import com.miniframe.model.system.*;
 import com.miniframe.model.system.*;
 import com.miniframe.model.system.dao.DAccidentMapper;
 import com.miniframe.model.system.dao.DAccidentMapper;
@@ -41,7 +42,6 @@ public class D00008Service extends D00008BaseModel implements ExecProcessFlow {
 		 * report step: 60 -输出步长
 		 * report step: 60 -输出步长
 		 * interactionstep : 1200 -交互步长
 		 * interactionstep : 1200 -交互步长
 		 */
 		 */
-
 		String totaltime =this.getA_d00008().getTotaltime();
 		String totaltime =this.getA_d00008().getTotaltime();
 		String dt =this.getA_d00008().getDt();
 		String dt =this.getA_d00008().getDt();
 		String dx =this.getA_d00008().getDx();
 		String dx =this.getA_d00008().getDx();
@@ -60,6 +60,10 @@ public class D00008Service extends D00008BaseModel implements ExecProcessFlow {
 		Integer jid =newJob.getId();
 		Integer jid =newJob.getId();
 		//存储最新求解ID
 		//存储最新求解ID
 		changeAccident(accidentDao, accident, jid);
 		changeAccident(accidentDao, accident, jid);
+
+		//创建日志
+		LogService.clearLog(accident);
+
 		//获取传感器数据
 		//获取传感器数据
 		//TODO:  需要从第三方获取
 		//TODO:  需要从第三方获取
 		initDNodeVal(aid);
 		initDNodeVal(aid);
@@ -144,6 +148,7 @@ public class D00008Service extends D00008BaseModel implements ExecProcessFlow {
 				String line = null;
 				String line = null;
 				while ((line = br.readLine()) != null) {
 				while ((line = br.readLine()) != null) {
 					webs.sendMessageToUser(String.valueOf(aid),line);
 					webs.sendMessageToUser(String.valueOf(aid),line);
+					LogService.addLog(aid,jid,"Water",line);
 					System.out.println(line);
 					System.out.println(line);
 				}
 				}
 			} catch (IOException e) {
 			} catch (IOException e) {

+ 67 - 0
src/main/java/com/miniframe/disaster/service/LogService.java

@@ -0,0 +1,67 @@
+package com.miniframe.disaster.service;
+
+import com.miniframe.model.system.DAccident;
+import com.miniframe.template.TemplateGenerator;
+import com.miniframe.tools.XIFileUtils;
+
+import java.io.BufferedWriter;
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+
+/**
+ * 日志存储
+ */
+public class LogService {
+
+    /**
+     * 创建文件
+     * @param accident
+     * @return
+     */
+    public static File createLog(DAccident accident){
+        String filePath =TemplateGenerator.BPATH+"/"+accident.getId()+"/"+accident.getJid()+"/"+accident.getStype().toLowerCase()+"/log.txt";
+        XIFileUtils.mkdir(TemplateGenerator.BPATH);
+        XIFileUtils.mkdir(TemplateGenerator.BPATH+"/"+accident.getId());
+        XIFileUtils.mkdir(TemplateGenerator.BPATH+"/"+accident.getId()+"/"+accident.getJid());
+        XIFileUtils.mkdir(TemplateGenerator.BPATH+"/"+accident.getId()+"/"+accident.getJid()+"/"+accident.getStype().toLowerCase());
+        File file =new File(filePath);
+        return file;
+    }
+
+    /**
+     * 清空文件
+     * @param accident
+     */
+    public static void clearLog(DAccident accident){
+        String filePath =TemplateGenerator.BPATH+"/"+accident.getId()+"/"+accident.getJid()+"/"+accident.getStype().toLowerCase()+"/log.txt";
+        FileWriter writer = null;
+        try {
+            writer = new FileWriter(filePath);
+            writer.write("");  // 将内容设置为空字符串即可清空文件
+            writer.close();
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+    }
+
+    /**
+     * 文件内容追加
+     * @param accident
+     */
+    public static void addLog(Integer aid,Integer jid,String stype,String log){
+        String filePath =TemplateGenerator.BPATH+"/"+aid+"/"+jid+"/"+stype.toLowerCase()+"/log.txt";
+        FileWriter writer = null;
+        try {
+            writer = new FileWriter(filePath,true);
+            BufferedWriter bwriter = new BufferedWriter(writer);
+            bwriter.write(log);  // 将内容写入文件末尾
+            bwriter.newLine();
+            bwriter.close();
+            writer.close();
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+    }
+
+}