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