Ver Fonte

Merge branch 'master' of http://adicom-hxx.natapp1.cc/CQ_ADI/airoptweb

lichunyang há 7 meses atrás
pai
commit
4711a3f174

+ 70 - 20
src/views/home.vue

@@ -1348,7 +1348,7 @@
             </template>
           </el-dialog>
           <!-- 优化器 -->
-             <el-dialog v-model="dialog.optgroup" align-center :modal="false" :close-on-click-modal="false"
+          <el-dialog v-model="dialog.optgroup" align-center :modal="false" :close-on-click-modal="false"
             :append-to-body="true" draggable :fullscreen="false" :modal-append-to-body="false" modal-class="summary-dlg"
             :before-close="handleClose" width="700" class="dialog_class bgcolor tianjia sel colortext">
 
@@ -1359,8 +1359,8 @@
             </template>
             <div class="numberinput lefttext ">
               <el-form>
-                    <!-- 代理优化器 -->
-                <el-tabs tab-position="left" class="demo-tabs" v-model="activeadf" @tab-click="adfhandleClick">
+              <el-tabs tab-position="left" class="demo-tabs" v-model="activeadf" @tab-click="adfhandleClick">
+              <!-- 代理优化器 -->
               <el-tab-pane label="代理优化器" name="代理优化器">
               <Doptimize ref='Doptimizeref'/>
               </el-tab-pane>
@@ -1378,7 +1378,7 @@
             <template #footer>
               <div class="dialog-footer">
                 <el-button @click="dialog.optgroup = false">取消</el-button>
-                <el-button type="primary" class="custom-button" @click="getSave(activeadf)">
+                <el-button type="primary" class="custom-button" @click="getSave(activeadf);dialog.optgroup = false">
                   确定
                 </el-button>
               </div>
@@ -1416,11 +1416,11 @@
                 <h4 :id="titleId" :class="titleClass">代理优化器</h4>
               </div>
             </template>
-            <Doptimize/>
+            <Doptimize ref="Doptimizeref"/>
             <template #footer>
               <div class="dialog-footer">
                 <el-button @click="dialog.dboptimizer = false">取消</el-button>
-                <el-button type="primary" @click=" dialog.dboptimizer = false">
+                <el-button type="primary" @click="getDaddsave(); dialog.dboptimizer = false">
                   确定
                 </el-button>
               </div>
@@ -1437,11 +1437,11 @@
                 <h4 :id="titleId" :class="titleClass">梯度优化器:</h4>
               </div>
             </template>
-            <Toptimize/>
+            <Toptimize ref="Toptimizeref"/>
             <template #footer>
               <div class="dialog-footer">
                 <el-button @click="dialog.tboptimizer = false">取消</el-button>
-                <el-button type="primary" @click=" dialog.tboptimizer = false">
+                <el-button type="primary" @click="getTaddsave(); dialog.tboptimizer = false">
                   确定
                 </el-button>
               </div>
@@ -2436,11 +2436,23 @@ const optimizerfalse = (val) => {
   } else if (val == '进化优化器') {
     activeadf.value='进化优化器';
     dialog.value.jboptimizer = true;
-   Joptimizeref.value.getoptimize(pid.value);
+    nextTick(() => {
+      // 确保 ref 已经初始化
+      if (Joptimizeref.value) {
+        // 调用 Joptimize 的 getoptimize 方法
+        Joptimizeref.value.getoptimize(pid.value);
+      }
+    });
   } else if (val == '代理优化器') {
     activeadf.value='代理优化器';
     // dialog.value.optgroup = true;
     dialog.value.dboptimizer = true;
+    nextTick(() => {
+      // 确保 ref 已经初始化
+      if (Doptimizeref.value) {
+        Doptimizeref.value.getDoptimize(pid.value);
+      }
+    });
   } 
   //  else if (val == 'Xfiol' || val == 'Rosenbrock') {
   //   importget();
@@ -2450,6 +2462,12 @@ const optimizerfalse = (val) => {
   else if(val == '梯度优化器'){
     activeadf.value='梯度优化器';
     dialog.value.tboptimizer = true;
+    nextTick(() => {
+      // 确保 ref 已经初始化
+      if (Toptimizeref.value) {
+        Toptimizeref.value.getToptimize(pid.value);
+      }
+    });
   }else if(val == 'CST'){
    /// dialog.value.CSTt = true;
   //  activeadf.value='CST';
@@ -3504,27 +3522,59 @@ const selectTab2=(index)=>{
   currentTab2.value = index;
 }
 const adfhandleClick=(tab,event)=>{
- console.log(tab.props.label);
+  console.log(tab.props.label);
   activeadf.value=tab.props.label;
+
+  if(tab.props.name === '进化优化器'){
+    nextTick(() => {
+      // 确保 ref 已经初始化
+      if (Joptimizeref.value) {
+        // 调用 Joptimize 的 getoptimize 方法
+        Joptimizeref.value.getoptimize(pid.value);
+      }
+    });
+  }else if(tab.props.name === '代理优化器'){
+    nextTick(() => {
+      // 确保 ref 已经初始化
+      if (Doptimizeref.value) {
+        Doptimizeref.value.getDoptimize(pid.value);
+      }
+    });
+  }else if(tab.props.name === '梯度优化器'){
+    nextTick(() => {
+      // 确保 ref 已经初始化
+      if (Toptimizeref.value) {
+        Toptimizeref.value.getToptimize(pid.value);
+      }
+    });
+  }
 }
 
 const getaddsave = () => {
   if (Joptimizeref.value && typeof Joptimizeref.value.getaddsave === 'function') {
-        Joptimizeref.value.getaddsave();
+    Joptimizeref.value.getaddsave();
   }
 }
 
-const getSave = (a) => {
-  if (a == 'aaa'){
-    if (Joptimizeref.value && typeof Joptimizeref.value.getaddsave === 'function') {
-        Joptimizeref.value.getaddsave();
-  }
-  if (Joptimizeref.value && typeof Joptimizeref.value.getaddsave === 'function') {
-        Joptimizeref.value.getaddsave();
+const getDaddsave = () => {
+  if (Doptimizeref.value && typeof Doptimizeref.value.getaddDsave === 'function') {
+    Doptimizeref.value.getaddDsave();
   }
-  if (Joptimizeref.value && typeof Joptimizeref.value.getaddsave === 'function') {
-        Joptimizeref.value.getaddsave();
+}
+
+const getTaddsave = () => {
+  if (Toptimizeref.value && typeof Toptimizeref.value.getaddTsave === 'function') {
+    Toptimizeref.value.getaddTsave();
   }
+}
+
+const getSave = (ref) => {
+  if (ref == '进化优化器'){
+    getaddsave();
+  }else if(ref == '代理优化器'){
+    getDaddsave();
+  }else if(ref == '梯度优化器'){
+    getTaddsave();
   }
 }
 

+ 3 - 1
src/views/titlecomponent/Doptimize.vue

@@ -236,6 +236,7 @@ const getDoptimize = (id) => {
     pid: pid.value,
   }
   request(params).then((res) => {
+    console.log('chushihua')
     if (res.hasOwnProperty('suid')) {
       suid.value = res.suid;
       youhua.value.algorithm = res.algorithm;
@@ -321,7 +322,8 @@ const getaddDsave = () => {
   })
 }
 defineExpose({
-  getDoptimize
+  getDoptimize,
+  getaddDsave
 });
 </script>
 

+ 1 - 1
src/views/titlecomponent/Joptimize.vue

@@ -169,7 +169,7 @@ const getaddsave = () => {
       ElMessage.error(err.returnMsg)
     })
 }
-defineExpose({getoptimize});
+defineExpose({getoptimize,getaddsave});
 </script>
 
 

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

@@ -120,7 +120,8 @@ const getaddTsave = () => {
   })
 }
 defineExpose({
-  getToptimize
+  getToptimize,
+  getaddTsave
 });
 </script>