优化级联选择通道页面添加方式
This commit is contained in:
parent
7e45f9dc8a
commit
194f901847
@ -92,7 +92,7 @@ public class CatalogEventLister implements ApplicationListener<CatalogEvent> {
|
||||
if (event.getDeviceChannels() != null) {
|
||||
deviceChannelList.addAll(event.getDeviceChannels());
|
||||
}
|
||||
if (event.getGbStreams().size() > 0){
|
||||
if (event.getGbStreams() != null && event.getGbStreams().size() > 0){
|
||||
for (GbStream gbStream : event.getGbStreams()) {
|
||||
DeviceChannel deviceChannelByStream = gbStreamService.getDeviceChannelListByStream(gbStream, gbStream.getCatalogId(), parentPlatform.getDeviceGBId());
|
||||
deviceChannelList.add(deviceChannelByStream);
|
||||
@ -131,7 +131,7 @@ public class CatalogEventLister implements ApplicationListener<CatalogEvent> {
|
||||
if (event.getDeviceChannels() != null) {
|
||||
deviceChannelList.addAll(event.getDeviceChannels());
|
||||
}
|
||||
if (event.getGbStreams().size() > 0){
|
||||
if (event.getGbStreams() != null && event.getGbStreams().size() > 0){
|
||||
for (GbStream gbStream : event.getGbStreams()) {
|
||||
DeviceChannel deviceChannelByStream = gbStreamService.getDeviceChannelListByStream(gbStream, gbStream.getCatalogId(), parentPlatform.getDeviceGBId());
|
||||
deviceChannelList.add(deviceChannelByStream);
|
||||
|
@ -466,4 +466,8 @@ public interface IVideoManagerStorager {
|
||||
List<ParentPlatform> queryPlatFormListForStreamWithGBId(String app, String stream, List<String> platforms);
|
||||
|
||||
GbStream getGbStream(String app, String streamId);
|
||||
|
||||
void delCatalogByPlatformId(String serverGBId);
|
||||
|
||||
void delRelationByPlatformId(String serverGBId);
|
||||
}
|
||||
|
@ -88,4 +88,9 @@ public interface PlatformChannelMapper {
|
||||
"<foreach collection='platforms' item='item' open='(' separator=',' close=')' > #{item}</foreach>" +
|
||||
"</script> ")
|
||||
List<ParentPlatform> queryPlatFormListForGBWithGBId(String channelId, List<String> platforms);
|
||||
|
||||
@Delete("<script> " +
|
||||
"DELETE FROM platform_gb_channel WHERE platformId=#{serverGBId}" +
|
||||
"</script>")
|
||||
void delByPlatformId(String serverGBId);
|
||||
}
|
||||
|
@ -52,7 +52,7 @@ public interface PlatformGbStreamMapper {
|
||||
"from gb_stream gs\n" +
|
||||
" left join platform_gb_stream pgs\n" +
|
||||
" on gs.app = pgs.app and gs.stream = pgs.stream\n" +
|
||||
"where and pgs.platformId=#{platformId} and pgs.catalogId=#{catalogId}")
|
||||
"where pgs.platformId=#{platformId} and pgs.catalogId=#{catalogId}")
|
||||
List<PlatformCatalog> queryChannelInParentPlatformAndCatalogForCatalog(String platformId, String catalogId);
|
||||
|
||||
@Delete("DELETE FROM platform_gb_stream WHERE catalogId=#{id}")
|
||||
|
@ -1044,4 +1044,15 @@ public class VideoManagerStoragerImpl implements IVideoManagerStorager {
|
||||
public GbStream getGbStream(String app, String streamId) {
|
||||
return gbStreamMapper.selectOne(app, streamId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void delCatalogByPlatformId(String serverGBId) {
|
||||
catalogMapper.delByPlatformId(serverGBId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void delRelationByPlatformId(String serverGBId) {
|
||||
platformGbStreamMapper.delByPlatformId(serverGBId);
|
||||
platformChannelMapper.delByPlatformId(serverGBId);
|
||||
}
|
||||
}
|
||||
|
@ -172,6 +172,8 @@ public class PlatformController {
|
||||
}));
|
||||
|
||||
boolean deleteResult = storager.deleteParentPlatform(parentPlatform);
|
||||
storager.delCatalogByPlatformId(parentPlatform.getServerGBId());
|
||||
storager.delRelationByPlatformId(parentPlatform.getServerGBId());
|
||||
|
||||
|
||||
if (deleteResult) {
|
||||
|
@ -131,11 +131,9 @@ export default {
|
||||
this.$refs.chooseChannelFoStream.catalogIdChange(id);
|
||||
}
|
||||
},
|
||||
updateChooseChannelCallback (id, nodeIds){
|
||||
updateChooseChannelCallback (id){
|
||||
console.log("中间模块收到选择通道变化: " + id)
|
||||
console.log("中间模块收到选择通道变化: " + nodeIds)
|
||||
console.log("中间模块收到选择通道变化: " + typeof (nodeIds))
|
||||
this.$refs.chooseChannelForCatalog.refreshCatalogById(id, nodeIds)
|
||||
this.$refs.chooseChannelForCatalog.refreshCatalogById(id)
|
||||
}
|
||||
}
|
||||
};
|
||||
|
@ -121,25 +121,23 @@ export default {
|
||||
node.loaded = false
|
||||
node.expand();
|
||||
},
|
||||
refreshCatalogById: function (id, nodeIds) {
|
||||
refreshCatalogById: function (id) {
|
||||
if (id) {
|
||||
console.log("refreshCatalogById: " + id)
|
||||
let node = this.$refs.tree.getNode(id);
|
||||
console.log(node)
|
||||
this.refreshCatalog(node);
|
||||
}
|
||||
if (nodeIds !== null) {
|
||||
let refreshNode = {}
|
||||
for (let i = 0; i < nodeIds.length; i++) {
|
||||
let node = this.$refs.tree.getNode(nodeIds[i]);
|
||||
refreshNode[node.parent.data.id] = node.parent
|
||||
}
|
||||
if (Object.values(refreshNode).length > 0) {
|
||||
for (let j = 0; j < Object.values(refreshNode).length; j++) {
|
||||
this.refreshCatalog(Object.values(refreshNode)[j]);
|
||||
}
|
||||
}
|
||||
}
|
||||
// if (nodeIds !== null) {
|
||||
// let refreshNode = {}
|
||||
// for (let i = 0; i < nodeIds.length; i++) {
|
||||
// let node = this.$refs.tree.getNode(nodeIds[i]);
|
||||
// refreshNode[node.parent.data.id] = node.parent
|
||||
// }
|
||||
// if (Object.values(refreshNode).length > 0) {
|
||||
// for (let j = 0; j < Object.values(refreshNode).length; j++) {
|
||||
// this.refreshCatalog(Object.values(refreshNode)[j]);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
},
|
||||
editCatalog: function (data, node){
|
||||
let that = this;
|
||||
|
@ -21,10 +21,9 @@
|
||||
<el-option label="离线" value="false"></el-option>
|
||||
</el-select>
|
||||
|
||||
<el-checkbox @change="shareAllCheckedChange">全部共享</el-checkbox>
|
||||
<!-- <el-checkbox @change="shareAllCheckedChange">全部共享</el-checkbox>-->
|
||||
</div>
|
||||
<el-table ref="gbChannelsTable" :data="gbChannels" border style="width: 100%" @selection-change="checkedChange" :height="winHeight">
|
||||
<el-table-column type="selection" width="55" align="center" fixed > </el-table-column>
|
||||
<el-table ref="gbChannelsTable" :data="gbChannels" border style="width: 100%" :height="winHeight">
|
||||
<el-table-column prop="channelId" label="通道编号" width="210">
|
||||
</el-table-column>
|
||||
<el-table-column prop="name" label="通道名称" show-overflow-tooltip>
|
||||
@ -40,6 +39,14 @@
|
||||
</el-table-column>
|
||||
<el-table-column prop="manufacturer" label="厂家" align="center">
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="100" align="center" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<el-button-group>
|
||||
<el-button size="mini" icon="el-icon-plus" v-if="!scope.row.platformId" @click="add(scope.row)">添加</el-button>
|
||||
<el-button size="mini" icon="el-icon-delete" v-if="scope.row.platformId" type="danger" @click="remove(scope.row)">移除</el-button>
|
||||
</el-button-group>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-pagination style="float: right;margin-top: 1rem;" @size-change="handleSizeChange" @current-change="currentChange" :current-page="currentPage" :page-size="count" :page-sizes="[10, 20, 30, 50]" layout="total, sizes, prev, pager, next" :total="total">
|
||||
</el-pagination>
|
||||
@ -108,6 +115,45 @@ export default {
|
||||
// return false;
|
||||
// }
|
||||
// },
|
||||
add: function (row) {
|
||||
console.log(row)
|
||||
row.catalogId = this.catalogId
|
||||
row.platformId = this.platformId
|
||||
this.$axios({
|
||||
method:"post",
|
||||
url:"/api/platform/update_channel_for_gb",
|
||||
data:{
|
||||
platformId: this.platformId,
|
||||
channelReduces: [row],
|
||||
catalogId: this.catalogId
|
||||
}
|
||||
}).then((res)=>{
|
||||
console.log("保存成功")
|
||||
if(this.updateChoosedCallback)this.updateChoosedCallback(this.catalogId)
|
||||
}).catch(function (error) {
|
||||
console.log(error);
|
||||
});
|
||||
},
|
||||
remove: function (row) {
|
||||
console.log(row)
|
||||
|
||||
this.$axios({
|
||||
method:"delete",
|
||||
url:"/api/platform/del_channel_for_gb",
|
||||
data:{
|
||||
platformId: this.platformId,
|
||||
channelReduces: [row]
|
||||
}
|
||||
}).then((res)=>{
|
||||
console.log("移除成功")
|
||||
let nodeIds = new Array();
|
||||
if(this.updateChoosedCallback)this.updateChoosedCallback(row.catalogId)
|
||||
row.platformId = null;
|
||||
row.catalogId = null
|
||||
}).catch(function (error) {
|
||||
console.log(error);
|
||||
});
|
||||
},
|
||||
checkedChange: function (val) {
|
||||
let that = this;
|
||||
if (!that.eventEnanle) {
|
||||
@ -182,10 +228,9 @@ export default {
|
||||
console.log(error);
|
||||
});
|
||||
}
|
||||
|
||||
},
|
||||
shareAllCheckedChange: function (val) {
|
||||
this.chooseChanage(null, val)
|
||||
|
||||
},
|
||||
getChannelList: function () {
|
||||
let that = this;
|
||||
|
@ -1,7 +1,6 @@
|
||||
<template>
|
||||
<div id="chooseChannelFoStream" >
|
||||
<el-table ref="gbStreamsTable" :data="gbStreams" border style="width: 100%" @selection-change="checkedChanage" :height="winHeight">
|
||||
<el-table-column type="selection" width="55" align="center" fixed > </el-table-column>
|
||||
<el-table ref="gbStreamsTable" :data="gbStreams" border style="width: 100%" :height="winHeight">
|
||||
<el-table-column prop="name" label="名称" show-overflow-tooltip>
|
||||
</el-table-column>
|
||||
<el-table-column prop="app" label="应用名" show-overflow-tooltip>
|
||||
@ -18,6 +17,14 @@
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="100" align="center" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<el-button-group>
|
||||
<el-button size="mini" icon="el-icon-plus" v-if="!scope.row.platformId" @click="add(scope.row)">添加</el-button>
|
||||
<el-button size="mini" icon="el-icon-delete" v-if="scope.row.platformId" type="danger" @click="remove(scope.row)">移除</el-button>
|
||||
</el-button-group>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-pagination style="float: right;margin-top: 1rem;" @size-change="handleSizeChange" @current-change="currentChange" :current-page="currentPage" :page-size="count" :page-sizes="[10, 20, 30, 50]" layout="total, sizes, prev, pager, next" :total="total">
|
||||
</el-pagination>
|
||||
@ -82,14 +89,49 @@ export default {
|
||||
console.log(val)
|
||||
console.log(row)
|
||||
},
|
||||
add: function (row) {
|
||||
console.log(row)
|
||||
row.catalogId = this.catalogId
|
||||
row.platformId = this.platformId
|
||||
this.$axios({
|
||||
method:"post",
|
||||
url:"/api/gbStream/add",
|
||||
data:{
|
||||
platformId: this.platformId,
|
||||
catalogId: this.catalogId,
|
||||
gbStreams: [row],
|
||||
}
|
||||
}).then((res)=>{
|
||||
console.log("保存成功")
|
||||
if(this.updateChoosedCallback)this.updateChoosedCallback(this.catalogId)
|
||||
}).catch(function (error) {
|
||||
console.log(error);
|
||||
});
|
||||
},
|
||||
remove: function (row) {
|
||||
console.log(row)
|
||||
|
||||
this.$axios({
|
||||
method:"delete",
|
||||
url:"/api/gbStream/del",
|
||||
data:{
|
||||
platformId: this.platformId,
|
||||
gbStreams: [row],
|
||||
}
|
||||
}).then((res)=>{
|
||||
console.log("移除成功")
|
||||
if(this.updateChoosedCallback)this.updateChoosedCallback(row.catalogId)
|
||||
row.platformId = null;
|
||||
row.catalogId = null
|
||||
}).catch(function (error) {
|
||||
console.log(error);
|
||||
});
|
||||
},
|
||||
checkedChanage: function (val) {
|
||||
var that = this;
|
||||
if (!that.eventEnanle) {
|
||||
return;
|
||||
}
|
||||
var tabelData = JSON.parse(JSON.stringify(this.$refs.gbStreamsTable.data));
|
||||
console.log("checkedChanage")
|
||||
console.log(val)
|
||||
|
||||
var newData = {};
|
||||
var addData = [];
|
||||
|
Loading…
Reference in New Issue
Block a user