From d8eda80eaf2f328ed43dc4f5c783b7dee5a4092c Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期六, 12 十月 2024 17:39:39 +0800
Subject: [PATCH] 1. 新增巡查计划功能(待完成); 2. 完成任务的各场景下的分别移除和添加;

---
 src/views/fysp/task/MonitorObjEdit.vue |   42 +++++++++++++++++++++++++++++++++++-------
 1 files changed, 35 insertions(+), 7 deletions(-)

diff --git a/src/views/fysp/task/MonitorObjEdit.vue b/src/views/fysp/task/MonitorObjEdit.vue
index e2c021a..636899b 100644
--- a/src/views/fysp/task/MonitorObjEdit.vue
+++ b/src/views/fysp/task/MonitorObjEdit.vue
@@ -1,7 +1,7 @@
 <template>
   <el-affix :offset="60">
     <div class="page-header">
-      <el-page-header @back="$router.back()">
+      <el-page-header @back="goBack">
         <template #content>
           <span> 鎬讳换鍔$紪杈� </span>
         </template>
@@ -24,10 +24,11 @@
       <el-divider />
       <CompMonitorObj
         :data="curMonitorObjList"
-        show-delete
+        show-btn
         v-model:tabName="curSceneType"
         v-model:showData="showMonitorObjList"
-        @delete-item="deleteMov"
+        :tabOptions="sceneTypeOptions"
+        @item-click="deleteMov"
       >
       </CompMonitorObj>
     </el-col>
@@ -41,7 +42,6 @@
           <el-segmented v-model="curSceneType" :options="sceneTypeOptions" />
         </div>
         <FYInfoSearch
-          label=""
           placeholder="璇疯緭鍏ュ満鏅悕绉板叧閿瓧"
           :data="showSceneList"
           :on-search="searchScene"
@@ -92,9 +92,14 @@
 import svUserApi from '@/api/fysp/userApi';
 import taskApi from '@/api/fysp/taskApi';
 import sceneApi from '@/api/fysp/sceneApi';
-import { ElMessage, ElNotification } from 'element-plus';
+import { ElMessage, ElNotification, ElMessageBox } from 'element-plus';
 
 export default {
+  async beforeRouteLeave(to, from) {
+    // 鍦ㄥ鑸寮�娓叉煋璇ョ粍浠剁殑瀵瑰簲璺敱鏃惰皟鐢�
+    // 涓� `beforeRouteUpdate` 涓�鏍凤紝瀹冨彲浠ヨ闂粍浠跺疄渚� `this`
+    // return this.routerChangeCheck();
+  },
   components: { CompMonitorObj },
   props: {},
   data() {
@@ -104,7 +109,6 @@
       // 褰撳墠绛涢�夌殑鍦烘櫙绫诲瀷
       curSceneType: undefined,
       showMonitorObjList: [],
-
 
       // 琛屾斂鍖哄垝
       area: {},
@@ -140,7 +144,7 @@
         return index == -1 && v.type == this.curSceneType;
       });
     },
-    sceneTypeOptions(){
+    sceneTypeOptions() {
       const list = [];
       this.sceneList.forEach((d) => {
         if (list.indexOf(d.type) == -1) list.push(d.type);
@@ -302,6 +306,30 @@
       // return Promise.all([p1, p2, p3]).finally(() => {
       //   this.saveLoading = false;
       // });
+    },
+    async goBack() {
+      // const answer = await this.routerChangeCheck()
+      // if (answer) {
+      //   this.$router.back();
+      // }
+      this.$router.back();
+    },
+    async routerChangeCheck() {
+      if (this.isEdit) {
+        const answer = await ElMessageBox.confirm('鏄惁鏀惧純宸蹭慨鏀圭殑鎬讳换鍔★紵', '鍙栨秷鎬讳换鍔′慨鏀�', {
+          confirmButtonText: '纭',
+          cancelButtonText: '鍙栨秷',
+          type: 'warning'
+        })
+          .then(() => {
+            return true;
+          })
+          .catch(() => {
+            return false;
+          });
+        return answer;
+      }
+      return true;
     }
   },
   mounted() {

--
Gitblit v1.9.3