提交 f9498ad3 作者: 温凯

fix:任务库修改

上级 5cd09ddb
...@@ -9,22 +9,38 @@ ...@@ -9,22 +9,38 @@
<el-form class="task-main" label-width="70px"> <el-form class="task-main" label-width="70px">
<el-form-item label="任务库" v-if="useTask"> <el-form-item label="任务库" v-if="useTask">
<el-select v-model="selectedTaskId" clearable> <el-select v-model="selectedTaskId" clearable>
<el-option v-for="(item , i) in taskList" :label="item.name" :value="item.id"></el-option> <el-option
v-for="(item, i) in taskList"
:label="item.name"
:value="item.id"
></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="航线选择"> <el-form-item label="航线选择">
<el-select v-model="selectedAirwayId" :disabled="airwaySelectDisabled" clearable> <el-select
<el-option v-for="(item , i) in airwayList" :label="item.name" :value="item.id"></el-option> v-model="selectedAirwayId"
:disabled="airwaySelectDisabled"
clearable
>
<el-option
v-for="(item, i) in airwayList"
:label="item.name"
:value="item.id"
></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<div class="btn" @click="onStartTask" v-hover>一键任务</div> <div class="btn" @click="onStartTask" v-hover>一键任务</div>
<div class> <div class>
<span class="btn__add-line" @click="showAirwayEdit = true"> <span class="btn__add-line" @click="showAirwayEdit = true">
<span class="f8"></span> 创建航线 <span class="f8"></span> 创建航线 222
</span> </span>
</div> </div>
</el-form> </el-form>
<AirwayEdit v-if="showAirwayEdit" @close="showAirwayEdit = false" @addDone="getAirwayList"></AirwayEdit> <AirwayEdit
v-if="showAirwayEdit"
@close="showAirwayEdit = false"
@addDone="getAirwayList"
></AirwayEdit>
</div> </div>
</template> </template>
<script> <script>
...@@ -51,7 +67,11 @@ export default { ...@@ -51,7 +67,11 @@ export default {
}; };
}, },
computed: { computed: {
...mapState("MMCFlightControlCenter", ["cesiumViewer", "useSTLAirway", "useTask"]), ...mapState("MMCFlightControlCenter", [
"cesiumViewer",
"useSTLAirway",
"useTask",
]),
...mapState("MMCFlightControlCenter/uav", ["uav"]), ...mapState("MMCFlightControlCenter/uav", ["uav"]),
// 选择的任务 // 选择的任务
selectedTask() { selectedTask() {
...@@ -106,15 +126,14 @@ export default { ...@@ -106,15 +126,14 @@ export default {
}, },
}, },
watch: { watch: {
'uavRealTimeData.isFlying': { "uavRealTimeData.isFlying": {
handler: function (newVal,oldVal) { handler: function (newVal, oldVal) {
if (oldVal === false && newVal === true) { if (oldVal === false && newVal === true) {
this.getTaskInfoRecord() this.getTaskInfoRecord();
} }
}, },
deep: true, deep: true,
immediate: true, immediate: true,
}, },
showAirwayEdit(newVal) { showAirwayEdit(newVal) {
if (newVal) { if (newVal) {
...@@ -158,9 +177,8 @@ export default { ...@@ -158,9 +177,8 @@ export default {
await this.getTaskList(); await this.getTaskList();
await this.getAirwayList(); await this.getAirwayList();
// 获取正在飞行的航线 // 获取正在飞行的航线
if(this.uavRealTimeData.isFlying){ if (this.uavRealTimeData.isFlying) {
this.getTaskInfoRecord() this.getTaskInfoRecord();
} }
}, },
beforeDestroy() { beforeDestroy() {
...@@ -174,19 +192,19 @@ export default { ...@@ -174,19 +192,19 @@ export default {
"clearAirwayEntities", "clearAirwayEntities",
"apiPointsToFKZXPoints", "apiPointsToFKZXPoints",
]), ]),
...mapActions("MMCFlightControlCenter/uav", ["isTakeOver"]), ...mapActions("MMCFlightControlCenter/uav", ["isTakeOver","uavRealTimeData"]),
/** /**
* 获取任务列表 * 获取任务列表
*/ */
async getTaskInfoRecord() { async getTaskInfoRecord() {
let res = await TaskInfo.getTaskInfoRecord({ let res = await TaskInfo.getTaskInfoRecord({
deviceId: this.uav && this.uav.deviceId, deviceId: this.uav && this.uav.deviceId,
}); });
if (res.code === 0) { if (res.code === 0) {
this.selectedTaskId = res.data.taskInfoId; this.selectedTaskId = res.data.taskInfoId;
setTimeout(() => { setTimeout(() => {
this.selectedAirwayId = res.data.reouteId; this.selectedAirwayId = res.data.reouteId;
},1000) }, 1000);
} }
}, },
getTaskList(id) { getTaskList(id) {
...@@ -198,7 +216,9 @@ export default { ...@@ -198,7 +216,9 @@ export default {
type: 0, type: 0,
// taskStatus: 1, // 任务状态 0:待审批 1:待执行 2:执行中 3:执行完成 4:审批不通过 // taskStatus: 1, // 任务状态 0:待审批 1:待执行 2:执行中 3:执行完成 4:审批不通过
callback: (res) => { callback: (res) => {
this.taskList = res?.records.filter(item => item.status != "已完成"); this.taskList = res?.records.filter(
(item) => item.status != "已完成"
);
this.$nextTick(() => { this.$nextTick(() => {
if (id) { if (id) {
this.selectedTaskId = id; this.selectedTaskId = id;
...@@ -245,6 +265,10 @@ export default { ...@@ -245,6 +265,10 @@ export default {
this.$message.warning("请选择航线"); this.$message.warning("请选择航线");
return; return;
} }
let data = this.taskList.filter((item) => item.id == this.selectedTaskId);
if (data && data[0].status == "执行中") {
return this.$message.warning("当前任务执行中");
}
try { try {
await this.$confirm("请确认是否进行一键任务操作?", "安全确认", { await this.$confirm("请确认是否进行一键任务操作?", "安全确认", {
cancelButtonText: "取消", cancelButtonText: "取消",
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论