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