From cede521babc248ed553b5a45d3ee7ef5fd2a51d6 Mon Sep 17 00:00:00 2001
From: dengzedong <dengzedong@email>
Date: 星期二, 17 六月 2025 18:52:19 +0800
Subject: [PATCH] 接口响应时间和一些loading状态

---
 src/views/model/mpk/file/MpkRun.vue |   44 ++++++++++++++++++++++++++------------------
 1 files changed, 26 insertions(+), 18 deletions(-)

diff --git a/src/views/model/mpk/file/MpkRun.vue b/src/views/model/mpk/file/MpkRun.vue
index 908d883..c9e82ba 100644
--- a/src/views/model/mpk/file/MpkRun.vue
+++ b/src/views/model/mpk/file/MpkRun.vue
@@ -110,7 +110,7 @@
 <!--        </el-table-column>-->
       </el-table>
       <el-divider content-position="left">模型运行结果</el-divider>
-      <el-button type="primary" size="small" link @click="saveModel" v-if="showSaveModel && formData.methodName === 'train'">下载模型(.miail)</el-button>
+      <el-button type="primary" size="small" link @click="saveModel" v-if="showSaveModel && formData.methodName === 'train'" :loading="saveModelLoading">下载模型(.miail)</el-button>
       <el-input v-model="modelRunResult" placeholder="" rows="4" type="textarea" />
       <div style="display: flex;flex-direction: row;justify-content: end;margin-top: 16px">
         <el-button :loading="modelRunloading" type="primary" @click="modelRun()">运行</el-button>
@@ -145,6 +145,8 @@
   // 模型方法下拉列表
   const methodList = ref([])
   const hasModel = ref(false)
+
+  const saveModelLoading =  ref(false)
 
   /** 打开弹窗 */
   const open = async (row) => {
@@ -345,24 +347,30 @@
   })
 
   const saveModel = async () => {
-    saveModelParams.className = formData.className
-    saveModelParams.pyName = formData.pyName
-    saveModelParams.modelSettings = formData.modelSettings
-    const predMethod = methodList.value.find(e => e.methodName === 'predict');
-    saveModelParams.methodName = predMethod.methodName
-    saveModelParams.resultKey = predMethod.resultKey
-    //predModelSettings
-    if (predMethod.methodSettings && predMethod.methodSettings.length > 0) {
-      saveModelParams.predModelSettings = predMethod.methodSettings.map(e => {
-        e.settingValue = e.value;
-        return e;
-      })
+    try {
+      saveModelLoading.value = true
+      saveModelParams.className = formData.className
+      saveModelParams.pyName = formData.pyName
+      saveModelParams.modelSettings = formData.modelSettings
+      const predMethod = methodList.value.find(e => e.methodName === 'predict');
+      saveModelParams.methodName = predMethod.methodName
+      saveModelParams.resultKey = predMethod.resultKey
+      //predModelSettings
+      if (predMethod.methodSettings && predMethod.methodSettings.length > 0) {
+        saveModelParams.predModelSettings = predMethod.methodSettings.map(e => {
+          e.settingValue = e.value;
+          return e;
+        })
+      }
+      saveModelParams.hasModel = predMethod.model === 1
+
+      saveModelParams.dataLength = predMethod.dataLength
+
+      const data = await MpkApi.saveModel(saveModelParams)
+      download.downloadFile(data, saveModelParams.pyName + '.miail')
+    } finally {
+      saveModelLoading.value = false
     }
-    saveModelParams.hasModel = predMethod.model === 1
 
-    saveModelParams.dataLength = predMethod.dataLength
-
-    const data = await MpkApi.saveModel(saveModelParams)
-    download.downloadFile(data, saveModelParams.pyName + '.miail')
   }
 </script>

--
Gitblit v1.9.3