瀏覽代碼

Merge branch 'msg-sever' of http://39.106.8.246:3003/web/ibms into msg-sever

LXXXY 5 年之前
父節點
當前提交
e565f3ecc9

+ 55 - 51
src/components/data_admin/buildTask/detail/assetsDetail.vue

@@ -6,8 +6,8 @@
           <el-form-item label="资产基本信息"></el-form-item>
           <el-form-item label="任务创建时间:">{{ detail.CreateTime || '--' }}</el-form-item>
           <el-form-item label="任务当前状态:">{{ detail.TaskState || '--' }}</el-form-item>
-          <el-form-item label="任务执行方案:">{{ detail.TaskId || '--' }}</el-form-item>
-          <el-form-item label="设备族:">{{ detail.EquipFamily.FamilyName || '--' }}</el-form-item>
+          <el-form-item label="任务执行方案:">{{ detail.ScanScheme?detail.ScanScheme.SchemeName?detail.ScanScheme.SchemeName:'--':'--' }}</el-form-item>
+          <el-form-item label="设备族:">{{ detail.EquipFamily?detail.EquipFamily.FamilyName?detail.EquipFamily.FamilyName:'--':'--' }}</el-form-item>
           <el-form-item label="全局名称:">{{ detail.EquipName || '--' }}</el-form-item>
           <el-form-item label="资产本地名称:">{{ detail.EquipLocalName || '--' }}</el-form-item>
           <el-form-item label="资产本地编码:">{{ detail.EquipLocalID || '--' }}</el-form-item>
@@ -23,36 +23,27 @@
           <el-form-item label="执行任务人:">{{ detail.WorkerName || '--' }}</el-form-item>
           <el-form-item label="执行时间:">{{ detail.ProcessTime || '--' }}</el-form-item>
           <el-form-item label="未找到对象信息"></el-form-item>
-          <el-form-item label="设备信息:">
-            <div v-if="detail.Equipment.Component && detail.Equipment.Component.length">
-              <p v-for="(item, index) in detail.Equipment.Component" :key="index" show-overflow-tooltip>
-               {{ item.EquipName }}
-              </p>
+          <el-form-item label="资产名称:">{{ detail.EquipLocalName || detail.EquipName || '--' }}</el-form-item>
+          <el-form-item label="全景图:" v-show="panoramaList && panoramaList.length">
+            <div class="img-item" @click="dialogVisible = true"  v-for="item in panoramaList" :key="item.Key">
+              <img :src="`/image-service/common/image_get?systemId=dataPlatform&key=${item.Key}`" style="width:100%;" :alt="item.Name">
             </div>
-            <div v-else>--</div>
           </el-form-item>
-          <el-form-item label="全景图:">
-            <div class="img-item" @click="dialogVisible = true">
-              <img src="@/assets/house.jpg" style="width:100%;" alt="图片走丢了">
-              <!-- 遮罩层 
-              <div class="img-hide">
-                <i class="el-icon-help" style="font-size:30px;"></i>
-                <span> 点击查看全景图 </span>
-              </div> -->
-            </div>
-          </el-form-item>
-          <el-form-item label="部件照片:">
+          <el-form-item label="资产照片:" v-show="imgList && imgList.length">
             <div class="img-item">
               <div class="demo-image__preview">
-                <el-image style="width:100%;" @click="nowUrl = url1" :src="url1" :preview-src-list="srcList"></el-image>
-                <el-image style="width:100%;" @click="nowUrl = url2" :src="url2" :preview-src-list="srcList"></el-image>
-                <el-image style="width:100%;" @click="nowUrl = url3" :src="url3" :preview-src-list="srcList"></el-image>
+                <el-image style="width:100%;" v-for="item in imgList"
+                 :key="item.Key" :title="item.Name"
+                 @click="nowUrl = item.Key" 
+                 :src="`/image-service/common/image_get?systemId=dataPlatform&key=${item.Key}&width=400`" 
+                 :preview-src-list="srcList">
+                </el-image>
               </div>
             </div>
           </el-form-item>
-          <el-form-item label="现场视频:">
-            <video controls style="width:100%;">
-              <source src="https://www.runoob.com/try/demo_source/movie.mp4" type="video/mp4">
+          <el-form-item label="现场视频:" v-show="videoList && videoList.length">
+            <video controls style="width:100%;" v-for="item in videoList" :key="item.Key" :title="item.Name">
+              <source :src="`/image-service/common/image_get?systemId=dataPlatform&key=${item.Key}`" type="video/mp4">
               您的浏览器不支持 HTML5 video ,暂无法播放。
             </video>
           </el-form-item>
@@ -102,46 +93,59 @@ export default {
   },
   computed: {
     ...mapGetters("layout", ["projectId"]),
-    srcList: function () {
-      let index = this.urls.indexOf(this.nowUrl) >= 1 ? this.urls.indexOf(this.nowUrl) : 0;
-      //  let temp = this.urls.concat();
-      let temp = this.urls;
-      let tempArr1 = temp.slice(0, index);
-      let tempArr2 = temp.slice(index, temp.length);
+    panoramaList(){
+      if(this.detail && this.detail.TaskPicList && this.detail.TaskPicList.length){
+        return this.detail.TaskPicList.filter(item => {
+          return item.Type == 'panorama'
+        })
+      } else {
+        return []
+      }
+    },
+    imgList(){
+      if(this.detail && this.detail.TaskPicList && this.detail.TaskPicList.length){
+        return this.detail.TaskPicList.filter(item => {
+          return item.Type == 'image'
+        })
+      } else {
+        return []
+      }
+    },
+    videoList(){
+      if(this.detail && this.detail.TaskPicList && this.detail.TaskPicList.length){
+        return this.detail.TaskPicList.filter(item => {
+          return item.Type == 'video'
+        })
+      } else {
+        return []
+      }
+    },
+    srcList(){
+      let nowIndex = this.imgList.findIndex(item => {return item.Key == this.nowUrl})
+      let index = nowIndex >= 1 ? nowIndex : 0;
+      let tempArr1 = this.imgList.slice(0, index);
+      let tempArr2 = this.imgList.slice(index, this.imgList.length);
 
-      let res = tempArr2.concat(tempArr1);
+      let res = tempArr2.concat(tempArr1).map(item => {
+        return `/image-service/common/image_get?systemId=dataPlatform&key=${item.Key}`
+      });
       return res;
     }
   },
   props: {
-    detail: Object,
+    detail: Object
   },
   data() {
     return {
       dialogVisible: false,//全景图弹出框
-      nowUrl: 'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg',//当前正在显示的图
-      url1: 'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg',
-      url2: 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg',
-      url3: 'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg',
-      urls: ['https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg',
-             'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg', 
-             'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg'
-            ]
+      nowUrl: ''//当前正在显示的图
     };
   },
-  created() {
-    console.log(this.detail);
-  },
   methods: {
   },
   watch: {
-    detail: {
-      handler(newName, oldName) {
-        // this.page.pageNumber = 1
-        // this.getTableData()
-      },
-      immediate: true,
-      deep: true
+    'detail.TaskId'() {
+      console.log(this.detail)
     }
   }
 };

+ 78 - 39
src/components/data_admin/buildTask/detail/deviceDetail.vue

@@ -6,8 +6,8 @@
           <el-form-item label="设备基本信息"></el-form-item>
           <el-form-item label="任务创建时间:">{{ detail.CreateTime || '--' }}</el-form-item>
           <el-form-item label="任务当前状态:">{{ detail.TaskState || '--' }}</el-form-item>
-          <el-form-item label="任务执行方案:">{{ detail.TaskId || '--' }}</el-form-item>
-          <el-form-item label="设备类:">{{ detail.EquipCategory.EquipName || '--' }}</el-form-item>
+          <el-form-item label="任务执行方案:">{{ detail.ScanScheme?detail.ScanScheme.SchemeName?detail.ScanScheme.SchemeName:'--':'--' }}</el-form-item>
+          <el-form-item label="设备类:">{{ detail.EquipCategory?detail.EquipCategory.EquipName?detail.EquipCategory.EquipName:'--':'--' }}</el-form-item>
           <el-form-item label="全局名称:">{{ detail.EquipName || '--' }}</el-form-item>
           <el-form-item label="设备本地名称:">{{ detail.EquipLocalName || '--' }}</el-form-item>
           <el-form-item label="设备本地编码:">{{ detail.EquipLocalID || '--' }}</el-form-item>
@@ -31,31 +31,35 @@
           <el-form-item label="执行任务人:">{{ detail.WorkerName || '--' }}</el-form-item>
           <el-form-item label="执行时间:">{{ detail.ProcessTime || '--' }}</el-form-item>
           <el-form-item label="未找到对象信息"></el-form-item>
-          <el-form-item label="部件信息:">
-            <div v-if="detail.ComponentCount && detail.ComponentCount.length">
-              <p v-for="item in detail.ComponentCount?detail.ComponentCount:[]" :key="item.code" show-overflow-tooltip>
-               {{ `${item.name}:${item.count}`}}
+          <el-form-item label="设备信息:" v-if="!detail.isComponent">{{ detail.EquipLocalName || detail.EquipName ||'--' }}</el-form-item>
+          <el-form-item label="部件信息:" v-else>
+            <div v-if="detail.Component && detail.Component.length">
+              <p v-for="item in detail.Component?detail.Component:[]" :key="item.TaskId" show-overflow-tooltip>
+               {{ item.EquipLocalName || item.EquipName }}
               </p>
             </div>
             <div v-else>--</div>
           </el-form-item>
-          <el-form-item label="全景图:">
-            <div class="img-item" @click="dialogVisible = true">
-              <img src="@/assets/house.jpg" style="width:100%;" alt="图片走丢了">
+          <el-form-item label="全景图:" v-show="panoramaList && panoramaList.length">
+            <div class="img-item" @click="dialogVisible = true"  v-for="item in panoramaList" :key="item.Key">
+              <img :src="`/image-service/common/image_get?systemId=dataPlatform&key=${item.Key}`" style="width:100%;" :alt="item.Name">
             </div>
           </el-form-item>
-          <el-form-item label="部件照片:">
+          <el-form-item label="资产照片:" v-show="imgList && imgList.length">
             <div class="img-item">
               <div class="demo-image__preview">
-                <el-image style="width:100%;" @click="nowUrl = url1" :src="url1" :preview-src-list="srcList"></el-image>
-                <el-image style="width:100%;" @click="nowUrl = url2" :src="url2" :preview-src-list="srcList"></el-image>
-                <el-image style="width:100%;" @click="nowUrl = url3" :src="url3" :preview-src-list="srcList"></el-image>
+                <el-image style="width:100%;" v-for="item in imgList"
+                 :key="item.Key" :title="item.Name"
+                 @click="nowUrl = item.Key" 
+                 :src="`/image-service/common/image_get?systemId=dataPlatform&key=${item.Key}&width=400`" 
+                 :preview-src-list="srcList">
+                </el-image>
               </div>
             </div>
           </el-form-item>
-          <el-form-item label="现场视频:">
-            <video controls style="width:100%;">
-              <source src="https://www.runoob.com/try/demo_source/movie.mp4" type="video/mp4">
+          <el-form-item label="现场视频:" v-show="videoList && videoList.length">
+            <video controls style="width:100%;" v-for="item in videoList" :key="item.Key" :title="item.Name">
+              <source :src="`/image-service/common/image_get?systemId=dataPlatform&key=${item.Key}`" type="video/mp4">
               您的浏览器不支持 HTML5 video ,暂无法播放。
             </video>
           </el-form-item>
@@ -105,43 +109,78 @@ export default {
   },
   computed: {
     ...mapGetters("layout", ["projectId"]),
-    srcList: function () {
-      let index = this.urls.indexOf(this.nowUrl) >= 1 ? this.urls.indexOf(this.nowUrl) : 0;
-      //  let temp = this.urls.concat();
-      let temp = this.urls;
-      let tempArr1 = temp.slice(0, index);
-      let tempArr2 = temp.slice(index, temp.length);
+    notFoundList(){
+      if(this.detail && this.detail.Component && this.detail.Component.length){//是否存在部件
+        let index = this.detail.Component.findIndex(item => {return item.TaskState == -1})
+        if(index != -1){//部件中存在未找到的对象
+          this.detail.isComponent = true
+          return this.detail.Component[index].TaskPicList?this.detail.Component[index].TaskPicList:[]
+        } else {//部件全部找到
+          this.detail.isComponent = false
+          return this.detail.TaskPicList?this.detail.TaskPicList:[]
+        }
+      } else {
+        this.detail.isComponent = false
+        if(this.detail && this.detail.TaskPicList && this.detail.TaskPicList.length){
+          return this.detail.TaskPicList
+        } else {
+          return []
+        }
+      }
+    },
+    panoramaList(){
+      if(this.notFoundList && this.notFoundList.length){
+        return this.notFoundList.filter(item => {
+          return item.Type == 'panorama'
+        })
+      } else {
+        return []
+      }
+    },
+    imgList(){
+      if(this.notFoundList && this.notFoundList.length){
+        return this.notFoundList.filter(item => {
+          return item.Type == 'image'
+        })
+      } else {
+        return []
+      }
+    },
+    videoList(){
+      if(this.notFoundList && this.notFoundList.length){
+        return this.notFoundList.filter(item => {
+          return item.Type == 'video'
+        })
+      } else {
+        return []
+      }
+    },
+    srcList(){
+      let nowIndex = this.imgList.findIndex(item => {return item.Key == this.nowUrl})
+      let index = nowIndex >= 1 ? nowIndex : 0;
+      let tempArr1 = this.imgList.slice(0, index);
+      let tempArr2 = this.imgList.slice(index, this.imgList.length);
 
-      let res = tempArr2.concat(tempArr1);
+      let res = tempArr2.concat(tempArr1).map(item => {
+        return `/image-service/common/image_get?systemId=dataPlatform&key=${item.Key}`
+      });
       return res;
     }
   },
   props: {
-    detail: Object,
+    detail: Object
   },
   data() {
     return {
       dialogVisible: false,//全景图弹出框
-      nowUrl: 'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg',//当前正在显示的图
-      url1: 'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg',
-      url2: 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg',
-      url3: 'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg',
-      urls: ['https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg', 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg', 'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg']
+      nowUrl: '',//当前正在显示的图
     };
   },
-  created() {
-    console.log(this.detail);
-  },
   methods: {
   },
   watch: {
-    detail: {
-      handler(newName, oldName) {
-        // this.page.pageNumber = 1
-        // this.getTableData()
-      },
-      immediate: true,
-      deep: true
+    'detail.TaskId'() {
+      console.log(this.detail)
     }
   }
 };

+ 3 - 4
src/components/data_admin/buildTask/table/assetsTable.vue

@@ -79,9 +79,6 @@ export default {
       }, // 列表样式
     };
   },
-  created() {
-    // this.getTableData()
-  },
   methods: {
     // 获取列表数据
     getTableData() {
@@ -91,6 +88,8 @@ export default {
           {
             Name: 'equipFamily'
           }, {
+            Name: 'scanScheme'
+          }, {
             Name: 'building',
           }, {
             Name: 'floor',
@@ -167,7 +166,7 @@ export default {
       })
     },
     //查看任务详情
-    handleDetail(row) {
+    handleDetail(index, row) {
       this.drawer = true
       this.detailAssets = row
     },

+ 2 - 3
src/components/data_admin/buildTask/table/deviceTable.vue

@@ -88,9 +88,6 @@ export default {
       }, // 列表样式
     };
   },
-  created() {
-    // this.getTableData()
-  },
   methods: {
     // 获取列表数据
     getTableData() {
@@ -100,6 +97,8 @@ export default {
           {
             Name: 'component'
           }, {
+            Name: 'scanScheme'
+          }, {
             Name: 'building',
           }, {
             Name: 'floor',

+ 2 - 0
src/components/data_admin/buildTask/table/modelTable.vue

@@ -94,6 +94,8 @@ export default {
           {
             Name: 'component'
           }, {
+            Name: 'scanScheme'
+          }, {
             Name: 'equipCategory'
           }
         ],