From 090ea2c7d46a7082e978e6c0134d3fbeafaa34a0 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期三, 16 四月 2025 16:44:20 +0800
Subject: [PATCH] 提交

---
 h5/pages/staff/task/visitorReport.vue |   35 ++++++++++++++++++++++++++++++++---
 1 files changed, 32 insertions(+), 3 deletions(-)

diff --git a/h5/pages/staff/task/visitorReport.vue b/h5/pages/staff/task/visitorReport.vue
index d8f611e..b9c62cd 100644
--- a/h5/pages/staff/task/visitorReport.vue
+++ b/h5/pages/staff/task/visitorReport.vue
@@ -100,7 +100,10 @@
       info.approveDateVO.canBeApproved != null &&
       info.approveDateVO.canBeApproved == 1
     " class="main_footer">
+	  <view class="btn" @click="cancelShow = true" v-if="checkAuth('business:visits:cancel') && [0,1,2,5].includes(info.status)">鍙栨秷棰勭害</view>
+	  <view style="width: 30rpx; height: 100%;"></view>
       <view class="btn" @click="handleSub(3)">鎷掔粷</view>
+	  <view style="width: 30rpx; height: 100%;"></view>
       <view class="btn agree" @click="handleSub(2)">鍚屾剰</view>
     </view>
 
@@ -111,17 +114,27 @@
           " placeholder-class="placeholder9" />
         <view class="main_footer">
           <view class="btn" @click="showApprModal = false">鍙栨秷</view>
+		  <view style="width: 30rpx; height: 100%;"></view>
           <view class="btn agree" @click="onSubmit">鎻愪氦</view>
         </view>
       </view>
     </u-popup>
+	<!-- 鍙栨秷棰勭害寮圭獥 -->
+	<u-modal
+		:show="cancelShow"
+		:showCancelButton="true"
+		title="绯荤粺鎻愮ず"
+		content='纭畾鍙栨秷褰撳墠棰勭害鍚楋紵'
+		@cancel="cancelShow = false"
+		@confirm="cancel" />
   </view>
 </template>
 
 <script>
 import {
   getVisitedReDetail, // 璁垮棰勭害璇︽儏
-  carUseBookAppr
+  carUseBookAppr,
+  visitsCancel
 } from '@/api'
 export default {
   data() {
@@ -129,6 +142,9 @@
       showApprModal: false,
       param: {},
       info: {},
+	  userInfo: uni.getStorageSync('userInfo') || {
+	  	permissions: []
+	  },
 
       id: '',
       type: '',
@@ -146,7 +162,8 @@
         2: '宸查�氳繃',
         3: '宸叉嫆缁�',
         4: '宸插彇娑�',
-      }
+      },
+	  cancelShow: false
     }
   },
   onLoad(op) {
@@ -155,6 +172,17 @@
     this.getDetail()
   },
   methods: {
+	  checkAuth(str) {
+	  	const permissions = this.userInfo.permissions || []
+	  	return permissions.indexOf(str) > -1
+	  },
+	  // 鍙栨秷棰勭害
+	  cancel() {
+	  	visitsCancel(this.id).then(res => {
+	  		this.cancelShow = false
+	  		this.getDetail()
+	  	})
+	  },
     getDetail() {
       const { id } = this
       getVisitedReDetail({ id }).then(res => {
@@ -476,7 +504,8 @@
     background: #ffffff;
 
     .btn {
-      width: 336rpx;
+      // width: 336rpx;
+	  flex: 1;
       height: 88rpx;
       line-height: 88rpx;
       background: #ffffff;

--
Gitblit v1.9.3