临时提交
This commit is contained in:
@@ -4,16 +4,18 @@
|
||||
<div class="page-header">
|
||||
<div class="page-title">上级平台列表</div>
|
||||
<div class="page-header-btn">
|
||||
<el-button icon="el-icon-plus" size="mini" style="margin-right: 1rem;" type="primary" @click="addParentPlatform">添加</el-button>
|
||||
<el-button icon="el-icon-plus" size="mini" style="margin-right: 1rem;" type="primary"
|
||||
@click="addParentPlatform">添加
|
||||
</el-button>
|
||||
<el-button icon="el-icon-refresh-right" circle size="mini" @click="refresh()"></el-button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--设备列表-->
|
||||
<el-table size="medium" :data="platformList" style="width: 100%" :height="winHeight">
|
||||
<el-table-column prop="name" label="名称" ></el-table-column>
|
||||
<el-table size="medium" :data="platformList" style="width: 100%" :height="winHeight" :loading="loading">
|
||||
<el-table-column prop="name" label="名称"></el-table-column>
|
||||
<el-table-column prop="serverGBId" label="平台编号" min-width="200"></el-table-column>
|
||||
<el-table-column label="是否启用" min-width="80" >
|
||||
<el-table-column label="是否启用" min-width="80">
|
||||
<template slot-scope="scope">
|
||||
<div slot="reference" class="name-wrapper">
|
||||
<el-tag size="medium" v-if="scope.row.enable">已启用</el-tag>
|
||||
@@ -21,7 +23,7 @@
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="状态" min-width="80" >
|
||||
<el-table-column label="状态" min-width="80">
|
||||
<template slot-scope="scope">
|
||||
<div slot="reference" class="name-wrapper">
|
||||
<el-tag size="medium" v-if="scope.row.status">在线</el-tag>
|
||||
@@ -29,33 +31,42 @@
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="地址" min-width="160" >
|
||||
<el-table-column label="地址" min-width="160">
|
||||
<template slot-scope="scope">
|
||||
<div slot="reference" class="name-wrapper">
|
||||
<el-tag size="medium">{{ scope.row.serverIp}}:{{scope.row.serverPort }}</el-tag>
|
||||
<el-tag size="medium">{{ scope.row.serverIp }}:{{ scope.row.serverPort }}</el-tag>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="deviceGBId" label="设备国标编号" min-width="200" ></el-table-column>
|
||||
<el-table-column prop="transport" label="信令传输模式" min-width="120" ></el-table-column>
|
||||
<el-table-column prop="channelCount" label="通道数" min-width="120" ></el-table-column>
|
||||
<el-table-column label="订阅信息" min-width="120" fixed="right">
|
||||
<el-table-column prop="deviceGBId" label="设备国标编号" min-width="200"></el-table-column>
|
||||
<el-table-column prop="transport" label="信令传输模式" min-width="120"></el-table-column>
|
||||
<el-table-column prop="channelCount" label="通道数" min-width="120"></el-table-column>
|
||||
<el-table-column label="订阅信息" min-width="120" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<i v-if="scope.row.alarmSubscribe" style="font-size: 20px" title="报警订阅" class="iconfont icon-gbaojings subscribe-on " ></i>
|
||||
<i v-if="!scope.row.alarmSubscribe" style="font-size: 20px" title="报警订阅" class="iconfont icon-gbaojings subscribe-off " ></i>
|
||||
<i v-if="scope.row.catalogSubscribe" title="目录订阅" class="iconfont icon-gjichus subscribe-on" ></i>
|
||||
<i v-if="!scope.row.catalogSubscribe" title="目录订阅" class="iconfont icon-gjichus subscribe-off" ></i>
|
||||
<i v-if="scope.row.mobilePositionSubscribe" title="位置订阅" class="iconfont icon-gxunjians subscribe-on" ></i>
|
||||
<i v-if="!scope.row.mobilePositionSubscribe" title="位置订阅" class="iconfont icon-gxunjians subscribe-off" ></i>
|
||||
<i v-if="scope.row.alarmSubscribe" style="font-size: 20px" title="报警订阅"
|
||||
class="iconfont icon-gbaojings subscribe-on "></i>
|
||||
<i v-if="!scope.row.alarmSubscribe" style="font-size: 20px" title="报警订阅"
|
||||
class="iconfont icon-gbaojings subscribe-off "></i>
|
||||
<i v-if="scope.row.catalogSubscribe" title="目录订阅" class="iconfont icon-gjichus subscribe-on"></i>
|
||||
<i v-if="!scope.row.catalogSubscribe" title="目录订阅" class="iconfont icon-gjichus subscribe-off"></i>
|
||||
<i v-if="scope.row.mobilePositionSubscribe" title="位置订阅"
|
||||
class="iconfont icon-gxunjians subscribe-on"></i>
|
||||
<i v-if="!scope.row.mobilePositionSubscribe" title="位置订阅"
|
||||
class="iconfont icon-gxunjians subscribe-off"></i>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="操作" min-width="240" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="medium" icon="el-icon-edit" type="text" @click="editPlatform(scope.row)">编辑</el-button>
|
||||
<el-button size="medium" icon="el-icon-share" type="text" @click="chooseChannel(scope.row)">通道共享</el-button>
|
||||
<el-button size="medium" icon="el-icon-top" type="text" :loading="pushChannelLoading" @click="pushChannel(scope.row)">推送通道</el-button>
|
||||
<el-button size="medium" icon="el-icon-delete" type="text" style="color: #f56c6c" @click="deletePlatform(scope.row)">删除</el-button>
|
||||
<el-button size="medium" icon="el-icon-share" type="text" @click="chooseChannel(scope.row)">通道共享
|
||||
</el-button>
|
||||
<el-button size="medium" icon="el-icon-top" type="text" :loading="pushChannelLoading"
|
||||
@click="pushChannel(scope.row)">推送通道
|
||||
</el-button>
|
||||
<el-button size="medium" icon="el-icon-delete" type="text" style="color: #f56c6c"
|
||||
@click="deletePlatform(scope.row)">删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@@ -71,8 +82,9 @@
|
||||
</el-pagination>
|
||||
</div>
|
||||
|
||||
<platformEdit ref="platformEdit" v-if="platform" v-model="platform" :closeEdit="closeEdit" :device-ips="deviceIps" ></platformEdit>
|
||||
<shareChannel ref="shareChannel" ></shareChannel>
|
||||
<platformEdit ref="platformEdit" v-if="platform" v-model="platform" :closeEdit="closeEdit"
|
||||
:device-ips="deviceIps"></platformEdit>
|
||||
<shareChannel ref="shareChannel"></shareChannel>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -81,6 +93,7 @@ import uiHeader from '../layout/UiHeader.vue'
|
||||
import shareChannel from './dialog/shareChannel.vue'
|
||||
import platformEdit from './PlatformEdit.vue'
|
||||
import streamProxyEdit from "./dialog/StreamProxyEdit.vue";
|
||||
|
||||
export default {
|
||||
name: 'app',
|
||||
components: {
|
||||
@@ -91,23 +104,19 @@ export default {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
loading: false,
|
||||
platformList: [], //设备列表
|
||||
deviceIps: [], //设备列表
|
||||
defaultPlatform: null,
|
||||
platform: null,
|
||||
pushChannelLoading: false,
|
||||
winHeight: window.innerHeight - 260,
|
||||
currentPage:1,
|
||||
count:15,
|
||||
total:0
|
||||
currentPage: 1,
|
||||
count: 15,
|
||||
total: 0
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
|
||||
getcurrentDeviceChannels: function() {
|
||||
|
||||
}
|
||||
},
|
||||
computed: {},
|
||||
mounted() {
|
||||
this.initData();
|
||||
this.updateLooper = setInterval(this.initData, 10000);
|
||||
@@ -116,48 +125,54 @@ export default {
|
||||
clearTimeout(this.updateLooper);
|
||||
},
|
||||
methods: {
|
||||
addParentPlatform: function() {
|
||||
addParentPlatform: function () {
|
||||
this.platform = this.defaultPlatform;
|
||||
},
|
||||
editPlatform: function(platform) {
|
||||
editPlatform: function (platform) {
|
||||
this.platform = platform;
|
||||
},
|
||||
closeEdit: function() {
|
||||
closeEdit: function () {
|
||||
this.platform = null;
|
||||
this.getPlatformList()
|
||||
},
|
||||
deletePlatform: function(platform) {
|
||||
var that = this;
|
||||
that.$confirm('确认删除?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
that.deletePlatformCommit(platform)
|
||||
})
|
||||
deletePlatform: function (platform) {
|
||||
this.$confirm('确认删除?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
this.deletePlatformCommit(platform)
|
||||
})
|
||||
},
|
||||
deletePlatformCommit: function(platform) {
|
||||
var that = this;
|
||||
that.$axios({
|
||||
method: 'delete',
|
||||
url:`/api/platform/delete/${platform.serverGBId}`
|
||||
}).then(function (res) {
|
||||
if (res.data.code === 0) {
|
||||
that.$message({
|
||||
showClose: true,
|
||||
message: '删除成功',
|
||||
type: 'success'
|
||||
});
|
||||
that.initData()
|
||||
}
|
||||
}).catch(function (error) {
|
||||
console.log(error);
|
||||
deletePlatformCommit: function (platform) {
|
||||
this.loading = true;
|
||||
this.$axios({
|
||||
method: 'delete',
|
||||
url: `/api/platform/delete/`,
|
||||
params: {
|
||||
id: platform.id
|
||||
}
|
||||
}).then((res) => {
|
||||
this.loading = false;
|
||||
if (res.data.code === 0) {
|
||||
this.$message.success({
|
||||
showClose: true,
|
||||
message: '删除成功',
|
||||
});
|
||||
this.initData()
|
||||
}
|
||||
}).catch((error) => {
|
||||
this.loading = false;
|
||||
this.$message.error({
|
||||
showClose: true,
|
||||
message: error,
|
||||
});
|
||||
});
|
||||
},
|
||||
chooseChannel: function(platform) {
|
||||
chooseChannel: function (platform) {
|
||||
this.$refs.shareChannel.openDialog(platform.id, this.initData)
|
||||
},
|
||||
pushChannel: function(row) {
|
||||
pushChannel: function (row) {
|
||||
this.pushChannelLoading = true;
|
||||
this.$axios({
|
||||
method: 'get',
|
||||
@@ -165,20 +180,20 @@ export default {
|
||||
params: {
|
||||
id: row.id,
|
||||
}
|
||||
}).then((res)=> {
|
||||
}).then((res) => {
|
||||
this.pushChannelLoading = false;
|
||||
if (res.data.code === 0) {
|
||||
this.$message.success({
|
||||
showClose: true,
|
||||
message: '推送成功',
|
||||
});
|
||||
}else {
|
||||
} else {
|
||||
this.$message.error({
|
||||
showClose: true,
|
||||
message: res.data.msg,
|
||||
});
|
||||
}
|
||||
}).catch((error)=> {
|
||||
}).catch((error) => {
|
||||
console.log(error);
|
||||
this.pushChannelLoading = false;
|
||||
this.$message.error({
|
||||
@@ -187,11 +202,11 @@ export default {
|
||||
});
|
||||
});
|
||||
},
|
||||
initData: function() {
|
||||
initData: function () {
|
||||
this.$axios({
|
||||
method: 'get',
|
||||
url: `/api/platform/server_config`
|
||||
}).then((res)=> {
|
||||
}).then((res) => {
|
||||
if (res.data.code === 0) {
|
||||
this.deviceIps = res.data.data.deviceIp.split(',');
|
||||
this.defaultPlatform = {
|
||||
@@ -234,20 +249,20 @@ export default {
|
||||
});
|
||||
this.getPlatformList();
|
||||
},
|
||||
currentChange: function(val){
|
||||
currentChange: function (val) {
|
||||
this.currentPage = val;
|
||||
this.getPlatformList();
|
||||
},
|
||||
handleSizeChange: function(val){
|
||||
handleSizeChange: function (val) {
|
||||
this.count = val;
|
||||
this.getPlatformList();
|
||||
},
|
||||
getPlatformList: function() {
|
||||
getPlatformList: function () {
|
||||
let that = this;
|
||||
|
||||
this.$axios({
|
||||
method: 'get',
|
||||
url:`/api/platform/query/${that.count}/${that.currentPage}`
|
||||
method: 'get',
|
||||
url: `/api/platform/query/${that.count}/${that.currentPage}`
|
||||
}).then(function (res) {
|
||||
if (res.data.code === 0) {
|
||||
that.total = res.data.data.total;
|
||||
@@ -259,7 +274,7 @@ export default {
|
||||
});
|
||||
|
||||
},
|
||||
refresh: function (){
|
||||
refresh: function () {
|
||||
this.initData();
|
||||
}
|
||||
|
||||
@@ -267,11 +282,12 @@ export default {
|
||||
};
|
||||
</script>
|
||||
<style>
|
||||
.subscribe-on{
|
||||
.subscribe-on {
|
||||
color: #409EFF;
|
||||
font-size: 18px;
|
||||
}
|
||||
.subscribe-off{
|
||||
|
||||
.subscribe-off {
|
||||
color: #afafb3;
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user