无人机管理后台前端(已迁走)
张含笑
2025-08-15 590a46b8a15976856b0a8d877590701cc6db5973
feat:添加字段
2 files modified
65 ■■■■■ changed files
src/views/dataCenter/components/searchData.vue 9 ●●●●● patch | view | raw | blame | history
src/views/dataCenter/dataCenter.vue 56 ●●●●● patch | view | raw | blame | history
src/views/dataCenter/components/searchData.vue
@@ -259,13 +259,11 @@
    searchForm.endTime = end.format(timeFormat);
    handleSearch()
  }
};
// 部门下得机巢
const requestDockInfo = () => {
  getRegionTreeAll({ parentCode: userAreaCode.value }).then(res => {
    deptTreeData.value = res.data.data ? [res.data.data] : [];
    handleNodeClick({ id: userAreaCode.value });
  });
};
@@ -275,6 +273,7 @@
  machineData.value = '';
  const droneList = await getDeviceRegion({ areaCode: data.id });
  machineData.value = droneList?.data?.data;
  // 默认选中值
  if (signDevice_sn.value) {
    searchForm.deviceSn = signDevice_sn.value;
@@ -283,6 +282,7 @@
  deptData.value = [];
  getDeptsByAreaCode();
  handleSearch();
};
// 所属部门信息
const getDeptsByAreaCode = () => {
@@ -340,8 +340,9 @@
}
// 切换文件夹
const handleswitchFolders =()=>{
  emit('handleswitchFolders',machineData.value);
  emit('handleswitchFolders');
}
onMounted(() => {
  requestDockInfo();
  getDownloadStatusApi({type: 'htsjzx'}).then(res =>{
@@ -350,6 +351,8 @@
    }
  })
});
</script>
<style scoped lang="scss">
src/views/dataCenter/dataCenter.vue
@@ -9,7 +9,8 @@
        @search="searchClick"
        @downFun="downloadFile"
        @allDownFun="aLLDownloadFile"
          @handleswitchFolders="handleswitchFolders"
        @handleswitchFolders="handleswitchFolders"
      ></searchData>
      <!-- 文件夹 -->
      <div v-if="switchFolders" >
@@ -24,14 +25,23 @@
          <el-table-column label="序号" type="index" width="60">
            <template #default="{ $index }">
              {{
                ($index + 1 + (jobListParams.current - 1) * jobListParams.size)
                ($index + 1 + (FolderListParams.page - 1) * FolderListParams.page_size)
                  .toString()
                  .padStart(2, '0')
              }}
            </template>
          </el-table-column>
          <el-table-column property="name" label="任务名称" show-overflow-tooltip />
          <el-table-column property="nickname" label="所属机巢" />
          <el-table-column property="name" label="任务名称" show-overflow-tooltip />
           <el-table-column property="regionName" label="所属区域">
             <template #default="scope">
              <span>{{scope.row.regionName ? scope.row.regionName :'--'}}</span>
            </template>
            </el-table-column>
          <el-table-column property="nickname" label="所属机巢" >
             <template #default="scope">
              <span>{{scope.row.nickname ? scope.row.nickname :'--'}}</span>
            </template>
            </el-table-column>
          <el-table-column label="操作" align="center">
            <template #default="scope">
              <el-button icon="el-icon-view" type="text" @click="foldersOpen(scope.row)"
@@ -323,14 +333,6 @@
import EventPopUpBox from '@/hooks/components/EventPopUpBox.vue';
import { nextTick, render } from 'vue';
import defaultIcon from '@/assets/images/dataCenter/datamap/eventCompleted.png';
const userInfo = computed(() => store.getters.userInfo);
const isShow = defineModel('show');
const viewerRef = shallowRef(null);
let viewer = null;
const viewInstance = shallowRef(null);
const store = useStore();
const currentAreaPosition = ref({ height: 1987280, latitude: 27.636112, longitude: 115.732975 });
let handler = null;
import EventBus from '@/utils/eventBus';
import dataCenterMap from '@/views/dataCenter/components/dataCenterMap.vue';
import PanoramaPopup from '@/components/PanoramaPopup/PanoramaPopup.vue'; //全景
@@ -346,8 +348,15 @@
  updataTitleApi,
  getOrthoimageInfo, getDownloadStatusApi,getJobIdsBySnApi
} from '@/api/dataCenter/dataCenter';
const userInfo = computed(() => store.getters.userInfo);
const isShow = defineModel('show');
const viewerRef = shallowRef(null);
let viewer = null;
const viewInstance = shallowRef(null);
const store = useStore();
const currentAreaPosition = ref({ height: 1987280, latitude: 27.636112, longitude: 115.732975 });
let handler = null;
const switchFolders = ref(false)
function bytesToMB(bytes, decimalPlaces = 2) {
  if (typeof bytes !== 'number' || bytes < 0) return '0';
  return (bytes / 1048576).toFixed(decimalPlaces) + ' MB';
@@ -439,7 +448,6 @@
   
});
const tableData = ref([]);
// 获取列表数据
const getaiImagesPage = () => {
  loadings.value = true;
@@ -472,9 +480,10 @@
      loadings.value = false; 
    });
};
const folderList = ref([])
// 获取文件夹数据
const getFolderList=(nestDataList)=>{
const getFolderList=()=>{
 loadings.value = true;
 const apiParams = {
    ...FolderListParams, 
@@ -483,11 +492,11 @@
        .then(res => {
     folderList.value = res.data.data.records?.map(i=>{
       let nickname = '';
      nestDataList?.forEach(nestItem=>{
      if(i.device_sn === nestItem.device_sn){
        nickname = nestItem.nickname
      }
      })
      // nestDataList?.forEach(nestItem=>{
      // if(i.device_sn === nestItem.device_sn){
      //   nickname = nestItem.nickname
      // }
      // })
       return {
          ...i,
          nickname: nickname,
@@ -495,6 +504,7 @@
        };
      
     }) 
    total.value = res.data.data.total  
        })
        .finally(() => {
@@ -510,9 +520,9 @@
    switchFolders.value = false
}
// 获取数据时使用各自的分页参数
const fetchData = (val) => {
const fetchData = () => {
  if (switchFolders.value) {
    getFolderList(val);
    getFolderList();
  } else {
    getaiImagesPage();  
  }
@@ -523,7 +533,7 @@
     switchFolders.value = !switchFolders.value;
     jobListParams.current = 1;
     FolderListParams.page = 1;
     fetchData(val);
     fetchData();
     
   };
// 查询