huangxingxing пре 1 година
родитељ
комит
9e099df088

+ 12 - 4
src/main/java/com/miniframe/bisiness/system/D00008Service.java

@@ -70,8 +70,11 @@ public class D00008Service extends D00008BaseModel implements ExecProcessFlow {
 
 		if(accident.getStype().equals("Fire")){
 			TemplateGenerator.createFireControl(aid,jid,totaltime,dt,dx,reportstep,interactionstep);
+			LogService.addLog(accident,"fireControl.ftl配置生成——————————————————成功");
 			TemplateGenerator.createFireRunsh(aid,jid);
+			LogService.addLog(accident,"runFile.sh配置生成——————————————————成功");
 			TemplateGenerator.createFireInit(aid,jid);
+			LogService.addLog(accident,"Fire.init配置生成——————————————————成功");
 			exeFire(aid,jid);
 		}
 		if(accident.getStype().equals("Water")){
@@ -136,9 +139,10 @@ public class D00008Service extends D00008BaseModel implements ExecProcessFlow {
 	//异步执行
 	@SneakyThrows
 	public void exeWater(Integer aid,Integer jid) throws Exception{
-		WebsocketEndPoint webs =  (WebsocketEndPoint) UtilTools.getBean("websocketEndPoint");
 		CompletableFuture<Void> cf = CompletableFuture.supplyAsync(()->{
 			try {
+
+				LogService.addLog(aid,jid,"Water","求解——————————————————开始");
 				Runtime runtime = Runtime.getRuntime();
 				Process p =null;
 				p= runtime.exec("sh "+TemplateGenerator.BPATH+"/"+aid+"/"+jid+"/water"+"/"+"runWater.sh");
@@ -147,11 +151,12 @@ public class D00008Service extends D00008BaseModel implements ExecProcessFlow {
 				BufferedReader br = new BufferedReader(isr);
 				String line = null;
 				while ((line = br.readLine()) != null) {
-					webs.sendMessageToUser(String.valueOf(aid),line);
 					LogService.addLog(aid,jid,"Water",line);
 					System.out.println(line);
 				}
+				LogService.addLog(aid,jid,"Water","求解——————————————————成功");
 			} catch (IOException e) {
+				LogService.addLog(aid,jid,"Water","求解——————————————————失败");
 				e.printStackTrace();
 			}
 			return null;
@@ -162,11 +167,12 @@ public class D00008Service extends D00008BaseModel implements ExecProcessFlow {
 	//异步执行
 	@SneakyThrows
 	public void exeFire(Integer aid,Integer jid) throws Exception{
-		WebsocketEndPoint webs =  (WebsocketEndPoint) UtilTools.getBean("websocketEndPoint");
+
 		CompletableFuture<Void> cf = CompletableFuture.supplyAsync(()->{
 			try {
 			Runtime runtime = Runtime.getRuntime();
 			Process p =null;
+			LogService.addLog(aid,jid,"Fire","求解——————————————————开始");
 			p= runtime.exec("sh "+TemplateGenerator.BPATH+"/"+
 					aid+"/"+jid+"/fire"+"/"+"runFile.sh");
 			InputStream fis = p.getInputStream();
@@ -174,10 +180,12 @@ public class D00008Service extends D00008BaseModel implements ExecProcessFlow {
 			BufferedReader br = new BufferedReader(isr);
 			String line = null;
 			while ((line = br.readLine()) != null) {
-				webs.sendMessageToUser(String.valueOf(aid),line);
+				LogService.addLog(aid,jid,"Fire",line);
 				System.out.println(line);
+				LogService.addLog(aid,jid,"Fire","求解——————————————————成功");
 			}
 			} catch (IOException e) {
+				LogService.addLog(aid,jid,"Fire","求解——————————————————失败");
 				e.printStackTrace();
 			}
 			return null;

+ 12 - 1
src/main/java/com/miniframe/disaster/service/LogService.java

@@ -1,8 +1,10 @@
 package com.miniframe.disaster.service;
 
+import com.miniframe.core.ext.UtilTools;
 import com.miniframe.model.system.DAccident;
 import com.miniframe.template.TemplateGenerator;
 import com.miniframe.tools.XIFileUtils;
+import com.miniframe.websocket.WebsocketEndPoint;
 
 import java.io.BufferedWriter;
 import java.io.File;
@@ -47,7 +49,7 @@ public class LogService {
 
     /**
      * 文件内容追加
-     * @param accident
+     * @param
      */
     public static void addLog(Integer aid,Integer jid,String stype,String log){
         String filePath =TemplateGenerator.BPATH+"/"+aid+"/"+jid+"/"+stype.toLowerCase()+"/log.txt";
@@ -59,9 +61,18 @@ public class LogService {
             bwriter.newLine();
             bwriter.close();
             writer.close();
+            WebsocketEndPoint webs =  (WebsocketEndPoint) UtilTools.getBean("websocketEndPoint");
+            webs.sendMessageToUser(String.valueOf(aid),log);
         } catch (IOException e) {
             e.printStackTrace();
         }
     }
+    /**
+     * 文件内容追加
+     * @param
+     */
+    public static void addLog(DAccident accident,String log){
+        addLog(accident.getId(),accident.getJid(),accident.getStype(),log);
+    }
 
 }