From f0bbe0f16b5cc5a8820a481b6ae1174a37da0dc9 Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Wed, 21 Apr 2021 11:28:50 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.105:10010/r/jfpt-Vue
---
src/views/realTimePolice/real.vue | 296 ++++++++++++++++++++++++++++++++++-------------------------
1 files changed, 171 insertions(+), 125 deletions(-)
diff --git a/src/views/realTimePolice/real.vue b/src/views/realTimePolice/real.vue
index 122b2e8..db0aa82 100644
--- a/src/views/realTimePolice/real.vue
+++ b/src/views/realTimePolice/real.vue
@@ -1,4 +1,3 @@
-
<template>
<basic-container>
<avue-crud
@@ -35,7 +34,7 @@
>删 除
</el-button>
</template>
-
+
<template slot="menuLeft">
<el-button
v-bind:class="activeClass == 0 ? 'btn-color' : ''"
@@ -62,23 +61,26 @@
>全部
</el-button>
</template>
-
+
<template slot="menuLeft">
- <el-button type="warning"
- size="mini"
- plain
- icon="el-icon-download"
- @click="handleExport">导出
+ <el-button
+ type="warning"
+ size="mini"
+ plain
+ icon="el-icon-download"
+ @click="handleExport"
+ >导出
</el-button>
- <el-button type="warning"
- size="small"
- plain
- icon="el-icon-pie-chart"
- @click="handleExportStatis">导出报表
+ <el-button
+ type="warning"
+ size="small"
+ plain
+ icon="el-icon-pie-chart"
+ @click="handleExportStatis"
+ >导出报表
</el-button>
</template>
-
-
+
<template slot-scope="{ row }" slot="jtype">
<el-tag
>{{
@@ -93,7 +95,7 @@
}}
</el-tag>
</template>
-
+
<template slot-scope="{ type, size, row }" slot="menu">
<el-button
icon="el-icon-s-order"
@@ -134,7 +136,7 @@
</el-button>
</template>
</avue-crud>
-
+
<el-dialog
class="real-dialog"
title="警情核实"
@@ -162,7 +164,7 @@
controls
></video>
</el-dialog>
-
+
<el-dialog
class="ss-video-dialog"
:modal="false"
@@ -184,7 +186,7 @@
controls
></video>
</el-dialog>
-
+
<el-form
:model="form"
label-position="right"
@@ -320,7 +322,7 @@
</el-form-item>
</el-col>
</el-row>
-
+
<el-row>
<el-col span="12">
<el-form-item label="报警时间">
@@ -354,7 +356,7 @@
</el-form-item>
</el-col>
</el-row>
-
+
<el-row>
<el-col span="12">
<el-form-item label="备注">
@@ -362,7 +364,7 @@
</el-form-item>
</el-col>
</el-row>
-
+
<el-row :align="center">
<el-col class="opt-btn">
<el-form-item>
@@ -377,14 +379,14 @@
@click.stop="updateJtyep(form, 1, '办结')"
>办结
</el-button>
-
+
<img
src="/img/police-num.png"
style="margin-top: -20px; height: 80px; vertical-align: middle"
alt=""
@click.stop="updateJtyep(form, 1, '推送110')"
/>
-
+
<el-button
type="primary"
@click.stop="updateJtyep(form, 1, '派送保安')"
@@ -395,7 +397,7 @@
</el-row>
</el-form>
</el-dialog>
-
+
<el-drawer title="电子地图" append-to-body="true" :visible.sync="showMap">
<iframe
id="mapDiv"
@@ -412,13 +414,13 @@
<script>
import { getList, remove, update, add, getclient } from "@/api/real/real";
import { mapGetters } from "vuex";
-
+
import Hls from "hls.js";
-
+
import axios from "axios";
-
+
import Recorder from "js-audio-recorder";
-
+
export default {
data() {
return {
@@ -489,7 +491,7 @@
type: "datetime",
format: "yyyy-MM-dd",
valueFormat: "yyyy-MM-dd",
- searchValue:[this.getStartTime(),this.getEndTime()],
+ searchValue: [this.getStartTime(), this.getEndTime()],
searchRange: true,
searchSpan: 5,
hide: true,
@@ -835,7 +837,7 @@
let values = {
...params,
};
-
+
if (
this.$route.query.waringType &&
this.$route.query != undefined &&
@@ -877,7 +879,7 @@
endTime: this.dateTime.day.endTime,
};
}
-
+
if (
this.$route.query.startTime != undefined &&
this.$route.query.startTime != null &&
@@ -890,7 +892,7 @@
};
}
}
-
+
if (releaseTimeRange) {
values = {
...params,
@@ -905,7 +907,7 @@
...this.query,
};
}
-
+
if (this.$route.query.timeDesc) {
values = {
...params,
@@ -913,7 +915,7 @@
...this.query,
};
}
-
+
this.loading = true;
getList(page.currentPage, page.pageSize, values).then((res) => {
const data = res.data.data;
@@ -921,13 +923,13 @@
item.waringType == "紧急求救" ? (item.waringType = "一键求助") : "";
});
this.page.total = data.total;
-
+
data.records.sort((a, b) => {
return a.jtype - b.jtype;
});
-
+
this.data = data.records;
-
+
this.loading = false;
this.selectionClear();
});
@@ -936,7 +938,7 @@
// 当前时间
var timestamp = Date.parse(new Date());
var serverDate = new Date(timestamp);
-
+
// 本周周一的时间
var mondayTime =
timestamp - (serverDate.getDay() - 1) * 24 * 60 * 60 * 1000;
@@ -982,7 +984,7 @@
currentData.getSeconds() < 10
? "0" + currentData.getSeconds()
: currentData.getSeconds();
-
+
return {
day: {
beginTime: currentY + "-" + currentM + "-" + currentD + " 00:00:00",
@@ -1123,18 +1125,26 @@
};
});
},
- getStartTime(){
- if (this.$route.query.startTime != undefined && this.$route.query.startTime != null && this.$route.query.startTime != "" ) {
- return this.$route.query.startTime
- }
- return '';
- },
- getEndTime(){
- if (this.$route.query.endTime != undefined && this.$route.query.endTime != null && this.$route.query.endTime != "" ) {
- return this.$route.query.endTime
- }
- return '';
- },
+ getStartTime() {
+ if (
+ this.$route.query.startTime != undefined &&
+ this.$route.query.startTime != null &&
+ this.$route.query.startTime != ""
+ ) {
+ return this.$route.query.startTime;
+ }
+ return "";
+ },
+ getEndTime() {
+ if (
+ this.$route.query.endTime != undefined &&
+ this.$route.query.endTime != null &&
+ this.$route.query.endTime != ""
+ ) {
+ return this.$route.query.endTime;
+ }
+ return "";
+ },
handleManage(row) {
this.form = row;
this.peopleList = [
@@ -1148,7 +1158,7 @@
},
updateJtyep(row, jtype, t) {
var that = this;
-
+
axios
.post(
"/api/blade-jfpts/alarm/alarm/updateJtype",
@@ -1168,7 +1178,7 @@
)
.then(function () {
that.dialogTableVisible = false;
-
+
axios({
method: "post",
url: `/api/blade-jfpts/rvideo/stop`,
@@ -1176,7 +1186,7 @@
jid: row.id,
},
}).then((resdata) => {});
-
+
that.onLoad(that.page, that.query);
that.$router.push({
path: "/policeTracking/track",
@@ -1186,54 +1196,54 @@
},
beginTimeOrEndTime(time) {
var beginTime = new Date(time);
-
+
var endTime = new Date(new Date(time).valueOf() - 1000 * 60 * 60 * 3);
-
+
var beginY = beginTime.getFullYear();
-
+
var beginM =
beginTime.getMonth() + 1 < 10
? "0" + (beginTime.getMonth() + 1)
: beginTime.getMonth() + 1;
-
+
var beginD =
beginTime.getDate() < 10
? "0" + beginTime.getDate()
: beginTime.getDate();
-
+
var beginH =
beginTime.getHours() < 10
? "0" + beginTime.getHours()
: beginTime.getHours();
-
+
var beginm =
beginTime.getMinutes() < 10
? "0" + beginTime.getMinutes()
: beginTime.getMinutes();
-
+
var begins =
beginTime.getSeconds() < 10
? "0" + beginTime.getSeconds()
: beginTime.getSeconds();
-
+
var endY = endTime.getFullYear();
-
+
var endM =
endTime.getMonth() + 1 < 10
? "0" + (endTime.getMonth() + 1)
: endTime.getMonth() + 1;
-
+
var endD =
endTime.getDate() < 10 ? "0" + endTime.getDate() : endTime.getDate();
-
+
var endH =
endTime.getHours() < 10 ? "0" + endTime.getHours() : endTime.getHours();
-
+
var endm =
endTime.getMinutes() < 10
? "0" + endTime.getMinutes()
: endTime.getMinutes();
-
+
var ends =
endTime.getSeconds() < 10
? "0" + endTime.getSeconds()
@@ -1253,7 +1263,7 @@
"Content-type": "application/x-www-form-urlencoded",
},
});
-
+
//this.form.serialNumber
newAxios
.post(
@@ -1272,22 +1282,22 @@
)
.then((result) => {
that.videoSource = result.data.data.m3u8;
-
+
if (Hls.isSupported()) {
var dom = document.getElementById("real_video_conversation");
-
+
that.hls = new Hls();
-
+
var m3u8Url = decodeURIComponent(that.videoSource);
-
+
that.hls.loadSource(m3u8Url);
-
+
that.hls.attachMedia(dom);
-
+
that.hls.on(Hls.Events.MANIFEST_PARSED, function () {
dom.play();
});
-
+
that.hls.on(Hls.Events.ERROR, function (event, data) {
console.log(data, 4566824159, "视频播放有问题!!!");
if (data.fatal) {
@@ -1318,12 +1328,12 @@
},
closeRealVideoBox() {
var dom = document.getElementById("real_video_conversation");
-
+
if (dom.getAttribute("src") != "") {
dom.pause();
-
+
dom.setAttribute("src", "");
-
+
this.hls.destroy();
}
},
@@ -1337,7 +1347,7 @@
var dom = document.getElementById("real_old_video");
dom.pause();
},
-
+
aKeyToCall() {
this.isActive = true;
var that = this;
@@ -1349,7 +1359,7 @@
// compiling: false,(0.x版本中生效,1.x增加中) // 是否边录边转换,默认是false
});
}
-
+
// 一键呼叫相关函数
that.recorder.start().then(
() => {
@@ -1361,7 +1371,7 @@
}
);
},
-
+
// 序列号后期待修改
aKeyStopCall() {
this.isActive = false;
@@ -1372,14 +1382,14 @@
"Content-Type": "application/json;",
},
});
-
+
var wavAxios = axios.create({
baseURL: "https://web.byisf.com",
withCredentials: false,
});
-
+
var that = this;
-
+
newCallAxios
.post(
`/api_control`,
@@ -1393,15 +1403,15 @@
.then((result) => {
var formData = new FormData();
// that.recorder.downloadWAV("新文件");
-
+
var blob = that.recorder.getPCMBlob(); //获取pcm格式音频数据
//此处获取到blob对象后需要设置fileName满足当前项目上传需求,其它项目可直接传把blob作为file塞入formData
var newbolb = new Blob([blob], { type: "audio/pcm" });
var fileOfBlob = new File([newbolb], new Date().getTime() + ".pcm");
formData.append("file", fileOfBlob);
-
+
var wavBlob = that.recorder.getWAVBlob();
-
+
var wavformData = new FormData();
var wavform = new File([wavBlob], new Date().getTime() + ".wav");
wavformData.append("file", wavform);
@@ -1412,7 +1422,7 @@
wavformData.entries(),
132
);
-
+
axios({
method: "post",
url: "/api/blade-jfpts/xlfeedback/xlfeedback/put-objecty",
@@ -1423,7 +1433,7 @@
}).then((resdata) => {
console.log(resdata);
});
-
+
newCallAxios
.post(`/api_control`, blob, {
params: {
@@ -1441,7 +1451,7 @@
});
});
},
-
+
peopleOrPhone(e) {
this.peopleList.forEach((item) => {
if (item.label == e) {
@@ -1462,26 +1472,62 @@
this.$confirm("是否导出实时警情数据?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
- type: "warning"
+ type: "warning",
}).then(() => {
- window.open(`/api/blade-jfpts/alarm/alarm/export-alarm?beginTime=${this.$route.query.startTime}&endTime=${this.$route.query.endTime}&waringType=${this.$route.query.waringType}&timeDesc=${this.$route.query.timeDesc}`);
+ window.open(
+ `/api/blade-jfpts/alarm/alarm/export-alarm?beginTime=${this.$route.query.startTime}&endTime=${this.$route.query.endTime}&waringType=${this.$route.query.waringType}&timeDesc=${this.$route.query.timeDesc}`
+ );
});
},
//数据报表导出
- handleExportStatis() {
- this.$confirm("是否导出实时警情数据?", "提示", {
- confirmButtonText: "确定",
- cancelButtonText: "取消",
- type: "warning"
- }).then(() => {
- let beginTime = this.$route.query.startTime==undefined? '':this.$route.query.startTime;
- let endTime = this.$route.query.endTime==undefined? '':this.$route.query.endTime;
- let waringType = this.$route.query.waringType==undefined? '':this.$route.query.waringType;
- let timeDesc = this.$route.query.timeDesc==undefined? '':this.$route.query.timeDesc;
- window.open(`http://localhost:8108/ureport/preview?_u=blade-alarm.statis.ureport.xml&beginTime=${beginTime}&endTime=${endTime}&waringType=${waringType}&timeDesc=${timeDesc}`);
- //window.open(`http://localhost:8108/ureport/excel?_u=blade-alarm.statis.ureport.xml&beginTime=${beginTime}&endTime=${endTime}&waringType=${waringType}&timeDesc=${timeDesc}`);
- });
+ handleExportStatis() {
+ this.$confirm("是否导出实时警情报表数据?", "提示", {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning",
+ }).then(() => {
+ let beginTime =
+ this.$route.query.startTime == undefined
+ ? ""
+ : this.$route.query.startTime;
+ let endTime =
+ this.$route.query.endTime == undefined
+ ? ""
+ : this.$route.query.endTime;
+ let waringType =
+ this.$route.query.waringType == undefined
+ ? ""
+ : this.$route.query.waringType;
+ let timeDesc =
+ this.$route.query.timeDesc == undefined
+ ? ""
+ : this.$route.query.timeDesc;
+ window.open(
+ `http://localhost:8108/ureport/preview?_u=blade-alarm.statis.ureport.xml&beginTime=${beginTime}&endTime=${endTime}&waringType=${waringType}&timeDesc=${timeDesc}`
+ );
+ //window.open(`http://localhost:8108/ureport/excel?_u=blade-alarm.statis.ureport.xml&beginTime=${beginTime}&endTime=${endTime}&waringType=${waringType}&timeDesc=${timeDesc}`);
+ });
+ },
+ getStartTime() {
+ if (
+ this.$route.query.startTime != undefined &&
+ this.$route.query.startTime != null &&
+ this.$route.query.startTime != ""
+ ) {
+ return this.$route.query.startTime;
}
+ return "";
+ },
+ getEndTime() {
+ if (
+ this.$route.query.endTime != undefined &&
+ this.$route.query.endTime != null &&
+ this.$route.query.endTime != ""
+ ) {
+ return this.$route.query.endTime;
+ }
+ return "";
+ },
},
};
</script>
@@ -1490,76 +1536,76 @@
.el-card__body .waringTypeClass {
width: 12%;
}
-
+
/*页面样式*/
.el-card__body .cityClass1 {
width: 155px;
padding-right: 0px !important;
}
-
+
.el-card__body .cityClass2 {
width: 100px;
padding-left: 0px !important;
padding-right: 0px !important;
}
-
+
.el-card__body .cityClass3 {
width: 100px;
padding-left: 0px !important;
padding-right: 0px !important;
}
-
+
/*新增窗体样式*/
.el-dialog .cityClass1 {
width: 220px;
padding-right: 0px !important;
}
-
+
.el-dialog .cityClass2 {
width: 110px;
padding-left: 5px !important;
padding-right: 5px !important;
}
-
+
.el-dialog .cityClass3 {
width: 110px;
padding-left: 0px !important;
padding-right: 0px !important;
}
-
+
.cityClassParams .avue-form__group.avue-form__group--flex {
display: flex;
justify-content: space-between;
}
-
+
.cityClassParams .cityClassSelect {
flex: 1;
margin: 0 !important;
padding-left: 0px !important;
padding-right: 0px !important;
}
-
+
.cityClassParams .cityClassSelect:nth-child(2) {
margin: 0 10px !important;
}
-
+
.cityClassParams .cityClassSelect .el-form-item {
margin-bottom: 0px !important;
}
-
+
.cityClassParams .cityClassSelect .el-form-item .el-input__inner {
height: 28px !important;
line-height: 28px !important;
}
-
+
.cityClass2 div label {
display: none;
}
-
+
.cityClass3 div label {
display: none;
}
-
+
.old-video-dialog {
position: absolute !important;
top: 0 !important;
@@ -1570,7 +1616,7 @@
height: 100% !important;
width: 476px !important;
}
-
+
.old-video-dialog .el-dialog {
position: absolute !important;
top: 0 !important;
@@ -1581,22 +1627,22 @@
margin-top: 15vh !important;
height: 538px;
}
-
+
.old-video-dialog .el-dialog .el-dialog__body {
height: calc(100% - 54px);
box-sizing: border-box;
}
-
+
.el-button.active {
background: #ff0000 !important;
}
-
+
.el-button.btn-color {
color: rgb(255, 255, 255);
background-color: rgb(64, 158, 255);
border-color: rgb(64, 158, 255);
}
-
+
.tabFontSize {
font-size: 15px;
}
--
Gitblit v1.9.3