<template>
	<view class="warp">
		<view class="topInfo">
			<view class="topInfo-item">
				<view class="flex info">
					<view class="logo">
						<image src="../../../static/img/reject.png" mode=""
							v-if="dataList.status == '补卡失败'" style="height: 40rpx;">
						</image><!-- 驳回 -->
						<image src="../../../static/img/tongguo.png" mode=""
							v-else-if="dataList.status == '补卡成功'"
							style="height: 40rpx;"></image><!-- 通过 -->
						<image src="../../../static/img/daishenhe.png" mode=""
							v-else-if="dataList.approveStatus == '待人事审核'"
							style="height: 40rpx;"></image><!-- 待审核 -->
					</view>
					<view class="infoText" v-if="dataList.approveStatus">{{dataList.approveStatus}}</view>
					<view class="infoText" v-else>{{dataList.status}}</view>
				</view>
				<view class="infoData" v-if="dataList.updateDate">{{dataList.updateDate}}</view>
			</view>
		</view>
		<view class="content1">
			<!-- :model="OutList" -->
			<u-form  ref="uForm">
				<u-form-item label="补卡原因" prop="supplementClockType" label-width="140" class="uForm_item">
					<u-input input-align="right" disabled v-if="dataList.supplementClockType=='1'" value="上班">上班</u-input>
					<u-input  input-align="right" disabled v-if="dataList.supplementClockType=='3'" value="下班">下班</u-input>
				</u-form-item>
					<view class="uForm_item">
						<u-form-item label="申请理由" prop="reasonForApplication" label-width="160" label-position="top">
							<u-input v-model="dataList.reasonForApplication" input-align="left" placeholder="请输入业务描述"
								type="textarea" class="textarea" maxlength="150" />
						</u-form-item>
					</view>
			</u-form>
		</view>
	<view v-if='show' class="shade1">
		<view class="wrap1">
			<view class="alert-top1">
				<view class="title1">
					{{title}}
				</view>
				<u-icon name="close" class="close1" color="#8890B1" @click="close()"></u-icon>
			</view>
			<view class="u-textarea-style1">
				<view class="right-bottom1">
					{{auditMind.length}}/100个字
				</view>
				<u-input class="" v-model='auditMind' placeholder="请在此输入审核意见" type="textarea" height="414"
					maxlength="100" />
			</view>
			<view @click='close()' class="cancel1">取消</view>
			<view @click='passSubmit()' class="confirm1">确定</view>
		</view>
	</view>
	<u-toast ref="uToast" />
	<view style='padding:10px;' class='flex bottom-btn'>
		<u-button @click='reject' type="error" class="btn1" hover-class='none'>驳回</u-button>
		<u-button @click='pass' type="success" class="btn2">通过</u-button>
	</view>
	</view>

</template>

<script>
	import helper from '@/common/helper.js';
	import {
		mapState
	} from 'vuex';
	export default {
		data() {
			return {
				everyCheck: '',
				height: 200,
				autoHeight: true,
				border: false,
				id: "",
				show: false,
				auditMind: '',
				reasonForApplication:'',
				supplementClockType:'',
				approveStatus:'',
				status:'',
				updateDate:'',
				dataList:{},
			}
		},
		onBackPress(e) {
			if (this.everyCheck) {
				uni.navigateTo({
					url: "/pages/task/my_task"
				})
				return true;
			}
		},
		onLoad(options) {
			this.id = options.id
			this.everyCheck = uni.getStorageSync("everyTask")
			this.getList()
		},
		computed: {
			...mapState(['hasLogin', 'userInfo']),
		},
		methods: {
			getList() {
				this.$api.doRequest('get', '/clockInfo/getSuppClock', {
					id: this.id
				}).then(res => {
					if (res.data.code == 200) {
						this.dataList = res.data.data
					
					}
				})
			},
			close() {
				this.show = false
			},
			pass() {
				this.show = true
				this.title = '审核意见（通过）'
			},
			reject() {
				this.show = true
				this.title = '驳回原因（驳回）'
			},
			//通过
			passSubmit() {
				var that = this
				if (this.title == '驳回原因（驳回）') {
					this.rejectSubmit()
				} else {
					let that = this
					that.show = false
					uni.showModal({
						content: "是否确定通过?",
						showCancel: true,
						confirmText: '确定',
						success: function(res) {
							that.$api.doRequest('post', '/workflow/api/handle', {
								approved: true,
								taskId: that.dataList.taskId,
								auditMind: that.auditMind,
								needReapply: false
							}).then(res => {
								if (res.data.code == 200) {
									that.$api.msg('审核成功！')
									uni.navigateTo({
										url: "/pages/task/my_task"
									})
								} else {
									that.$api.msg('审核失败！')
								}

							}).catch(res => {
								uni.hideLoading()
								if (res.message) {
									uni.showToast({
										title: res.message,
										icon: 'none',
										duration: 2000
									})
								} else {
									uni.showToast({
										title: "系统异常，请联系管理员",
										icon: 'none',
										duration: 2000
									})
								}
							})
						}
					})
				}
			},
			//驳回
			rejectSubmit() {
				if (!this.auditMind) {
					this.$api.msg('驳回原因不能为空！')
				} else {
					this.show = false
					let that = this
					uni.showModal({
						content: "是否确定驳回?",
						showCancel: true,
						confirmText: '确定',
						success: function(res) {
							that.$api.doRequest('post', '/workflow/api/handle', {
								approved: false,
								taskId: that.dataList.taskId,
								auditMind: that.auditMind,
								needReapply: true
							}).then(res => {
								if (res.data.code == 200) {
									this.$api.msg('驳回成功！')
									uni.navigateTo({
										url: "/pages/task/my_task"
									})
									uni.hideLoading()
								} else {
									this.$api.msg('驳回失败！')
								}

							})
						}
					})
				}
			},
		}
	}
</script>

<style scoped lang="scss">
	.content1 {
		margin: 10rpx;
		padding-bottom: 224rpx;

		.title {
			height: 70rpx;
			line-height: 60rpx;
			font-size: 32rpx;
			font-weight: 600;
			color: #333333;
			border-bottom: 2rpx solid #EEEEEE;
		}
	}

	.uForm {
		padding: 0 40rpx;
	}

	.u-form-item {
		padding: 0;
	}

	.bottom-btn {
		width: 100%;
		position: fixed;
		bottom: 0;
		display: flex;
		z-index: 2;
		left: 0;
		background-color: #f8f8f8;
		flex-direction: column;

		.btn1,
		.btn2 {
			width: 100%;
			margin-bottom: 26rpx;
			border-radius: 90rpx;
		}

		.btn1 {
			background: white;
			color: #00C265;
		}
	}

	.submit {
		width: 50%;
		background: #22C572;
		border-radius: 10rpx;
	}

	.part2 {
		margin-top: 20rpx;
	}

	.textarea {
		border: 1px solid #ccc;
		border-radius: 10rpx;
		background-color: #F9F9FA;
		height: 100px;
	}

	.row {
		display: flex;
		justify-content: space-between;
		// border-bottom: 1px solid #EEEEEE;
		padding: 21rpx 0;

		.right,
		input {
			font-size: 28rpx;
			color: #333333;
		}
	}

	//弹出框
	// .popup {
	// 	padding: 30rpx;
	// 	border-radius: 20rpx;
	// }
	// .rejectInfoCss {
	// 	border: 1px solid #ccc;
	// 	border-radius: 10rpx;
	// 	background-color: #F9F9FA;
	// 	margin: 30rpx;
	// 	overflow-y: auto;
	// 	// height: 300rpx;
	// 	background: red;
	// }

	.uForm_item {
		padding: 20rpx;
		background-color: #FFFFFF;
		margin: 20rpx;
		border-radius: 20rpx;
	}

	.rejectText {
		text-align: center;
	}

	.topInfo {
		height: 210rpx;
		background: linear-gradient(270deg, #22C572 0%, #34DE8A 100%);
		padding: 30rpx;

		.topInfo-item {
			height: 150rpx;
			background-color: #FFFFFF;
			border-radius: 20rpx;
			padding: 40rpx;

			.logo {
				width: 40rpx;
				height: 40rpx;
				margin-top: 8rpx;
			}

			.infoText {
				font-size: 36rpx;
				font-weight: 600;
				margin-left: 20rpx;
			}

			.infoData {
				color: #878C9C;
				font-size: 26rpx;
				margin-top: 10rpx;
			}
		}
	}

	.shade1 {
		position: fixed;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		background: rgba(0, 0, 0, 0.4);
		z-index: 3;

		.wrap1 {
			position: absolute;
			left: 0;
			top: 0;
			right: 0;
			bottom: 0;
			margin: auto;
			background: #fff;
			width: calc(100% - 198rpx);
			height: 355px;
			border-radius: 20rpx;

			.alert-top1 {
				padding: 33rpx;
				display: flex;
				justify-content: center;
				align-items: center;
				position: relative;
			}

			.title1 {
				font-size: 32rpx;
				font-weight: 600;
				color: #333333;
			}

			.close1 {
				position: absolute;
				right: 33rpx;
			}
		}

		.u-textarea-style1 {
			margin: 20rpx;
			background: #F9F9FA;
			border-radius: 10px;
			border: 1px solid #EEEEEE;
			padding: 10rpx 20rpx;
			height: 230px;

			.right-bottom1 {
				position: absolute;
				right: 20rpx;
				bottom: 80px;
				color: #AFB3BF;
			}
		}

		.cancel1 {
			position: absolute;
			display: inline-block;
			width: 50%;
			text-align: center;
			bottom: 0;
			padding: 10px;
			border-top: 1px solid #eee;
			font-size: 34rpx;
		}

		.confirm1 {
			position: absolute;
			display: inline-block;
			width: 50%;
			text-align: center;
			bottom: 0;
			padding: 10px;
			border-top: 1px solid #eee;
			font-size: 34rpx;
		}

		.cancel1 {
			left: 0;
			border-right: 1px solid #eee;
			color: #ff0000;
		}

		.confirm1 {
			right: 0;
			color: #22C572;
		}

			.bottom-btn1 {
				width: 100%;
				// position: fixed;
				bottom: 0;
				display: flex;
				z-index: 2;
				left: 0;
				background-color: #f8f8f8;
				flex-direction: column;

				.btn1,
				.btn2 {
					width: 100%;
					margin-bottom: 26rpx;
					border-radius: 90rpx;
				}

				.btn1 {
					background: white;
					color: #00C265;
				}
			}
	}

	/deep/.u-input__textarea {
		height: 300rpx !important;
	}
</style>
