From b2e8e233d59d107615a8336dce9da36f1f8bcde0 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期二, 03 十二月 2024 16:46:47 +0800
Subject: [PATCH] ll

---
 h5/pages/polling/point.vue |  236 +++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 149 insertions(+), 87 deletions(-)

diff --git a/h5/pages/polling/point.vue b/h5/pages/polling/point.vue
index 1df5fef..4711fbc 100644
--- a/h5/pages/polling/point.vue
+++ b/h5/pages/polling/point.vue
@@ -8,7 +8,8 @@
 			<template v-if="info.status == 1">
 				<view class="line">
 					<div class="la">宸℃缁撴灉锛�</div>
-					<div class="val primaryColor" :class="{red: info.dealStatus == 1}">{{ info.dealStatus == 0 ? '姝e父' : '寮傚父' }}</div>
+					<div class="val primaryColor" :class="{red: info.dealStatus == 1}">{{ info.dealStatus == 0 ? '姝e父' : '寮傚父' }}
+					</div>
 				</view>
 				<view class="line">
 					<div class="la">宸℃鏃堕棿锛�</div>
@@ -23,12 +24,12 @@
 		</view>
 		<!--  -->
 		<view v-if="info.status == 1" class="content">
-			<view class="title">宸℃璁板綍</view>
-			<view class="files">
-				<view class="adduser_list_item_ipt1_upload" v-for="(item, i) in info.multifileList" :key="i">
-					<image v-if="item.type == 0" :src="item.fileurlFull" mode="widthFix"></image>
-					<video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video>
-				</view>
+			<view class="title">宸℃璁板綍</view>
+			<view class="files">
+				<view class="adduser_list_item_ipt1_upload" v-for="(item, i) in info.multifileList" :key="i">
+					<image v-if="item.type == 0" :src="item.fileurlFull" mode="widthFix"></image>
+					<video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video>
+				</view>
 			</view>
 			<view class="desc">{{ info.dealInfo }}</view>
 			<view class="line line_s">
@@ -54,7 +55,13 @@
 						<u-icon name="arrow-right"></u-icon>
 					</view>
 				</view>
-
+				<view class="df_sb">
+					<view class="">宸℃缁撴灉</view>
+					<view class="df_ac" @click="isShowRes = true" v-if="handleParam.dealDate">
+						{{ handleParam.dealName }}
+						<u-icon name="arrow-right"></u-icon>
+					</view>
+				</view>
 				<view class="label">
 					涓婁紶鍥剧墖/瑙嗛
 				</view>
@@ -74,7 +81,7 @@
 				<view class="label">澶勭悊璇存槑</view>
 				<textarea v-model="handleParam.dealInfo" placeholder="璇峰~鍐欏鐞嗚鏄�" placeholder-class="placeholder9" />
 			</view>
-		</view>
+		</view>
 		<view class="sub_btn" @click="onSubmit">纭宸℃</view>
 		<!--  -->
 		<u-popup :show="showUpload" @close="showUpload = false" closeOnClickOverlay>
@@ -86,52 +93,98 @@
 		<!--  -->
 		<u-datetime-picker :minDate="new Date().getTime()" :show="isShowHandleDate" @confirm="confirmHandleDate"
 			@cancel="isShowHandleDate = false" mode="datetime"></u-datetime-picker>
+		<u-picker :show="isShowRes" keyName="name" @cancel="isShowRes = false" @confirm='confirmRes'
+			:columns="columns"></u-picker>
+
 	</view>
 </template>
 
 <script>
 	import {
-		uploadUrl,
-		ywPatrolPointDetail,
+		uploadUrl,
+		ywPatrolPointDetail,
 		patrolData
 	} from '@/api'
 	import dayjs from 'dayjs';
 	export default {
 		data() {
-			return {
-				id: '',
+			return {
+				id: '',
 				info: {},
+				isShowRes: false,
 				showUpload: false,
 				isShowHandle: false,
 				isShowHandleDate: false,
-				handleParam: {
-					dealStatus: 1
+				handleParam: {
+					dealStatus: 0,
+					dealName: '姝e父'
 				},
-				fileList: []
+				fileList: [],
+				columns: [
+					[{
+							id: 0,
+							name: '姝e父'
+						},
+						{
+							id: 1,
+							name: '寮傚父'
+						},
+						{
+							id: '',
+							name: '璺宠繃'
+						},
+					]
+				],
 			};
-		},
-		onLoad(option) {
-			this.id = option.id
-			this.getDetail()
-			this.$set(this.handleParam, 'dealDate', dayjs().format('YYYY-MM-DD HH:mm:ss'))
+		},
+		onLoad(option) {
+			this.id = option.id
+			this.getDetail()
+			this.$set(this.handleParam, 'dealDate', dayjs().format('YYYY-MM-DD HH:mm:ss'))
 		},
 		methods: {
-			onSubmit() {
-				const { handleParam, fileList, id } = this
-				patrolData({
-					...handleParam,
-					multifileList: fileList,
-					id,
-				}).then(res => {
-					this.showToast('鎿嶄綔鎴愬姛')
-					uni.navigateBack()
+			onSubmit() {
+				const {
+					handleParam,
+					fileList,
+					id
+				} = this
+				if (handleParam.dealStatus == 1) {
+					return uni.showModal({
+						title: '娓╅Θ鎻愮ず',
+						content: '宸℃缁撴灉寮傚父锛屾槸鍚﹀墠寰�鎻愪氦宸ュ崟锛�',
+						success: function(res) {
+							if (res.confirm) {
+								patrolData({
+									...handleParam,
+									multifileList: fileList,
+									id,
+								}).then(res => {
+									this.showToast('鎿嶄綔鎴愬姛')
+									uni.navigateBack()
+								})
+							}
+						}
+					});
+				} else {
+					patrolData({
+						...handleParam,
+						multifileList: fileList,
+						id,
+					}).then(res => {
+						this.showToast('鎿嶄綔鎴愬姛')
+						uni.navigateBack()
+					})
+				}
+
+			},
+			getDetail() {
+				const {
+					id
+				} = this
+				ywPatrolPointDetail(id).then(res => {
+					this.info = res.data
 				})
-			},
-			getDetail(){
-				const { id } = this
-				ywPatrolPointDetail(id).then(res => {
-					this.info  = res.data
-				})
 			},
 			callPhone() {
 				uni.makePhoneCall({
@@ -141,6 +194,11 @@
 			confirmHandleDate(e) {
 				this.$set(this.handleParam, 'dealDate', dayjs(e.value).format('YYYY-MM-DD HH:mm:ss'));
 				this.isShowHandleDate = false;
+			},
+			confirmRes(e) {
+				this.$set(this.handleParam, 'dealStatus', e.value[0].id)
+				this.$set(this.handleParam, 'dealName', e.value[0].name)
+				this.isShowRes = false
 			},
 			fileDel(str, i) {
 				this[str].splice(i, 1);
@@ -300,22 +358,24 @@
 			text-align: center;
 		}
 	}
-	.sub_btn{
-		position: fixed;
-		bottom: 68rpx;
-		left: 40rpx;
-		width: 670rpx;
-		height: 88rpx;
-		background: $primaryColor;
-		box-shadow: 0rpx 8rpx 20rpx 0rpx rgba(0,104,255,0.3);
-		border-radius: 44rpx;
-		display: flex;
-		align-items: center;
-		justify-content: center;
-		font-weight: 500;
-		font-size: 32rpx;
-		color: #FFFFFF;
+
+	.sub_btn {
+		position: fixed;
+		bottom: 68rpx;
+		left: 40rpx;
+		width: 670rpx;
+		height: 88rpx;
+		background: $primaryColor;
+		box-shadow: 0rpx 8rpx 20rpx 0rpx rgba(0, 104, 255, 0.3);
+		border-radius: 44rpx;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		font-weight: 500;
+		font-size: 32rpx;
+		color: #FFFFFF;
 	}
+
 	.appr_modal {
 		.label {
 			text {
@@ -372,41 +432,43 @@
 			margin-bottom: 30rpx;
 		}
 
-	}
-	.files{
-		display: flex;
-		margin-bottom: 20rpx;
-	}
-	.adduser_list_item_ipt1_upload {
-		margin-top: 24rpx;
-		width: 156rpx;
-		height: 156rpx;
-		margin-right: 24rpx;
-		border: 2rpx solid #e5e5e5;
-		background: #f7f7f7;
-		color: #666666;
-		font-size: 22rpx;
-		display: flex;
-		flex-direction: column;
-		align-items: center;
-		justify-content: center;
-		position: relative;
-	
-		.close {
-			position: absolute;
-			right: -20rpx;
-			top: -20rpx;
-			z-index: 9999;
-		}
-	
-		image {
-			width: 100%;
-			height: 100%;
-		}
-	
-		video {
-			width: 100%;
-			height: 100%;
-		}
+	}
+
+	.files {
+		display: flex;
+		margin-bottom: 20rpx;
+	}
+
+	.adduser_list_item_ipt1_upload {
+		margin-top: 24rpx;
+		width: 156rpx;
+		height: 156rpx;
+		margin-right: 24rpx;
+		border: 2rpx solid #e5e5e5;
+		background: #f7f7f7;
+		color: #666666;
+		font-size: 22rpx;
+		display: flex;
+		flex-direction: column;
+		align-items: center;
+		justify-content: center;
+		position: relative;
+
+		.close {
+			position: absolute;
+			right: -20rpx;
+			top: -20rpx;
+			z-index: 9999;
+		}
+
+		image {
+			width: 100%;
+			height: 100%;
+		}
+
+		video {
+			width: 100%;
+			height: 100%;
+		}
 	}
 </style>
\ No newline at end of file

--
Gitblit v1.9.3