From 1fc366e055f051c5818cd3fbea63fec16f8195ba Mon Sep 17 00:00:00 2001
From: chenyao <1219716595@qq.com>
Date: Wed, 17 Sep 2025 11:36:53 +0800
Subject: [PATCH] feat:更新
---
src/api/airspace/airspace.js | 5
src/views/flightLog/flightLog.vue | 92 ++++++++++--------
src/views/tagManagement/tagManagement.vue | 144 ++++++++--------------------
3 files changed, 93 insertions(+), 148 deletions(-)
diff --git a/src/api/airspace/airspace.js b/src/api/airspace/airspace.js
index 327974f..45d5732 100644
--- a/src/api/airspace/airspace.js
+++ b/src/api/airspace/airspace.js
@@ -154,8 +154,7 @@
}
export const flightLogDelete = data => {
return request({
- url: '/drone-device-core/flight/log/remove' + data,
- method: 'post',
- data: data
+ url: '/drone-device-core/flight/log/remove?ids=' + data,
+ method: 'post'
})
}
\ No newline at end of file
diff --git a/src/views/flightLog/flightLog.vue b/src/views/flightLog/flightLog.vue
index 8aeea44..942effc 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>
@@ -96,53 +98,42 @@
</template>
<script setup>
import { getHistoryTrack, exportFlyLog, 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
@@ -197,18 +189,27 @@
// 打标签
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 +219,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>
diff --git a/src/views/tagManagement/tagManagement.vue b/src/views/tagManagement/tagManagement.vue
index 333b93a..265c196 100644
--- a/src/views/tagManagement/tagManagement.vue
+++ b/src/views/tagManagement/tagManagement.vue
@@ -2,29 +2,31 @@
<template>
<div class="tagManagement">
<div class="search-box">
- <!-- <el-form :model="params" inline>
- <el-form-item label="空域名称:">
- <el-input v-model="params.algName" placeholder="请输入空域名称" clearable />
- </el-form-item>
- <el-form-item>
- <el-button type="primary" @click="getList">搜索</el-button>
- <el-button @click="cancelSearch">取消</el-button>
- </el-form-item>
- </el-form> -->
+ <el-form :model="params" inline>
+ <div style="display: flex;justify-content: space-between">
+ <div>
+ <el-form-item label="标签名称:">
+ <el-input v-model="params.label_name" placeholder="请输入标签名称" clearable />
+ </el-form-item>
+ </div>
+ <div>
+ <el-form-item>
+ <el-button type="primary" @click="getList">搜索</el-button>
+ <el-button @click="cancelSearch">取消</el-button>
+ </el-form-item>
+ </div>
+ </div>
+ </el-form>
<div>
- <el-button type="primary" icon="el-icon-plus" @click="handleAdd">新增</el-button>
+ <el-button type="primary" icon="el-icon-plus" @click="handleAdd">新增标签</el-button>
</div>
</div>
<div class="mange-table">
<el-table border :data="tableList" class="custom-header">
<el-table-column label="序号" type="index" width="60"></el-table-column>
- <el-table-column prop="operating_income" label="营业收入" align="center"></el-table-column>
- <el-table-column prop="total_cost" label="综合总成本费用" align="center"></el-table-column>
- <el-table-column prop="net_profit" label="净利润" align="center"></el-table-column>
- <el-table-column prop="financial_irr" label="财务内部收益率" align="center"></el-table-column>
- <el-table-column prop="market_space" label="市场空间" align="center" show-overflow-tooltip></el-table-column>
+ <el-table-column prop="label_name" label="标签名称" align="center"></el-table-column>
<el-table-column prop="create_time" label="创建时间" align="center"></el-table-column>
- <el-table-column prop="nick_name" label="创建人" align="center"></el-table-column>
+ <el-table-column prop="create_user_name" label="创建人" align="center"></el-table-column>
<el-table-column label="操作" width="180" align="center">
<template #default="scope">
<!-- <el-button icon="el-icon-view" type="text" @click="handleDetail(scope.row)">查看</el-button> -->
@@ -45,20 +47,8 @@
:width="pxToRem(800)" :close-on-click-modal="false" :destroy-on-close="true" @close="handleClose">
<div class="content-edit">
<el-form ref="ruleFormRef" :model="editParams" :rules="rules" inline>
- <el-form-item label="营业收入" prop="operating_income">
- <el-input v-model="editParams.operating_income" />
- </el-form-item>
- <el-form-item label="综合总成本费用" prop="total_cost">
- <el-input v-model="editParams.total_cost" />
- </el-form-item>
- <el-form-item label="净利润" prop="net_profit">
- <el-input v-model="editParams.net_profit" />
- </el-form-item>
- <el-form-item label="财务内部收益率" prop="financial_irr">
- <el-input v-model="editParams.financial_irr" />
- </el-form-item>
- <el-form-item label="市场空间" prop="market_space" style="width: 716px;">
- <el-input v-model="editParams.market_space" />
+ <el-form-item label="标签名称" prop="label_name">
+ <el-input v-model="editParams.label_name" />
</el-form-item>
<div class="btns">
<el-button v-if="titleTxt === '新增'" type="primary" @click="submit(ruleFormRef)"><el-icon><CirclePlus /></el-icon>确认</el-button>
@@ -76,6 +66,7 @@
let titleTxt = ref('新增')
const total = ref(0)
const params = ref({
+ label_name: '',
current: 1,
size: 10,
});
@@ -87,72 +78,15 @@
const ruleFormRef = ref()
let editParams = ref({
id: '',
- operating_income: '',
- total_cost: '',
- net_profit: '',
- financial_irr: '',
- market_space: '',
+ label_name: '',
})
const rules = reactive({
- operating_income: [
- { required: true, message: '请输入营业收入', trigger: 'blur' },
- {
- validator: (rule, value, callback) => {
- if (!/^\d+(\.\d+)?$/.test(value)) {
- callback(new Error('请输入有效的数字(整数或小数)'));
- } else {
- callback();
- }
- },
- trigger: 'blur'
- }
- ],
- total_cost: [
- { required: true, message: '请输入综合总成本费用', trigger: 'blur' },
- {
- validator: (rule, value, callback) => {
- if (!/^\d+(\.\d+)?$/.test(value)) {
- callback(new Error('请输入有效的数字(整数或小数)'));
- } else {
- callback();
- }
- },
- trigger: 'blur'
- }
- ],
- net_profit: [
- { required: true, message: '请输入净利润', trigger: 'blur' },
- {
- validator: (rule, value, callback) => {
- if (!/^\d+(\.\d+)?$/.test(value)) {
- callback(new Error('请输入有效的数字(整数或小数)'));
- } else {
- callback();
- }
- },
- trigger: 'blur'
- }
- ],
- financial_irr: [
- { required: true, message: '请输入财务内部收益率', trigger: 'blur' },
- {
- validator: (rule, value, callback) => {
- if (!/^\d+(\.\d+)?$/.test(value)) {
- callback(new Error('请输入有效的数字(整数或小数)'));
- } else {
- callback();
- }
- },
- trigger: 'blur'
- }
- ],
- market_space: [
- { required: true, message: '请输入市场空间', trigger: 'blur' },
+ label_name: [
+ { required: true, message: '请输入标签名称', trigger: 'blur' },
],
})
function getList() {
- console.log('4444')
flightLogPage(params.value).then(res => {
tableList.value = res.data.data.records || []
total.value = res.data.data.total || 0
@@ -164,6 +98,7 @@
editParams.value = { ...row }
}
function handleDelete (row) {
+ console.log(row, '444')
ElMessageBox.confirm('确定删除吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
@@ -205,7 +140,7 @@
await formValidate.validate((valid, fields) => {
if (valid) {
if (titleTxt.value === '新增') {
- operatingIncomeAdd(editParams.value).then(res => {
+ flightLogAddEdit(editParams.value).then(res => {
isShowEditView.value = false
ElMessage.success('新增成功')
getList()
@@ -222,15 +157,20 @@
})
}
+function cancelSearch() {
+ params.value = {
+ label_name: '',
+ current: 1,
+ size: 10,
+ }
+ getList()
+}
+
function handleClose() {
// 清除表单内容
editParams.value = {
id: '',
- operating_income: '',
- total_cost: '',
- net_profit: '',
- financial_irr: '',
- market_space: '',
+ label_name: '',
}
}
@@ -251,7 +191,7 @@
flex-direction: column;
.search-box {
margin-top: 20px;
- height: 40px;
+ height: 80px;
}
:deep(.el-input) {
@@ -318,17 +258,15 @@
.content-edit {
.el-form {
.el-form-item {
- width: 320px;
+ width: 500px;
:deep(.el-form-item__label) {
- width: 140px;
+ width: 220px;
}
+
}
- // .el-form-item:last-child {
- // width: 640px;
- // }
.btns {
display: flex;
- justify-content: center
+ justify-content: flex-end;
}
}
}
--
Gitblit v1.9.3