From 5a85dcab83e969d6b21c599b512a15117e9b8651 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期四, 04 七月 2024 08:54:30 +0800
Subject: [PATCH] ''

---
 admin/src/views/meeting/components/OperaBookingsDetailWindow.vue |   62 +++++++++++++++++++++++++++---
 1 files changed, 55 insertions(+), 7 deletions(-)

diff --git a/admin/src/views/meeting/components/OperaBookingsDetailWindow.vue b/admin/src/views/meeting/components/OperaBookingsDetailWindow.vue
index a1de55f..d0e96a2 100644
--- a/admin/src/views/meeting/components/OperaBookingsDetailWindow.vue
+++ b/admin/src/views/meeting/components/OperaBookingsDetailWindow.vue
@@ -13,15 +13,19 @@
     <div class="content-style">
       <div class="item">
         <div class="item-title">鍙備細浜哄憳</div>
-        <div>{{ form.sysList.map(item => `${item.realName}`).join('锛�') }}</div>
+        <div>
+          {{ form.sysList.map((item) => `${item.realName}`).join("锛�") }}
+        </div>
       </div>
       <div class="item">
         <div class="item-title">浼氳鍐呭</div>
-        <div class="item-value">{{ form.content || '鏃�' }}</div>
+        <div class="item-value">{{ form.content || "鏃�" }}</div>
       </div>
       <div v-if="form.projectList.length" class="item">
         <div class="">鏈嶅姟椤�</div>
-        <div class="item-value">{{ form.projectList.map(item => item.projectName).join(' | ') }}</div>
+        <div class="item-value">
+          {{ form.projectList.map((item) => item.projectName).join(" | ") }}
+        </div>
       </div>
       <div class="item" v-if="form.fileList.length">
         <div class="item-title">闄勪欢</div>
@@ -43,8 +47,33 @@
       <div class="item-value">{{ form.managerInfo }}</div>
     </div>
     <div slot="footer">
-      <el-button @click="visible=false">鍙栨秷</el-button>
+      <el-button type="primary" v-if="form.meetingStatus == 1" @click="openCancel('0')">鎾ら攢</el-button>
+      <el-button v-if="form.meetingStatus == 2" type="primary" @click="openCancel('1')">缁撴潫</el-button>
+      <el-button @click="visible = false">鍙栨秷</el-button>
     </div>
+    <!-- 鍙栨秷/缁撴潫 -->
+    <el-dialog
+      :title="cancelParam.falg == '1' ? '缁撴潫浼氳' : '鎾ら攢浼氳'"
+      :visible.sync="isShowCancel"
+      append-to-body
+      width="500px"
+    >
+      <el-form style="padding: 30px">
+        <el-form-item label="鎾ゅ洖璇存槑">
+          <el-input
+            type="textarea"
+            :rows="4"
+            placeholder="璇疯緭鍏ヨ鏄庛��"
+            v-model="cancelParam.businessRemark"
+          >
+          </el-input>
+        </el-form-item>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="isShowCancel = false">鍙栨秷</el-button>
+        <el-button type="primary" @click="onSubCancel()">纭畾</el-button>
+      </span>
+    </el-dialog>
   </GlobalAlertWindow>
 </template>
 
@@ -52,6 +81,7 @@
 import BaseOpera from '@/components/base/BaseOpera'
 import GlobalAlertWindow from '@/components/common/GlobalAlertWindow'
 import FileLink from '@/views/meeting/components/common/FileLink'
+import { cancelById, overBookById } from '@/api/meeting/bookings'
 export default {
   name: 'OperaBookingsDetailWindow',
   extends: BaseOpera,
@@ -69,6 +99,7 @@
         projectList: [],
         remark: '',
         roomId: '',
+        meetingStatus: '',
         startTime: '',
         endTime: '',
         times: [],
@@ -81,6 +112,11 @@
       sysList: [],
       projectList: [],
       timelist: [],
+
+      isShowCancel: false,
+      cancelParam: {
+        flag: '0'
+      },
       // 楠岃瘉瑙勫垯
       rules: {
 
@@ -92,9 +128,22 @@
       api: '/meeting/bookings',
       'field.id': 'id'
     })
-
   },
   methods: {
+    openCancel (flag) {
+      this.isShowCancel = true
+      this.cancelParam.flag = flag
+    },
+    onSubCancel () {
+      const { id } = this.form
+      const fn = this.cancelParam.flag === '0' ? cancelById : overBookById
+      fn({ id, businessRemark: this.cancelParam.businessRemark }).then(res => {
+        this.$tip.success('鎻愪氦鎴愬姛')
+        this.visible = false
+        this.isShowCancel = false
+        this.$emit('success')
+      })
+    }
     /**
      * 鎵撳紑绐楀彛
      * @title 绐楀彛鏍囬
@@ -124,7 +173,7 @@
     //   })
     // },
 
-  },
+  }
 }
 </script>
 
@@ -160,5 +209,4 @@
 .bottom-style {
   padding: 20px;
 }
-
 </style>

--
Gitblit v1.9.3