From 17efddc6a667670dca682bf36b51a43e99615e6d Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期三, 16 十月 2024 15:59:38 +0800
Subject: [PATCH] 代码初始化
---
h5/pages/staff/meetingDetail.vue | 175 +++++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 141 insertions(+), 34 deletions(-)
diff --git a/h5/pages/staff/meetingDetail.vue b/h5/pages/staff/meetingDetail.vue
index d5a05e9..3484e31 100644
--- a/h5/pages/staff/meetingDetail.vue
+++ b/h5/pages/staff/meetingDetail.vue
@@ -10,7 +10,7 @@
<!-- -->
<view class="empty"></view>
<view class="module_list">
- <view class="item">
+ <view class="item" v-if="detail.meetingContent">
<view class="label">浼氳鍐呭</view>
<view class="value">
<!-- <text>涓昏璁ㄨ鏅鸿兘浼氳瀹ょ郴缁熼�夊瀷锛岃澶у涓�瀹氳鎸夋椂鏉ュ紑浼氾紝鏃堕棿瀹濊吹銆傛劅璋㈠ぇ瀹讹紒</text> -->
@@ -24,7 +24,7 @@
/>
</view>
</view>
- <view class="item">
+ <view class="item" v-if="detail.userResponseList && detail.userResponseList.length > 0">
<view class="label">鍙備細浜哄憳</view>
<view class="value">
<view class="personnel">
@@ -33,13 +33,19 @@
v-for="mem in detail.userResponseList"
:key="mem.id"
>
- <image :src="mem.avatar" class="avatar" mode=""></image>
+ <image
+ v-if="mem.avatar"
+ :src="mem.avatar"
+ class="avatar"
+ mode=""
+ ></image>
+ <view v-else class="avatar">{{ mem.realname.slice(0, 1) }}</view>
<view class="name">{{ mem.realname }}</view>
</view>
</view>
</view>
</view>
- <view class="item">
+ <view class="item" v-if="detail.projectsResponseList && detail.projectsResponseList.length > 0">
<view class="label">鏈嶅姟椤�</view>
<view class="value">
<template v-for="(ser, serI) in detail.projectsResponseList">
@@ -54,13 +60,13 @@
</template>
</view>
</view>
- <view class="item">
+ <view class="item" v-if="detail.remark || detail.meetingRemark">
<view class="label">澶囨敞</view>
<view class="value">{{ detail.remark || detail.meetingRemark }}</view>
</view>
<view class="item">
<view class="label">棰勭害浜�</view>
- <view class="value"
+ <view class="value" v-if="detail.bookingUser"
>{{ detail.bookingUser.companyName || "" }}
{{ detail.bookingUser.realname }}
{{ detail.bookingUser.mobile }}</view
@@ -69,22 +75,73 @@
</view>
<view class="empty empty2"></view>
<view class="main_footer" v-if="detail.meetingStatus == '1'">
- <view class="btn" @click="handleCancel(detail.id)">鎾ゅ洖</view>
- <view class="btn agree" @click="handleEdit">淇敼</view>
+ <view class="btn" @click="openCancel">鎾ゅ洖</view>
+ <view class="btn edit" @click="handleEdit">淇敼</view>
+ <view class="btn agree" @click="handleStart">寮�濮嬩細璁�</view>
</view>
- <view class="main_footer" v-if="detail.meetingStatus == '2'">
- <view class="btn agree" @click="handleSub('2')">缁撴潫</view>
+ <view class="main_footer" v-if="detail.meetingStatus == '2' && detail.isAdmin == 1">
+ <view class="btn agree" @click="openClose">缁撴潫</view>
</view>
+ <!-- 鎾ゅ洖 -->
+ <u-popup
+ catchtouchmove
+ :show="isShowCancel"
+ closeable
+ :round="12"
+ mode="bottom"
+ @close="isShowCancel = false"
+ >
+ <view class="cancel_modal">
+ <view class="title">鎾ら攢棰勭害</view>
+ <view class="line">
+ <view class="label">鎾ゅ洖璇存槑</view>
+ <textarea
+ class="textarea"
+ placeholder="璇疯緭鍏�"
+ maxlength="300"
+ v-model="cancelParam.businessRemark"
+ />
+ </view>
+ <view class="sub_btn" @click="handleCancel('0')">鎻愪氦</view>
+ </view>
+ </u-popup>
+ <!-- 缁撴潫 -->
+ <u-popup
+ catchtouchmove
+ closeable
+ :show="isShowClose"
+ :round="12"
+ mode="bottom"
+ @close="isShowClose = false"
+ >
+ <view class="cancel_modal">
+ <view class="title">缁撴潫棰勭害</view>
+ <view class="line">
+ <view class="label">缁撴潫璇存槑</view>
+ <textarea
+ class="textarea"
+ placeholder="璇疯緭鍏�"
+ maxlength="300"
+ v-model="cancelParam.businessRemark"
+ />
+ </view>
+ <view class="sub_btn" @click="handleCancel('1')">鎻愪氦</view>
+ </view>
+ </u-popup>
</view>
</template>
<script>
-import { meetingDetail, cancelById } from '@/api'
+import { meetingDetail, cancelById, closeMeetignById,startMeetignById,startEarlyMeetignById } from '@/api'
export default {
data() {
return {
param: {},
detail: {},
+
+ cancelParam: {},
+ isShowCancel: false,
+ isShowClose: false,
id: ''
}
},
@@ -99,31 +156,48 @@
this.detail = res.data
})
},
- handleCancel(id) {
- uni.showModal({
- title: '鎻愮ず',
- // confirmText: '纭',
- content: '纭鎾ゅ洖璇ヤ細璁悧',
- success: function (res) {
- if (res.confirm) {
- cancelById({ id }).then(res => {
- if (res.code === 200) {
- setTimeout(() => {
- uni.showToast({
- title: '鎾ゅ洖鎴愬姛',
- icon: 'success'
- })
- })
- setTimeout(() => {
- uni.navigateBack()
- })
- }
+ openCancel() {
+ this.isShowCancel = true
+ this.cancelParam = {}
+ },
+ openClose() {
+ this.isShowClose = true
+ this.cancelParam = {}
+ },
+ handleCancel(str) {
+ const { id } = this.detail
+ let fn = str == '0' ? cancelById : closeMeetignById
+ fn({ id, ...this.cancelParam }).then(res => {
+ if (res.code === 200) {
+ setTimeout(() => {
+ uni.showToast({
+ title: '鎻愪氦鎴愬姛',
+ icon: 'none'
})
- }
+ })
+ setTimeout(() => {
+ uni.navigateBack()
+ })
}
})
-
},
+ handleStart() {
+ const { id, detail } = this
+ let fn = new Date(detail.startTime).getTime() > new Date().getTime() ? startEarlyMeetignById : startMeetignById
+ fn({ id }).then(res => {
+ if (res.code === 200) {
+ setTimeout(() => {
+ uni.showToast({
+ title: '浼氳宸插紑濮�',
+ icon: 'none'
+ })
+ })
+ setTimeout(() => {
+ uni.navigateBack()
+ })
+ }
+ })
+ },
handleEdit() {
const { id } = this
uni.navigateTo({
@@ -189,10 +263,12 @@
flex-direction: column;
justify-content: center;
align-items: center;
+ justify-content: center;
margin-right: 24rpx;
.avatar {
width: 72rpx;
height: 72rpx;
+ margin: 0;
border-radius: 50%;
}
.name {
@@ -215,7 +291,7 @@
background-color: #fff;
padding: 0 30rpx;
.btn {
- flex: 1;
+ flex: 3;
height: 88rpx;
line-height: 88rpx;
background: #ffffff;
@@ -225,8 +301,12 @@
text-align: center;
margin: 16rpx 8rpx;
}
-
+ .edit{
+ color: $uni-color-primary;
+ border: 1rpx solid $uni-color-primary;
+ }
.agree {
+ flex: 5;
background: $uni-color-primary;
color: #fff;
border: 1rpx solid $uni-color-primary;
@@ -241,4 +321,31 @@
.empty2 {
height: 280rpx !important;
}
+.cancel_modal {
+ height: 440rpx;
+ padding: 30rpx;
+ .title {
+ padding: 0 30rpx 50rpx;
+ text-align: center;
+ }
+ .line {
+ .label {
+ margin-bottom: 10rpx;
+ }
+ textarea {
+ height: 120rpx;
+ }
+ }
+ .sub_btn {
+ background-color: $uni-color-primary;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ color: #fff;
+ border-radius: 44rpx;
+ width: 690rpx;
+ height: 88rpx;
+ margin: 20rpx auto;
+ }
+}
</style>
--
Gitblit v1.9.3