<template>
	<view class="center plr-25">
		<view class="flex-column br-12 fs-28 mt-30" style="background: white;">
			<text class="fs-32 fw-700 mt-30" style="text-align: left;padding-left: 30rpx;">车位管理费</text>
			<text class="fs-28 mt-30" style="text-align: left;padding-left: 30rpx;">车位号</text>
			<view class="flex-row-between mar-30 br-4 pad-25" style="background: #F2F2F2;" @click="openCar">
				<text>{{carNumber==''?"请选择":carNumber}}</text>
				<image class="h-30 w-30" src="/static/icon_xjt.png"></image>
			</view>
			<text class="fs-28 mt-30" style="text-align: left;padding-left: 30rpx;">缴费时长</text>
			<view class="flex-row-between mar-30 br-4 pad-25" style="background: #F2F2F2;" @click="open">
				<text>{{monthsNumber==''?"请选择":monthsNumber}}</text>
				<image class="h-30 w-30" src="/static/icon_xjt.png"></image>
			</view>
			<text class="fs-28 mt-30" style="text-align: left;padding-left: 30rpx;">缴费金额</text>
			<view class="flex-row-between mar-30 br-4 pad-25" style="background: #F2F2F2;">
				<text>￥{{money||0}}</text>
			</view>
		</view>
		<view class="fullscreen-btn" style="margin: 0;margin-top: 60rpx;" @click="onSubmit">
			立即缴费
		</view>
		<u-picker :show="show" :columns="columns" closeOnClickOverlay="true" @cancel="close" @close="close"
			@confirm="confirm"></u-picker>
		<u-picker :show="carShow" :columns="listCar" closeOnClickOverlay="true" @cancel="closeCar" @close="closeCar"
			@confirm="confirmCar"></u-picker>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				show: false,
				carShow: false,
				columns: [
					['1个月', '3个月', '6个月', '9个月', '12个月']
				],
				monthsNumber: '',
				carNumber: '',
				userinfo: '',
				carportId: '',
				money: '',
				carIndex: 0,
				listCar: [
					[]
				],
				list: [],

			};
		},
		onLoad(options) {
			this.type = options.type
			this.userinfo = uni.getStorageSync("userInfo")
			this.getListCar()

		},
		methods: {
			open() {
				this.show = true
			},
			close() {
				this.show = false

			},
			openCar() {
				this.carShow = true
			},
			closeCar() {
				this.carShow = false

			},
			confirm(e) {
				if (this.$wskj.isNull(this.carportId)) {
					this.$wskj.toast('请选择车位号')
					return
				}
				this.show = false
				this.monthsNumber = e.value[0]
				this.money = parseFloat(this.monthsNumber.replace('个月', '')) * parseFloat(this.list[this.carIndex]
					.monthMoney);
				this.money = this.money.toFixed(2)
				console.log("LMG", this.money)
			},
			confirmCar(e) {
				this.carShow = false
				this.carNumber = e.value[0]
				this.carIndex = e.indexs[0]
				this.carportId = this.list[e.indexs[0]].carportId
			},
			onSubmit() {
				if (this.$wskj.isNull(this.carportId)) {
					this.$wskj.toast('请选择车位号')
					return
				}
				if (this.$wskj.isNull(this.money)) {
					this.$wskj.toast('请选择缴费时长')
					return
				}
				this.onCjdd()
			},
			getListCar() {
				const params = {
					url: '/api/carport/listByType?type=1',
					method: 'GET',
				}
				this.$request(params).then(res => {
					if (this.$wskj.isNull(res.data)) {
						return
					}
					this.list = res.data
					res.data.forEach(item => {
						this.listCar[0].push(item.carportNumber)
					})
					//默认第一个车位
					this.carIndex = 0
					this.carNumber = res.data[0].carportNumber
					this.carportId = res.data[0].carportId
				})
			},
			onCjdd() {
				const params = {
					url: '/api/liveBill/add',
					loadingTip: '',
					data: {
						money: this.money,
						type: 4, //类型（1电费 2水费 3物业费 4车位管理费 5车位出租费 6储藏室出租 7其他费用）
						duration: this.monthsNumber.replace('个月', ''), //缴费时长（月）
						carportId: this.carportId
					}
				}
				this.$request(params).then(res => {
					this.pay(res.data.billId)
				})
			},
			pay(orderId) {
				const params = {
					url: '/api/payRecord/pay',
					loadingTip: '',
					data: {
						orderId: orderId,
						amount: this.money,
						payBizCode: "PRESTORE",
					}
				}
				this.$request(params).then(res => {
					uni.requestPayment({
						provider: 'wxpay',
						appid: res.data.data.appId, // 微信开放平台 - 应用 - AppId，注意和微信小程序、公众号 AppId 可能不一致
						nonceStr: res.data.data.nonceStr, // 随机字符串
						package: res.data.data.package, // 固定值
						timeStamp: res.data.data.timeStamp, // 时间戳（单位：秒）
						paySign: res.data.data.paySign, // 签名，这里用的 MD5/RSA 签名
						signType: 'MD5',
						success: (res) => {

						},
						fail: (err) => {
							console.log(err);
						}
					});
				})
			},

		}
	};
</script>

<style>
	.center {
		height: 100vh;
		display: flex;
		flex-direction: column;
		background: #F2F2F2;
	}

	.grid-container {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around; // 可以根据需求调整元素的水平排列方式，这里是均匀分布
		align-items: center; // 垂直方向居中对齐
	}

	.grid-item {
		width: 32%;
		height: 80rpx; // 宫格高度
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		background: #F2F2F2;
		border-radius: 12rpx;
		margin-top: 10rpx;
	}
</style>