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

View File

@ -27,14 +27,14 @@
<PublicTag icon="icon-gaodu" :val="plane.planeState.currentBattery" unit="安" state="danger" />
</el-col>
<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-row>
<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">
H
</tooltip> -->
</tooltip>
</div>
</div>
@ -43,7 +43,7 @@
<script>
import HeartTag from '@/components/Tag/HeartTag'
import PublicTag from '@/components/Tag/PublicTag'
// import Tooltip from '@/components/Tag/Tooltip'
import Tooltip from '@/components/Tag/Tooltip'
import geodist from 'geodist'
export default {
@ -61,8 +61,8 @@ export default {
},
components: {
HeartTag,
PublicTag
// Tooltip
PublicTag,
Tooltip
},
computed: {
},

View File

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

View File

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

View File

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