Commit cf35daeb98b7dc6e20f8fdab8e8c0202c369c78a

Authored by 648540858
1 parent 0e2908c1

优化大数据下的设备树加载

web_src/src/components/MediaServerManger.vue
@@ -15,7 +15,7 @@ @@ -15,7 +15,7 @@
15 <span style="font-size: 16px">{{item.id}}</span> 15 <span style="font-size: 16px">{{item.id}}</span>
16 <el-button v-if="!item.defaultServer" icon="el-icon-edit" style="padding: 0;float: right;" type="text" @click="edit(item)">编辑</el-button> 16 <el-button v-if="!item.defaultServer" icon="el-icon-edit" style="padding: 0;float: right;" type="text" @click="edit(item)">编辑</el-button>
17 <el-button v-if="item.defaultServer" icon="el-icon-edit" style="padding: 0;float: right;" type="text" @click="edit(item)">查看</el-button> 17 <el-button v-if="item.defaultServer" icon="el-icon-edit" style="padding: 0;float: right;" type="text" @click="edit(item)">查看</el-button>
18 - <el-button icon="el-icon-delete" style="margin-right: 10px;padding: 0;float: right;" type="text" @click="del(item)">移除</el-button> 18 + <el-button v-if="!item.defaultServer" icon="el-icon-delete" style="margin-right: 10px;padding: 0;float: right;" type="text" @click="del(item)">移除</el-button>
19 <div style="margin-top: 13px; line-height: 12px; "> 19 <div style="margin-top: 13px; line-height: 12px; ">
20 <span style="font-size: 14px; color: #999; margin-top: 5px; ">{{item.ip}}</span> 20 <span style="font-size: 14px; color: #999; margin-top: 5px; ">{{item.ip}}</span>
21 <span style="font-size: 14px; color: #999; margin-top: 5px; float: right;">{{item.createTime}}</span> 21 <span style="font-size: 14px; color: #999; margin-top: 5px; float: right;">{{item.createTime}}</span>
web_src/src/components/common/DeviceTree.vue
@@ -84,22 +84,34 @@ export default { @@ -84,22 +84,34 @@ export default {
84 }else { 84 }else {
85 resolve([]) 85 resolve([])
86 } 86 }
  87 + }, (list)=>{
  88 + console.log("设备加载完成")
87 }, (error)=>{ 89 }, (error)=>{
88 90
89 }) 91 })
90 } 92 }
91 if (node.level === 1) { 93 if (node.level === 1) {
92 - this.deviceService.getAllChannel(true, true, node.data.id, (catalogData) => {  
93 - this.deviceService.getAllChannel(false, true, node.data.id, (channelData) => {  
94 - let data = catalogData.concat(channelData)  
95 - this.channelDataHandler(data, resolve) 94 + let channelArray = []
  95 + this.deviceService.getAllChannel(true, true, node.data.id, catalogData =>{
  96 + channelArray = channelArray.concat(catalogData)
  97 + this.channelDataHandler(channelArray, resolve)
  98 + },(endCatalogData) => {
  99 + this.deviceService.getAllChannel(false, true, node.data.id, channelData => {
  100 + channelArray = channelArray.concat(channelData)
  101 + this.channelDataHandler(channelArray, resolve)
  102 + }, endChannelList => {
  103 +
96 }) 104 })
97 }) 105 })
98 }else if (node.level > 1){ 106 }else if (node.level > 1){
  107 + let channelArray = []
99 this.deviceService.getAllSubChannel(true, node.data.deviceId, node.data.id, (catalogData)=>{ 108 this.deviceService.getAllSubChannel(true, node.data.deviceId, node.data.id, (catalogData)=>{
  109 + channelArray = channelArray.concat(catalogData)
  110 + this.channelDataHandler(channelArray, resolve)
  111 + }, (endCatalogData)=>{
100 this.deviceService.getAllSubChannel(false, node.data.deviceId, node.data.id, (channelData)=>{ 112 this.deviceService.getAllSubChannel(false, node.data.deviceId, node.data.id, (channelData)=>{
101 - let data = catalogData.concat(channelData)  
102 - this.channelDataHandler(data, resolve) 113 + channelArray = channelArray.concat(channelData)
  114 + this.channelDataHandler(channelArray, resolve)
103 }) 115 })
104 }) 116 })
105 } 117 }
web_src/src/layout/UiHeader.vue
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 <el-menu router :default-active="activeIndex" menu-trigger="click" background-color="#545c64" text-color="#fff" 3 <el-menu router :default-active="activeIndex" menu-trigger="click" background-color="#545c64" text-color="#fff"
4 active-text-color="#ffd04b" mode="horizontal"> 4 active-text-color="#ffd04b" mode="horizontal">
5 <el-menu-item index="/control">控制台</el-menu-item> 5 <el-menu-item index="/control">控制台</el-menu-item>
6 - <el-menu-item index="/live">实时监控</el-menu-item> 6 + <el-menu-item index="/live">分屏监控</el-menu-item>
7 <el-menu-item index="/deviceList">国标设备</el-menu-item> 7 <el-menu-item index="/deviceList">国标设备</el-menu-item>
8 <el-menu-item index="/map">电子地图</el-menu-item> 8 <el-menu-item index="/map">电子地图</el-menu-item>
9 <el-menu-item index="/pushVideoList">推流列表</el-menu-item> 9 <el-menu-item index="/pushVideoList">推流列表</el-menu-item>