seimin %!s(int64=2) %!d(string=hai) anos
pai
achega
4209a20782
Modificáronse 1 ficheiros con 46 adicións e 1 borrados
  1. 46 1
      src/views/indes.vue

+ 46 - 1
src/views/indes.vue

@@ -188,7 +188,10 @@
188 188
                 >{{ item.place.area.area }} {{ item.place.place }}
189 189
                 {{ item.houseNumber }}</span
190 190
               >
191
-              <span>{{ item.acceptDate | timeFormat("MM-dd HH:mm") }}</span>
191
+              <span>
192
+                <i v-if="item.callID" @click.stop="showAudio(item.callID)" class="dash dash-dianbohuifang"></i>
193
+                {{ item.acceptDate | timeFormat("MM-dd HH:mm") }}
194
+              </span>
192 195
             </div>
193 196
           </div>
194 197
         </div>
@@ -238,6 +241,11 @@
238 241
         </div>
239 242
       </div>
240 243
     </div>
244
+    <div class="mask" v-if="audioMask" @click="hideAudio()">
245
+      <audio controls autoplay="autoplay" id="bgMusic">
246
+        <source :src="audioSrc" type="audio/mpeg">
247
+      </audio>
248
+    </div>
241 249
   </div>
242 250
 </template>
243 251
 <script>
@@ -246,6 +254,8 @@ import { SM } from "./../http/http";
246 254
 export default {
247 255
   data() {
248 256
     return {
257
+      audioSrc:'',//音频路径
258
+      audioMask:false,//音频
249 259
       isAll:false,//是否显示全部事件权限
250 260
       wxClQuestions: localStorage.getItem("wxClQuestions"),
251 261
       loginUser: JSON.parse(localStorage.getItem("loginUser")),
@@ -273,6 +283,30 @@ export default {
273 283
     };
274 284
   },
275 285
   methods: {
286
+    // 播放音频
287
+    showAudio(callID){
288
+      const toast = this.$createToast({
289
+        txt: "Loading...",
290
+        mask: true
291
+      });
292
+      toast.show();
293
+      this.$http
294
+        .post("service/bpm/data/fetchDataList/callrecord", {idx: 0, sum: 1, callrecord: {callAccept: callID}})
295
+        .then(res => {
296
+          toast.hide();
297
+          if (res.data.status == 200) {
298
+            res.data.list = res.data.list || [];
299
+            if(res.data.list.length){
300
+                this.audioMask = true;
301
+                this.audioSrc = this.$host+res.data.list[0].recordingFileName;
302
+            }
303
+          }
304
+        });
305
+    },
306
+    // 隐藏音频组件
307
+    hideAudio(){
308
+      this.audioMask=false;
309
+    },
276 310
     goTo(url){
277 311
       this.$router.push(url);
278 312
     },
@@ -442,6 +476,17 @@ export default {
442 476
 };
443 477
 </script>
444 478
 <style scoped lang="less">
479
+.mask{
480
+  width: 100%;
481
+  height: 100%;
482
+  position: fixed;
483
+  top: 0;
484
+  background: rgba(0,0,0,.5);
485
+  z-index: 999;
486
+  display: flex;
487
+  align-items: center;
488
+  justify-content: center;
489
+}
445 490
 .fl {
446 491
   float: left;
447 492
 }