From 51e18e190dafdec70dc1f4a3a9ecd76fb2116726 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期六, 12 十月 2024 16:25:08 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
admin/src/views/meeting/components/OperaBookingsDetailWindow.vue | 64 ++++++++++++++++++++++++++++----
1 files changed, 56 insertions(+), 8 deletions(-)
diff --git a/admin/src/views/meeting/components/OperaBookingsDetailWindow.vue b/admin/src/views/meeting/components/OperaBookingsDetailWindow.vue
index 96533ad..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: {
@@ -89,12 +125,25 @@
},
created () {
this.config({
- api: '@/views/meeting/api/bookings',
+ 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