From f082797d9bf323084ebc6216c84eb00f05da868f Mon Sep 17 00:00:00 2001
From: panlinlin <648540858@qq.com>
Date: 星期三, 13 一月 2021 17:08:26 +0800
Subject: [PATCH] 完成向上级联->选择通道-003
---
web_src/src/components/gb28181/chooseChannel.vue | 20 --
src/main/java/com/genersoft/iot/vmp/storager/dao/PatformChannelMapper.java | 37 ++++++
web_src/src/components/ParentPlatformList.vue | 6
src/main/resources/wvp.sqlite | 0
web_src/src/components/gb28181/chooseChannelForGb.vue | 141 +++++++++++++++++++++--
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java | 43 ++++++
README.md | 2
src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorager.java | 14 ++
/dev/null | 7 -
web_src/src/components/channelList.vue | 2
src/main/java/com/genersoft/iot/vmp/vmanager/platform/bean/ChannelReduce.java | 21 +++
src/main/java/com/genersoft/iot/vmp/vmanager/platform/PlatformController.java | 22 +++
src/main/resources/application.yml | 2
src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java | 28 ++-
14 files changed, 285 insertions(+), 60 deletions(-)
diff --git a/README.md b/README.md
index a88ea2d..ab0d0ca 100644
--- a/README.md
+++ b/README.md
@@ -40,7 +40,7 @@
- [X] WEB娣诲姞涓婄骇骞冲彴
- [X] 娉ㄥ唽
- [X] 蹇冭烦淇濇椿
- - [ ] 閫氶亾閫夋嫨
+ - [X] 閫氶亾閫夋嫨
- [ ] 閫氶亾鎺ㄩ��
- [ ] 鐐规挱
- [ ] 浜戝彴鎺у埗
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorager.java b/src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorager.java
index b4d0c9b..9e986db 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorager.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorager.java
@@ -206,9 +206,9 @@
void outlineForAllParentPlatform();
/**
- * 鏌ヨ閫氶亾淇℃伅锛� 涓嶅尯鍒嗚澶�
+ * 鏌ヨ閫氶亾淇℃伅锛屼笉鍖哄垎璁惧(宸插叧鑱斿钩鍙版垨鍏ㄩ儴)
*/
- PageInfo<ChannelReduce> queryChannelListInAll(int page, int count, String query, Boolean online, Boolean channelType, String parentChannelId);
+ PageInfo<ChannelReduce> queryAllChannelList(int page, int count, String query, Boolean online, Boolean channelType, String platformId, Boolean inPlatform);
/**
@@ -218,4 +218,14 @@
* @return
*/
int updateChannelForGB(String platformId, List<ChannelReduce> channelReduces);
+
+ /**
+ * 绉婚櫎涓婄骇骞冲彴鐨勯�氶亾淇℃伅
+ * @param platformId
+ * @param channelReduces
+ * @return
+ */
+ int delChannelForGB(String platformId, List<ChannelReduce> channelReduces);
+
+
}
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java
index ff1a7e1..5b04222 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java
@@ -4,6 +4,7 @@
import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
import com.genersoft.iot.vmp.vmanager.platform.bean.ChannelReduce;
import org.apache.ibatis.annotations.*;
+import org.springframework.stereotype.Repository;
import java.util.List;
@@ -11,6 +12,7 @@
* 鐢ㄤ簬瀛樺偍璁惧閫氶亾淇℃伅
*/
@Mapper
+@Repository
public interface DeviceChannelMapper {
@Insert("INSERT INTO device_channel (channelId, deviceId, name, manufacture, model, owner, civilCode, block, " +
@@ -79,18 +81,22 @@
@Select(value = {" <script>" +
"SELECT * FROM ( "+
- " SELECT dc.channelId, dc.deviceId, dc.name, de.manufacturer, de.hostAddress, " +
- "(SELECT count(0) FROM device_channel WHERE parentId=dc.channelId) as subCount " +
- "FROM device_channel dc LEFT JOIN device de ON dc.deviceId = de.deviceId" +
+ " SELECT dc.channelId, dc.deviceId, dc.name, de.manufacturer, de.hostAddress, " +
+ "(SELECT count(0) FROM device_channel WHERE parentId=dc.channelId) as subCount, " +
+ "pc.platformId " +
+ "FROM device_channel dc " +
+ "LEFT JOIN device de ON dc.deviceId = de.deviceId " +
+ "LEFT JOIN platform_gb_channel pc on pc.deviceId = dc.deviceId AND pc.channelId = dc.channelId " +
+ " WHERE 1=1 " +
+ " <if test=\"query != null\"> AND (dc.channelId LIKE '%${query}%' OR dc.name LIKE '%${query}%' OR dc.name LIKE '%${query}%')</if> " +
+ " <if test=\"online == true\" > AND dc.status=1</if> " +
+ " <if test=\"online == false\" > AND dc.status=0</if> " +
+ " <if test=\"platformId != null and inPlatform == true\"> AND pc.platformId=#{platformId} </if> " +
+ ") dcr" +
" WHERE 1=1 " +
- " <if test=\"query != null\"> AND (dc.channelId LIKE '%${query}%' OR dc.name LIKE '%${query}%' OR dc.name LIKE '%${query}%')</if> " +
- " <if test=\"parentChannelId != null\"> AND dc.parentId=#{parentChannelId} </if> " +
- " <if test=\"online == true\" > AND dc.status=1</if>" +
- " <if test=\"online == false\" > AND dc.status=0</if>) dcr" +
- " WHERE 1=1 " +
- " <if test=\"hasSubChannel == true\" > AND subCount >0</if>" +
- " <if test=\"hasSubChannel == false\" > AND subCount=0</if>" +
+ " <if test=\"hasSubChannel!= null and hasSubChannel == true\" > AND subCount >0</if> " +
+ " <if test=\"hasSubChannel!= null and hasSubChannel == false\" > AND subCount=0</if> " +
" </script>"})
- List<ChannelReduce> queryChannelListInAll(String query, Boolean online, Boolean hasSubChannel, String parentChannelId);
+ List<ChannelReduce> queryChannelListInAll(String query, Boolean online, Boolean hasSubChannel, String platformId, Boolean inPlatform);
}
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/PatformChannelMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/PatformChannelMapper.java
new file mode 100644
index 0000000..00b1260
--- /dev/null
+++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/PatformChannelMapper.java
@@ -0,0 +1,37 @@
+package com.genersoft.iot.vmp.storager.dao;
+
+import com.genersoft.iot.vmp.vmanager.platform.bean.ChannelReduce;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Insert;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+@Mapper
+@Repository
+public interface PatformChannelMapper {
+
+ /**
+ * 鏌ヨ鍒楄〃閲屽凡缁忓叧鑱旂殑
+ */
+ @Select("<script> "+
+ "SELECT deviceAndChannelId FROM platform_gb_channel WHERE platformId='${platformId}' AND deviceAndChannelId in" +
+ "<foreach collection='deviceAndChannelIds' open='(' item='id_' separator=',' close=')'> '${id_}'</foreach>" +
+ "</script>")
+ List<String> findChannelRelatedPlatform(String platformId, List<String> deviceAndChannelIds);
+
+ @Insert("<script> "+
+ "INSERT INTO platform_gb_channel (channelId, deviceId, platformId, deviceAndChannelId) VALUES" +
+ "<foreach collection='channelReducesToAdd' item='item' separator=','> ('${item.channelId}','${item.deviceId}', '${platformId}', '${item.deviceId}_${item.channelId}' )</foreach>" +
+ "</script>")
+ int addChannels(String platformId, List<ChannelReduce> channelReducesToAdd);
+
+
+ @Delete("<script> "+
+ "DELETE FROM platform_gb_channel WHERE deviceAndChannelId in" +
+ "<foreach collection='channelReducesToDel' item='item' open='(' separator=',' close=')' > '${item.deviceId}_${item.channelId}'</foreach>" +
+ "</script>")
+ int delChannelForGB(String platformId, List<ChannelReduce> channelReducesToDel);
+}
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/patformChannelMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/patformChannelMapper.java
deleted file mode 100644
index 9b10ece..0000000
--- a/src/main/java/com/genersoft/iot/vmp/storager/dao/patformChannelMapper.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.genersoft.iot.vmp.storager.dao;
-
-import org.mapstruct.Mapper;
-
-@Mapper
-public interface patformChannelMapper {
-}
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java b/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
index 546a3e4..aed3026 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
@@ -9,6 +9,7 @@
import com.genersoft.iot.vmp.storager.dao.DeviceChannelMapper;
import com.genersoft.iot.vmp.storager.dao.DeviceMapper;
import com.genersoft.iot.vmp.storager.dao.ParentPlatformMapper;
+import com.genersoft.iot.vmp.storager.dao.PatformChannelMapper;
import com.genersoft.iot.vmp.vmanager.platform.bean.ChannelReduce;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
@@ -38,6 +39,9 @@
@Autowired
private IRedisCatchStorage redisCatchStorage;
+
+ @Autowired
+ private PatformChannelMapper patformChannelMapper;
@@ -275,17 +279,46 @@
@Override
- public PageInfo<ChannelReduce> queryChannelListInAll(int page, int count, String query, Boolean online,
- Boolean channelType, String parentChannelId) {
+ public PageInfo<ChannelReduce> queryAllChannelList(int page, int count, String query, Boolean online,
+ Boolean channelType, String platformId, Boolean inPlatform) {
PageHelper.startPage(page, count);
- List<ChannelReduce> all = deviceChannelMapper.queryChannelListInAll(query, online, channelType, parentChannelId);
+ List<ChannelReduce> all = deviceChannelMapper.queryChannelListInAll(query, online, channelType, platformId, inPlatform);
return new PageInfo<>(all);
}
- @Transactional
@Override
public int updateChannelForGB(String platformId, List<ChannelReduce> channelReduces) {
- return 0;
+
+ Map<String, ChannelReduce> deviceAndChannels = new HashMap<>();
+ for (ChannelReduce channelReduce : channelReduces) {
+ deviceAndChannels.put(channelReduce.getDeviceId() + "_" + channelReduce.getChannelId(), channelReduce);
+ }
+ List<String> deviceAndChannelList = new ArrayList<>(deviceAndChannels.keySet());
+ // 鏌ヨ褰撳墠宸茬粡瀛樺湪鐨�
+ List<String> relatedPlatformchannels = patformChannelMapper.findChannelRelatedPlatform(platformId, deviceAndChannelList);
+ if (relatedPlatformchannels != null) {
+ deviceAndChannelList.removeAll(relatedPlatformchannels);
+ }
+ for (String relatedPlatformchannel : relatedPlatformchannels) {
+ deviceAndChannels.remove(relatedPlatformchannel);
+ }
+ List<ChannelReduce> channelReducesToAdd = new ArrayList<>(deviceAndChannels.values());
+ // 瀵瑰墿涓嬬殑鏁版嵁杩涜瀛樺偍
+ int result = 0;
+ if (channelReducesToAdd.size() > 0) {
+ result = patformChannelMapper.addChannels(platformId, channelReducesToAdd);
+ }
+
+ return result;
+ }
+
+
+ @Override
+ public int delChannelForGB(String platformId, List<ChannelReduce> channelReduces) {
+
+ int result = patformChannelMapper.delChannelForGB(platformId, channelReduces);
+
+ return result;
}
}
diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/platform/PlatformController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/platform/PlatformController.java
index 0823c49..a75d753 100644
--- a/src/main/java/com/genersoft/iot/vmp/vmanager/platform/PlatformController.java
+++ b/src/main/java/com/genersoft/iot/vmp/vmanager/platform/PlatformController.java
@@ -151,15 +151,21 @@
@RequestMapping("/platforms/channelList")
@ResponseBody
public PageInfo<ChannelReduce> channelList(int page, int count,
+ @RequestParam(required = false) String platformId,
@RequestParam(required = false) String query,
@RequestParam(required = false) Boolean online,
+ @RequestParam(required = false) Boolean choosed,
@RequestParam(required = false) Boolean channelType){
if (logger.isDebugEnabled()) {
logger.debug("鏌ヨ鎵�鏈夋墍鏈夐�氶亾API璋冪敤");
}
-
- PageInfo<ChannelReduce> channelReduces = storager.queryChannelListInAll(page, count, query, online, channelType, null);
+ PageInfo<ChannelReduce> channelReduces = null;
+ if (platformId != null ) {
+ channelReduces = storager.queryAllChannelList(page, count, query, online, channelType, platformId, choosed);
+ }else {
+ channelReduces = storager.queryAllChannelList(page, count, query, online, channelType, null, false);
+ }
return channelReduces;
}
@@ -177,5 +183,17 @@
return new ResponseEntity<>(String.valueOf(result > 0), HttpStatus.OK);
}
+ @RequestMapping("/platforms/delChannelForGB")
+ @ResponseBody
+ public ResponseEntity<String> delChannelForGB(@RequestBody UpdateChannelParam param){
+
+ if (logger.isDebugEnabled()) {
+ logger.debug("缁欎笂绾у钩鍙版坊鍔犲浗鏍囬�氶亾API璋冪敤");
+ }
+ int result = storager.delChannelForGB(param.getPlatformId(), param.getChannelReduces());
+
+ return new ResponseEntity<>(String.valueOf(result > 0), HttpStatus.OK);
+ }
+
}
diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/platform/bean/ChannelReduce.java b/src/main/java/com/genersoft/iot/vmp/vmanager/platform/bean/ChannelReduce.java
index 275e0f7..cf62650 100644
--- a/src/main/java/com/genersoft/iot/vmp/vmanager/platform/bean/ChannelReduce.java
+++ b/src/main/java/com/genersoft/iot/vmp/vmanager/platform/bean/ChannelReduce.java
@@ -35,6 +35,11 @@
*/
private int subCount;
+ /**
+ * 骞冲彴Id
+ */
+ private String platformId;
+
public String getChannelId() {
return channelId;
@@ -75,4 +80,20 @@
public void setHostAddress(String hostAddress) {
this.hostAddress = hostAddress;
}
+
+ public int getSubCount() {
+ return subCount;
+ }
+
+ public void setSubCount(int subCount) {
+ this.subCount = subCount;
+ }
+
+ public String getPlatformId() {
+ return platformId;
+ }
+
+ public void setPlatformId(String platformId) {
+ this.platformId = platformId;
+ }
}
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index caf4dfc..ef46c2a 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,3 +1,3 @@
spring:
profiles:
- active: dev
\ No newline at end of file
+ active: local
\ No newline at end of file
diff --git a/src/main/resources/wvp.sqlite b/src/main/resources/wvp.sqlite
index b72a373..3694bad 100644
--- a/src/main/resources/wvp.sqlite
+++ b/src/main/resources/wvp.sqlite
Binary files differ
diff --git a/web_src/src/components/ParentPlatformList.vue b/web_src/src/components/ParentPlatformList.vue
index 98907db..37b8b8f 100644
--- a/web_src/src/components/ParentPlatformList.vue
+++ b/web_src/src/components/ParentPlatformList.vue
@@ -89,9 +89,9 @@
};
},
computed: {
-
+
getcurrentDeviceChannels: function() {
-
+
}
},
mounted() {
@@ -155,7 +155,7 @@
getPlatformList: function() {
let that = this;
- this.$axios.get(`/api/platforms/${that.count}/${that.currentPage - 1}`)
+ this.$axios.get(`/api/platforms/${that.count}/${that.currentPage}`)
.then(function (res) {
that.total = res.data.total;
that.platformList = res.data.list;
diff --git a/web_src/src/components/channelList.vue b/web_src/src/components/channelList.vue
index a6a5bd6..943fe3a 100644
--- a/web_src/src/components/channelList.vue
+++ b/web_src/src/components/channelList.vue
@@ -110,7 +110,7 @@
if (this.autoList) {
this.updateLooper = setInterval(this.initData, 5000);
}
-
+
},
destroyed() {
this.$destroy('videojs');
diff --git a/web_src/src/components/gb28181/chooseChannel.vue b/web_src/src/components/gb28181/chooseChannel.vue
index 9796eb4..62b39dc 100644
--- a/web_src/src/components/gb28181/chooseChannel.vue
+++ b/web_src/src/components/gb28181/chooseChannel.vue
@@ -4,17 +4,13 @@
<el-dialog title="閫夋嫨閫氶亾" top="2rem" width="70%" :close-on-click-modal="false" :visible.sync="showDialog" :destroy-on-close="true" @close="close()">
<el-tabs v-model="tabActiveName" >
<el-tab-pane label="鍥芥爣閫氶亾" name="gbChannel">
-
<el-container>
<el-main style="background-color: #FFF;">
- <chooseChannelForGb :chooseChanage=chooseChanage ></chooseChannelForGb>
+ <chooseChannelForGb :platformId=platformId ></chooseChannelForGb>
</el-main>
- <el-footer>
- <el-button size="mini" type="primary" style="float: right" @click="save()">淇濆瓨</el-button>
- </el-footer>
</el-container>
-
-
+
+
</el-tab-pane>
<el-tab-pane label="鐩存挱娴侀�氶亾" name="streamchannel">
<!-- TODO -->
@@ -41,7 +37,6 @@
// };
// }
},
- created() {},
data() {
return {
isLoging: false,
@@ -49,12 +44,11 @@
platformId: "",
isLoging: false,
showDialog: false,
- chooseData: []
-
+ chooseData: {}
+
};
},
methods: {
-
openDialog: function (platformId, closeCallback) {
console.log(platformId)
this.platformId = platformId
@@ -88,10 +82,6 @@
}).catch(function (error) {
console.log(error);
});
- },
- chooseChanage: function(val) {
- console.log(val)
- this.chooseData = val;
}
}
};
diff --git a/web_src/src/components/gb28181/chooseChannelForGb.vue b/web_src/src/components/gb28181/chooseChannelForGb.vue
index 3e488fe..c57fe17 100644
--- a/web_src/src/components/gb28181/chooseChannelForGb.vue
+++ b/web_src/src/components/gb28181/chooseChannelForGb.vue
@@ -3,19 +3,28 @@
<div style="background-color: #FFFFFF; margin-bottom: 1rem; position: relative; padding: 0.5rem; text-align: left;font-size: 14px;">
鎼滅储: <el-input @input="search" style="margin-right: 1rem; width: auto;" size="mini" placeholder="鍏抽敭瀛�" prefix-icon="el-icon-search" v-model="searchSrt" clearable> </el-input>
- 閫氶亾绫诲瀷: <el-select size="mini" @change="search" style="margin-right: 1rem;" v-model="channelType" placeholder="璇烽�夋嫨" default-first-option>
+ 閫氶亾绫诲瀷: <el-select size="mini" @change="search" style="margin-right: 1rem; width:6rem" v-model="channelType" placeholder="璇烽�夋嫨" default-first-option>
<el-option label="鍏ㄩ儴" value=""></el-option>
<el-option label="璁惧" value="false"></el-option>
<el-option label="瀛愮洰褰�" value="true"></el-option>
</el-select>
- 鍦ㄧ嚎鐘舵��: <el-select size="mini" style="margin-right: 1rem;" @change="search" v-model="online" placeholder="璇烽�夋嫨" default-first-option>
+
+ 閫夋嫨鐘舵��: <el-select size="mini" style="margin-right: 1rem; width:6rem" v-model="choosed" @change="search" placeholder="璇烽�夋嫨" default-first-option>
+ <el-option label="鍏ㄩ儴" value=""></el-option>
+ <el-option label="宸查�夋嫨" value="true"></el-option>
+ <el-option label="鏈�夋嫨" value="false"></el-option>
+ </el-select>
+
+ 鍦ㄧ嚎鐘舵��: <el-select size="mini" style="margin-right: 1rem; width:6rem" @change="search" v-model="online" placeholder="璇烽�夋嫨" default-first-option>
<el-option label="鍏ㄩ儴" value=""></el-option>
<el-option label="鍦ㄧ嚎" value="true"></el-option>
<el-option label="绂荤嚎" value="false"></el-option>
</el-select>
+
+ <el-checkbox @change="shareAllCheckedChanage">鍏ㄩ儴鍏变韩</el-checkbox>
</div>
- <el-table ref="gbChannelsTable" :data="gbChannels" border style="width: 100%" @selection-change="chooseChanage" >
- <el-table-column type="selection" width="55" align="center" fixed> </el-table-column>
+ <el-table ref="gbChannelsTable" :data="gbChannels" border style="width: 100%" @selection-change="checkedChanage" >
+ <el-table-column type="selection" width="55" align="center" fixed > </el-table-column>
<el-table-column prop="channelId" label="閫氶亾缂栧彿" width="210">
</el-table-column>
<el-table-column prop="name" label="閫氶亾鍚嶇О">
@@ -50,21 +59,31 @@
// };
// }
},
- props: ['chooseChanage'],
+ props: ['platformId'],
created() {
this.initData();
},
data() {
return {
gbChannels: [],
+ gbChoosechannel:{},
searchSrt: "",
channelType: "",
online: "",
- currentPage: parseInt(this.$route.params.page),
- count: parseInt(this.$route.params.count),
- total: 0
-
+ choosed: "",
+ currentPage: 0,
+ count: 15,
+ total: 0,
+ eventEnanle: false
+
};
+ },
+ watch:{
+ platformId(newData, oldData){
+ console.log(newData)
+ this.initData()
+
+ },
},
methods: {
initData: function() {
@@ -75,30 +94,128 @@
this.initData();
},
handleSizeChange: function (val) {
- this.count = val;
+ this.count = val;
+ console.log(val)
this.initData();
+ },
+ rowcheckedChanage: function (val, row) {
+ console.log(val)
+ console.log(row)
+ },
+ checkedChanage: function (val) {
+ var that = this;
+ if (!that.eventEnanle) {
+ return;
+ }
+ var tabelData = JSON.parse(JSON.stringify(this.$refs.gbChannelsTable.data));
+ console.log("checkedChanage")
+ console.log(val)
+
+ var newData = {};
+ var addData = [];
+ var delData = [];
+ if (val.length > 0) {
+ for (let i = 0; i < val.length; i++) {
+ const element = val[i];
+ var key = element.deviceId + "_" + element.channelId;
+ newData[key] = element;
+ if (!!!that.gbChoosechannel[key]){
+ addData.push(element)
+ }else{
+ delete that.gbChoosechannel[key]
+ }
+ }
+
+ var oldKeys = Object.keys(that.gbChoosechannel);
+ if (oldKeys.length > 0) {
+ for (let i = 0; i < oldKeys.length; i++) {
+ const key = oldKeys[i];
+ delData.push(that.gbChoosechannel[key])
+ }
+ }
+
+ }else{
+ var oldKeys = Object.keys(that.gbChoosechannel);
+ if (oldKeys.length > 0) {
+ for (let i = 0; i < oldKeys.length; i++) {
+ const key = oldKeys[i];
+ delData.push(that.gbChoosechannel[key])
+ }
+ }
+ }
+
+ that.gbChoosechannel = newData;
+ if (Object.keys(addData).length >0) {
+ that.$axios({
+ method:"post",
+ url:"/api/platforms/updateChannelForGB",
+ data:{
+ platformId: that.platformId,
+ channelReduces: addData
+ }
+ }).then((res)=>{
+ console.log("淇濆瓨鎴愬姛")
+ }).catch(function (error) {
+ console.log(error);
+ });
+ }
+ if (Object.keys(delData).length >0) {
+ that.$axios({
+ method:"post",
+ url:"/api/platforms/delChannelForGB",
+ data:{
+ platformId: that.platformId,
+ channelReduces: delData
+ }
+ }).then((res)=>{
+ console.log("绉婚櫎鎴愬姛")
+ }).catch(function (error) {
+ console.log(error);
+ });
+ }
+
+ },
+ shareAllCheckedChanage: function (val) {
+ this.chooseChanage(null, val)
},
getChannelList: function () {
let that = this;
this.$axios.get(`/api/platforms/channelList`, {
params: {
- page: that.currentPage - 1,
+ page: that.currentPage,
count: that.count,
query: that.searchSrt,
online: that.online,
+ choosed: that.choosed,
+ platformId: that.platformId,
channelType: that.channelType
}
})
.then(function (res) {
- console.log(res);
that.total = res.data.total;
that.gbChannels = res.data.list;
+ that.gbChoosechannel = {};
// 闃叉鍑虹幇琛ㄦ牸閿欎綅
that.$nextTick(() => {
that.$refs.gbChannelsTable.doLayout();
+ // 榛樿閫変腑
+ var chooseGBS = [];
+ for (let i = 0; i < res.data.list.length; i++) {
+ const row = res.data.list[i];
+ console.log(row.platformId)
+ if (row.platformId == that.platformId) {
+ that.$refs.gbChannelsTable.toggleRowSelection(row, true);
+ chooseGBS.push(row)
+ that.gbChoosechannel[row.deviceId+ "_" + row.channelId] = row;
+
+ }
+ }
+ that.eventEnanle = true;
+ // that.checkedChanage(chooseGBS)
})
+ console.log(that.gbChoosechannel)
})
.catch(function (error) {
console.log(error);
--
Gitblit v1.8.0