<template>
	<view class="content">
		<view class="header">
			<view class="header-icon">
				<u-icon name="tags-fill" color="white" size="32"></u-icon>
			</view>
			<view class="header-title">收款方银行信息</view>
			<view class="header-content">
				<view class="header-flex">
					<label>开户银行</label>
					<view>{{bankData.name}}</view>
				</view>
				<view class="header-flex">
					<label>银行卡号</label>
					<view>{{bankData.no}}</view>
				</view>
				<view class="header-flex">
					<label>支付金额</label>
					<view>{{price}}</view>
				</view>
			</view>
		</view>
		<view class="remarkText" v-if="type == 'edit'">
			<text class="name">驳回原因：</text>{{remark}}
		</view>
		<view class="form">
			<view class="cover-header">
				<view>
					<view class="cover-title">上传打款凭证</view>
					<view class="cover-subtitle">长按图片可删除已上传图片</view>
				</view>
				<view class="cover-num">{{pathArr.length}}/9</view>
			</view>
			<view class="cover-flex">
				<view class="cover-item" v-for="(item, index) in pathArr" :key="index" @longpress="onRemove(index)">
					<image class="cover-item-src" :src="item" mode="aspectFill"></image>
				</view>
				<view class="cover-item border" @click="albumClick" v-if="pathArr.length < 9">
					<image class="cover-item-add" src="@/static/icons/img_add.png" mode="aspectFill"></image>
				</view>
			</view>
			
			<!-- <view class="form-input">
				<label>打款金额</label>
				<input type="digit" maxlength="20" v-model="price" placeholder="请输入打款金额">
			</view>
			<view class="form-input">
				<label>汇款姓名</label>
				<input type="text" maxlength="8" v-model="name" placeholder="请输入打款人姓名">
			</view>
			<view class="form-input form-upd">
				<label>打款凭证</label>
				<image class="form-upd-img" @click="albumClick" :src="showpath || '/static/imgs/cover_img.png'" mode="aspectFill"></image>
			</view> -->
			<view class="idcardBtn">
				<button class="idcardBtn-go" @click="issueForm">确认提交</button>
			</view>
		</view>
	</view>
</template>

<script>
	import { uploads } from '@/apis/interfaces/uploading'
	import { bankInfo, offlineOpen, bankSee, bankEdit } from '@/apis/interfaces/synthesis'
	export default {
		data() {
			return {
				orderType: '',    // 订单类型
				bankData : '',    // 账户信息
				price	 : '',    // 打款金额
				name     : '',    // 打卡账户
				pathArr  : [],	  // 凭证图片
				type     : '',    // 是否为编辑
				remark   : '',    // 驳回原因
			}
		},
		
		created() {
			this.type 	= this.$Route.query.type
			this.price	= this.$Route.query.price
			// 查看打款凭证-查看提交信息
			this.yearServe();
			// 查看提交信息
			if(this.$Route.query.type == 'edit') {
				bankSee(this.$Route.query.payId,{
					order_type : this.$Route.query.orderType,
					order_id   : this.$Route.query.orderId
				}).then(res => {
					// 这里需要重新处理打款信息
					this.price    = res.price
					this.name     = res.name
					this.pathArr  = res.cover
					this.remark   = res.remark
				}).catch(err => {
					uni.showToast({
						title: err.message,
						icon : 'none'
					})
				})
			}
		},

		methods: {
			// 查看打款凭证
			yearServe(page){
				bankInfo().then(res => {
					this.bankData  = res
				}).catch(err => {
					uni.showToast({
						title: err.message,
						icon : 'none'
					})
				})
			},
			
			// 请上传转款电子回单
			albumClick() {
				var _this = this
				uni.chooseImage({
					count		: 9 - this.pathArr.length,
					sizeType	: ['original', 'compressed'],
					sourceType	: ['album','camera'],
					success: path=> {
						let { tempFilePaths } = path
						let paths = tempFilePaths.map((val, index) => {
							return { 
								name: 'file' + index,
								uri : val
							}
						})
						uploads(paths).then(res => {
							
							
							
							this.pathArr = this.pathArr.concat(res.url)
						}).catch(err => {
							uni.showToast({
								title: err.message,
								icon : 'none'
							})
						})
					},
				});
			},
			
			// 表单提交
			issueForm(e) {
				let data = {
					order_type : this.$Route.query.orderType.replace(/\-/g, '\\'),
					order_id   : this.$Route.query.orderId,
					price      : this.price,
					cover      : this.pathArr
				}
				if(this.$Route.query.type == 'edit') {
					bankEdit(this.$Route.query.payId, data).then(res => {
						this.onBack()
					}).catch(err => {
						uni.showToast({
							title: err.message,
							icon : 'none'
						})
					})
					return
				}
				offlineOpen(data).then(res => {
					this.onBack()
				}).catch(err => {
					uni.showToast({
						title: err.message,
						icon : 'none'
					})
				})
			},
			
			// 删除图片数据
			onRemove(index){
				uni.vibrateShort()
				this.pathArr.splice(index, 1)
			},
			
			// 返回上一页
			onBack(){
				uni.showModal({
					title		: '提示',
					content		: '打款凭证已提交，请耐心等待审核',
					showCancel	: false,
					success		: modalRes => {
						if(modalRes.confirm){
							uni.navigateBack()
						}
					}
				})
			}
		}
	}
</script>

<style lang="scss" scoped>
	.content {
		background-color: $window-color;
		width: 100vw;
		min-height: 100vh;
		padding: 80rpx 30rpx 30rpx;
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	// 驳回原因
	.remarkText{
		background: white;
		margin-top: 30rpx;
		text-align: center;
		font-size: 32rpx;
		line-height: 50rpx;
		width: 100%;
		border-radius: 20rpx;
		padding: 30rpx;
		box-sizing: border-box;
		color: gray;
		.name{
			color: $text-price;
			font-weight: bold;
		}
	}
	// form
	.form{ 
		background: white;
		width: 100%;
		border-radius: 20rpx;
		padding: 30rpx;
		box-sizing: border-box;
		margin-top: 30rpx;
		// 上传图片数组
		.cover-header{
			display: flex;
			justify-content: space-between;
			padding-bottom: 30rpx;
			.cover-title{ line-height: 50rpx; font-size: 32rpx; color: #333; font-weight: bold; }
			.cover-subtitle{ line-height: 40rpx; font-size: 28rpx; color: gray; }
			.cover-num{ font-weight: bold; color: $main-color; line-height: 50rpx; font-size: 30rpx; }
		}
		.cover-flex{
			margin: -10rpx -20rpx;
			display: flex;
			flex-wrap: wrap;
			.cover-item{
				position: relative;
				width: calc(33.33% - 40rpx);
				margin: 20rpx;
				padding-top: calc(33.33% - 40rpx);
				background: #f8f8f8;
				.cover-item-src{
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					height: 100%;
				}
				.cover-item-add{
					width: 68rpx;
					height: 68rpx;
					position: absolute;
					top: 50%;
					left: 50%;
					margin-top: -34rpx;
					margin-left: -34rpx;
				}
			}
		}
		// 表单
		.form-input{
			display: flex;
			align-items: center;
			justify-content: space-between;
			padding: 20rpx 0;
			@extend .border-solid;
			label{
				color: gray;
				font-size: 32rpx;
				width: 200rpx;
			}
			input{
				flex: 1;
				height: 90rpx;
				text-align: right;
				font-size: 32rpx;
			}
			// 上传
			.form-upd-img{
				width: 90rpx;
				height: 90rpx;
			}
		}
		.idcardBtn{
			padding-top: 30rpx;
			.idcardBtn-go{
				background: $main-color;
				color: white;
				font-size: 34rpx;
				line-height: 100rpx;
				height: 100rpx;
				padding: 0;
				font-weight: bold;
				border-radius: 20rpx;
				&::after{ display: none; }
			}
		}
	}
	// header
	.header{
		background: white;
		width: 100%;
		border-radius: 20rpx;
		padding: 80rpx 30rpx 30rpx;
		box-sizing: border-box;
		position: relative;
		.header-icon{
			position: absolute;
			left: 50%;
			top: -49rpx;
			margin-left: -49rpx;
			background: $main-color;
			color: white;
			height: 98rpx;
			width: 98rpx;
			line-height: 98rpx;
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
		}
		.header-title{ 
			font-size: 34rpx;
			font-weight: bold;
			color: #333;
			text-align: center;
			padding-bottom: 30rpx;
		}
		.header-content{
			background: $window-color;
			border-radius: 20rpx;
			padding: 30rpx;
			text-align: center;
			line-height: 60rpx;
			font-size: 32rpx;
			.header-flex{
				display: flex;
				justify-content: space-between;
				align-items: center;
				label{
					color: gray;
				}
			}
		}
	}
</style>
