forked from drone/command-center-dashboard

chenyao
2025-04-19 bdbc09270be8590d9b5a4837501074dfc338d34b
src/components/CurrentTaskDetails/TaskDetailsLeft.vue
@@ -21,7 +21,7 @@
         <div @click="takePictures">拍照</div>
         <div @click="recordFun">{{ isRecording ? '录像中...' : '录像' }}</div>
      </div>
      <div class="multiCol">
      <div class="multiCol" v-if="wsInfo?.psdk_widget_values">
         <div @click="shoutFun">{{ isRecordShouting ? '喊话' : '停止喊话' }}</div>
         <div @click="broadcastFun">广播</div>
      </div>
@@ -36,6 +36,7 @@
            :max="cameraParams.camera_type === 'ir' ? 200 : 200"
            @change="sliderChange"
         />
         <div class="cameraZoomText">{{cameraParams.zoom_factor}}X</div>
      </div>
   </div>
   <!-- 广播列表 -->
@@ -87,11 +88,11 @@
<script setup>
import EventBus from '@/event-bus'
import {
   callPhotoAndVideoCmd,
   cameraParamsChangeApi,
   ptzResetModeApi,
   startVoice,
import {
   callPhotoAndVideoCmd,
   cameraParamsChangeApi,
   ptzResetModeApi,
   startVoice,
   stayAwayRiver,
   getVoiceFile,
   playAudio,
@@ -101,9 +102,9 @@
import Recorder from 'js-audio-recorder';
import dayjs from 'dayjs'
const wsInfo = inject('wsInfo')
// 初始化喊话
let globalShout = null
const isRecording = ref(false)
const list1 = ref([
@@ -255,7 +256,7 @@
   }
}
const tableList = ref([]);
// 分页相关
// 分页相关
const searchParams = ref({
   sn: droneSn.value,
  name: '',
@@ -345,7 +346,7 @@
   top: 50%;
   transform: translateY(-60%);
   width: 178px;
   height: 416px;
   padding: 20px 0;
   background: rgba(0, 0, 0, 0.5);
   backdrop-filter: blur(5px);
   border-radius: 20px 20px 20px 20px;
@@ -363,16 +364,27 @@
   .cameraZoom {
      position: absolute;
      padding: 16px 0;
      padding: 20px 0 15px 0;
      left: 1600px;
      top: -59px;
      width: 112px;
      width: 90px;
      height: 490px;
      background: rgba(64, 64, 64, 0.15);
      background: rgba(0, 0, 0, 0.4);
      backdrop-filter: blur(5rem);
      border-radius: 20px 20px 20px 20px;
      display: flex;
      flex-direction: column;
      align-items: center;
      .el-slider {
         height: 100%;
         flex: 1;
      }
      .cameraZoomText{
         font-family: Segoe UI, Segoe UI;
         font-weight: 400;
         font-size: 22px;
         color: #ffffff;
         margin-top: 20px;
      }
   }
@@ -586,7 +598,7 @@
    bottom: 10px;
      height: 32px;
    display: flex;
      :deep(.number) {
         color: #EDEDED;
      }