From e28cf8c01eb57b72155ba2052890b326d051ba20 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Tue, 20 Apr 2021 17:35:53 +0800
Subject: [PATCH] 录音,及闪烁点得完成
---
src/views/realTimePolice/real.vue | 96 +++++++++++++-----
src/views/policeTracking/policeTracking.vue | 44 ++++++++
public/map/images/1.gif | 0
public/map/widgets/alertSecurity/AlertSecurity.js | 124 ++++++++++++++----------
public/map/images/real-time-callPolice-opcity.png | 0
5 files changed, 181 insertions(+), 83 deletions(-)
diff --git a/public/map/images/1.gif b/public/map/images/1.gif
new file mode 100644
index 0000000..dd90182
--- /dev/null
+++ b/public/map/images/1.gif
Binary files differ
diff --git a/public/map/images/real-time-callPolice-opcity.png b/public/map/images/real-time-callPolice-opcity.png
new file mode 100644
index 0000000..5f6c3d0
--- /dev/null
+++ b/public/map/images/real-time-callPolice-opcity.png
Binary files differ
diff --git a/public/map/widgets/alertSecurity/AlertSecurity.js b/public/map/widgets/alertSecurity/AlertSecurity.js
index 8844276..a8e54c0 100644
--- a/public/map/widgets/alertSecurity/AlertSecurity.js
+++ b/public/map/widgets/alertSecurity/AlertSecurity.js
@@ -204,8 +204,10 @@
var deptId = that.getQueryStringByKey('deptId');
var oneId = that.getQueryStringByKey('oneId');
+ that.createEntitys(that.addEntitys, lgtd, lttd, './images/real-time-callPolice-opcity.png');
+ that.createTwinkleEntitys(that.addEntitys, lgtd, lttd, './images/real-time-callPolice-opcity.png');
that.addPoint(that.addEntitys, lgtd, lttd, './images/jingbaored.png');
-
+
$.ajax({
url: "https://web.byisf.com/api/blade-user/pages?current=1&size=9999&work_status=&deptId=" + deptId,
type: 'get',
@@ -232,65 +234,83 @@
close: function () {
},
- // 获取当前时间,以及昨天现在的时间
- getTime: function getTime() {
- var timestamp = Date.parse(new Date());
-
- // 当前时间
- var currentTime = new Date(timestamp);
- // 年
- var currentY = currentTime.getFullYear();
- // 月
- var currentM = currentTime.getMonth() + 1 < 10 ? '0' + (currentTime.getMonth() + 1) : currentTime.getMonth() + 1;
- // 日
- var currentD = currentTime.getDate() < 10 ? '0' + currentTime.getDate() : currentTime.getDate();
- // 时
- var currentH = currentTime.getHours() < 10 ? '0' + currentTime.getHours() : currentTime.getHours();
- // 分
- var currentDd = currentTime.getMinutes() < 10 ? '0' + currentTime.getMinutes() : currentTime.getMinutes();
- // 明天
- var tomorrowTime = new Date(timestamp - 60 * 60 * 24 * 1000);
- // 年
- var tomorrowY = tomorrowTime.getFullYear();
- // 月
- var tomorrowM = tomorrowTime.getMonth() + 1 < 10 ? '0' + (tomorrowTime.getMonth() + 1) : tomorrowTime.getMonth() + 1;
- // 日
- var tomorrowD = tomorrowTime.getDate() < 10 ? '0' + tomorrowTime.getDate() : tomorrowTime.getDate();
- // 时
- var tomorrowH = tomorrowTime.getHours() < 10 ? '0' + tomorrowTime.getHours() : tomorrowTime.getHours();
- // 分
- var tomorrowDd = tomorrowTime.getMinutes() < 10 ? '0' + tomorrowTime.getMinutes() : tomorrowTime.getMinutes();
- return {
- current: currentY + '-' + currentM + '-' + currentD + ' ' + currentH + ':' + currentDd,
- tomorrow: tomorrowY + '-' + tomorrowM + '-' + tomorrowD + ' ' + tomorrowH + ':' + tomorrowDd,
- month: currentM + currentD
- };
- },
-
- // 创建实体图层
- createEntitys: function (entitys, entityContent, name, item, lgtd, lttd, outlineColors) {
-
- var symbol = new esri.symbol.PictureMarkerSymbol(outlineColors, 26, 26);
- symbol.name = name;
- var pt = new Point(lgtd, lttd, new esri.SpatialReference({
- wkid: 4326
- }));
- pt.entityData = item;
- var graphic = new esri.Graphic(pt, symbol);
- entitys.add(graphic);
-
-
- entityContent.push(item);
- },
addPoint: function (entitys, lgtd, lttd, img) {
- var symbol = new esri.symbol.PictureMarkerSymbol(img, 33, 48);
+ var symbol = new esri.symbol.PictureMarkerSymbol(img, 22, 32);
+ symbol.xoffset = 0;
+ symbol.yoffset = -2;
var pt = new Point(lgtd, lttd, new SpatialReference({
wkid: 4326
}));
var graphic = new esri.Graphic(pt, symbol);
entitys.add(graphic);
},
+ /**
+ * 添加实体的公共方法
+ * @param {*} entitys 实体类
+ * @param {Array} entityContent 存放每个点详细数据的数组
+ * @param {string} name 实体的名字
+ * @param {*} item 实体数据
+ * @param {*} lgtd 经度
+ * @param {*} lttd 纬度
+ * @param {*} outlineColors 颜色
+ */
+ createEntitys: function (entitys, lgtd, lttd, image) {
+
+ var symbol = new esri.symbol.PictureMarkerSymbol(image, 44, 44);
+
+ var width = 44;
+ var height = 44;
+ var pt = new Point(lgtd, lttd, new SpatialReference({
+ wkid: 4326
+ }));
+
+ var graphic = new esri.Graphic(pt, symbol);
+
+ setInterval(function () {
+ if (width >= 60) {
+ width = 44;
+ height = 44;
+ }
+ width += 1;
+ height += 1;
+ symbol.width = width;
+ symbol.height = height;
+ graphic.setSymbol(symbol)
+ entitys.add(graphic);
+ }, 50)
+
+ },
+ /**
+ * 添加闪烁实体的公共方法
+ * @param {*} entitys 实体类
+ * @param {*} lgtd 经度
+ * @param {*} lttd 纬度
+ * @param {*} color 颜色
+ */
+ createTwinkleEntitys: function (entitys, lgtd, lttd, image, color) {
+ var symbol = new esri.symbol.PictureMarkerSymbol(image, 64, 64);
+ var width = 64;
+ var height = 64;
+ var pt = new Point(lgtd, lttd, new SpatialReference({
+ wkid: 4326
+ }));
+
+ var graphic = new esri.Graphic(pt, symbol);
+
+ setInterval(function () {
+ if (width >= 80) {
+ width = 64;
+ height = 64;
+ }
+ width += 1;
+ height += 1;
+ symbol.width = width;
+ symbol.height = height;
+ graphic.setSymbol(symbol)
+ entitys.add(graphic);
+ }, 50)
+ },
addPoints: function (entitys, lgtd, lttd, img) {
var symbol = new esri.symbol.PictureMarkerSymbol(img, 20, 20);
diff --git a/src/views/policeTracking/policeTracking.vue b/src/views/policeTracking/policeTracking.vue
index 3372671..df39cc2 100644
--- a/src/views/policeTracking/policeTracking.vue
+++ b/src/views/policeTracking/policeTracking.vue
@@ -295,6 +295,31 @@
class="el-collapse-item__header focusing is-active"
>
<div class="avue-group__header avue-group">
+ <i class="el-icon-document avue-group__icon"></i>
+ <h1 class="avue-group__title">对讲信息</h1>
+ </div>
+ </div>
+ </div>
+
+ <el-card class="receiving-alarm-box">
+ <div v-for="(item, index) in audios" :key="index" style="margin: 10px 0; width: 100%; height: 40px;">
+ <audio :src="item.address" style="width: 40%; height: 100%;" controls></audio>
+ </div>
+ </el-card>
+
+ <div
+ style="margin-top: 20px"
+ role="tab"
+ aria-expanded="true"
+ aria-controls="el-collapse-content-823"
+ aria-describedby="el-collapse-content-823"
+ >
+ <div
+ role="button"
+ tabindex="0"
+ class="el-collapse-item__header focusing is-active"
+ >
+ <div class="avue-group__header avue-group">
<i class="el-icon-s-custom avue-group__icon"></i>
<h1 class="avue-group__title">保安信息</h1>
</div>
@@ -608,6 +633,7 @@
baseUrl: "",
oldVideoSatart: false,
vaddress: null,
+ audios: [],
};
},
created() {
@@ -618,7 +644,7 @@
},
mounted() {
this.getList();
-
+ this.getAudios();
this.$refs.mapDiv.onload = () => {
window.frames[0].init("AlertSecurity", {
x: this.form.jd,
@@ -790,7 +816,9 @@
getList() {
var that = this;
axios
- .get(`/api/blade-user/pages?current=1&size=9999&work_status=&deptId=${that.form.deptId}`)
+ .get(
+ `/api/blade-user/pages?current=1&size=9999&work_status=&deptId=${that.form.deptId}`
+ )
.then(function (res) {
that.tableData = [];
var i = 0;
@@ -849,6 +877,18 @@
this.$refs.multipleTable.clearSelection();
}
},
+
+ getAudios() {
+ axios({
+ method: "get",
+ url: "/api/blade-jfpts/avideo/list",
+ params: {
+ jid: this.form.id,
+ },
+ }).then((resdata) => {
+ this.audios = resdata.data.data.records;
+ });
+ },
},
};
</script>
diff --git a/src/views/realTimePolice/real.vue b/src/views/realTimePolice/real.vue
index fd6a1e6..3a34c25 100644
--- a/src/views/realTimePolice/real.vue
+++ b/src/views/realTimePolice/real.vue
@@ -2,7 +2,7 @@
* @Author: Morpheus
* @Date: 2021-03-17 15:21:33
* @Last Modified by: Morpheus
- * @Last Modified time: 2021-04-12 17:28:33
+ * @Last Modified time: 2021-04-19 14:32:44
*/
<template>
<basic-container>
@@ -69,21 +69,24 @@
</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"
- style="display:none"
- size="small"
- plain
- icon="el-icon-download"
- @click="handleExportStatis">导出报表
+ <el-button
+ type="warning"
+ style="display: none"
+ size="small"
+ plain
+ icon="el-icon-download"
+ @click="handleExportStatis"
+ >导出报表
</el-button>
</template>
-
<template slot-scope="{ row }" slot="jtype">
<el-tag
@@ -495,7 +498,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,
@@ -1456,26 +1459,61 @@
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/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/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>
--
Gitblit v1.9.3