Procházet zdrojové kódy

模型监控接口联调

haojianlong před 5 roky
rodič
revize
19760a26c5

+ 6 - 6
config/dev.env.js

@@ -4,12 +4,12 @@ const prodEnv = require('./prod.env')
 
 module.exports = merge(prodEnv, {
     NODE_ENV: '"development"',
-    // BASE_URL: '"http://172.16.44.215"', //测试iframe地址
-    // SSO_SERVER: '"http://172.16.44.235:8081"', //测试环境
+    BASE_URL: '"http://172.16.44.215"', //测试iframe地址
+    SSO_SERVER: '"http://172.16.44.235:8081"', //测试环境
     // BASE_URL: '"http://192.168.20.236"', //(新)测试iframe地址
     // SSO_SERVER: '"http://192.168.20.236:8086"', //(新)测试环境
-    // MQTT_SERVICE: '"ws://172.16.42.210:61614/stomp/"' //MQ测试环境地址
-    SSO_SERVER: '"http://sso.sagacloud.cn"',  //正式环境
-    BASE_URL: '"http://mbi.sagacloud.cn"', //线上iframe地址
-    MQTT_SERVICE: '"ws://adm.sagacloud.cn/stomp/"' //MQ正式环境地址
+    MQTT_SERVICE: '"ws://172.16.42.210:61614/stomp/"' //MQ测试环境地址
+    // SSO_SERVER: '"http://sso.sagacloud.cn"',  //正式环境
+    // BASE_URL: '"http://mbi.sagacloud.cn"', //线上iframe地址
+    // MQTT_SERVICE: '"ws://adm.sagacloud.cn/stomp/"' //MQ正式环境地址
 })

+ 189 - 189
config/index.js

@@ -10,197 +10,197 @@ module.exports = {
     assetsSubDirectory: 'static',
     assetsPublicPath: '/',
 
-    proxyTable: {//正式环境
-      '/admin': {
-        target: 'http://mbi.sagacloud.cn:8080',
-        changeOrigin: true,
-        pathRewrite: {
-          "^/admin": "/"
-        }
-      },
-      '/api': {
-        target: 'http://mbi.sagacloud.cn:8080',
-        changeOrigin: true,
-        pathRewrite: {
-          "^/api": "/"
-        }
-      },
-      '/data-platform-3': {
-        // 目标 API 地址
-        target: 'http://api.sagacloud.cn/',
-        // 如果要代理 websockets
-        ws: true,
-        // 将主机标头的原点更改为目标URL
-        changeOrigin: false
-      },
-      '/business-space': {
-        // 目标 API 地址
-        target: 'http://api.sagacloud.cn',
-        changeOrigin: true,
-        pathRewrite: {
-          "^/business-space": "/dp-auxiliary/business-space/"
-        }
-      },
-      '/pointconfig': {
-        // 目标 API 地址
-        target: 'http://mbi.sagacloud.cn:8080/',
-        // 如果要代理 websockets
-        ws: true,
-        // 将主机标头的原点更改为目标URL
-        changeOrigin: false
-      },
-      '/venders-dp': {
-        // 目标 API 地址
-        target: 'http://api.sagacloud.cn',
-        changeOrigin: true,
-        pathRewrite: {
-          "^/venders-dp": "/dp-auxiliary/venders-dp/"
-        }
-      },
-      '/venders': {
-        // 目标 API 地址
-        target: 'http://api.sagacloud.cn',
-        changeOrigin: true,
-        pathRewrite: {
-          "^/venders": "/dp-auxiliary/venders/"
-        }
-      },
-      '/ScanBuilding': {
-        // 目标 API 地址
-        target: 'http://mbi.sagacloud.cn:8080/',
-        // 如果要代理 websockets
-        ws: true,
-        // 将主机标头的原点更改为目标URL
-        changeOrigin: false
-      },
-      '/image-service': {
-        // 目标 API 地址
-        target: 'http://api.sagacloud.cn',
-        changeOrigin: true,
-        pathRewrite: {
-          "^/image-service": "/dp-auxiliary/image-service/"
-        }
-      },
-      '/godhand': {
-        // 目标 API 地址
-        target: 'http://api.sagacloud.cn',
-        changeOrigin: true,
-        pathRewrite: {
-          "^/godhand": "/dp-auxiliary/godhand/"
-        }
-      },
-      '/modelapi': {
-        target: 'http://mbi.sagacloud.cn:8080',
-        changeOrigin: true,
-        pathRewrite: {
-          "^/modelapi": "/revit-algorithm/"
-        }
-      },
-      '/schedulerapi': {
-        target: 'http://mbi.sagacloud.cn:8080',
-        changeOrigin: true,
-        pathRewrite: {
-            "^/schedulerapi": "/scheduler/"
-        }
-      },
-    },
-
-    // proxyTable: {
-    //     '/admin': {
-    //         target: 'http://172.16.44.235:8080',
-    //         changeOrigin: true,
-    //         pathRewrite: {
-    //             "^/admin": "/"
-    //         }
-    //     },
-    //     '/api': {
-    //         target: 'http://172.16.44.235:8080',
-    //         changeOrigin: true,
-    //         pathRewrite: {
-    //             "^/api": "/"
-    //         }
-    //     },
-    //     '/data-platform-3': {
-    //         // 目标 API 地址
-    //         target: 'http://172.16.42.210:8080/',
-    //         // 如果要代理 websockets
-    //         ws: true,
-    //         // 将主机标头的原点更改为目标URL
-    //         changeOrigin: false
-    //     },
-    //     '/business-space': {
-    //         // 目标 API 地址
-    //         target: 'http://172.16.42.210:8080/',
-    //         // 如果要代理 websockets
-    //         ws: true,
-    //         // 将主机标头的原点更改为目标URL
-    //         changeOrigin: false
-    //     },
-    //     '/pointconfig': {
-    //         // 目标 API 地址
-    //         target: 'http://172.16.44.235:8080/',
-    //         // 如果要代理 websockets
-    //         ws: true,
-    //         // 将主机标头的原点更改为目标URL
-    //         changeOrigin: false
-    //     },
-    //     '/venders-dp': {
-    //         // 目标 API 地址
-    //         target: 'http://172.16.42.210:8080/',
-    //         // 如果要代理 websockets
-    //         ws: true,
-    //         // 将主机标头的原点更改为目标URL
-    //         changeOrigin: false
-    //     },
-    //     '/venders': {
-    //         // 目标 API 地址
-    //         target: 'http://172.16.42.210:8080/',
-    //         // 如果要代理 websockets
-    //         ws: true,
-    //         // 将主机标头的原点更改为目标URL
-    //         changeOrigin: false
-    //     },
-    //     '/ScanBuilding': {
-    //         // 目标 API 地址
-    //         target: 'http://172.16.44.235:8080/',
-    //         // 如果要代理 websockets
-    //         ws: true,
-    //         // 将主机标头的原点更改为目标URL
-    //         changeOrigin: false
-    //     },
-    //     '/image-service': {
-    //         // 目标 API 地址
-    //         target: 'http://172.16.42.210:8080/',
-    //         // 如果要代理 websockets
-    //         ws: true,
-    //         // 将主机标头的原点更改为目标URL
-    //         changeOrigin: false
-    //     },
-    //     '/godhand': {
-    //         // 目标 API 地址
-    //         target: 'http://172.16.42.210:8080/',
-    //         // 如果要代理 websockets
-    //         ws: true,
-    //         // 将主机标头的原点更改为目标URL
-    //         changeOrigin: false
-    //     },
-    //     '/modelapi': {
-    //         target: 'http://172.16.42.210:8082',
-    //         // target: 'http://192.168.20.218:8082',//景灏
-    //         changeOrigin: true,
-    //         pathRewrite: {
-    //             "^/modelapi": "/"
-    //         }
-    //     },
-    //     '/schedulerapi': {
-    //       target: 'http://172.16.42.210:8081',
-    //       changeOrigin: true,
-    //       pathRewrite: {
-    //           "^/schedulerapi": "/"
-    //       }
-    //     },
+    // proxyTable: {//正式环境
+    //   '/admin': {
+    //     target: 'http://mbi.sagacloud.cn:8080',
+    //     changeOrigin: true,
+    //     pathRewrite: {
+    //       "^/admin": "/"
+    //     }
+    //   },
+    //   '/api': {
+    //     target: 'http://mbi.sagacloud.cn:8080',
+    //     changeOrigin: true,
+    //     pathRewrite: {
+    //       "^/api": "/"
+    //     }
+    //   },
+    //   '/data-platform-3': {
+    //     // 目标 API 地址
+    //     target: 'http://api.sagacloud.cn/',
+    //     // 如果要代理 websockets
+    //     ws: true,
+    //     // 将主机标头的原点更改为目标URL
+    //     changeOrigin: false
+    //   },
+    //   '/business-space': {
+    //     // 目标 API 地址
+    //     target: 'http://api.sagacloud.cn',
+    //     changeOrigin: true,
+    //     pathRewrite: {
+    //       "^/business-space": "/dp-auxiliary/business-space/"
+    //     }
+    //   },
+    //   '/pointconfig': {
+    //     // 目标 API 地址
+    //     target: 'http://mbi.sagacloud.cn:8080/',
+    //     // 如果要代理 websockets
+    //     ws: true,
+    //     // 将主机标头的原点更改为目标URL
+    //     changeOrigin: false
+    //   },
+    //   '/venders-dp': {
+    //     // 目标 API 地址
+    //     target: 'http://api.sagacloud.cn',
+    //     changeOrigin: true,
+    //     pathRewrite: {
+    //       "^/venders-dp": "/dp-auxiliary/venders-dp/"
+    //     }
+    //   },
+    //   '/venders': {
+    //     // 目标 API 地址
+    //     target: 'http://api.sagacloud.cn',
+    //     changeOrigin: true,
+    //     pathRewrite: {
+    //       "^/venders": "/dp-auxiliary/venders/"
+    //     }
+    //   },
+    //   '/ScanBuilding': {
+    //     // 目标 API 地址
+    //     target: 'http://mbi.sagacloud.cn:8080/',
+    //     // 如果要代理 websockets
+    //     ws: true,
+    //     // 将主机标头的原点更改为目标URL
+    //     changeOrigin: false
+    //   },
+    //   '/image-service': {
+    //     // 目标 API 地址
+    //     target: 'http://api.sagacloud.cn',
+    //     changeOrigin: true,
+    //     pathRewrite: {
+    //       "^/image-service": "/dp-auxiliary/image-service/"
+    //     }
+    //   },
+    //   '/godhand': {
+    //     // 目标 API 地址
+    //     target: 'http://api.sagacloud.cn',
+    //     changeOrigin: true,
+    //     pathRewrite: {
+    //       "^/godhand": "/dp-auxiliary/godhand/"
+    //     }
+    //   },
+    //   '/modelapi': {
+    //     target: 'http://mbi.sagacloud.cn:8080',
+    //     changeOrigin: true,
+    //     pathRewrite: {
+    //       "^/modelapi": "/revit-algorithm/"
+    //     }
+    //   },
+    //   '/schedulerapi': {
+    //     target: 'http://mbi.sagacloud.cn:8080',
+    //     changeOrigin: true,
+    //     pathRewrite: {
+    //         "^/schedulerapi": "/scheduler/"
+    //     }
+    //   },
     // },
 
+    proxyTable: {
+        '/admin': {
+            target: 'http://172.16.44.235:8080',
+            changeOrigin: true,
+            pathRewrite: {
+                "^/admin": "/"
+            }
+        },
+        '/api': {
+            target: 'http://172.16.44.235:8080',
+            changeOrigin: true,
+            pathRewrite: {
+                "^/api": "/"
+            }
+        },
+        '/data-platform-3': {
+            // 目标 API 地址
+            target: 'http://172.16.42.210:8080/',
+            // 如果要代理 websockets
+            ws: true,
+            // 将主机标头的原点更改为目标URL
+            changeOrigin: false
+        },
+        '/business-space': {
+            // 目标 API 地址
+            target: 'http://172.16.42.210:8080/',
+            // 如果要代理 websockets
+            ws: true,
+            // 将主机标头的原点更改为目标URL
+            changeOrigin: false
+        },
+        '/pointconfig': {
+            // 目标 API 地址
+            target: 'http://172.16.44.235:8080/',
+            // 如果要代理 websockets
+            ws: true,
+            // 将主机标头的原点更改为目标URL
+            changeOrigin: false
+        },
+        '/venders-dp': {
+            // 目标 API 地址
+            target: 'http://172.16.42.210:8080/',
+            // 如果要代理 websockets
+            ws: true,
+            // 将主机标头的原点更改为目标URL
+            changeOrigin: false
+        },
+        '/venders': {
+            // 目标 API 地址
+            target: 'http://172.16.42.210:8080/',
+            // 如果要代理 websockets
+            ws: true,
+            // 将主机标头的原点更改为目标URL
+            changeOrigin: false
+        },
+        '/ScanBuilding': {
+            // 目标 API 地址
+            target: 'http://172.16.44.235:8080/',
+            // 如果要代理 websockets
+            ws: true,
+            // 将主机标头的原点更改为目标URL
+            changeOrigin: false
+        },
+        '/image-service': {
+            // 目标 API 地址
+            target: 'http://172.16.42.210:8080/',
+            // 如果要代理 websockets
+            ws: true,
+            // 将主机标头的原点更改为目标URL
+            changeOrigin: false
+        },
+        '/godhand': {
+            // 目标 API 地址
+            target: 'http://172.16.42.210:8080/',
+            // 如果要代理 websockets
+            ws: true,
+            // 将主机标头的原点更改为目标URL
+            changeOrigin: false
+        },
+        '/modelapi': {
+            target: 'http://172.16.42.210:8082',
+            // target: 'http://192.168.20.218:8082',//景灏
+            changeOrigin: true,
+            pathRewrite: {
+                "^/modelapi": "/"
+            }
+        },
+        '/schedulerapi': {
+          target: 'http://172.16.42.210:8081',
+          changeOrigin: true,
+          pathRewrite: {
+              "^/schedulerapi": "/"
+          }
+        },
+    },
+
     // Various Dev Server settings
     host: '0.0.0.0', // can be overwritten by process.env.HOST
     port: 28080, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined

+ 2 - 2
src/components/model/file/floorTable.vue

@@ -148,8 +148,8 @@ export default {
     // 跳转至模型流程处理监控
     toPathControl(row) {
       this.$router.push({
-        name: 'pathControl',
-        params: { Id: row.Id, Size: row.Size }
+        path: '/model/path',
+        query: { Id: row.CurrentModelId, Size: row.Size }
       })
     }
   },

+ 14 - 17
src/components/model/file/pathCard.vue

@@ -1,18 +1,18 @@
 <template>
-  <div :class="{'pathCard':true,'borderY':warning,'borderR':error}" @click="cardClick">
+  <div :class="{'pathCard':true,'borderY':!data.HasError&&data.HasRetry,'borderR':data.HasError}" @click="cardClick">
     <div class="path-title">
-      <!-- <i class="el-icon-success" style="color:#67C23A"></i> -->
-      <!-- <i class="iconfont icon-iconfontgengduo" style="color:#333333">></i> -->
-      <i class="iconfont icon-conduct" style="color:#409eff"></i>
+      <i v-if="!data.BeginTime" class="iconfont icon-iconfontgengduo" style="color:#333333"></i>
+      <i v-else-if="data.BeginTime&&!data.EndTime" class="iconfont icon-conduct" style="color:#409eff"></i>
+      <i v-else class="el-icon-success" style="color:#67C23A"></i>
       {{title}}
-      <i v-if="warning" class="iconfont icon-trouble pos" style="color:#fcc636"></i>
-      <i v-if="error" class="iconfont icon-Error pos" style="color:#ff7c77"></i>
+      <i v-if="data.HasError" class="iconfont icon-Error pos" style="color:#ff7c77"></i>
+      <i v-else-if="data.HasRetry" class="iconfont icon-trouble pos" style="color:#fcc636"></i>
     </div>
     <div class="path-content">
       <slot></slot>
-      <p>耗时: 8分39秒</p>
-      <p>开始时间: 2020-1-21 08:01:10</p>
-      <p>结束时间: 2020-1-21 08:01:10</p>
+      <p>耗时: {{data.TokeTime||'--'}}</p>
+      <p>开始时间: {{data.BeginTime||'--'}}</p>
+      <p>结束时间: {{data.EndTime||'--'}}</p>
     </div>
   </div>
 </template>
@@ -23,17 +23,14 @@ export default {
       type: String,
       default: '提示'
     },
-    warning: {
-      type: Boolean,
-      default: false
-    },
-    error: {
-      type: Boolean,
-      default: false
+    data: {
+      type: Object,
+      default: {}
     }
   },
   data() {
-    return {}
+    return {
+    }
   },
   methods: {
     cardClick() {

+ 125 - 80
src/views/model/file/pathcontrol/index.vue

@@ -21,11 +21,11 @@
             <div class="updown shadow-box">
               <div style="background:#b8c5d0;height:20px;"></div>
               <div style="text-align:center;margin-top: 15px">
-                <i class="el-icon-monitor" style="color:#dee6ec;font-size:60px"></i>
-                <p style="margin-top:10px;color:#dee6ec;">上传下载功能</p>
+                <i class="el-icon-monitor" style="color:#b8c5d0;font-size:60px"></i>
+                <p style="margin-top:10px;color:#b8c5d0">上传下载功能</p>
               </div>
-              <img v-if="1" class="status row-status" src="@/assets/image/model/arrowGray.png" />
-              <img v-else-if="2" class="status row-status" src="@/assets/image/model/arrowBlue.png" />
+              <img v-if="!UploadState.BeginTime" class="status row-status" src="@/assets/image/model/arrowGray.png" />
+              <img v-else-if="UploadState.BeginTime&&!UploadState.EndTime" class="status row-status" src="@/assets/image/model/arrowBlue.png" />
               <img v-else class="status row-status" src="@/assets/image/model/arrowGreen.png" />
             </div>
             <div class="shadow-box mid-transfer">
@@ -35,31 +35,34 @@
               <div class="first-content">
                 <p>模型文件存储于OSS服务器</p>
               </div>
-              <img v-if="1" class="status row-waiting-manage" src="@/assets/image/model/waitingManageGray.png" />
-              <img v-else-if="2" class="status row-waiting-manage" src="@/assets/image/model/waitingManageBlue.png" />
+              <img v-if="!SchedulerCheck.BeginTime" class="status row-waiting-manage" src="@/assets/image/model/waitingManageGray.png" />
+              <img v-else-if="SchedulerCheck.BeginTime&&!SchedulerCheck.EndTime" class="status row-waiting-manage"
+                src="@/assets/image/model/waitingManageBlue.png" />
               <img v-else class="status row-waiting-manage" src="@/assets/image/model/waitingManageGreen.png" />
 
-              <img v-if="1" class="status up-model" src="@/assets/image/model/upModelGray.png" />
-              <img v-else-if="2" class="status up-model" src="@/assets/image/model/upModelBlue.png" />
+              <img v-if="!UploadState.BeginTime" class="status up-model" src="@/assets/image/model/upModelGray.png" />
+              <img v-else-if="UploadState.BeginTime&&!UploadState.EndTime" class="status up-model" src="@/assets/image/model/upModelBlue.png" />
               <img v-else class="status up-model" src="@/assets/image/model/upModelGreen.png" />
 
               <div class="path-tips shadow-box" style="top:67px;left:291px;" @click="getNodeDes">
-                <i class="el-icon-warning"></i>
-                <!-- <i class="el-icon-error"></i> -->
-                <p>耗时: 8分钟10s</p>
+                <i class="el-icon-error" v-if="SchedulerCheck.HasError"></i>
+                <i class="el-icon-warning" v-else-if="SchedulerCheck.HasRetry"></i>
+                <p>耗时: {{SchedulerCheck.TakeTime||'--'}}</p>
                 <!-- <p>平均上传速度: 1M/s</p> -->
-                <p>开始时间: 2020/2/22 20:20:20</p>
+                <p>开始时间: {{SchedulerCheck.BeginTime||'--'}}</p>
                 <!-- <p>结束时间: 2020/2/22 20:20:20</p> -->
-                <p>待分配模型数量: 12</p>
+                <p>待分配模型数量: {{SchedulerCheck.Num||'--'}}</p>
               </div>
             </div>
             <p style="float:left;width:100%;text-align:center;margin-top:73px;color:#acb5bb;font-size:12px;">本地电脑主机</p>
           </el-row>
           <div class="path-tips shadow-box" style="top:189px;left:190px;" @click="getNodeDes">
-            <p>耗时: 8分钟10s</p>
-            <p>平均上传速度: 1M/s</p>
-            <p>开始时间: 2020/2/22 20:20:20</p>
-            <p>结束时间: 2020/2/22 20:20:20</p>
+            <i class="el-icon-error" v-if="UploadState.HasError"></i>
+            <i class="el-icon-warning" v-else-if="UploadState.HasRetry"></i>
+            <p>耗时: {{UploadState.TakeTime||'--'}}</p>
+            <p>平均上传速度: {{UploadState.Speed||'--'}}</p>
+            <p>开始时间: {{UploadState.BeginTime||'--'}}</p>
+            <p>结束时间: {{UploadState.EndTime||'--'}}</p>
           </div>
         </div>
         <div class="second-column column">
@@ -75,89 +78,101 @@
                   <div class="image">
                     <i class="iconfont icon-revit" style="color:#dee6ec;font-size:60px;background:#fff"></i>
                   </div>
-                  <div>
-                    <p>模型文件名称</p>
-                    <p style="color:#8d9aa3">模型文件大小: 23M</p>
-                    <p style="color:#8d9aa3">上传时间: 2020/2/20 17:17:17</p>
+                  <div class="fixed">
+                    <p :title="'XSSSSSSSSSXSSSSSSSSS'">模型文件名称{{'XSSSSSSSSSXSSSSSSSSS'}}</p>
+                    <p style="color:#8d9aa3">模型文件大小: {{(Size/1000/1024).toFixed(1)}}M</p>
+                    <p style="color:#8d9aa3">上传时间: {{UploadState.EndTime||'--'}}</p>
                   </div>
                 </el-row>
                 <el-row class="sm-box">
                   <div class="image">
                     <i class="iconfont icon-json" style="color:#dee6ec;font-size:60px;background:#fff"></i>
                   </div>
-                  <div>
-                    <p>json数据压缩包</p>
+                  <div class="fixed">
+                    <p>{{'XSSSSSSSSSXSSSSSSSSS'}}json数据压缩包</p>
                     <p style="color:#8d9aa3">文件大小: 23M</p>
-                    <p style="color:#8d9aa3">上传时间: 2020/2/20 17:17:17</p>
+                    <p style="color:#8d9aa3">上传时间: {{ModelExport.EndTime||'--'}}</p>
                   </div>
                 </el-row>
               </el-row>
-              <img v-if="1" class="status down-model" src="@/assets/image/model/downModelGray.png" />
-              <img v-else-if="2" class="status down-model" src="@/assets/image/model/downModelBlue.png" />
+              <img v-if="!ModelCheck.BeginTime" class="status down-model" src="@/assets/image/model/downModelGray.png" />
+              <img v-else-if="ModelCheck.BeginTime&&!ModelCheck.EndTime" class="status down-model" src="@/assets/image/model/downModelBlue.png" />
               <img v-else class="status down-model" src="@/assets/image/model/downModelGreen.png" />
 
-              <img v-if="1" class="status down-model-sec" src="@/assets/image/model/downModelGray.png" />
-              <img v-else-if="2" class="status down-model-sec" src="@/assets/image/model/downModelBlue.png" />
+              <img v-if="!ModelExport.BeginTime" class="status down-model-sec" src="@/assets/image/model/downModelGray.png" />
+              <img v-else-if="ModelExport.BeginTime&&!ModelExport.EndTime" class="status down-model-sec"
+                src="@/assets/image/model/downModelBlue.png" />
               <img v-else class="status down-model-sec" src="@/assets/image/model/downModelGreen.png" />
 
-              <img v-if="1" class="status up-json" src="@/assets/image/model/upJsonGray.png" />
-              <img v-else-if="2" class="status up-json" src="@/assets/image/model/upJsonBlue.png" />
+              <img v-if="!ModelExport.BeginTime" class="status up-json" src="@/assets/image/model/upJsonGray.png" />
+              <img v-else-if="ModelExport.BeginTime&&!ModelExport.EndTime" class="status up-json" src="@/assets/image/model/upJsonBlue.png" />
               <img v-else class="status up-json" src="@/assets/image/model/upJsonGreen.png" />
 
-              <img v-if="1" class="status down-json" src="@/assets/image/model/downJsonGray.png" />
-              <img v-else-if="2" class="status down-json" src="@/assets/image/model/downJsonBlue.png" />
+              <img v-if="!JsonAnalysis.BeginTime" class="status down-json" src="@/assets/image/model/downJsonGray.png" />
+              <img v-else-if="JsonAnalysis.BeginTime&&!JsonAnalysis.EndTime" class="status down-json" src="@/assets/image/model/downJsonBlue.png" />
               <img v-else class="status down-json" src="@/assets/image/model/downJsonGreen.png" />
             </div>
           </div>
           <el-row id="revitServer">
-            <pathCard class="revit-item" :title="'楼层模型检查'" @click="getNodeDes">
+            <pathCard class="revit-item" :title="'楼层模型检查'" @click="getNodeDes" :data="ModelCheck">
               <p>共检查项: --</p>
             </pathCard>
-            <pathCard class="revit-item" :title="'导出模型json数据并压缩存储'" @click="getNodeDes"></pathCard>
-            <img v-if="1" class="status row-waiting-manage" src="@/assets/image/model/waitingManageGray.png" />
-            <img v-else-if="2" class="status row-waiting-manage" src="@/assets/image/model/waitingManageBlue.png" />
+            <pathCard class="revit-item" :title="'导出模型json数据并压缩存储'" @click="getNodeDes" :data="ModelExport"></pathCard>
+            <img v-if="!SchedulerExport.BeginTime" class="status row-waiting-manage" src="@/assets/image/model/waitingManageGray.png" />
+            <img v-else-if="SchedulerExport.BeginTime&&!SchedulerExport.EndTime" class="status row-waiting-manage"
+              src="@/assets/image/model/waitingManageBlue.png" />
             <img v-else class="status row-waiting-manage" src="@/assets/image/model/waitingManageGreen.png" />
 
-            <img v-if="1" class="status waiting-anl" src="@/assets/image/model/waitingAnlGray.png" />
-            <img v-else-if="2" class="status waiting-anl" src="@/assets/image/model/waitingAnlBlue.png" />
+            <img v-if="!JsonAnalysis.BeginTime" class="status waiting-anl" src="@/assets/image/model/waitingAnlGray.png" />
+            <img v-else-if="JsonAnalysis.BeginTime&&!JsonAnalysis.EndTime" class="status waiting-anl" src="@/assets/image/model/waitingAnlBlue.png" />
             <img v-else class="status waiting-anl" src="@/assets/image/model/waitingAnlGreen.png" />
 
-            <img v-if="1" class="status del-model" src="@/assets/image/model/delModelGray.png" />
+            <img v-if="!ModelCheck.Remove" class="status del-model" src="@/assets/image/model/delModelGray.png" />
             <img v-else class="status del-model" src="@/assets/image/model/delModelBlue.png" />
 
             <div class="path-tips shadow-box" style="top:114px;left:329px;" @click="getNodeDes">
-              <p>耗时: 8分钟10s</p>
+              <i class="el-icon-error" v-if="SchedulerExport.HasError"></i>
+              <i class="el-icon-warning" v-else-if="SchedulerExport.HasRetry"></i>
+              <p>耗时: {{SchedulerExport.TakeTime||'--'}}</p>
               <!-- <p>平均上传速度: 1M/s</p> -->
-              <p>开始时间: 2020/2/22 20:20:20</p>
-              <!-- <p>结束时间: 2020/2/22 20:20:20</p> -->
-              <p>待分配模型数量: 12</p>
+              <p>开始时间: {{SchedulerExport.BeginTime||'--'}}</p>
+              <!-- <p>结束时间: {{SchedulerExport.EndTime}}</p> -->
+              <p>待分配模型数量: {{SchedulerExport.Num||'--'}}</p>
             </div>
 
             <p style="float:left;width:100%;text-align:center;margin-top:83px;color:#acb5bb;font-size:12px;">revit本地服务器集群</p>
           </el-row>
           <div class="path-tips shadow-box up-model-tips" @click="getNodeDes">
-            <p>耗时: 8分钟10s</p>
-            <p>平均上传速度: 1M/s</p>
-            <p>开始时间: 2020/2/22 20:20:20</p>
-            <p>结束时间: 2020/2/22 20:20:20</p>
+            <i class="el-icon-error" v-if="ModelCheck.HasError"></i>
+            <i class="el-icon-warning" v-else-if="ModelCheck.HasRetry"></i>
+            <p>耗时: {{ModelCheck.TakeTime||'--'}}</p>
+            <p>平均下载速度: {{ModelCheck.Speed||'--'}}</p>
+            <p>开始时间: {{ModelCheck.BeginTime||'--'}}</p>
+            <p>结束时间: {{ModelCheck.EndTime||'--'}}</p>
           </div>
           <div class="path-tips shadow-box up-model-tips2" @click="getNodeDes">
-            <p>耗时: 8分钟10s</p>
-            <p>平均上传速度: 1M/s</p>
-            <p>开始时间: 2020/2/22 20:20:20</p>
-            <p>结束时间: 2020/2/22 20:20:20</p>
+            <i class="el-icon-error" v-if="ModelExport.HasError"></i>
+            <i class="el-icon-warning" v-else-if="ModelExport.HasRetry"></i>
+            <p>耗时: {{ModelExport.TakeTime||'--'}}</p>
+            <p>平均下载速度: {{ModelExport.Speed||'--'}}</p>
+            <p>开始时间: {{ModelExport.BeginTime||'--'}}</p>
+            <p>结束时间: {{ModelExport.EndTime||'--'}}</p>
           </div>
           <div class="path-tips shadow-box up-json-tips" @click="getNodeDes">
-            <p>耗时: 8分钟10s</p>
-            <p>平均上传速度: 1M/s</p>
-            <p>开始时间: 2020/2/22 20:20:20</p>
-            <p>结束时间: 2020/2/22 20:20:20</p>
+            <i class="el-icon-error" v-if="ModelExport.HasError"></i>
+            <i class="el-icon-warning" v-else-if="ModelExport.HasRetry"></i>
+            <p>耗时: {{ModelExport.TakeTime||'--'}}</p>
+            <p>平均下载速度: {{ModelExport.Speed||'--'}}</p>
+            <p>开始时间: {{ModelExport.BeginTime||'--'}}</p>
+            <p>结束时间: {{ModelExport.EndTime||'--'}}</p>
           </div>
           <div class="path-tips shadow-box down-json-tips" @click="getNodeDes">
-            <p>耗时: 8分钟10s</p>
-            <p>平均上传速度: 1M/s</p>
-            <p>开始时间: 2020/2/22 20:20:20</p>
-            <p>结束时间: 2020/2/22 20:20:20</p>
+            <i class="el-icon-error" v-if="JsonAnalysis.HasError"></i>
+            <i class="el-icon-warning" v-else-if="JsonAnalysis.HasRetry"></i>
+            <p>耗时: {{JsonAnalysis.TakeTime||'--'}}</p>
+            <p>平均下载速度: {{JsonAnalysis.Speed||'--'}}</p>
+            <p>开始时间: {{JsonAnalysis.BeginTime||'--'}}</p>
+            <p>结束时间: {{JsonAnalysis.EndTime||'--'}}</p>
           </div>
           <div id="secondDel" class="delModel">
             <i class="iconfont icon-delate" style="color:#89969F;font-size:30px;line-height:1;margin-left:-6px"></i>
@@ -174,40 +189,40 @@
                   <p style="color:#676767">web服务数据库</p>
                 </div>
               </div>
-              <img v-if="1" class="status column-up" src="@/assets/image/model/columnGray.png" />
-              <img v-else-if="2" class="status column-up" src="@/assets/image/model/columnBlue.png" />
+              <img v-if="!SaveData.BeginTime" class="status column-up" src="@/assets/image/model/columnGray.png" />
+              <img v-else-if="SaveData.BeginTime&&!SaveData.EndTime" class="status column-up" src="@/assets/image/model/columnBlue.png" />
               <img v-else class="status column-up" src="@/assets/image/model/columnGreen.png" />
 
-              <img v-if="1" class="status right-down" src="@/assets/image/model/rightDownGray.png" />
-              <img v-else-if="2" class="status right-down" src="@/assets/image/model/rightDownBlue.png" />
+              <img v-if="!MultiFloorCheck.BeginTime" class="status right-down" src="@/assets/image/model/rightDownGray.png" />
+              <img v-else-if="MultiFloorCheck.BeginTime&&!MultiFloorCheck.EndTime" class="status right-down" src="@/assets/image/model/rightDownBlue.png" />
               <img v-else class="status right-down" src="@/assets/image/model/rightDownGreen.png" />
             </div>
           </div>
           <el-row id="webServer">
-            <pathCard class="webServer-item" :title="'解压并解析json文件'" @click="getNodeDes"></pathCard>
-            <pathCard class="webServer-item" :title="'存储数据到模型web服务数据库'" @click="getNodeDes"></pathCard>
-            <pathCard class="webServer-item" :title="'建筑模型检查'" @click="getNodeDes">
+            <pathCard class="webServer-item" :title="'解压并解析json文件'" :data="JsonAnalysis" @click="getNodeDes"></pathCard>
+            <pathCard class="webServer-item" :title="'存储数据到模型web服务数据库'" :data="SaveData" @click="getNodeDes"></pathCard>
+            <pathCard class="webServer-item" :title="'建筑模型检查'" :data="MultiFloorCheck" @click="getNodeDes">
               <p>共检查项: --</p>
             </pathCard>
-            <pathCard class="webServer-item" :title="'处理模型数据格式'" @click="getNodeDes"></pathCard>
+            <pathCard class="webServer-item" :title="'处理模型数据格式'" :data="MultiFloorCheck" @click="getNodeDes"></pathCard>
 
-            <img v-if="1" class="status path1 path" src="@/assets/image/model/arrowGray.png" />
-            <img v-else-if="2" class="status path1 path" src="@/assets/image/model/arrowBlue.png" />
+            <img v-if="!SaveData.BeginTime" class="status path1 path" src="@/assets/image/model/arrowGray.png" />
+            <img v-else-if="SaveData.BeginTime&&!SaveData.EndTime" class="status path1 path" src="@/assets/image/model/arrowBlue.png" />
             <img v-else class="status path1 path" src="@/assets/image/model/arrowGreen.png" />
 
-            <img v-if="1" class="status path2 path" src="@/assets/image/model/arrowGray.png" />
-            <img v-else-if="2" class="status path2 path" src="@/assets/image/model/arrowBlue.png" />
+            <img v-if="!MultiFloorCheck.BeginTime" class="status path2 path" src="@/assets/image/model/arrowGray.png" />
+            <img v-else-if="MultiFloorCheck.BeginTime&&!MultiFloorCheck.EndTime" class="status path2 path" src="@/assets/image/model/arrowBlue.png" />
             <img v-else class="status path2 path" src="@/assets/image/model/arrowGreen.png" />
 
             <img v-if="1" class="status path3 path" src="@/assets/image/model/arrowGray.png" />
             <img v-else-if="2" class="status path3 path" src="@/assets/image/model/arrowBlue.png" />
             <img v-else class="status path3 path" src="@/assets/image/model/arrowGreen.png" />
 
-            <img v-if="1" class="status path4 path" src="@/assets/image/model/arrowGray.png" />
-            <img v-else-if="2" class="status path4 path" src="@/assets/image/model/arrowBlue.png" />
+            <img v-if="!Note.BeginTime" class="status path4 path" src="@/assets/image/model/arrowGray.png" />
+            <img v-else-if="Note.BeginTime&&!Note.EndTime" class="status path4 path" src="@/assets/image/model/arrowBlue.png" />
             <img v-else class="status path4 path" src="@/assets/image/model/arrowGreen.png" />
 
-            <img v-if="1" class="status del-model" src="@/assets/image/model/delModelGray.png" />
+            <img v-if="!ModelExport.Remove" class="status del-model" src="@/assets/image/model/delModelGray.png" />
             <img v-else class="status del-model" src="@/assets/image/model/delModelBlue.png" />
 
             <p style="float:left;width:100%;text-align:center;margin-top:83px;color:#acb5bb;font-size:12px;">模型web服务器</p>
@@ -234,7 +249,7 @@
             </div>
           </div>
           <el-row id="dataCenterServer">
-            <pathCard :title="'储存模型数据并记录增删日志'" @click="getNodeDes"></pathCard>
+            <pathCard :title="'储存模型数据并记录增删日志'" @click="getNodeDes" :data="Note"></pathCard>
 
             <img v-if="1" class="status path1" src="@/assets/image/model/arrowGray.png" />
             <img v-else-if="2" class="status path1" src="@/assets/image/model/arrowBlue.png" />
@@ -244,7 +259,7 @@
           </el-row>
         </div>
         <div class="fifth-column column">
-          <pathCard class="finish-item" :title="'完成'" @click="getNodeDes"></pathCard>
+          <pathCard class="finish-item" :title="'完成'" @click="getNodeDes" :data="finish"></pathCard>
         </div>
       </div>
     </el-row>
@@ -269,16 +284,29 @@ export default {
     return {
       loading: false, //
       Id: '',
-      Size: 0
+      Size: 0,
+      JsonAnalysis: {}, //解压并解析json文件
+      ModelCheck: {}, //楼层模型检查
+      ModelExport: {}, //导出模型json数据并压缩存储
+      MultiFloorCheck: {}, //建筑模型检查
+      Note: {}, //储存模型数据并记录增删日志
+      SaveData: {}, //存储数据到模型web服务数据库
+      SchedulerCheck: {}, //第一个等待调度器
+      SchedulerExport: {},//第二个等待调度器
+      UploadState: {}, //上传下载功能
+      finish: {}
     }
   },
   mounted() {
-    this.Id = this.$route.query.Id
-    this.Size = this.$route.query.Size
     Bus.$on('messageListUpdate', message => {
       this.getMessage()
     })
   },
+  created() {
+    this.Id = this.$route.query.Id
+    this.Size = this.$route.query.Size
+    this.getMessage()
+  },
   methods: {
     // 弹窗
     getNodeDes() {
@@ -290,7 +318,16 @@ export default {
         Filters: `Id="${this.Id}"`
       }
       modelPathControl(pa, res => {
-        console.log(res)
+        const data = res.Content[0];
+        this.JsonAnalysis = data.JsonAnalysis || {}
+        this.ModelCheck = data.ModelCheck || {}
+        this.ModelExport = data.ModelExport || {}
+        this.MultiFloorCheck = data.MultiFloorCheck || {}
+        this.Note = data.Note || {}
+        this.SaveData = data.SaveData || {}
+        this.SchedulerCheck = data.SchedulerCheck || {}
+        this.SchedulerExport = data.SchedulerExport || {}
+        this.UploadState = data.UploadState || {}
       })
     },
     // 处理时间工具
@@ -414,6 +451,14 @@ export default {
                 &:nth-child(3) {
                   margin-left: 40px;
                 }
+                .fixed {
+                  p {
+                    width: 167px;
+                    overflow: hidden;
+                    text-overflow: ellipsis;
+                    white-space: nowrap;
+                  }
+                }
                 .image {
                   margin-right: 20px;
                 }