From 53bcb7e5dffa071d2c6593f5db7f0b6e4e2f8dfe Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Wed, 18 Oct 2023 16:17:02 +0800
Subject: [PATCH] 隐藏重复定时和连续执行
---
src/components/GMap.vue | 44 +++++++++++++++++++++++++-------------------
1 files changed, 25 insertions(+), 19 deletions(-)
diff --git a/src/components/GMap.vue b/src/components/GMap.vue
index aeb70e9..813c026 100644
--- a/src/components/GMap.vue
+++ b/src/components/GMap.vue
@@ -436,22 +436,19 @@
<a-tooltip :title="osdVisible.model">
<div style="width: 90%;" class="flex-column flex-align-center flex-justify-center">
<span><a-image :src="M30" :preview="false" /></span>
- <span>M30</span>
+ <span>{{ DEVICE_NAME[`${osdVisible.device_domain}-${osdVisible.device_type}-${osdVisible.device_sub_type}`] }}</span>
</div>
</a-tooltip>
</div>
<div class="osd flex-1">
<a-row class="mr-20" align="middle">
<a-col span="9"
- :style="deviceInfo.device || deviceInfo.device?.mode_code !== EModeCode.Disconnected ? 'color: rgb(25,190,107)' : deviceInfo.dock.basic_osd?.drone_in_dock === 0 ?'color: red; font-weight: 700;': '' ">
+ :style="deviceInfo.device && deviceInfo.device?.mode_code !== EModeCode.Disconnected ? 'color: rgb(25,190,107)' : deviceInfo.dock.basic_osd?.drone_in_dock === 1? 'color: rgb(25,190,107)' : 'color: red; font-weight: 700;' ">
<!-- DroneInDockEnum[deviceInfo.dock.basic_osd?.drone_in_dock] -->
{{ deviceInfo.device ? EModeText[deviceInfo.device?.mode_code] : (deviceInfo.dock.basic_osd?.drone_in_dock === 1) ? '舱内关机' : EModeText[EModeCode.Disconnected]
}}</a-col>
<a-col span="15">
<div style="width:100%;padding:0 5px;background-color: #5d5f61;color: #fff;font-size: 10px;">{{deviceInfo.device?.mode_code == 14 || !deviceInfo.device ? 'N/A' : '当前正常'}}</div>
- <!-- <a-select :showArrow="false" v-model:value="aircraSelected" :bordered="false" :options="aircraftList"
- :placeholder="aircraftList.length == 0 ? 'N/A' : '请选择'" :disabled="aircraftList.length == 0 ? true : false"
- size="small" style="width:100%;background-color: #5d5f61;color: #fff;" @change="selectChange"></a-select> -->
</a-col>
</a-row>
<a-row align="middle" justify="center">
@@ -474,11 +471,19 @@
</a-button>
</a-col>
</a-row>
- <a-row v-if="deviceInfo.device?.mode_code != 14 && deviceInfo.device" class="p5" align="middle" justify="space-between">
+ <a-row class="p5" align="middle" justify="space-between">
<a-col span="24">
+ <!-- <a-button v-if="controlStatus != ''" :class="[openDroneControl ? 'active-color' : 'unactive-color']" class="width-100" type="primary"
+ size="small" @click="openDeviceSetting">
+ 飞行控制(<DesktopOutlined v-if="controlStatus === 'A'" /> <RobotFilled v-else />{{ controlStatus === 'A' ? 'A控' : 'B控'}})
+ </a-button>
+ <a-button v-else :class="[openDroneControl ? 'active-color' : 'unactive-color']" class="width-100" type="primary"
+ size="small" @click="openDeviceSetting">
+ 飞行控制
+ </a-button> -->
<a-button :class="[openDroneControl ? 'active-color' : 'unactive-color']" class="width-100" type="primary"
size="small" @click="openDeviceSetting">
- 操作
+ 飞行控制
</a-button>
</a-col>
</a-row>
@@ -730,14 +735,15 @@
import { getLiveCapacity, startLivestream, stopLivestream } from '/@/api/manage'
import {
DeviceOsd, DeviceStatus, DockOsd, EGear, EModeCode, GatewayOsd, EDockModeCode, EDockModeText, EModeText,
- NetworkStateQualityEnum, NetworkStateTypeEnum, RainfallEnum, DroneInDockEnum
+ NetworkStateQualityEnum, NetworkStateTypeEnum, RainfallEnum, DroneInDockEnum, DEVICE_NAME
} from '/@/types/device'
import pin from '/@/assets/icons/pin-2d8cf0.svg'
import M30 from '/@/assets/icons/m30.png'
import {
BorderOutlined, LineOutlined, CloseOutlined, ControlOutlined, TrademarkOutlined, ArrowDownOutlined,
ThunderboltOutlined, SignalFilled, GlobalOutlined, HistoryOutlined, CloudUploadOutlined, RocketOutlined,
- FieldTimeOutlined, CloudOutlined, CloudFilled, FolderOpenOutlined, RobotFilled, ArrowUpOutlined, CarryOutOutlined
+ FieldTimeOutlined, CloudOutlined, CloudFilled, FolderOpenOutlined, RobotFilled, ArrowUpOutlined, CarryOutOutlined,
+ DesktopOutlined
} from '@ant-design/icons-vue'
import { EDeviceTypeName } from '../types'
import DockControlPanel from './g-map/DockControlPanel.vue'
@@ -767,7 +773,8 @@
DockControlPanel,
DroneControlPanel,
CarryOutOutlined,
- RocketOutlined
+ RocketOutlined,
+ DesktopOutlined
},
name: 'GMap',
props: {},
@@ -1029,13 +1036,6 @@
airPortUrl.value = res.data.url
})
}
- // 下拉框选择变化
- const selectChange = async (e) => {
- // await closeFly()
- // setTimeout(async () => {
- await flyOnStart()
- // }, 500)
- }
// 关闭设备直播
const onClose = async () => {
const videoId = droneList.value[droneIndex.value].value + '/' + cameraList.value[cameraIndex.value].value + '/' + videoList.value[videoIndex.value].value
@@ -1099,6 +1099,8 @@
airPortOption.value = false
openDroneControl.value = !openDroneControl.value
}
+ // 飞行控制状态
+ const controlStatus = computed(() => store.state.common.droneControlSource)
watch(() => store.state.deviceStatusEvent,
data => {
if (Object.keys(data.deviceOnline).length !== 0) {
@@ -1400,6 +1402,7 @@
str,
EDockModeCode,
EDockModeText,
+ DEVICE_NAME,
EModeText,
dockControlPanelVisible,
setDockControlPanelVisible,
@@ -1419,7 +1422,6 @@
aircraftUrl,
aircraftList,
aircraSelected,
- selectChange,
closeOperate,
closeOsdWindow,
openDroneControl,
@@ -1428,7 +1430,8 @@
airTimeout,
flyTimeout,
aircrafIndex,
- airPortOption
+ airPortOption,
+ controlStatus
}
}
})
@@ -1472,6 +1475,9 @@
display: none;
}
}
+ &:deep(.ant-btn > .anticon + span, .ant-btn > span + .anticon, .ant-btn > .anticon + span, .ant-btn > span + .anticon) {
+ margin-left: 5px !important;
+ }
}
.osd-panel {
--
Gitblit v1.9.3