Browse Source

[新增] 新增dds消息发布订阅

zishang 3 months ago
parent
commit
6dbf7f8692

+ 2 - 1
config/index.js

@@ -33,7 +33,8 @@ module.exports = {
     },
 
     // Various Dev Server settings
-    host: '0.0.0.0', // can be overwritten by process.env.HOST
+    // host: '0.0.0.0', // can be overwritten by process.env.HOST
+    host: 'localhost',
     port: 8001, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
     autoOpenBrowser: true,
     errorOverlay: true,

File diff suppressed because it is too large
+ 1 - 25021
package-lock.json


+ 2 - 2
src/router/index.js

@@ -51,7 +51,7 @@ const mainRoutes = {
     { path: '/intelalg-create', component: _import('modules/alg/algcreate2'), name: 'algcreate2', meta: { title: '创建智能算法', isTab: false } },
 
     // 创建训练任务的路由
-    { path: '/mission-create', component: _import('modules/alg/train-create'), name: 'traincreate', meta: { title: '创建训练任务', isTab: false } },
+    { path: '/mission-create', component: _import('modules/alg/train-create'), name: 'traincreate', meta: { title: '创建算法任务', isTab: false } },
     { path: '/mission-create-tradition', component: _import('modules/alg/train-create-tradition'), name: 'traincreatetradition', meta: { title: '创建训练任务', isTab: false } },
 
     // 查看算法版本的路由
@@ -73,7 +73,7 @@ const mainRoutes = {
     // 查看训练任务的路由
     { path: '/train-watch', component: _import('modules/alg/train-watch'), name: 'trainwatch', meta: { title: '编辑文件', isTab: false } },
     // 训练任务tensorboard图像对比的路由
-    { path: '/train-compare', component: _import('modules/alg/train-compare'), name: 'traincompare', meta: { title: '训练任务tensorboard图像对比', isTab: false } },
+    { path: '/train-compare', component: _import('modules/alg/train-compare'), name: 'traincompare', meta: { title: '算法任务tensorboard图像对比', isTab: false } },
     // 数据探测路由
     { path: '/snoop-measure', component: _import('modules/snoop/measure'), name: 'measure', meta: { title: '创建度量标准', isTab: false } },
     { path: '/snoop-job', component: _import('modules/snoop/job'), name: 'job', meta: { title: '创建调度任务', isTab: false } },

+ 1 - 1
src/views/modules/alg/alg-add.vue

@@ -6,7 +6,7 @@
       <el-form-item label="选择算法" size="mini">
         <el-radio-group v-model="datasetStatus">
           <el-radio :label="1">干扰算法</el-radio>
-          <el-radio :label="2">雷达算法</el-radio>
+          <el-radio :label="2">抗干扰算法</el-radio>
         </el-radio-group>
       </el-form-item>
     </el-form>

+ 7 - 7
src/views/modules/alg/alg-update.vue

@@ -1,7 +1,7 @@
 <template>
   <el-dialog :title=" '修改算法信息'" :close-on-click-modal="false" :visible.sync="visible" :before-close="cleanFileList">
     <el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()"
-      label-width="80px" :disabled=true>
+      label-width="80px" >
       <el-form-item label="算法名称" prop="algorithmName">
         <el-input v-model="dataForm.algorithmName" placeholder="请输入算法名称"></el-input>
       </el-form-item>
@@ -11,7 +11,7 @@
           </el-radio>
         </el-radio-group>
       </el-form-item>
-      
+
       <el-form-item label="描述信息" prop="remark">
         <el-input type="textarea" :autosize="{ minRows: 4, maxRows: 6}" placeholder="请输入内容" v-model="dataForm.remark">
         </el-input>
@@ -38,7 +38,7 @@ export default {
         id: 0,
         algorithmName: "",
         // 本模板的类别
-        categoryId: 1, 
+        categoryId: 1,
         remark: "",
       },
       textarea2: "",
@@ -62,8 +62,8 @@ export default {
       })
       // 这块修改为获取类别
         .then(({ data }) => {
-          this.categoryList = data && data.code === 0 
-            ? data.list.filter((item) => !item.categoryName.includes("文件")) 
+          this.categoryList = data && data.code === 0
+            ? data.list.filter((item) => !item.categoryName.includes("文件"))
             : [];
         })
         .then(() => {
@@ -144,7 +144,7 @@ export default {
       console.log(file, fileList);
     },
     handlePreview(file) {
-      
+
     },
     handleExceed(files, fileList) {
       Message.warning(
@@ -159,7 +159,7 @@ export default {
     cleanFileList(done){
       this.fileList=[];
       done();
-      
+
     }
   },
 };

+ 17 - 17
src/views/modules/alg/algcreate1.vue

@@ -4,14 +4,14 @@
     <el-breadcrumb class="divi2" separator-class="el-icon-arrow-right">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
       <el-breadcrumb-item :to="{ path: '/alg-algs'}">算法管理</el-breadcrumb-item>
-      <el-breadcrumb-item>新建传统算法</el-breadcrumb-item>
+      <el-breadcrumb-item>新建干扰算法</el-breadcrumb-item>
     </el-breadcrumb>
     <el-divider class="divi"></el-divider>
 
     <el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()"
       label-width="180px">
-      <el-form-item label="传统算法名称" prop="algorithmName">
-        <el-input v-model="dataForm.algorithmName" placeholder="请输入传统算法名称"></el-input>
+      <el-form-item label="干扰算法名称" prop="algorithmName">
+        <el-input v-model="dataForm.algorithmName" placeholder="请输入干扰算法名称"></el-input>
       </el-form-item>
       <el-form-item label="类别" size="mini" prop="categoryId">
         <el-radio-group v-model="dataForm.categoryId">
@@ -21,12 +21,12 @@
         </el-radio-group>
       </el-form-item>
       <el-form-item label="文件" size="mini">
-        <el-upload 
-          class="upload-demo" 
-          action="" 
-          :before-remove="beforeRemove" 
-          multiple 
-          :limit="10" 
+        <el-upload
+          class="upload-demo"
+          action=""
+          :before-remove="beforeRemove"
+          multiple
+          :limit="10"
           :on-exceed="handleExceed"
           :on-change="fileChange"
           :file-list="fileList"
@@ -49,7 +49,7 @@
           </el-option-group>
         </el-select>
       </el-form-item>
-      
+
 
       <!-- 算法参数设置 -->
       <el-form-item
@@ -95,7 +95,7 @@
       <el-form-item>
          <el-button @click="addalgResult">新增算法输出</el-button>
       </el-form-item>
-      
+
 
 
       <el-form-item label="描述信息" prop="remark">
@@ -194,8 +194,8 @@ export default {
       })
         // 这块修改为获取类别
         .then(({ data }) => {
-          this.categoryList = data && data.code === 0 
-            ? data.list.filter((item) => !item.categoryName.includes("文件")) 
+          this.categoryList = data && data.code === 0
+            ? data.list.filter((item) => !item.categoryName.includes("文件"))
             : [];
         })
         .then(() => {
@@ -281,7 +281,7 @@ export default {
           this.dataForm.algResults.splice(index, 1)
         }
     },
-    
+
     // 表单提交
     dataFormSubmit() {
       var algParameterNames=[];
@@ -306,7 +306,7 @@ export default {
           let formData=new FormData();
           this.fileList.forEach(file=>{
             formData.append('file',file.raw);
-          }); 
+          });
           formData.append("algorithmId",undefined);
           formData.append("algorithmName",this.dataForm.algorithmName);
           formData.append("remark",this.dataForm.remark);
@@ -344,7 +344,7 @@ export default {
           });
         }).catch(() => {})
 
-          
+
 
 
         }
@@ -393,4 +393,4 @@ export default {
 .el-input {
     width: 250px;
 }
-</style>
+</style>

+ 3 - 3
src/views/modules/alg/algcreate2.vue

@@ -4,7 +4,7 @@
     <el-breadcrumb class="divi2" separator-class="el-icon-arrow-right">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
       <el-breadcrumb-item :to="{ path: '/alg-algs'}">算法管理</el-breadcrumb-item>
-      <el-breadcrumb-item>新建智能算法</el-breadcrumb-item>
+      <el-breadcrumb-item>新建算法</el-breadcrumb-item>
     </el-breadcrumb>
     <el-divider class="divi"></el-divider>
 
@@ -12,8 +12,8 @@
       <el-tab-pane label="基本信息" name="first">
 
         <el-form :model="dataForm" :rules="dataRule" ref="dataForm" label-width="180px">
-          <el-form-item label="智能算法名称" prop="algorithmName">
-            <el-input v-model="dataForm.algorithmName" placeholder="请输入智能算法名称"></el-input>
+          <el-form-item label="算法名称" prop="algorithmName">
+            <el-input v-model="dataForm.algorithmName" placeholder="请输入算法名称"></el-input>
           </el-form-item>
 
           <el-form-item label="类别" prop="categoryId">

+ 7 - 11
src/views/modules/alg/algs.vue

@@ -48,16 +48,12 @@
       </el-table-column>
       <el-table-column fixed="right" header-align="center" align="center" width="250" label="操作">
         <template slot-scope="scope">
-          <el-button v-if="isAuth('algs:list')" type="text" size="small" @click="userwatch(scope.row.algorithmId)">查看
-          </el-button>
-          <el-button v-if="scope.row.frameId !== -1" type="text" size="small" @click="versionsList(scope.row.algorithmId)">版本列表
-          </el-button>
-          <el-button v-if="scope.row.frameId === -1" type="text" size="small" @click="traFileList(scope.row.algorithmId)">编辑传统算法文件
-          </el-button>
+          <el-button v-if="isAuth('algs:list')" type="text" size="small" @click="userwatch(scope.row.algorithmId)">查看</el-button>
+<!--          <el-button v-if="scope.row.frameId !== -1" type="text" size="small" @click="versionsList(scope.row.algorithmId)">版本列表</el-button>-->
+          <el-button v-if="scope.row.frameId === -1" type="text" size="small" @click="traFileList(scope.row.algorithmId)">编辑传统算法文件</el-button>
           <!-- <el-button v-if="scope.row.frameId === -1" type="text" size="small" @click="getAlgParameter(scope.row.algorithmId)">参数
           </el-button> -->
-          <el-button v-if="isAuth('algs:update')" type="text" size="small"
-            @click="updateHandle(scope.row.algorithmId)">修改</el-button>
+          <el-button v-if="isAuth('algs:update')" type="text" size="small" @click="updateHandle(scope.row.algorithmId)">修改</el-button>
           <el-button v-if="isAuth('algs:delete')" type="text" size="small"
             @click="deleteHandle(scope.row.algorithmId)">
             删除</el-button>
@@ -227,9 +223,9 @@ export default {
     },
     // 这里处理新建
     addHandle(){
-      this.addVisible = true;
+      // this.addVisible = true;
       this.$nextTick(() => {
-        this.$refs.addS.init();
+        this.$router.replace({ path: "/intelalg-create" });
       });
     },
     //查看传统算法参数
@@ -281,7 +277,7 @@ export default {
         })
         .catch(() => {});
     },
-    
+
     //查看智能算法版本列表
     versionsList(id) {
       this.$router.replace({ name: 'version',query:{algorithmNameToVersion:id} });

+ 1 - 1
src/views/modules/alg/models-add-or-update.vue

@@ -80,7 +80,7 @@ export default {
           value:1
         },
         {
-          label:"雷达算法",
+          label:"抗干扰算法",
           value:2
         }
       ],

+ 2 - 2
src/views/modules/alg/models.vue

@@ -32,7 +32,7 @@
           @change="pageIndex = 1;getDataList2()">
           <el-option label='干扰算法' value='1'>
           </el-option>
-          <el-option label='雷达算法' value='2'>
+          <el-option label='抗干扰算法' value='2'>
           </el-option>
         </el-select>
 
@@ -198,7 +198,7 @@ export default {
       if (row.form === 1) {
         return "干扰算法";
       } else {
-        return "雷达算法";
+        return "抗干扰算法";
       }
     },
     //去重

+ 2 - 2
src/views/modules/alg/train-add.vue

@@ -1,12 +1,12 @@
 <template>
-  <el-dialog :title="'新建训练任务'" :close-on-click-modal="false" :visible.sync="visible">
+  <el-dialog :title="'新建算法任务'" :close-on-click-modal="false" :visible.sync="visible">
     <el-form :model="dataForm" ref="dataForm" @keyup.enter.native="dataFormSubmit()"
       label-width="100px">
 
       <el-form-item label="选择算法" size="mini">
         <el-radio-group v-model="datasetStatus">
           <el-radio :label="1">干扰算法</el-radio>
-          <el-radio :label="2">雷达算法</el-radio>
+          <el-radio :label="2">抗干扰算法</el-radio>
         </el-radio-group>
       </el-form-item>
     </el-form>

+ 18 - 18
src/views/modules/alg/train-compare.vue

@@ -3,22 +3,22 @@
   <div class=''>
     <el-breadcrumb class="divi2" separator-class="el-icon-arrow-right">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
-      <el-breadcrumb-item :to="{ path: '/alg-train'}">算法训练</el-breadcrumb-item>
-      <el-breadcrumb-item>训练任务对比</el-breadcrumb-item>
+      <el-breadcrumb-item :to="{ path: '/alg-train'}">算法任务</el-breadcrumb-item>
+      <el-breadcrumb-item>任务对比</el-breadcrumb-item>
     </el-breadcrumb>
     <el-divider class="divi">
-      
+
     </el-divider>
     <iframe class="iframe" v-bind:src="url" scrolling="no" frameborder="0">
 
     </iframe>
-    
+
 
     <!-- <el-tabs v-model="activeName" @tab-click="handleClick">
 
       <el-tab-pane label="算法监控" name="first">
 
-        
+
       </el-tab-pane>
 
     </el-tabs> -->
@@ -31,7 +31,7 @@
 export default {
   name:'Simple',
   components:{
-    
+
   },
   data() {
     return {
@@ -46,8 +46,8 @@ export default {
     let port=this.$route.query.port;
     let containerId=this.$route.query.containerId;
     this.init(port,containerId);
-    
-  }, 
+
+  },
   methods: {
       init(port,containerId){
           this.activeName="first";
@@ -57,18 +57,18 @@ export default {
             url:this.$http.adornUrl('/algstrain/getHost'),
             method:'get',
             params:this.$http.adornParams({
-              
+
             }),
           }).then(({data})=>{
               this.url="http://"+data.host+":"+port;
-              
+
           });
       },
-    
+
     redirectHandle() {
       this.$router.replace({ path: "/alg-algs" });
     },
-    
+
     handleClick(tab, event) {
         console.log(tab, event);
         if(tab.name == 'second'){
@@ -86,12 +86,12 @@ export default {
         }
     },
 
-    
+
   },
-  
+
   mounted(){
-    
-    
+
+
   },
   //切换路由时,删除容器
   beforeRouteLeave(to, from, next){
@@ -104,8 +104,8 @@ export default {
           port:this.port
       }),
     }).then(({data})=>{
-        
-              
+
+
     });
   },
 

+ 20 - 20
src/views/modules/alg/train-create-tradition.vue

@@ -1,10 +1,10 @@
 <!--  -->
 <template>
-  <div class='' v-loading="loading" element-loading-text="正在创建训练任务">
+  <div class='' v-loading="loading" element-loading-text="正在创建算法任务">
     <el-breadcrumb class="divi2" separator-class="el-icon-arrow-right">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
-      <el-breadcrumb-item :to="{ path: '/alg-train'}">算法训练</el-breadcrumb-item>
-      <el-breadcrumb-item>新建训练任务</el-breadcrumb-item>
+      <el-breadcrumb-item :to="{ path: '/alg-train'}">算法任务</el-breadcrumb-item>
+      <el-breadcrumb-item>新建算法任务</el-breadcrumb-item>
     </el-breadcrumb>
     <el-divider class="divi"></el-divider>
 
@@ -13,8 +13,8 @@
 
         <el-form :model="dataForm" :rules="dataRule" ref="dataForm" label-width="180px">
 
-          <el-form-item label="训练任务名称" prop="missName">
-            <el-input v-model="dataForm.missName" placeholder="请输入训练任务名称" @change="missNameChange()"></el-input>
+          <el-form-item label="算法任务名称" prop="missName">
+            <el-input v-model="dataForm.missName" placeholder="请输入算法任务名称" @change="missNameChange()"></el-input>
           </el-form-item>
 
           <el-form-item label="选择类别" prop="calssSelected">
@@ -74,13 +74,13 @@
           </el-form-item>
         </el-form>
       </el-tab-pane>
-   
+
       <el-tab-pane label="完成" name="third">
 
         <el-form :model="dataForm" :rules="dataRule" ref="dataForm" label-width="180px" :disabled="true">
 
-          <el-form-item label="训练任务名称名称" prop="missName">
-            <el-input v-model="dataForm.missName" placeholder="请输入训练任务名称"></el-input>
+          <el-form-item label="算法任务名称" prop="missName">
+            <el-input v-model="dataForm.missName" placeholder="请输入算法任务名称"></el-input>
           </el-form-item>
 
           <el-form-item label="选择类别" prop="calssSelected">
@@ -89,7 +89,7 @@
               </el-option>
             </el-select>
           </el-form-item>
-        
+
           <el-form-item label="选择算法" prop="algSelected">
             <el-select v-model="dataForm.algSelected" placeholder="选择算法">
               <el-option v-for="data in algs" :key="data.algorithmId" :label="data.algorithmName" :value="data.algorithmId">
@@ -111,7 +111,7 @@
             </el-input>
           </el-form-item>
 
-    
+
 
 
           <el-form-item label="指定cpu">
@@ -128,7 +128,7 @@
             </el-select>
           </el-form-item>
 
-      
+
 
         </el-form>
         <el-form>
@@ -137,7 +137,7 @@
             <el-button type="primary" @click="dataFormSubmit()">完成</el-button>
           </el-form-item>
         </el-form>
-         
+
 
       </el-tab-pane>
     </el-tabs>
@@ -155,7 +155,7 @@ export default {
   },
   activated() {
     this.init();
-  }, 
+  },
   data() {
     return {
       loading:false,
@@ -163,9 +163,9 @@ export default {
       algs:[],
       value1: [],
       value2: [],
-      
+
       fileList: [
-        
+
       ],
 
       activeName: "first",
@@ -263,7 +263,7 @@ export default {
           algorithmName: "",
         }),
       }).then(({ data }) => {
-        
+
         this.algs = data.page.list;
       }); */
 
@@ -344,7 +344,7 @@ export default {
           algId:this.dataForm.algSelected,
         }),
       }).then(({ data }) => {
-        
+
         if (data && data.code === 0) {
             this.fileList = data.fileList;
           } else {
@@ -365,7 +365,7 @@ export default {
     memoryChange(){
       // this.$refs["dataForm"].validate();
     },
-    
+
 
     //去重
     unique(arr) {
@@ -375,7 +375,7 @@ export default {
       }
       return Array.from(new Set(ss));
     },
-    
+
     // 以下4个函数是文件上传功能的
     handleRemove(file, fileList) {
       console.log(file, fileList);
@@ -418,4 +418,4 @@ export default {
   padding: 5px 0px;
   margin: 10px;
 }
-</style>
+</style>

+ 7 - 7
src/views/modules/alg/train-create.vue

@@ -1,10 +1,10 @@
 <!--  -->
 <template>
-  <div class='' v-loading="loading" element-loading-text="正在创建训练任务">
+  <div class='' v-loading="loading" element-loading-text="正在创建算法任务">
     <el-breadcrumb class="divi2" separator-class="el-icon-arrow-right">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
-      <el-breadcrumb-item :to="{ path: '/alg-train'}">算法训练</el-breadcrumb-item>
-      <el-breadcrumb-item>新建任务</el-breadcrumb-item>
+      <el-breadcrumb-item :to="{ path: '/alg-train'}">算法任务</el-breadcrumb-item>
+      <el-breadcrumb-item>新建算法任务</el-breadcrumb-item>
     </el-breadcrumb>
     <el-divider class="divi"></el-divider>
 
@@ -13,8 +13,8 @@
 
         <el-form :model="dataForm" ref="dataForm" label-width="180px">
 
-          <el-form-item label="训练任务名称" prop="missName">
-            <el-input v-model="dataForm.missName" placeholder="请输入训练任务名称" @change="missNameChange()"></el-input>
+          <el-form-item label="算法任务名称" prop="missName">
+            <el-input v-model="dataForm.missName" placeholder="请输入算法任务名称" @change="missNameChange()"></el-input>
           </el-form-item>
 
           <el-form-item label="选择类别" prop="calssSelected">
@@ -86,8 +86,8 @@
 
         <el-form :model="dataForm" :rules="dataRule" ref="dataForm" label-width="180px" :disabled="true">
 
-          <el-form-item label="训练任务名称名称" prop="missName">
-            <el-input v-model="dataForm.missName" placeholder="请输入训练任务名称"></el-input>
+          <el-form-item label="算法任务名称" prop="missName">
+            <el-input v-model="dataForm.missName" placeholder="请输入算法任务名称"></el-input>
           </el-form-item>
 
           <el-form-item label="选择类别" prop="calssSelected">

+ 19 - 15
src/views/modules/alg/train-watch.vue

@@ -3,11 +3,11 @@
   <div class=''>
     <el-breadcrumb class="divi2" separator-class="el-icon-arrow-right">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
-      <el-breadcrumb-item :to="{ path: '/alg-train'}">算法训练</el-breadcrumb-item>
-      <el-breadcrumb-item>查看训练任务</el-breadcrumb-item>
+      <el-breadcrumb-item :to="{ path: '/alg-train'}">算法任务</el-breadcrumb-item>
+      <el-breadcrumb-item>查看算法任务</el-breadcrumb-item>
     </el-breadcrumb>
     <el-divider class="divi"></el-divider>
-    
+
 
     <el-tabs v-model="activeName" @tab-click="handleClick">
       <el-tab-pane label="日志" name="first">
@@ -36,16 +36,16 @@
           </el-table-column>
           <el-table-column prop="filename" header-align="center" align="center" label="文件名称">
           </el-table-column>
-          
+
           <el-table-column prop="filesize" header-align="center" align="center" label="文件大小">
           </el-table-column>
 
           <el-table-column prop="lastModifiedTime" header-align="center" align="center" label="修改时间">
           </el-table-column>
-          
+
           <el-table-column fixed="right" header-align="center" align="center" width="250" label="操作">
             <template slot-scope="scope">
-              <el-button v-if="isAuth('version:edit')" type="text" size="small" 
+              <el-button v-if="isAuth('version:edit')" type="text" size="small"
                 @click="watchFile(scope.row.filename)">查看
               </el-button>
             </template>
@@ -65,16 +65,16 @@
           </el-table-column>
           <el-table-column prop="filename" header-align="center" align="center" label="文件名称">
           </el-table-column>
-          
+
           <el-table-column prop="filesize" header-align="center" align="center" label="文件大小">
           </el-table-column>
 
           <el-table-column prop="lastModifiedTime" header-align="center" align="center" label="修改时间">
           </el-table-column>
-          
+
           <el-table-column fixed="right" header-align="center" align="center" width="250" label="操作">
             <template slot-scope="scope">
-              <el-button v-if="isAuth('version:edit')" type="text" size="small" 
+              <el-button v-if="isAuth('version:edit')" type="text" size="small"
                 @click="downloadDataset(scope.row.filename)">下载
               </el-button>
             </template>
@@ -216,8 +216,8 @@ export default {
     //   },0)
     // },1000);
     // }
-    
-  }, 
+
+  },
   methods: {
     // 初始化方法
     init(id, missStatus) {
@@ -232,7 +232,7 @@ export default {
         this.getOutput();
       }
       else {
-        this.output = "该训练任务未运行";
+        this.output = "该算法任务未运行";
         this.loading = false;
       };
       // // 根据algorithmTrainingId获得algId及versionId
@@ -250,7 +250,7 @@ export default {
       // });
       // //this.getDataList();
     },
-    
+
     redirectHandle() {
       this.$router.replace({ path: "/alg-algs" });
     },
@@ -263,7 +263,11 @@ export default {
           algorithmTrainingId:this.algorithmTrainingId
         }),
       }).then(({data})=>{
-        this.output=data.output;
+        if (data && data.code === 0) {
+          this.output=data.output;
+        } else {
+          Message.error(data.msg);
+        }
         this.loading=false;
       });
     },
@@ -388,7 +392,7 @@ export default {
         //浏览器变化执行动作
         this.$refs.cm.codemirror.setSize("auto", (document.documentElement.clientHeight - 200) + "px")
       });
-    }); 
+    });
   },
   //切换路由时,清楚定时器
   beforeRouteLeave(to, from, next){

+ 36 - 65
src/views/modules/alg/train.vue

@@ -28,7 +28,7 @@
 
       </el-form-item>
       <el-form-item>
-        <el-button @click="algorithmTrainCompare()">任务对比</el-button>
+<!--        <el-button @click="algorithmTrainCompare()">任务对比</el-button>-->
       </el-form-item>
 
 
@@ -46,7 +46,7 @@
       <el-table-column prop="algFrameId" header-align="center" align="center" label="算法类别">
         <template slot-scope="scope">
           <el-tag v-if="scope.row.algFrameId === -1" size="small">干扰算法</el-tag>
-          <el-tag v-else size="small">雷达算法</el-tag>
+          <el-tag v-else size="small">抗干扰算法</el-tag>
         </template>
       </el-table-column>
 <!--      <el-table-column prop="categoryName" header-align="center" align="center" label="分类"></el-table-column>-->
@@ -304,64 +304,21 @@ export default {
 
     //通过开始时间计算用时
     timeUsedHandle(row, column) {
-      if (row.missCreationTime === null) {
+      if (row.missCreationTime === null || row.missStopTime === null) {
         return "-";
       } else {
-        var d1 = row.missCreationTime;
-        //如果时间格式是正确的,那下面这一步转化时间格式就可以不用了
-        var dateBegin = new Date(d1.replace(/-/g, "/")); //将-转化为/,使用new Date
-        if(row.missStopTime===null){
-          var dateEnd = new Date(); //获取当前时间
-        }else{
-          var d2=row.missStopTime;
-          var dateEnd=new Date(d2.replace(/-/g, "/"));
+        const missCreationTime = new Date(row.missCreationTime);
+        const missStopTime = new Date(row.missStopTime);
+        const timeDifference = missStopTime - missCreationTime; // 差值为毫秒
+        if (!isNaN(timeDifference)) {
+          const seconds = Math.floor((timeDifference / 1000) % 60);
+          const minutes = Math.floor((timeDifference / (1000 * 60)) % 60);
+          const hours = Math.floor((timeDifference / (1000 * 60 * 60)) % 24);
+          const displayTime = `${hours}小时 ${minutes}分钟 ${seconds}秒`;
+          return displayTime;
+        } else {
+          return "时间差计算出错";
         }
-
-        //console.log("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@dateEnd");
-      //console.log(dateEnd);
-        var dateDiff = dateEnd.getTime() - dateBegin.getTime(); //时间差的毫秒数
-        var dayDiff = Math.floor(dateDiff / (24 * 3600 * 1000)); //计算出相差天数
-        var leave1 = dateDiff % (24 * 3600 * 1000); //计算天数后剩余的毫秒数
-        var hours = Math.floor(leave1 / (3600 * 1000)); //计算出小时数
-        //计算相差分钟数
-        var leave2 = leave1 % (3600 * 1000); //计算小时数后剩余的毫秒数
-        var minutes = Math.floor(leave2 / (60 * 1000)); //计算相差分钟数
-        //计算相差秒数
-        var leave3 = leave2 % (60 * 1000); //计算分钟数后剩余的毫秒数
-        var seconds = Math.round(leave3 / 1000);
-        if(dayDiff<0) dayDiff=0;
-        if(hours<0) hours=0;
-        if(minutes<0) minutes=0;
-        if(seconds<0) seconds=0;
-        /* console.log(
-          " 相差 " +
-            dayDiff +
-            "天 " +
-            hours +
-            "小时 " +
-            minutes +
-            " 分钟" +
-            seconds +
-            " 秒"
-        );
-        console.log(
-          dateDiff + "时间差的毫秒数",
-          dayDiff + "计算出相差天数",
-          leave1 + "计算天数后剩余的毫秒数",
-          hours + "计算出小时数",
-          minutes + "计算相差分钟数",
-          seconds + "计算相差秒数"
-        ); */
-        //         console.log(dateDiff+"时间差的毫秒数",dayDiff+"计算出相差天数",leave1+"计算天数后剩余的毫秒数"
-        // ,hours+"计算出小时数",minutes+"计算相差分钟数",seconds+"计算相差秒数");
-        return (
-          dayDiff +
-          "天 " +
-          hours +
-          "小时 " +
-          minutes +
-          " 分钟" //没必要精确到秒
-        );
       }
     },
     missCreationTimeFormat(row, column){
@@ -433,7 +390,7 @@ export default {
     //对比两个训练任务的tensorboard图像
     algorithmTrainCompare(){
         if(this.dataListSelections.length<2){
-          Message.error('请选择两个训练任务进行对比');
+          Message.error('请选择两个算法任务进行对比');
           return;
         }
         this.loading=true;
@@ -499,7 +456,7 @@ export default {
             this.$refs.selectAlgPara.init(id,algorithmId);
           });
       } */
-      MessageBox.confirm(`是否运行该训练任务?`, '提示', {
+      MessageBox.confirm(`是否运行该算法任务?`, '提示', {
         confirmButtonText: '确定',
         cancelButtonText: '取消',
         type: 'warning'
@@ -512,6 +469,12 @@ export default {
             }),
           }).then(({data})=>{
             this.getDataList();
+            console.log("this.dataList1111", this.dataList);
+            // this.dataList.forEach(item=>{
+            //   if (item.algorithmTrainingId === id) {
+            //     this.$set(item, 'missStopTime', '-'); // 确保 Vue 能捕捉到这个变化
+            //   }
+            // })
             this.$http({
                 url:this.$http.adornUrl('/algstrain/startTraining'),
                 method:'get',
@@ -519,9 +482,17 @@ export default {
                   algorithmTrainingId:id
                 }),
               }).then(({data})=>{
+                if(data && data.code === 0){
+                  Message({
+                    type: 'success',
+                    message: '运行成功',
+                  });
+                } else {
+                  Message.error(data.msg);
+                }
+                this.getDataList();
             });
         });
-        this.getDataList();
       }).catch(() => {})
 
 
@@ -542,14 +513,14 @@ export default {
 
     // 这里处理新建任务
     addHandle() {
-      this.addVisible = true;
+      // this.addVisible = true;
       this.$nextTick(() => {
-        this.$refs.addS.init();
+        this.$router.replace({ path: "/mission-create" });
       });
     },
     //暂停训练任务
     pauseHandle(id){
-      MessageBox.confirm('此操作将暂停该训练任务, 是否继续?', '提示', {
+      MessageBox.confirm('此操作将暂停该算法任务, 是否继续?', '提示', {
           confirmButtonText: '确定',
           cancelButtonText: '取消',
           type: 'warning'
@@ -579,7 +550,7 @@ export default {
 
     //恢复已暂停的训练任务
     unpauseHandle(id){
-      MessageBox.confirm(`是否继续运行该训练任务?`, '提示', {
+      MessageBox.confirm(`是否继续运行该算法任务?`, '提示', {
         confirmButtonText: '确定',
         cancelButtonText: '取消',
         type: 'warning'
@@ -649,7 +620,7 @@ export default {
     },
     //处理删除任务
     deleteMissHandle(id) {
-      MessageBox.confirm('此操作将删除该训练任务, 是否继续?', '提示', {
+      MessageBox.confirm('此操作将删除该算法任务, 是否继续?', '提示', {
           confirmButtonText: '确定',
           cancelButtonText: '取消',
           type: 'warning'

+ 21 - 21
src/views/modules/version/start-train.vue

@@ -1,10 +1,10 @@
 <!--  -->
 <template>
-  <div class='' v-loading="loading" element-loading-text="正在创建训练任务">
+  <div class='' v-loading="loading" element-loading-text="正在创建算法任务">
     <el-breadcrumb class="divi2" separator-class="el-icon-arrow-right">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
-      <el-breadcrumb-item :to="{ path: '/alg-train'}">算法训练</el-breadcrumb-item>
-      <el-breadcrumb-item>新建训练任务</el-breadcrumb-item>
+      <el-breadcrumb-item :to="{ path: '/alg-train'}">算法任务</el-breadcrumb-item>
+      <el-breadcrumb-item>新建算法任务</el-breadcrumb-item>
     </el-breadcrumb>
     <el-divider class="divi"></el-divider>
 
@@ -13,8 +13,8 @@
 
         <el-form :model="dataForm" :rules="dataRule" ref="dataForm" label-width="180px">
 
-          <el-form-item label="训练任务名称" prop="missName">
-            <el-input v-model="dataForm.missName" placeholder="请输入训练任务名称" @change="missNameChange()"></el-input>
+          <el-form-item label="算法任务名称" prop="missName">
+            <el-input v-model="dataForm.missName" placeholder="请输入算法任务名称" @change="missNameChange()"></el-input>
           </el-form-item>
 
           <el-form-item label="选择算法" prop="algSelected">
@@ -68,15 +68,15 @@
           </el-form-item>
         </el-form>
       </el-tab-pane>
-   
+
       <el-tab-pane label="完成" name="third">
 
         <el-form :model="dataForm" :rules="dataRule" ref="dataForm" label-width="180px" :disabled="true">
 
-          <el-form-item label="训练任务名称名称" prop="missName">
-            <el-input v-model="dataForm.missName" placeholder="请输入训练任务名称"></el-input>
+          <el-form-item label="算法任务名称名称" prop="missName">
+            <el-input v-model="dataForm.missName" placeholder="请输入算法任务名称"></el-input>
           </el-form-item>
-        
+
           <el-form-item label="选择算法" prop="algSelected">
             <el-input v-model="algorithmName"></el-input>
             <!-- <el-select v-model="dataForm.algSelected" placeholder="选择算法">
@@ -106,7 +106,7 @@
             </el-input>
           </el-form-item>
 
-    
+
 
 
           <el-form-item label="指定cpu">
@@ -123,7 +123,7 @@
             </el-select>
           </el-form-item>
 
-      
+
 
         </el-form>
         <el-form>
@@ -132,7 +132,7 @@
             <el-button type="primary" @click="dataFormSubmit()">完成</el-button>
           </el-form-item>
         </el-form>
-         
+
 
       </el-tab-pane>
     </el-tabs>
@@ -150,7 +150,7 @@ export default {
   },
   activated() {
     this.init();
-  }, 
+  },
   data() {
     return {
       loading:false,
@@ -161,9 +161,9 @@ export default {
       algs:[],
       value1: [],
       value2: [],
-      
+
       fileList: [
-        
+
       ],
 
       activeName: "first",
@@ -353,7 +353,7 @@ export default {
           algId:this.dataForm.algSelected,
         }),
       }).then(({ data }) => {
-        
+
         this.versions = data.versions;
       });
     },
@@ -377,7 +377,7 @@ export default {
             this.fileList = [];
           }
         });
-      
+
       /* this.$http({
         url: this.$http.adornUrl("/version/select/"+algId),
         method: "get",
@@ -385,7 +385,7 @@ export default {
           algId:this.algSelected,
         }),
       }).then(({ data }) => {
-        
+
         this.versions = data.versions;
       }); */
     },
@@ -402,7 +402,7 @@ export default {
     memoryChange(){
       this.$refs["dataForm"].validate();
     },
-    
+
 
     //去重
     unique(arr) {
@@ -412,7 +412,7 @@ export default {
       }
       return Array.from(new Set(ss));
     },
-    
+
     // 以下4个函数是文件上传功能的
     handleRemove(file, fileList) {
       console.log(file, fileList);
@@ -455,4 +455,4 @@ export default {
   padding: 5px 0px;
   margin: 10px;
 }
-</style>
+</style>

Some files were not shown because too many files changed in this diff