无人机管理后台前端(已迁走)
张含笑
2025-07-21 3be2e099bbc05e902dfcfabc403ade0a2aba8ef4
feat:数据中心优化
3 files modified
2 files added
83 ■■■■■ changed files
src/assets/images/dataCenter/positionicon.png patch | view | raw | blame | history
src/assets/images/dataCenter/videoplay.png patch | view | raw | blame | history
src/views/dataCenter/components/searchData.vue 7 ●●●● patch | view | raw | blame | history
src/views/dataCenter/dataCenter.vue 73 ●●●●● patch | view | raw | blame | history
src/views/wel/components/flightStatistics.vue 3 ●●●● patch | view | raw | blame | history
src/assets/images/dataCenter/positionicon.png
src/assets/images/dataCenter/videoplay.png
src/views/dataCenter/components/searchData.vue
@@ -79,6 +79,7 @@
            v-model="searchForm.photoType"
            placeholder="请选择"
            clearable
            @clear="changePhotoType"
          >
            <el-option
              v-for="item in CategoryOption"
@@ -193,7 +194,11 @@
  },
  { deep: true }
);
const changePhotoType =(val)=>{
if(val === undefined){
  searchForm.photoType = ''
}
}
// 部门
let deptTreeData = ref([]);
// 机巢
src/views/dataCenter/dataCenter.vue
@@ -13,7 +13,6 @@
        <el-table
          v-loading="loadings"
          element-loading-text="加载中"
          stripe
          :data="tableData"
          class="custom-header"
          @selection-change="handleSelectionChange"
@@ -45,13 +44,21 @@
                :src="scope.row?.smallUrl"
                alt=""
              />
              <img
                v-else-if="scope.row?.resultType === 1"
                :src="convertVideoUrlToThumbnail(scope.row?.link)"
                alt=""
                class="imageBox"
                @click="enterFullScreen(scope.row)"
              />
              <!-- 视频 -->
              <div v-else-if="scope.row?.resultType === 1" class="videoItem1">
                <img
                  :src="convertVideoUrlToThumbnail(scope.row?.link)"
                  alt=""
                  class="imageBox"
                  @click="enterFullScreen(scope.row)"
                />
                <img
                  class="playBox"
                  @click="enterFullScreen(scope.row)"
                  src="@/assets/images/dataCenter/videoplay.png"
                  alt=""
                />
              </div>
              <!-- 正射 -->
              <el-image
                v-else-if="scope.row?.resultType === 4"
@@ -71,7 +78,7 @@
          </el-table-column>
          <el-table-column prop="jobTime" label="任务时间" />
          <el-table-column property="photoType" label="文件类别">
            <template #default="scope">
            <template #default="scope">
              <span>{{
                photoTypeMap[scope.row.photoType] ? photoTypeMap[scope.row.photoType] : '--'
              }}</span>
@@ -82,21 +89,24 @@
              <span>{{ resultTypeMap[row?.resultType] }}</span>
            </template>
          </el-table-column>
          <el-table-column label="操作" width="150" align="center">
          <el-table-column label="操作" width="200" align="center">
            <template #default="scope">
              <span class="look" @click="lookDetail(scope.row)">查看</span>
              <span
                class="delete"
                @click="deleteDetail(scope.row)"
                v-if="scope.row.resultType !== 2"
                >删除</span
              <el-button icon="el-icon-view" type="text" @click="lookDetail(scope.row)"
                >查看</el-button
              >
              <span
                class="location"
                @click="positionDetail(scope.row)"
              <el-button
                v-if="scope.row.resultType !== 2"
                icon="el-icon-delete"
                type="text"
                @click="deleteDetail(scope.row)"
                >删除</el-button
              >
              <el-button
                v-if="shouldShowLocation(scope.row)"
                >定位</span
                type="text"
                @click="positionDetail(scope.row)"
              >
                <img :src="positionicon" class="custom-icon" />定位</el-button
              >
            </template>
          </el-table-column>
@@ -258,6 +268,8 @@
</template>
<script setup>
import videoplay from '@/assets/images/dataCenter/videoplay.png';
import positionicon from '@/assets/images/dataCenter/positionicon.png';
import { useStore } from 'vuex';
import { PublicCesium } from '@/utils/cesium/publicCesium';
import { Cartesian3 } from 'cesium';
@@ -730,7 +742,12 @@
      cursor: pointer;
      margin-right: 10px;
    }
    .custom-icon {
      width: 14px;
      height: 14px;
      margin-right: 5px;
      vertical-align: middle;
    }
    .delete {
      color: #ff241c;
      margin-right: 10px;
@@ -756,7 +773,17 @@
    width: 76px;
    height: 72px;
  }
  .videoItem1 {
    .playBox {
      width: 20px;
      height: 20px;
      position: absolute;
      top: 46%;
      left: 43%;
      transform: translate(-50%, -50%);
      cursor: pointer;
    }
  }
  .videoDialog :deep(.el-dialog) {
    height: 600px;
    width: 54%;
src/views/wel/components/flightStatistics.vue
@@ -89,8 +89,7 @@
const getFlyTimeList = () => {
  getFlyTime(params.value).then(res => {
    const resList = res?.data?.data || [];
    console.log('飞行',resList);
    lineCharts(resList);
  });
};