|
@@ -2,6 +2,7 @@
|
|
<div>
|
|
<div>
|
|
<el-dialog :title="title" :visible.sync="TVWallVisible" v-if="TVWallVisible" customClass="TVWallCustomWidth"
|
|
<el-dialog :title="title" :visible.sync="TVWallVisible" v-if="TVWallVisible" customClass="TVWallCustomWidth"
|
|
@close="cancelEventLocationShow()">
|
|
@close="cancelEventLocationShow()">
|
|
|
|
+
|
|
<!--<div @click="findCameraByEventCoordinate()">视频联动</div>-->
|
|
<!--<div @click="findCameraByEventCoordinate()">视频联动</div>-->
|
|
<!--<div class="forthis" style="width: 22%; position: absolute;left: 0;z-index: 9999999999999;">-->
|
|
<!--<div class="forthis" style="width: 22%; position: absolute;left: 0;z-index: 9999999999999;">-->
|
|
<!--<div class="i-list-con" style="height: 46vh; overflow-y: scroll;">-->
|
|
<!--<div class="i-list-con" style="height: 46vh; overflow-y: scroll;">-->
|
|
@@ -21,8 +22,15 @@
|
|
<!--<!–视频窗口展示---海康–>-->
|
|
<!--<!–视频窗口展示---海康–>-->
|
|
<!--<div id="playWnd" class="playWnd" style="left: 0px; top: 0px;"></div>-->
|
|
<!--<div id="playWnd" class="playWnd" style="left: 0px; top: 0px;"></div>-->
|
|
<!--</div>-->
|
|
<!--</div>-->
|
|
-
|
|
|
|
- <div id="dom1" class="dom1"></div>
|
|
|
|
|
|
+ <div style="display: flex;" >
|
|
|
|
+ <div id="dom1" class="dom1"></div>
|
|
|
|
+ <div class="leader-info-container" v-if="userDataShow">
|
|
|
|
+ <div class="leader-info-list-con" v-for="user in userData">
|
|
|
|
+ <h4 style="">{{user.position}}:{{user.name}}</h4>
|
|
|
|
+ <h4>电话:{{user.phone}}</h4>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
</el-dialog>
|
|
</el-dialog>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
@@ -43,77 +51,7 @@ export default {
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
title:['365','369','371','373','372','370'].includes(Cookies.get("deptId"))?"电视墙":"电视墙\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000您的所有操作痕迹已被后台记录,请谨慎操作。",
|
|
title:['365','369','371','373','372','370'].includes(Cookies.get("deptId"))?"电视墙":"电视墙\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000您的所有操作痕迹已被后台记录,请谨慎操作。",
|
|
- tvListJson: [
|
|
|
|
- {
|
|
|
|
- 'switchTab': '1',
|
|
|
|
- 'treeLabels': [
|
|
|
|
- {
|
|
|
|
- 'labelCode': '123456',
|
|
|
|
- 'labelName': '视频场景',
|
|
|
|
- 'parentLabelCode': null
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- 'labelCode': '5a81d1bd499b4940a21fc63ca51f4dfa',
|
|
|
|
- 'labelName': '标签2',
|
|
|
|
- 'parentLabelCode': 123456
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- 'labelCode': 'd941adbbd3e64dac92cc448dec5293cd',
|
|
|
|
- 'labelName': '标签1',
|
|
|
|
- 'parentLabelCode': 123456
|
|
|
|
- }
|
|
|
|
- ],
|
|
|
|
- 'labelChannels': [{
|
|
|
|
- 'channelDates': [{
|
|
|
|
- 'channelCode': '6044981090191552',
|
|
|
|
- 'channelName': '复兴大桥中段-交通事故',
|
|
|
|
- 'channelSn': null,
|
|
|
|
- 'cameraType': 0,
|
|
|
|
- 'online': 1
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- 'channelCode': 'ZgVzqsjwA1DTF561VGHK5E',
|
|
|
|
- 'channelName': '北京7青羊东二路77号2通道1',
|
|
|
|
- 'channelSn': null,
|
|
|
|
- 'cameraType': 1,
|
|
|
|
- 'online': 1
|
|
|
|
- }
|
|
|
|
- ],
|
|
|
|
- 'labelCode': 'd941adbbd3e64dac92cc448dec5293cd'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- 'channelDates': [{
|
|
|
|
- 'channelCode': 'ZgVzqsjwA1DTF561VGHKK7',
|
|
|
|
- 'channelName': '北京7青羊东二路77号2通道2',
|
|
|
|
- 'channelSn': null,
|
|
|
|
- 'cameraType': 2,
|
|
|
|
- 'online': 0
|
|
|
|
- }],
|
|
|
|
- 'labelCode': '5a81d1bd499b4940a21fc63ca51f4dfa'
|
|
|
|
- }
|
|
|
|
- ]
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- 'switchTab': '2',
|
|
|
|
- 'labelChannels': [{
|
|
|
|
- 'channelDates': [{
|
|
|
|
- 'channelCode': 'ZgVzqsjwA1DTF561VGHK5E',
|
|
|
|
- 'channelName': '北京7青羊东二路77号2通道1',
|
|
|
|
- 'channelSn': null,
|
|
|
|
- 'cameraType': 1,
|
|
|
|
- 'online': 1
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- 'channelCode': 'ZgVzqsjwA1DTF561VGHKK7',
|
|
|
|
- 'channelName': '北京7青羊东二路77号2通道2',
|
|
|
|
- 'channelSn': null,
|
|
|
|
- 'cameraType': 2,
|
|
|
|
- 'online': 0
|
|
|
|
- }
|
|
|
|
- ]
|
|
|
|
- }]
|
|
|
|
- }
|
|
|
|
- ],
|
|
|
|
|
|
+ tvListJson: [],
|
|
TVWallVisible: false,
|
|
TVWallVisible: false,
|
|
activeName: 'tv',
|
|
activeName: 'tv',
|
|
channelId: ['ZgVzqsjwA1DTF561VHG69F'],
|
|
channelId: ['ZgVzqsjwA1DTF561VHG69F'],
|
|
@@ -263,7 +201,9 @@ export default {
|
|
cameraList: [],
|
|
cameraList: [],
|
|
initCount: 0,
|
|
initCount: 0,
|
|
pubKey: '',
|
|
pubKey: '',
|
|
- oWebControl: null
|
|
|
|
|
|
+ oWebControl: null,
|
|
|
|
+ userData:[],
|
|
|
|
+ userDataShow:false,
|
|
}
|
|
}
|
|
},
|
|
},
|
|
created() {
|
|
created() {
|
|
@@ -273,6 +213,7 @@ export default {
|
|
methods: {
|
|
methods: {
|
|
cancelEventLocationShow() {
|
|
cancelEventLocationShow() {
|
|
// this.activeName = 'tv'
|
|
// this.activeName = 'tv'
|
|
|
|
+ this.userData = []
|
|
this.TVWallVisible = false
|
|
this.TVWallVisible = false
|
|
this.destroy()
|
|
this.destroy()
|
|
|
|
|
|
@@ -284,7 +225,8 @@ export default {
|
|
})
|
|
})
|
|
}
|
|
}
|
|
},
|
|
},
|
|
- showTVWall(data, val) {
|
|
|
|
|
|
+ showTVWall(data, val, item) {
|
|
|
|
+debugger
|
|
selectConfigKey("DssVersion").then(res => {
|
|
selectConfigKey("DssVersion").then(res => {
|
|
if(this.ws.getLocalDssVersion()!=res.data){
|
|
if(this.ws.getLocalDssVersion()!=res.data){
|
|
this.$modal.confirm('系统检测到新客户端版本,请更新后使用', '系统提示', {
|
|
this.$modal.confirm('系统检测到新客户端版本,请更新后使用', '系统提示', {
|
|
@@ -299,11 +241,15 @@ export default {
|
|
});
|
|
});
|
|
return
|
|
return
|
|
}else{
|
|
}else{
|
|
|
|
+ if(item != null){
|
|
|
|
+ this.userData = item;
|
|
|
|
+ this.userDataShow = true;
|
|
|
|
+ }
|
|
this.tvListJson = data
|
|
this.tvListJson = data
|
|
this.data = val
|
|
this.data = val
|
|
this.autoList = []
|
|
this.autoList = []
|
|
this.stringList = []
|
|
this.stringList = []
|
|
- let length = data[0].treeLabels.length >= 4 ? 5 : data[0].treeLabels.length
|
|
|
|
|
|
+ let length = data[0].treeLabels.length > 4 ? 5 : data[0].treeLabels.length
|
|
for (let i = 1; i < length; i++) {
|
|
for (let i = 1; i < length; i++) {
|
|
this.autoList.push({"channelId": data[0].treeLabels[i].labelCode})
|
|
this.autoList.push({"channelId": data[0].treeLabels[i].labelCode})
|
|
this.stringList.push(data[0].treeLabels[i].labelCode)
|
|
this.stringList.push(data[0].treeLabels[i].labelCode)
|
|
@@ -332,9 +278,9 @@ export default {
|
|
// }, 5000)
|
|
// }, 5000)
|
|
// /** ----------------------------------海康摄像头预览结束------------------------------------- */
|
|
// /** ----------------------------------海康摄像头预览结束------------------------------------- */
|
|
this.TVWallVisible = true
|
|
this.TVWallVisible = true
|
|
|
|
+
|
|
}
|
|
}
|
|
})
|
|
})
|
|
-
|
|
|
|
},
|
|
},
|
|
/** ----------------------------------大华摄像头预览开始------------------------------------- */
|
|
/** ----------------------------------大华摄像头预览开始------------------------------------- */
|
|
alertLogin: function () {
|
|
alertLogin: function () {
|
|
@@ -396,6 +342,14 @@ export default {
|
|
}
|
|
}
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
+ realTimeVideoDialog(cameraParams) {
|
|
|
|
+ // 调用弹窗实时播放接口
|
|
|
|
+ if (!this.isLogin) {
|
|
|
|
+ this.$Message.info("正在登陆客户端,请稍等......");
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
|
|
+ this.ws.openVideo(cameraParams);
|
|
|
|
+ },
|
|
create(tvListJson) { // 调用创建控件接口
|
|
create(tvListJson) { // 调用创建控件接口
|
|
let _this = this
|
|
let _this = this
|
|
const params = [
|
|
const params = [
|
|
@@ -404,7 +358,7 @@ export default {
|
|
'ctrlCode': 'ctrl1',
|
|
'ctrlCode': 'ctrl1',
|
|
'ctrlProperty': {
|
|
'ctrlProperty': {
|
|
'displayMode': 1,
|
|
'displayMode': 1,
|
|
- 'splitNum': (this.autoList.length==1?1:4),
|
|
|
|
|
|
+ 'splitNum': (this.autoList.length == 1 ? 1 : 4),
|
|
'channelList': [
|
|
'channelList': [
|
|
{
|
|
{
|
|
'channelId': ''
|
|
'channelId': ''
|
|
@@ -417,8 +371,12 @@ export default {
|
|
]
|
|
]
|
|
this.setPos()
|
|
this.setPos()
|
|
this.customizeTree(tvListJson);
|
|
this.customizeTree(tvListJson);
|
|
|
|
+ // if(_this.stringList.length == 1){
|
|
|
|
+ // _this.realTimeVideoDialog([_this.stringList[0]]);
|
|
|
|
+ // }else{
|
|
_this.ws.createCtrl(params);
|
|
_this.ws.createCtrl(params);
|
|
_this.playRealMonitorVideo();
|
|
_this.playRealMonitorVideo();
|
|
|
|
+ // }
|
|
if (_this.data != undefined && _this.data != null) {
|
|
if (_this.data != undefined && _this.data != null) {
|
|
setTimeout( _this.rotation(_this.data.longitude, _this.data.latitude, _this.stringList),5000)
|
|
setTimeout( _this.rotation(_this.data.longitude, _this.data.latitude, _this.stringList),5000)
|
|
}
|
|
}
|
|
@@ -762,4 +720,53 @@ html, body {
|
|
margin-top: 100px;
|
|
margin-top: 100px;
|
|
margin-left: 80px;
|
|
margin-left: 80px;
|
|
}
|
|
}
|
|
|
|
+//电视墙视频摄像头预览弹层样式
|
|
|
|
+.TVWallCustomWidth {
|
|
|
|
+ width: 1500px !important;
|
|
|
|
+ height: 750px !important;
|
|
|
|
+ background: #04080c !important;
|
|
|
|
+ box-shadow: $barShadow !important;
|
|
|
|
+ border: 1px $barBorder !important;
|
|
|
|
+ .el-dialog__header {
|
|
|
|
+ padding: 15px 20px !important;
|
|
|
|
+ background-image: -moz-linear-gradient($GradualGreen) !important;
|
|
|
|
+ background-image: -webkit-linear-gradient($GradualGreen) !important;
|
|
|
|
+ background-image: linear-gradient($GradualGreen) !important;
|
|
|
|
+ box-shadow: $shadowTitle !important;
|
|
|
|
+
|
|
|
|
+ .el-dialog__title {
|
|
|
|
+ font-weight: bolder !important;
|
|
|
|
+ color: #3cd7ef !important;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ .leader-info-container{
|
|
|
|
+ // padding: .5rem;
|
|
|
|
+ display: flex;
|
|
|
|
+ height: 650px;
|
|
|
|
+ width: 20rem;
|
|
|
|
+ overflow-y: scroll;
|
|
|
|
+ flex-direction: column;
|
|
|
|
+ padding: 0 1rem;
|
|
|
|
+ .leader-info-list-con{
|
|
|
|
+ width: 100%;
|
|
|
|
+ padding: 1rem;
|
|
|
|
+ margin-bottom: .5rem;
|
|
|
|
+ background-image: -moz-linear-gradient($GradualGreen)!important;
|
|
|
|
+ background-image: -webkit-linear-gradient($GradualGreen) !important;
|
|
|
|
+ background-image: linear-gradient($GradualGreen)!important;
|
|
|
|
+ border: solid 1px #7dc2eb;
|
|
|
|
+ box-shadow: $shadowListHover !important;
|
|
|
|
+ border-radius: 5px;
|
|
|
|
+ h4{
|
|
|
|
+ margin: .4rem 0;
|
|
|
|
+ color: $white;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ .leader-info-list-con:hover{
|
|
|
|
+ background-image: -moz-linear-gradient($popupBG)!important;
|
|
|
|
+ background-image: -webkit-linear-gradient($popupBG) !important;
|
|
|
|
+ background-image: linear-gradient($popupBG)!important;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+}
|
|
</style>
|
|
</style>
|