From 78bf59d8e0106ccf2acdd5bc4e3a6e510e1e5cbf Mon Sep 17 00:00:00 2001
From: chenyao <1219716595@qq.com>
Date: Wed, 17 Sep 2025 13:58:32 +0800
Subject: [PATCH] feat:更新代码

---
 src/views/flightLog/flightLog.vue |  116 ++++++++++++++++++++++++++++++++++------------------------
 1 files changed, 68 insertions(+), 48 deletions(-)

diff --git a/src/views/flightLog/flightLog.vue b/src/views/flightLog/flightLog.vue
index 8aeea44..ecaf5a1 100644
--- a/src/views/flightLog/flightLog.vue
+++ b/src/views/flightLog/flightLog.vue
@@ -10,6 +10,8 @@
             range-separator="至"
             start-placeholder="开始日期"
             end-placeholder="结束日期"
+            clearable
+            @change="changeselect"
           />
         </el-form-item>
         <el-form-item>
@@ -39,12 +41,12 @@
         </el-table-column>
         <el-table-column prop="end_time" label="标签" align="center">
           <template #default="scope">
-            <el-select v-model="scope.row.label_id" @change="handleUpdateLabel">
+            <el-select v-model="scope.row.label_id" @change="handleUpdateLabel(scope.row)">
               <el-option
-                v-for="item in labelList"
-                :key="item.value"
-                :label="item.label"
-                :value="item.value"
+                v-for="item in tagList"
+                :key="item.id"
+                :label="item.label_name"
+                :value="item.id"
               ></el-option>
             </el-select>
           </template>
@@ -52,8 +54,8 @@
 				<el-table-column label="操作" width="200" align="center">
 					<template #default="scope">
             <!-- <el-button icon="el-icon-view" type="text" @click="handleDetail(scope.row)">查看</el-button> -->
-						<!-- <el-button icon="el-icon-delete" type="text" @click="handleDelete">删除</el-button> -->
-            <el-button type="text" @click="handleStar(scope.row)"><el-icon><Star /></el-icon>收藏</el-button>
+						<!-- <el-button icon="el-icon-delete" type="text" @click="handleDelete">删除</el-button> --> 
+            <el-button type="text" @click="handleStar(scope.row)"><el-icon><Star /></el-icon>{{ scope.row.is_favorite ? '取消收藏':'收藏' }}</el-button>
             <el-button type="text" @click="handleExport(scope.row)"><el-icon><Download /></el-icon>导出</el-button>
 					</template>
 				</el-table-column>
@@ -95,54 +97,43 @@
 	</el-dialog> -->
 </template>
 <script setup>
-import { getHistoryTrack, exportFlyLog, addStar, updateDroneFlight } from '@/api/logs';
+import { getHistoryTrack, cancelStar, addStar, updateDroneFlight } from '@/api/logs';
+import { flightLogPage } from '@/api/airspace/airspace';
 import { downloadXls } from '@/utils/util';
+import { exportBlob } from '@/api/common'
+import { ElMessage, ElMessageBox, ElLoading } from 'element-plus';
 
 const total = ref(0)
 let rangTime = ref([])
 const params = ref({
   isFavorite: false,
-  page: '1',
-  page_size: '10',
+  page: 1,
+  page_size: 10,
   startTime: '',
   endTime: '',
 });
 
 let tableList = ref([])
 
-let isShowView = ref(false)
+// let isShowView = ref(false)
 
-let rowView = ref({})
+// let rowView = ref({})
 
-let isShowEditView = ref(false)
+// let isShowEditView = ref(false)
 
 let tabType = ref('全部')
-const ruleFormRef = ref()
-let editParams = ref({
-  model_name: '',
-  alg_type: '',
-  qua_rate: '',
-  pass_rate: '',
-  event_type: '',
-  remark: ''
-})
-
-let labelList = ref([
-  {
-    value: '1',
-    label: '标签1'
-  },
-  {
-    value: '2',
-    label: '标签2'
-  },
-  {
-    value: '3',
-    label: '标签3'
-  },
-])
+// const ruleFormRef = ref()
+// let editParams = ref({
+//   model_name: '',
+//   alg_type: '',
+//   qua_rate: '',
+//   pass_rate: '',
+//   event_type: '',
+//   remark: ''
+// })
 
 function timeFormatConvert(time) {
+  if (!time) return '/'
   const date = new Date(time);
   return date.toLocaleString();
 }
@@ -157,8 +148,9 @@
 }
 
 function getList() {
-  params.value.startTime = rangTime.value[0] ? rangTime.value[0].getTime() : ''
-  params.value.endTime = rangTime.value[1]? rangTime.value[1].getTime() : ''
+  console.log(rangTime.value, '333')
+  params.value.startTime = rangTime.value?.length ? rangTime.value[0].getTime() : ''
+  params.value.endTime = rangTime.value?.length? rangTime.value[1].getTime() : ''
   getHistoryTrack(params.value).then(res => {
     tableList.value = res.data.data.list || []
     total.value = res.data.data.pagination.total || 0
@@ -166,7 +158,10 @@
 }
 
 function handleAll() {
+  params.value.isFavorite = false
+  params.value.page = 1
   tabType.value = '全部'
+  getList()
 }
 
 function handleStartList() {
@@ -190,25 +185,43 @@
 
 // 收藏
 function handleStar(row) {
-  addStar({ flight_log_id: row.id }).then(res => {
-    getList()
-  })
+  console.log(row, '5555')
+  if (row.is_favorite) {
+    cancelStar(row.id).then(res => {
+      ElMessage.success('取消收藏成功')
+      getList()
+    })
+  } else {
+    addStar({ flight_log_id: row.id }).then(res => {
+      ElMessage.success('收藏成功')
+      getList()
+    })
+  }
 }
 
 // 打标签
 function handleUpdateLabel(row) {
-  updateDroneFlight({ flight_log_id: row.id, states: row.states }).then(res => {
-    getList()
+  updateDroneFlight({ id: row.id, label_id: row.label_id }).then(res => {
+    // getList()
+    ElMessage.success('标签成功')
   })
 }
 
 // 导出
 function handleExport(row) {
-  exportFlyLog({ flight_id: row.id }).then(res => {
-    console.log(res)
-    downloadXls(res.data.data, `${row.job_name}.xls`);
-  })
+  exportBlob(
+        `/drone-device-core/log/droneFlightLogInfo/export/${row.id}`
+      ).then(res => {
+        downloadXls(res.data, `${row.job_name}.xlsx`)
+      })
 }
+
+// 日期选择
+// const changeselect = () => {
+//   params.value.startTime = rangTime.value[0] ? rangTime.value[0].getTime() : ''
+//   params.value.endTime = rangTime.value[1]? rangTime.value[1].getTime() : ''
+//   getList()
+// };
 
 function handleSizeChange(val) {
   params.value.page_size = val
@@ -218,8 +231,15 @@
   params.value.page = val
   getList()
 }
+let tagList = ref([])
+function tagManageList() {
+  flightLogPage({ current:1, size: 99 }).then(res => {
+    tagList.value = res.data.data.records || []
+  })
+}
 
 onMounted(() => {
+  tagManageList()
   getList()
 })
 </script>

--
Gitblit v1.9.3