tangjunhao пре 3 месеци
родитељ
комит
65526a2557

+ 24 - 13
src/views/home.vue

@@ -1347,6 +1347,7 @@
             <div class="right_container">
               <div class="main_model">
                 <div class="jindutiao" v-show="progressshow">
+                  <!-- 进度条 -->
                   <span style="width: 150px;">运行进度</span>
                   <!-- <el-progress :text-inside="true" :stroke-width="26" :percentage="70" /> -->
                   <div class="demo-progress">
@@ -1750,7 +1751,8 @@ let tablecstHeaders=ref([]);
 let treeitem = ref({});
 let treeitem2 = ref({});
 let treeitem3 = ref({});
-let percentage = ref(70);
+let percentage = ref(0);
+let percentageTotalstep = ref(100);
 let progressshow = ref(false);
 let flowshow = ref(true);
 let jiankong = ref(false);
@@ -2251,9 +2253,14 @@ onMounted(() => {
     // vuefval.value.getroter()
   }, 1500);
   // childfun();
+  emitter.on("stepfromyouhuaqi",handlePercentage);
 
 });
 
+onUnmounted(() => {
+  emitter.off("stepfromyouhuaqi", handlePercentage);
+});
+
 const sjdelete = (index, row) => {
   console.log(index);
   designtable.value.splice(index, 1)
@@ -3980,6 +3987,11 @@ function convertToPercentage(number) {
   return (number * 100);
 }
 
+const handlePercentage = (val) => {
+  console.log("步数设置:",val),
+  percentageTotalstep.value = val;
+}
+
 //websockct的连接
 function initWebSocket() {
 
@@ -4016,8 +4028,10 @@ const websocketonmessage = (res) => {
     // 解析 WebSocket 接收到的消息数据
     let parsedData = JSON.parse(res.data);
     let step = Number(parsedData.step);
+    console.log('步数:',step)
     if(parsedData.type === 1){
-      percentage.value = Math.round((step / 30) * 100);
+      console.log('总步数:',percentageTotalstep.value)
+      percentage.value = Math.round((step / percentageTotalstep.value) * 100);
     }
 
     console.log("进度:", percentage.value);
@@ -4036,17 +4050,14 @@ const websocketonmessage = (res) => {
       processMonitor2ref.value.getsockechart(arrobj.value);
     }
     
-    // optmonitor1.value.getsockechart(arrobj.value);
-    // processMonitor1ref.getsockechart(arrobj.value);
-    // processMonitor2ref.getsockechart(arrobj.value);
-    // arearef.value.getsockechart(arrobj.value);
-    // bargraphref.value.getsockechart(arrobj.value);
-    // echartLineref.value.getsockechart(arrobj.value);
-    // BarChartref.value.getsockechart(arrobj.value);
-    // radarref.value.getsockechart(arrobj.value);
-    // scatterref.value.getsockechart(arrobj.value);
-    // pieref.value.getsockechart(arrobj.value);
-    // paretoref.value.getsockechart(arrobj.value);
+    
+
+    // 新增:记录结构化 JSON 数据到日志
+    const cleanedJsonLog = res.data.split('\n').filter(line => line.trim() !== '').join('\n');
+    logs.value = logs.value + '\n' + cleanedJsonLog;
+    // 自动滚动日志到底部
+    let textarea = document.getElementById("textarea_id");
+    textarea.scrollTop = textarea.scrollHeight;
   } else {
     if (res.data.indexOf('——成功') !== -1) {
       const timer = setTimeout(function () {

+ 2 - 0
src/views/titlecomponent/Doptimize.vue

@@ -152,6 +152,7 @@ import { ref, onMounted, reactive, provide, nextTick } from "vue";
 import { ElMessage, ElButton, ElDialog, ElSelect } from 'element-plus'
 import { Edit, CaretBottom } from '@element-plus/icons-vue'
 import { request } from "@/utils/request";
+import emitter from "@/utils/emitter"
 let formLabelWidth3=ref(100)
 let formLabelWidth200=ref(180)
 let youhua = ref({
@@ -392,6 +393,7 @@ const getaddDsave = (id,nowid) => {
     checked:1
   }
   request(params).then((res) => {
+    emitter.emit("stepfromyouhuaqi", youhua.value.maxgen);
     ElMessage({
       message: '保存成功',
       type: 'success'

+ 2 - 0
src/views/titlecomponent/Joptimize.vue

@@ -60,6 +60,7 @@ import myheader from "@/components/header.vue"
 import { request, uploadFile } from "@/utils/request";
 import { ElMessage, ElButton, ElDialog, ElSelect } from 'element-plus'
 import { Edit, CaretBottom } from '@element-plus/icons-vue'
+import emitter from "@/utils/emitter"
 let formLabelWidth3=ref(100)
 let formLabelWidth1=ref(170)
 let formLabelWidth200=ref(200)
@@ -185,6 +186,7 @@ const getaddsave = (id,nowid) => {
   }
   request(params)
     .then((res) => {
+      emitter.emit("stepfromyouhuaqi", youhua.value.epoch);
       ElMessage({
         message: '保存成功',
         type: 'success',

+ 1 - 0
src/views/titlecomponent/Toptimize.vue

@@ -130,6 +130,7 @@ const getaddTsave = (id,nowid) => {
   }
   request(params).then((res) => {
     pid.value = res.pid;
+    emitter.emit("stepfromyouhuaqi", youhua.value.majoriterationslimit);
     ElMessage({
       message: '保存成功',
       type: 'success'