From 4bf7ec9446e7dce8198a122740d73e498ec221a6 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Tue, 20 Apr 2021 17:40:25 +0800
Subject: [PATCH] Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/jfpt-Vue

---
 src/views/realTimePolice/real.vue |  287 +++++++++++++++++++++++++--------------------------------
 1 files changed, 127 insertions(+), 160 deletions(-)

diff --git a/src/views/realTimePolice/real.vue b/src/views/realTimePolice/real.vue
index 3a34c25..f68c3e3 100644
--- a/src/views/realTimePolice/real.vue
+++ b/src/views/realTimePolice/real.vue
@@ -1,9 +1,3 @@
-/*
- * @Author: Morpheus
- * @Date: 2021-03-17 15:21:33
- * @Last Modified by: Morpheus
- * @Last Modified time: 2021-04-19 14:32:44
- */
 <template>
   <basic-container>
     <avue-crud
@@ -40,7 +34,7 @@
           >删 除
         </el-button>
       </template>
-
+ 
       <template slot="menuLeft">
         <el-button
           v-bind:class="activeClass == 0 ? 'btn-color' : ''"
@@ -67,27 +61,23 @@
           >全部
         </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"
-          style="display: none"
-          size="small"
-          plain
-          icon="el-icon-download"
-          @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
           >{{
@@ -102,7 +92,7 @@
           }}
         </el-tag>
       </template>
-
+ 
       <template slot-scope="{ type, size, row }" slot="menu">
         <el-button
           icon="el-icon-s-order"
@@ -143,7 +133,7 @@
         </el-button>
       </template>
     </avue-crud>
-
+ 
     <el-dialog
       class="real-dialog"
       title="警情核实"
@@ -171,7 +161,7 @@
           controls
         ></video>
       </el-dialog>
-
+ 
       <el-dialog
         class="ss-video-dialog"
         :modal="false"
@@ -193,7 +183,7 @@
           controls
         ></video>
       </el-dialog>
-
+ 
       <el-form
         :model="form"
         label-position="right"
@@ -329,7 +319,7 @@
             </el-form-item>
           </el-col>
         </el-row>
-
+ 
         <el-row>
           <el-col span="12">
             <el-form-item label="报警时间">
@@ -363,7 +353,7 @@
             </el-form-item>
           </el-col>
         </el-row>
-
+ 
         <el-row>
           <el-col span="12">
             <el-form-item label="备注">
@@ -371,7 +361,7 @@
             </el-form-item>
           </el-col>
         </el-row>
-
+ 
         <el-row :align="center">
           <el-col class="opt-btn">
             <el-form-item>
@@ -386,14 +376,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 +394,7 @@
         </el-row>
       </el-form>
     </el-dialog>
-
+ 
     <el-drawer title="电子地图" append-to-body="true" :visible.sync="showMap">
       <iframe
         id="mapDiv"
@@ -417,17 +407,17 @@
     </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";
-
+ 
 export default {
   data() {
     return {
@@ -498,7 +488,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,
@@ -844,7 +834,7 @@
       let values = {
         ...params,
       };
-
+ 
       if (
         this.$route.query.waringType &&
         this.$route.query != undefined &&
@@ -886,7 +876,7 @@
             endTime: this.dateTime.day.endTime,
           };
         }
-
+ 
         if (
           this.$route.query.startTime != undefined &&
           this.$route.query.startTime != null &&
@@ -899,7 +889,7 @@
           };
         }
       }
-
+ 
       if (releaseTimeRange) {
         values = {
           ...params,
@@ -914,7 +904,7 @@
           ...this.query,
         };
       }
-
+ 
       if (this.$route.query.timeDesc) {
         values = {
           ...params,
@@ -922,7 +912,7 @@
           ...this.query,
         };
       }
-
+ 
       this.loading = true;
       getList(page.currentPage, page.pageSize, values).then((res) => {
         const data = res.data.data;
@@ -930,13 +920,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();
       });
@@ -945,7 +935,7 @@
       // 当前时间
       var timestamp = Date.parse(new Date());
       var serverDate = new Date(timestamp);
-
+ 
       // 本周周一的时间
       var mondayTime =
         timestamp - (serverDate.getDay() - 1) * 24 * 60 * 60 * 1000;
@@ -991,7 +981,7 @@
         currentData.getSeconds() < 10
           ? "0" + currentData.getSeconds()
           : currentData.getSeconds();
-
+ 
       return {
         day: {
           beginTime: currentY + "-" + currentM + "-" + currentD + " 00:00:00",
@@ -1132,6 +1122,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 = [
@@ -1145,7 +1147,7 @@
     },
     updateJtyep(row, jtype, t) {
       var that = this;
-
+ 
       axios
         .post(
           "/api/blade-jfpts/alarm/alarm/updateJtype",
@@ -1165,7 +1167,7 @@
         )
         .then(function () {
           that.dialogTableVisible = false;
-
+ 
           axios({
             method: "post",
             url: `/api/blade-jfpts/rvideo/stop`,
@@ -1173,7 +1175,7 @@
               jid: row.id,
             },
           }).then((resdata) => {});
-
+ 
           that.onLoad(that.page, that.query);
           that.$router.push({
             path: "/policeTracking/track",
@@ -1183,54 +1185,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()
@@ -1250,7 +1252,7 @@
           "Content-type": "application/x-www-form-urlencoded",
         },
       });
-
+ 
       //this.form.serialNumber
       newAxios
         .post(
@@ -1269,22 +1271,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) {
@@ -1315,12 +1317,12 @@
     },
     closeRealVideoBox() {
       var dom = document.getElementById("real_video_conversation");
-
+ 
       if (dom.getAttribute("src") != "") {
         dom.pause();
-
+ 
         dom.setAttribute("src", "");
-
+ 
         this.hls.destroy();
       }
     },
@@ -1334,7 +1336,7 @@
       var dom = document.getElementById("real_old_video");
       dom.pause();
     },
-
+ 
     aKeyToCall() {
       this.isActive = true;
       var that = this;
@@ -1346,7 +1348,7 @@
           // compiling: false,(0.x版本中生效,1.x增加中)  // 是否边录边转换,默认是false
         });
       }
-
+ 
       // 一键呼叫相关函数
       that.recorder.start().then(
         () => {
@@ -1358,7 +1360,7 @@
         }
       );
     },
-
+ 
     // 序列号后期待修改
     aKeyStopCall() {
       this.isActive = false;
@@ -1369,14 +1371,14 @@
           "Content-Type": "application/json;",
         },
       });
-
+ 
       var wavAxios = axios.create({
         baseURL: "https://web.byisf.com",
         withCredentials: false,
       });
-
+ 
       var that = this;
-
+ 
       newCallAxios
         .post(
           `/api_control`,
@@ -1390,15 +1392,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);
@@ -1409,7 +1411,7 @@
             wavformData.entries(),
             132
           );
-
+ 
           axios({
             method: "post",
             url: "/api/blade-jfpts/xlfeedback/xlfeedback/put-objecty",
@@ -1420,7 +1422,7 @@
           }).then((resdata) => {
             console.log(resdata);
           });
-
+ 
           newCallAxios
             .post(`/api_control`, blob, {
               params: {
@@ -1438,7 +1440,7 @@
             });
         });
     },
-
+ 
     peopleOrPhone(e) {
       this.peopleList.forEach((item) => {
         if (item.label == e) {
@@ -1459,139 +1461,104 @@
       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}`
-        );
-      });
-    },
-    getStartTime() {
-      if (
-        this.$route.query.startTime != undefined &&
-        this.$route.query.startTime != null &&
-        this.$route.query.startTime != ""
-      ) {
-        return this.$route.query.startTime;
+      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}`);
+        });
       }
-      return "";
-    },
-    getEndTime() {
-      if (
-        this.$route.query.endTime != undefined &&
-        this.$route.query.endTime != null &&
-        this.$route.query.endTime != ""
-      ) {
-        return this.$route.query.endTime;
-      }
-      return "";
-    },
   },
 };
 </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;
@@ -1602,7 +1569,7 @@
   height: 100% !important;
   width: 476px !important;
 }
-
+ 
 .old-video-dialog .el-dialog {
   position: absolute !important;
   top: 0 !important;
@@ -1613,23 +1580,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