From c6796cb12ca7aa0717349ca185ece091acdd2bbc Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Tue, 20 Apr 2021 15:32:01 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.105:10010/r/jfpt-Vue
---
src/views/realTimePolice/real.vue | 277 +++++++++++++++++++++++++++---------------------------
1 files changed, 139 insertions(+), 138 deletions(-)
diff --git a/src/views/realTimePolice/real.vue b/src/views/realTimePolice/real.vue
index e3d22fa..122b2e8 100644
--- a/src/views/realTimePolice/real.vue
+++ b/src/views/realTimePolice/real.vue
@@ -1,9 +1,4 @@
-/*
- * @Author: Morpheus
- * @Date: 2021-03-17 15:21:33
- * @Last Modified by: Morpheus
- * @Last Modified time: 2021-04-10 17:33:38
- */
+
<template>
<basic-container>
<avue-crud
@@ -40,7 +35,7 @@
>删 除
</el-button>
</template>
-
+
<template slot="menuLeft">
<el-button
v-bind:class="activeClass == 0 ? 'btn-color' : ''"
@@ -66,11 +61,8 @@
@click="getQBdata(3)"
>全部
</el-button>
- <span>
- <Legend :datas="datalistLIU"></Legend>
- </span>
</template>
-
+
<template slot="menuLeft">
<el-button type="warning"
size="mini"
@@ -79,15 +71,14 @@
@click="handleExport">导出
</el-button>
<el-button type="warning"
- style="display:none"
size="small"
plain
- icon="el-icon-download"
+ icon="el-icon-pie-chart"
@click="handleExportStatis">导出报表
</el-button>
</template>
-
-
+
+
<template slot-scope="{ row }" slot="jtype">
<el-tag
>{{
@@ -102,7 +93,7 @@
}}
</el-tag>
</template>
-
+
<template slot-scope="{ type, size, row }" slot="menu">
<el-button
icon="el-icon-s-order"
@@ -143,7 +134,7 @@
</el-button>
</template>
</avue-crud>
-
+
<el-dialog
class="real-dialog"
title="警情核实"
@@ -171,7 +162,7 @@
controls
></video>
</el-dialog>
-
+
<el-dialog
class="ss-video-dialog"
:modal="false"
@@ -193,7 +184,7 @@
controls
></video>
</el-dialog>
-
+
<el-form
:model="form"
label-position="right"
@@ -329,7 +320,7 @@
</el-form-item>
</el-col>
</el-row>
-
+
<el-row>
<el-col span="12">
<el-form-item label="报警时间">
@@ -363,7 +354,7 @@
</el-form-item>
</el-col>
</el-row>
-
+
<el-row>
<el-col span="12">
<el-form-item label="备注">
@@ -371,7 +362,7 @@
</el-form-item>
</el-col>
</el-row>
-
+
<el-row :align="center">
<el-col class="opt-btn">
<el-form-item>
@@ -386,14 +377,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, '派送保安')"
@@ -404,7 +395,7 @@
</el-row>
</el-form>
</el-dialog>
-
+
<el-drawer title="电子地图" append-to-body="true" :visible.sync="showMap">
<iframe
id="mapDiv"
@@ -417,41 +408,20 @@
</el-drawer>
</basic-container>
</template>
-
+
<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";
-
-import Legend from '../../components/liu-legend/Legend'
-
+
export default {
- components:{
- Legend,
- },
data() {
return {
- //legend-liu数据
- datalistLIU:[
- {
- color: 'rgb(236, 83, 37)',
- text: '未处理'
- },
- {
- color: 'rgb(17, 198, 253)',
- text: '处理中'
- },
- {
- color: 'rgb(49, 49, 49)',
- text: '已处理'
- }
- ],
-
showMap: false,
hls: "",
videoSource: "",
@@ -860,24 +830,12 @@
refreshChange() {
this.onLoad(this.page, this.query);
},
- 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 '';
- },
onLoad(page, params = {}) {
const { releaseTimeRange } = this.query;
let values = {
...params,
};
-
+
if (
this.$route.query.waringType &&
this.$route.query != undefined &&
@@ -919,7 +877,7 @@
endTime: this.dateTime.day.endTime,
};
}
-
+
if (
this.$route.query.startTime != undefined &&
this.$route.query.startTime != null &&
@@ -932,7 +890,7 @@
};
}
}
-
+
if (releaseTimeRange) {
values = {
...params,
@@ -947,7 +905,7 @@
...this.query,
};
}
-
+
if (this.$route.query.timeDesc) {
values = {
...params,
@@ -955,7 +913,7 @@
...this.query,
};
}
-
+
this.loading = true;
getList(page.currentPage, page.pageSize, values).then((res) => {
const data = res.data.data;
@@ -963,13 +921,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();
});
@@ -978,7 +936,7 @@
// 当前时间
var timestamp = Date.parse(new Date());
var serverDate = new Date(timestamp);
-
+
// 本周周一的时间
var mondayTime =
timestamp - (serverDate.getDay() - 1) * 24 * 60 * 60 * 1000;
@@ -1024,7 +982,7 @@
currentData.getSeconds() < 10
? "0" + currentData.getSeconds()
: currentData.getSeconds();
-
+
return {
day: {
beginTime: currentY + "-" + currentM + "-" + currentD + " 00:00:00",
@@ -1165,6 +1123,18 @@
};
});
},
+ 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 = [
@@ -1178,7 +1148,7 @@
},
updateJtyep(row, jtype, t) {
var that = this;
-
+
axios
.post(
"/api/blade-jfpts/alarm/alarm/updateJtype",
@@ -1198,15 +1168,15 @@
)
.then(function () {
that.dialogTableVisible = false;
-
- // axios({
- // method: "post",
- // url: `/api/blade-jfpts/rvideo/stop`,
- // params: {
- // jid: row.id,
- // },
- // }).then((resdata) => {});
-
+
+ axios({
+ method: "post",
+ url: `/api/blade-jfpts/rvideo/stop`,
+ params: {
+ jid: row.id,
+ },
+ }).then((resdata) => {});
+
that.onLoad(that.page, that.query);
that.$router.push({
path: "/policeTracking/track",
@@ -1216,54 +1186,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()
@@ -1283,7 +1253,7 @@
"Content-type": "application/x-www-form-urlencoded",
},
});
-
+
//this.form.serialNumber
newAxios
.post(
@@ -1302,22 +1272,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) {
@@ -1348,12 +1318,12 @@
},
closeRealVideoBox() {
var dom = document.getElementById("real_video_conversation");
-
+
if (dom.getAttribute("src") != "") {
dom.pause();
-
+
dom.setAttribute("src", "");
-
+
this.hls.destroy();
}
},
@@ -1367,7 +1337,7 @@
var dom = document.getElementById("real_old_video");
dom.pause();
},
-
+
aKeyToCall() {
this.isActive = true;
var that = this;
@@ -1379,7 +1349,7 @@
// compiling: false,(0.x版本中生效,1.x增加中) // 是否边录边转换,默认是false
});
}
-
+
// 一键呼叫相关函数
that.recorder.start().then(
() => {
@@ -1391,7 +1361,7 @@
}
);
},
-
+
// 序列号后期待修改
aKeyStopCall() {
this.isActive = false;
@@ -1402,8 +1372,14 @@
"Content-Type": "application/json;",
},
});
+
+ var wavAxios = axios.create({
+ baseURL: "https://web.byisf.com",
+ withCredentials: false,
+ });
+
var that = this;
-
+
newCallAxios
.post(
`/api_control`,
@@ -1417,12 +1393,37 @@
.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);
+ console.log(
+ wavBlob,
+ wavform,
+ wavformData,
+ wavformData.entries(),
+ 132
+ );
+
+ axios({
+ method: "post",
+ url: "/api/blade-jfpts/xlfeedback/xlfeedback/put-objecty",
+ data: wavformData,
+ params: {
+ jid: that.form.id,
+ },
+ }).then((resdata) => {
+ console.log(resdata);
+ });
+
newCallAxios
.post(`/api_control`, blob, {
params: {
@@ -1440,7 +1441,7 @@
});
});
},
-
+
peopleOrPhone(e) {
this.peopleList.forEach((item) => {
if (item.label == e) {
@@ -1458,7 +1459,7 @@
},
//数据导出
handleExport() {
- this.$confirm("是否导出用户数据?", "提示", {
+ this.$confirm("是否导出实时警情数据?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
@@ -1468,7 +1469,7 @@
},
//数据报表导出
handleExportStatis() {
- this.$confirm("是否导出用户数据?", "提示", {
+ this.$confirm("是否导出实时警情数据?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
@@ -1477,88 +1478,88 @@
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/excel?_u=blade-alarm.statis.ureport.xml&beginTime=${beginTime}&endTime=${endTime}&waringType=${waringType}&timeDesc=${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}`);
});
}
-
},
};
</script>
-
+
<style>
.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;
@@ -1569,7 +1570,7 @@
height: 100% !important;
width: 476px !important;
}
-
+
.old-video-dialog .el-dialog {
position: absolute !important;
top: 0 !important;
@@ -1580,23 +1581,23 @@
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;
}
-</style>
+</style>
\ No newline at end of file
--
Gitblit v1.9.3