提交 234bd52c 作者: 翁进城

feat: 1. 修改获取架次号的参数

2. 任务完成提示改为需要确认
上级 bde186ab
import request from "../request"; import request from "../request";
import qs from 'qs';
// 创建视图数据 // 创建视图数据
export default class TaskInfo { export default class TaskInfo {
// 生成架次号 // 生成架次号
static flightSortieId(data) { static flightSortieId(data) {
return request({ return request({
url: `/admin-api/bpm/task-info/flightsortieid?id=${data.id}`, url: `/admin-api/bpm/task-info/flightsortieid`,
method: "post", method: "post",
data
}); });
} }
} }
...@@ -30,7 +30,12 @@ export default { ...@@ -30,7 +30,12 @@ export default {
'uavRealTimeData.isFlying'(newVal, oldVal){ 'uavRealTimeData.isFlying'(newVal, oldVal){
// 监听飞机降落然后进行任务结束的提示 // 监听飞机降落然后进行任务结束的提示
if(oldVal === true && newVal === false){ if(oldVal === true && newVal === false){
this.$message.success('任务结束') this.$alert('任务结束', '提示', {
type: 'success ',
confirmButtonText: '确定',
callback: action => {
}
});
} }
} }
}, },
......
...@@ -58,6 +58,20 @@ ...@@ -58,6 +58,20 @@
<div class="num">{{this.speed}}M/S</div> <div class="num">{{this.speed}}M/S</div>
<div class="name">速度</div> <div class="name">速度</div>
</div> </div>
<div class="info" :class="active == 1?'active':''" @click="getActive(1,'camera')">
<!-- <div class="num">2/3</div> -->
<div class="name">拍照</div>
</div>
<div
class="info"
:class="active == 10?'active':''"
@click="getActive(10,!videoStatus ? 'start' : 'end')"
>
<!-- <div class="num">2/3</div> -->
<div v-if="videoStatus == 0" class="name">开始录像</div>
<div v-if="videoStatus == 2" class="name">结束录像</div>
<div v-if="videoStatus == 1" class="name">录像中</div>
</div>
</div> </div>
<div class="ai" v-if="aiShow"> <div class="ai" v-if="aiShow">
<!-- <div class="head">AI识别</div> --> <!-- <div class="head">AI识别</div> -->
...@@ -105,6 +119,11 @@ import svgSwim from "./assets/images/swim.svg"; ...@@ -105,6 +119,11 @@ import svgSwim from "./assets/images/swim.svg";
import svgYan from "./assets/images/yan.svg"; import svgYan from "./assets/images/yan.svg";
import svgThings from "./assets/images/things.svg"; import svgThings from "./assets/images/things.svg";
//判断数组中是否存在对象
function hasObject(arr, targetObj) {
return arr.some((obj) => JSON.stringify(obj) === JSON.stringify(targetObj));
}
export default { export default {
props: { props: {
uavRealTimeData: { uavRealTimeData: {
...@@ -175,6 +194,7 @@ export default { ...@@ -175,6 +194,7 @@ export default {
}, },
], ],
lineNameAI: "", lineNameAI: "",
videoStatus: 0, // 录像状态, 0:开始录像 1: 录像中 2: 结束录像
}; };
}, },
computed: { computed: {
...@@ -218,7 +238,7 @@ export default { ...@@ -218,7 +238,7 @@ export default {
if (this.pointList.length > 0) { if (this.pointList.length > 0) {
this.pointList.forEach((val) => { this.pointList.forEach((val) => {
if (val.id == this.pointInfo.id) { if (val.id == this.pointInfo.id) {
console.log(val, "val"); console.log(val, "航点");
val.speed = this.speed; val.speed = this.speed;
// this.$set(val, "aiList", this.aiList); // this.$set(val, "aiList", this.aiList);
val.aiList = JSON.parse(JSON.stringify(this.aiList)); val.aiList = JSON.parse(JSON.stringify(this.aiList));
...@@ -228,8 +248,6 @@ export default { ...@@ -228,8 +248,6 @@ export default {
} }
} }
console.log(this.aiList, "save"); console.log(this.aiList, "save");
// console.log(this.pointInfo);
// console.log(this.pointList);
}, },
getPoint() { getPoint() {
let blob = this.$parent.screenShot(); let blob = this.$parent.screenShot();
...@@ -284,7 +302,7 @@ export default { ...@@ -284,7 +302,7 @@ export default {
console.log("新增航点", _this.pointList); console.log("新增航点", _this.pointList);
}); });
function blobToBase64(blob, callback) { function blobToBase64(blob, callback) {
if(!blob){ if (!blob) {
callback(null); callback(null);
return; return;
} }
...@@ -353,23 +371,57 @@ export default { ...@@ -353,23 +371,57 @@ export default {
}, },
getActive(num, val) { getActive(num, val) {
this.active = num; this.active = num;
this.aiShow = false;
this.stayShow = false;
this.speedStatus = false;
if (val == "ai") { if (val == "ai") {
this.aiShow = true; this.aiShow = true;
this.stayShow = false;
this.speedStatus = false;
} else if (val == "stay") { } else if (val == "stay") {
this.stayShow = true; this.stayShow = true;
this.aiShow = false; } else if (val == "camera") {
this.speedStatus = false; let data = {
} else if (val == "carmera") { actionType: "START_TAKE_PHOTO",
param3: 1,
};
if (
!hasObject(this.pointList[this.pointList.length - 1].actions, data)
) {
this.pointList[this.pointList.length - 1].actions.push(data);
}
} else if (val == "speed") { } else if (val == "speed") {
this.speedStatus = true; this.speedStatus = true;
this.aiShow = false; } else if (val == "start") {
this.stayShow = false; let data = {
} else { actionType: "START_RECORD",
this.aiShow = false; param1: 1,
this.stayShow = false; };
this.speedStatus = false; if (
!hasObject(this.pointList[this.pointList.length - 1].actions, data)
) {
this.pointList[this.pointList.length - 1].actions.push(data);
}
this.videoStatus = 1;
} else if (val == "end") {
let data = {
actionType: "STOP_RECORD",
param1: 1,
};
let flag = false;
this.pointList.forEach((val) => {
val.actions.forEach((val2) => {
if (val2.actionType == data.actionType) {
flag = true;
}
});
});
if (
!hasObject(this.pointList[this.pointList.length - 1].actions, data) &&
!flag
) {
this.pointList[this.pointList.length - 1].actions.push(data);
}
this.videoStatus = 2;
} }
}, },
getDe() { getDe() {
...@@ -458,8 +510,8 @@ export default { ...@@ -458,8 +510,8 @@ export default {
speed: this.speed, speed: this.speed,
}; };
this.rootNode.$emit('airwayAdd', { this.rootNode.$emit("airwayAdd", {
airway: data airway: data,
}); });
this.$emit("close"); this.$emit("close");
}, 0); }, 0);
...@@ -588,7 +640,7 @@ export default { ...@@ -588,7 +640,7 @@ export default {
// background: #333; // background: #333;
.form { .form {
margin: 10px; margin: 10px;
width: 450px; width: 600px;
display: flex; display: flex;
color: #fff; color: #fff;
align-items: center; align-items: center;
......
<template> <template>
<div> <div>
<UavList></UavList> <UavList></UavList>
<Player <Player class="player" ref="player" v-if="showPlayer && uav" @close="onPlayerClose" />
class="player"
ref="player"
v-if="showPlayer && uav"
@close="onPlayerClose"
/>
<ControlPanel v-if="uav && showPanel"></ControlPanel> <ControlPanel v-if="uav && showPanel"></ControlPanel>
</div> </div>
</template> </template>
...@@ -26,7 +21,7 @@ export default { ...@@ -26,7 +21,7 @@ export default {
Player, Player,
ControlPanel, ControlPanel,
}, },
inject: ['bus'], inject: ["bus"],
data() { data() {
return { return {
isFlying: false, isFlying: false,
...@@ -37,41 +32,43 @@ export default { ...@@ -37,41 +32,43 @@ export default {
"uav", "uav",
"showPlayer", "showPlayer",
"showPanel", "showPanel",
"uavRealTimeData" "uavRealTimeData",
]), ]),
}, },
watch: { watch: {
'uavRealTimeData.isFlying'(newVal, oldVal){ "uavRealTimeData.isFlying"(newVal, oldVal) {
// 监听飞机降落然后进行任务结束的提示 // 监听飞机降落然后进行任务结束的提示
if(oldVal === true && newVal === false){ if (oldVal === true && newVal === false) {
this.$message.success('任务结束') this.$alert("任务结束", "提示", {
type: "success ",
confirmButtonText: "确定",
callback: (action) => {},
});
} }
} },
},
created() {
}, },
created() {},
mounted() {}, mounted() {},
beforeDestroy() { beforeDestroy() {
this.$store.commit('MMCFlightControlCenter/setState', { this.$store.commit("MMCFlightControlCenter/setState", {
key: 'listCollapse', key: "listCollapse",
value: false value: false,
}) });
}, },
methods: { methods: {
onPlayerClose(){ onPlayerClose() {
this.$store.commit('MMCFlightControlCenter/uav/setState', { this.$store.commit("MMCFlightControlCenter/uav/setState", {
key: 'uav', key: "uav",
value: { value: {
...this.uav, ...this.uav,
showPlayer: false showPlayer: false,
} },
}) });
this.$store.commit('MMCFlightControlCenter/uav/setState', { this.$store.commit("MMCFlightControlCenter/uav/setState", {
key: 'showPlayer', key: "showPlayer",
value: false value: false,
}) });
} },
}, },
}; };
</script> </script>
......
...@@ -299,7 +299,8 @@ const actions = { ...@@ -299,7 +299,8 @@ const actions = {
try { try {
// 生成架次号 // 生成架次号
const flightSortieId = await TaskInfo.flightSortieId({ const flightSortieId = await TaskInfo.flightSortieId({
id: state.hangar.uav.deviceId, device_id: state.hangar.uav.deviceId,
reouteId: state.airlineData.id
}); });
/* const flightSortieId = { /* const flightSortieId = {
data: `tmj-v4-${Date.now()}` data: `tmj-v4-${Date.now()}`
......
...@@ -673,7 +673,8 @@ const actions = { ...@@ -673,7 +673,8 @@ const actions = {
try { try {
// 生成架次号 // 生成架次号
const flightSortieId = await TaskInfo.flightSortieId({ const flightSortieId = await TaskInfo.flightSortieId({
id: state.uav.deviceId, device_id: state.hangar.uav.deviceId,
reouteId: state.airlineData.id
}); });
/* const flightSortieId = { /* const flightSortieId = {
data: `tmj-v4-${Date.now()}` data: `tmj-v4-${Date.now()}`
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论