Compare commits

..

No commits in common. "4d46c3cdac7d57d8998a1ea34dace0a1b1ddaad7" and "20f55808e2cbf16d5cca4be0ec35bcd2c1d9f53c" have entirely different histories.

5 changed files with 29 additions and 49 deletions

View File

@ -57,8 +57,7 @@
<!-- 内容 --> <!-- 内容 -->
<el-form label-position="left" ref="questForm" :model="questForm" label-width="80px"> <el-form label-position="left" ref="questForm" :model="questForm" label-width="80px">
<el-form-item label="订单选择" v-if="!executeOrder"> <el-form-item label="订单选择" v-if="!executeOrder">
<el-select v-model="questForm.id" :filterable="isMobile" placeholder="请选择,也可输入搜索" <el-select v-model="questForm.id" :filterable="isMobile" placeholder="请选择,也可输入搜索" :disabled="executeOrder">
:disabled="executeOrder">
<el-option v-for="item in questList" :key="item.id" :label="item.id" :value="item.id" <el-option v-for="item in questList" :key="item.id" :label="item.id" :value="item.id"
:class="isWaring(item) ? 'danger-color' : ''"> :class="isWaring(item) ? 'danger-color' : ''">
<span class="l">{{ item.id }}</span> <span class="l">{{ item.id }}</span>
@ -410,7 +409,8 @@ export default {
*/ */
publishFun (jsonData) { publishFun (jsonData) {
if (this.plane) { if (this.plane) {
mqtt.publishFun(`cmd/${this.plane.macadd}`, jsonData) const val = jsonData
mqtt.publishFun(`cmd/${this.plane.macadd}`, val)
} else { } else {
this.$message.warning('与飞机通信未接通,请稍后') this.$message.warning('与飞机通信未接通,请稍后')
} }
@ -742,14 +742,12 @@ export default {
return isOverWaight || isQuestIng return isOverWaight || isQuestIng
} }
}, },
mounted () { created () {
// //
if (this.executeOrder) { // if (this.executeOrder) { //
this.makeRouteForMap()// this.makeRouteForMap()//
} else { // } else { //
if (this.plane) { this.publishFun('{"resetState":1}')//
this.publishFun('{"resetState":1}')//
}
} }
}, },
watch: { watch: {

View File

@ -27,14 +27,14 @@
<PublicTag icon="icon-gaodu" :val="plane.planeState.currentBattery" unit="安" state="danger" /> <PublicTag icon="icon-gaodu" :val="plane.planeState.currentBattery" unit="安" state="danger" />
</el-col> </el-col>
<el-col :span="2"> <el-col :span="2">
<PublicTag icon="icon-gaodu" :val="plane.planeState.battCapacity" unit="%" state="danger" /> <PublicTag icon="icon-gaodu" :val="plane.planeState.batteryRemaining" unit="%" state="danger" />
</el-col> </el-col>
</el-row> </el-row>
<div class="batteryBox"> <div class="batteryBox">
<!-- <el-progress :percentage="plane.planeState.batteryRemaining" :show-text="false" stroke-width="2"></el-progress> <el-progress :percentage="plane.planeState.batteryRemaining" :show-text="false" stroke-width="2"></el-progress>
<tooltip :horizontalPosition="'80%'" backgroundColor="#ff3333"> <tooltip :horizontalPosition="'80%'" backgroundColor="#ff3333">
H H
</tooltip> --> </tooltip>
</div> </div>
</div> </div>
@ -43,7 +43,7 @@
<script> <script>
import HeartTag from '@/components/Tag/HeartTag' import HeartTag from '@/components/Tag/HeartTag'
import PublicTag from '@/components/Tag/PublicTag' import PublicTag from '@/components/Tag/PublicTag'
// import Tooltip from '@/components/Tag/Tooltip' import Tooltip from '@/components/Tag/Tooltip'
import geodist from 'geodist' import geodist from 'geodist'
export default { export default {
@ -61,8 +61,8 @@ export default {
}, },
components: { components: {
HeartTag, HeartTag,
PublicTag PublicTag,
// Tooltip Tooltip
}, },
computed: { computed: {
}, },

View File

@ -285,8 +285,7 @@ const store = new Vuex.Store({
getPlaneMode: null, // 飞机模式 getPlaneMode: null, // 飞机模式
loadweight: null, // 重量 loadweight: null, // 重量
hookstatus: null, // 钩子状态 hookstatus: null, // 钩子状态
position: [], // [[经度,维度,海拔高度]]累计数组 position: []// [[经度,维度,海拔高度]]累计数组
battCapacity: null// 电池容量
} }
}) })
if (res.data.status === 1) { if (res.data.status === 1) {

View File

@ -10,7 +10,6 @@
</template> </template>
<script> <script>
import mqtt from '@/utils/mqtt'
import MapBox from '@/components/MapBox' import MapBox from '@/components/MapBox'
import ControllerTabs from '@/components/ControllerTabs' import ControllerTabs from '@/components/ControllerTabs'
import PlaneStatus from '@/components/PlaneStatus' import PlaneStatus from '@/components/PlaneStatus'
@ -101,10 +100,6 @@ export default {
plane: { plane: {
handler (val) { handler (val) {
this.makePlane(val)// this.makePlane(val)//
if (val.planeState.battCapacity === null) {
console.log(val.planeState.battCapacity)
mqtt.publishFun(`cmd/${this.plane.macadd}`, '{"getBattCapacity":1}')//
}
}, },
deep: true deep: true
}, },

View File

@ -81,36 +81,24 @@ export default {
mqtt.doSubscribe('planeState/+', (mqttRes) => { mqtt.doSubscribe('planeState/+', (mqttRes) => {
res.forEach(plane => { res.forEach(plane => {
if (mqttRes.topic.indexOf(plane.macadd) > -1) { if (mqttRes.topic.indexOf(plane.macadd) > -1) {
try { // mqtt
// mqtt const jsonData = JSON.parse(mqttRes.msg.trim())
const jsonData = JSON.parse(mqttRes.msg.trim()) // mqtt
for (const key in jsonData) {
// mqtt if (key === 'heartBeat') { // heartRandom watch
for (const key in jsonData) { plane.planeState.heartRandom = Math.random()
if (key === 'heartBeat') { }
// heartRandom watch if (key === 'position') { // 便
plane.planeState.heartRandom = Math.random() let position = jsonData.position
} else if (key === 'position') { position = position.replace(/([a-zA-Z0-9]+):/g, '"$1":')// mcujson "lng":
// 便 position = JSON.parse(position)
const position = JSON.parse(jsonData.position) plane.planeState.position.push([position.lng / 10e6, position.lat / 10e6, Number(position.alt)])
plane.planeState.position.push([position.lng / 10e6, position.lat / 10e6, Number(position.alt)]) if (plane.planeState.position.length > 1000) {
if (plane.planeState.position.length > 1000) { plane.planeState.position.shift()//
plane.planeState.position.shift() // }
} } else {
} else if (key === 'parameter') { plane.planeState[key] = jsonData[key]//
// get
const parameter = JSON.parse(jsonData.parameter.trim())
for (const k in parameter) {
if (k === 'BATT_CAPACITY') {
plane.planeState.battCapacity = parameter.BATT_CAPACITY
}
}
} else {
plane.planeState[key] = jsonData[key] //
}
} }
} catch (error) {
console.error('Error parsing JSON or processing message:', error)
} }
} }
}) })