This commit is contained in:
chengdandan 2023-04-27 08:51:20 +08:00
commit 355d666d55
7 changed files with 32511 additions and 14885 deletions

18161
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
import axios from 'axios'
//根据等级获取报警数据
export const getHikvision = (data) => {
return axios.post('/video/cameras/hikvision/',
return axios.post('cameras/hikvision/',
data
)
};

View File

@ -37,7 +37,8 @@ class mqttHandle {
const { host, port, endpoint, ...options } = this.connect;
console.log("this.connect.host", this.connect.host)
// const connectUrl = 'ws://138.227.111.141:8083/mqtt';
const connectUrl = 'ws://138.227.208.100:1884/mqtt';
// const connectUrl = 'ws://138.227.208.100:1884/mqtt';
const connectUrl = 'ws://172.16.1.253:1884/mqtt';
// const connectUrl = `ws://${this.connect.host}:${this.connect.port}`;
// if (!client.connected) {
// client.on('connect', function () {

View File

@ -45,9 +45,7 @@ export default {
videoUrl: {
deep: true,
handler(newVal) {
this.$nextTick(()=>{
this.clickSurveillance(newVal)
})
}
},
id: {
@ -60,7 +58,6 @@ export default {
methods: {
//
clickSurveillance(newVal) {
this.player = null
let that = this
//
setTimeout(() => {
@ -83,7 +80,7 @@ export default {
this.player = this;
this.player.play();
});
}, 500);
}, 1000);
},
//
closeVideo() {

View File

@ -203,12 +203,12 @@
<div class="rightThree">
<div class="title" style="height: 15%">摄像监控</div>
<div class="camera">
<div
<!-- <div
class="cameraList"
v-for="(item, index) in cameraList"
:key="index"
@click="changeCamera(item.video)"
>
> -->
<!-- <img :src="item.icon" style="width: 100%; height: 100%" /> -->
<!-- <iframe
:src="item.video"
@ -216,12 +216,12 @@
frameborder="0"
style="width: 100%; height: 100%"
></iframe> -->
<camera
<!-- <camera
style="width: 100%; height: 100%"
:videoUrl="item.video"
:id="index"
/>
</div>
/> -->
<!-- </div> -->
</div>
</div>
</div>
@ -399,7 +399,7 @@ export default {
};
},
mounted() {
this.getCamera();
// this.getCamera();
//id
this.getBuildingData();
let that = this;
@ -531,14 +531,14 @@ export default {
},
//
getCamera() {
this.cameraList[0].video =
"https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8";
this.cameraList[1].video =
"https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8";
this.cameraList[2].video =
"http://playertest.longtailvideo.com/adaptive/bipbop/gear4/prog_index.m3u8";
this.cameraList[3].video =
"http://playertest.longtailvideo.com/adaptive/bipbop/gear4/prog_index.m3u8";
// this.cameraList[0].video =
// "https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8";
// this.cameraList[1].video =
// "https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8";
// this.cameraList[2].video =
// "http://playertest.longtailvideo.com/adaptive/bipbop/gear4/prog_index.m3u8";
// this.cameraList[3].video =
// "http://playertest.longtailvideo.com/adaptive/bipbop/gear4/prog_index.m3u8";
let pathUrl = "/artemis/api/video/v2/cameras/previewURLs";
let dataList = {
path: pathUrl,
@ -548,12 +548,15 @@ export default {
},
};
getHikvision(dataList).then((res) => {
this.cameraList[0].video =
"video/video.html?src=" +
res.data.result.data.url +
"&code=" +
dataList.data.cameraIndexCode;
// this.cameraList[0].video =
// "video/video.html?src=" +
// res.data.result.data.url +
// "&code=" +
// dataList.data.cameraIndexCode;
this.cameraList[0].video =res.data.result.data.url;
console.log(this.cameraList[0].video,'视频地址');
});
let dataList1 = {
path: pathUrl,
data: {
@ -562,11 +565,12 @@ export default {
},
};
getHikvision(dataList1).then((res) => {
this.cameraList[1].video =
"video/video.html?src=" +
res.data.result.data.url +
"&code=" +
dataList1.data.cameraIndexCode;
// this.cameraList[1].video =
// "video/video.html?src=" +
// res.data.result.data.url +
// "&code=" +
// dataList1.data.cameraIndexCode;
this.cameraList[1].video =res.data.result.data.url;
});
let dataList2 = {
path: pathUrl,
@ -576,11 +580,12 @@ export default {
},
};
getHikvision(dataList2).then((res) => {
this.cameraList[2].video =
"video/video.html?src=" +
res.data.result.data.url +
"&code=" +
dataList2.data.cameraIndexCode;
// this.cameraList[2].video =
// "video/video.html?src=" +
// res.data.result.data.url +
// "&code=" +
// dataList2.data.cameraIndexCode;
this.cameraList[2].video =res.data.result.data.url;
});
let dataList3 = {
path: pathUrl,
@ -590,11 +595,12 @@ export default {
},
};
getHikvision(dataList3).then((res) => {
this.cameraList[3].video =
"video/video.html?src=" +
res.data.result.data.url +
"&code=" +
dataList3.data.cameraIndexCode;
// this.cameraList[3].video =
// "video/video.html?src=" +
// res.data.result.data.url +
// "&code=" +
// dataList3.data.cameraIndexCode;
this.cameraList[3].video =res.data.result.data.url;
});
},
//Id

View File

@ -64,14 +64,14 @@
<img src="../assets/images/camera.png" style="width:100%;height:100%"/>
</div> -->
<div class="warnCameraList">
<div
<!-- <div
style="width: 45%; height: 30%"
v-for="(item, index) in warnCameraList"
:key="index"
@click="videoChange(index)"
>
<img :src="item.icon" style="width: 100%; height: 100%" />
</div>
</div> -->
</div>
</div>
</div>
@ -410,6 +410,7 @@ export default {
//线线
getAnfang() {
//
var indexcode = [
"13222435-8646-4006-982a-76febb4dd8a2",
"fd91efcf-9d11-4b3e-ad69-6e6c1069f4ec",
@ -448,7 +449,6 @@ export default {
};
let indexCodeList = [];
getHikvision(dataList).then((res) => {
console.log("getHikvision", res.data.result.data.list);
res.data.result.data.list.forEach((item, index) => {
indexCodeList.push(item.indexCode);
});
@ -456,6 +456,8 @@ export default {
path: "/artemis/api/acs/v1/door/states",
data: {
doorIndexCodes: indexCodeList,
pageNo:1,
pageSize:1000
},
};
let doorTotal = 0;
@ -465,22 +467,65 @@ export default {
let doorOnLineList = [];
let offLineList = [];
getHikvision(doorStatusList).then((res) => {
console.log(res.data.authDoorList, "门禁状态数量");
for (let i = 0; i < res.data.authDoorList.length; i++) {
console.log(res.data.result.data.authDoorList, "门禁状态数量");
for (let i = 0; i < res.data.result.data.authDoorList.length; i++) {
//
doorTotalList.push(res.data.authDoorList);
if (res.data.authDoorList[i].doorState == 3) {
doorTotalList.push(res.data.result.data.authDoorList);
if (res.data.result.data.authDoorList[i].doorState == 3) {
//线
offLineList.push(res.data.authDoorList[i].doorState);
offLineList.push(res.data.result.data.authDoorList[i].doorState);
}
}
//
doorTotal = doorTotalList.length;
this.securityList[1].security[1].count = doorTotalList.length;
//线
offLine = offLineList.length;
this.securityList[1].security[3].count = offLineList.length;
//线
doorOnLine = doorTotal - offLine;
console.log(doorTotal, offLine, doorOnLine, "门禁数量==========");
this.securityList[1].security[2].count = this.securityList[1].security[1].count - this.securityList[1].security[3].count;
});
});
//
let cameraList = {
path: "/artemis/api/resource/v2/camera/search",
data: {
regionIndexCodes: indexcode,
pageNo: 1,
pageSize: 1000,
},
};
let cameraCodeList = []
getHikvision(cameraList).then((res) => {
res.data.result.data.list.forEach((item, index) => {
cameraCodeList.push(item.indexCode);
});
let cameraStatusList = {
path: "/artemis/api/nms/v1/online/camera/get",
data: {
indexCodes: cameraCodeList,
pageNo:1,
pageSize:1000
},
};
let cameraTotalList = [];
let cameraOnLineList = [];
let cameraoffLineList = [];
getHikvision(cameraStatusList).then((res) => {
console.log(res.data.result.data.list, "摄像头状态数量");
for (let i = 0; i < res.data.result.data.list.length; i++) {
//
cameraTotalList.push(res.data.result.data.list);
if (res.data.result.data.list[i].online == 0) {
//线
cameraoffLineList.push(res.data.result.data.list[i].online);
}
}
//
this.securityList[0].security[1].count = cameraTotalList.length;
//线
this.securityList[0].security[3].count = cameraoffLineList.length;
//线
this.securityList[0].security[2].count = this.securityList[0].security[1].count - this.securityList[0].security[3].count;
});
});
},
@ -591,10 +636,32 @@ export default {
this.getAlarmCount();
}
if (warnListMqtt[i].DeviceType == "消防") {
console.log("warnListMqtt[i]",warnListMqtt[i])
this.fireWarnList.splice(0, 0, warnListMqtt[i]);
this.getWarning(warnListMqtt[i].position)
}
}
},
getWarning(name) {
// console.log("name",name)
if (name.indexOf("法院一层") != -1) {
console.log("消防联动 主楼一层");
} else if(name.indexOf("法院四层") != -1) {
console.log("消防联动 主楼四层");
}else if(name.indexOf("法院二层") != -1) {
console.log("消防联动 主楼二层");
}else if(name.indexOf("法院三层") != -1) {
console.log("消防联动 主楼三层");
}else if(name.indexOf("辅楼1层") != -1) {
console.log("消防联动 辅楼一层");
}else if(name.indexOf("辅楼2层") != -1) {
console.log("消防联动 辅楼二层");
}else if(name.indexOf("辅楼3层") != -1) {
console.log("消防联动 辅楼三层");
}else if(name.indexOf("辅楼4层") != -1) {
console.log("消防联动 辅楼四层");
}
},
},
components: {},
};

View File

@ -15,8 +15,8 @@ module.exports = {
// port: 8989, // 开发服务器运行端口号
proxy: {
'/api': { //代理的名字
target:'http://172.16.1.253:12308/api/',
// target:'http://138.227.208.100:12308/api/',
// target:'http://172.16.1.253:12308/api/',
target:'http://138.227.208.100:12308/api/',
ws: true,
changeOrigin: true,
pathRewrite:{
@ -31,13 +31,13 @@ module.exports = {
'^/ecs-server':'',
}
},
'/video': { //代理的名字
'/cameras': { //代理的名字
// target:'http://172.16.1.253:12308/api/',
target:'http://138.227.208.100:12307/',
ws: true,
changeOrigin: true,
pathRewrite:{
'^/video':'',
'^/cameras':'',
}
},
}