<template>
	<navBar title="选择产品" :scrollTop="scrollTop"></navBar>
	<navBgCar></navBgCar>
	<view class="content-value">
		<view v-for="(item, index) in state.dataArray" :key="index">
			<view :style="`background-color:${bgc}`" style="border-radius: 16rpx;padding: 20rpx;margin-top: 20rpx;">
				<view class="title" style="display: flex;flex-direction: row;justify-content: flex-start;">
					<view style="font-weight: bold;margin-right: 10rpx;font-size: 18px;">
						{{ item.promoteName }}
					</view>
					<view>
						{{ item['releaseProductStandards']['productStandards']['cardTypeArr'] }}
					</view>
				</view>
				<view v-for="(str, index) in item.releaseProductStandards.equityList" :key="index" class="ul-item"
					style="padding: 0rpx;margin-top: 20rpx;" @click="savaHandle(item,index)">
					<image style="width: 100%; height: 170rpx; border-radius: 20rpx"
						:src="`${$imgUrl}applyCard/product-bg.png`"></image>
					<view class="item-value">
						<image class="icon-tip"
							:src="state.sysType === 'WECHAT'?`${$imgUrl}applyCard/wechat.png` : `${$imgUrl}applyCard/alibaba.png`">
						</image>
						<view class="content">
							<view class="title">
								{{ str.equityName }}
							</view>
							<view style="margin-top: 15rpx" class="tip">
								{{ str.sellingPoint.substring(0,15) }}
							</view>
						</view>
						<view class="money">
							￥：{{ str.discountPrice * 0.01 }}
						</view>
					</view>
				</view>
			</view>

		</view>
		<view class="bottomTip"> 到底啦！敬请期待其他产品！ </view>
	</view>
	<u-popup mode="center" v-model="state.choiceCardShow">
		<view class="squire">
			<view class="mask-close">
				<image :src="fileURL + 'image/index/icon-close.png'" class="icon-closed" @click="closeMask"></image>
			</view>
			<view class="mask-title" :style="{ '--color': color }">选择办理卡类型</view>

			<view class="as-layout-horizontal">
				<view v-for="(item, index) in state.radiolist1" :key="index" :label="item.disabled" :name="item.name"
					@click="radioChange(item.name)"
					style="width: 100%;display: flex;align-items: center;margin-bottom: 30rpx;">
					<view class="as-layout-vertical as-gravity-center">
						<image style="width: 140rpx; height: 100rpx; border-radius: 20rpx;margin-right: 20rpx;"
							:src="`${$imgUrl}card2.png`" mode="aspectFill"></image>
						<view style="margin-top: 20rpx;text-align: center;">
							{{item.name}}
						</view>
					</view>
				</view>
			</view>

		</view>
	</u-popup>
</template>

<script setup lang="ts">
	import { onLoad, onPageScroll, onShow } from "@dcloudio/uni-app";
	import { reactive, ref } from "vue";
	import { etcQueryProduct } from "@/utils/network/api.js";
	import { request } from "@/utils/network/request.js";
	import { stringToJson } from "@/utils/network/encryption";
	import { fileURL } from "@/datas/fileURL.js";
	import navBgCar from "./components/nav-bg-car1";
	import navBar from "@/components/nav-bar/nav-bar2.vue";
	import { getItem, StorageKeys, setItem } from "@/utils/storage.ts";
	import { msg } from "@/utils/utils";
	import { agentId } from "@/utils/network/difference";
	const imgURL = `${fileURL}image/`;

	let bgc = ""
	// #ifdef MP-ALIPAY
	bgc = "#FFFFFF"
	// #endif
	// #ifdef MP-WEIXIN
	bgc = "#F4F6FA" //52010106004
	// #endif

	const scrollTop = ref(0); //滚动距离
	// 单选默认数据
	// 单选
	const radioChange = (n) => {
		console.log('radioChange', n);
		if (n == '记账卡') {
			state.isValueCard = 2
		} else if (n == '储值卡') {
			state.isValueCard = 1
		} else {
			state.isValueCard = 2
		}
		setItem("isValueCard", state.isValueCard);
		uni.navigateTo({
			url: `/subpackage/orders/interestsList?promoteId=${getItem("promoteId")}&userType=${state.userType}&type=${state.type}&isValueCard=${state.isValueCard}&fee=${Number(state.fee)}&equityId=${state.equityId}&fee=${state.fee}&signAgencyId=${state.signAgencyId}`,
		});
	}
	const savaHandle = (val, idx) => {
		console.log("vAL", val)
		setItem("clientFee", val.clientFee);
		setItem("promoteId", val.promoteId);

		state.isSign = val.isSign;
		state.signAgencyId = val['releaseProductStandards']['signAgencyId'];
		state.equityId = val.releaseProductStandards.equityList[idx].equityId;
		// 产品金额+权益金额
		state.fee = Number(val.fee) + Number(val.releaseProductStandards.equityList[idx].discountPrice);
		// 判断是几张卡
		console.log("state.dataArray[i]['releaseProductStandards']['productStandards']", val['releaseProductStandards']['productStandards'])

		if (val['releaseProductStandards']['productStandards']['cardTypeArr'].split(",").length == 1) {
			if (val['releaseProductStandards']['productStandards']['cardTypeArr'].split(",")[0] == "记账卡") {
				state.isValueCard = 2
			} else if (val['releaseProductStandards']['productStandards']['cardTypeArr'].split(",")[0] == '储值卡') {
				state.isValueCard = 1
			} else {
				state.isValueCard = 2
			}
			console.log("state.isValueCard", state.isValueCard)
			setItem("isValueCard", state.isValueCard);
			uni.navigateTo({
				url: `/subpackage/orders/interestsList?equityId=${val.releaseProductStandards.equityList[idx].equityId}&promoteId=${val['promoteId']}&userType=${state.userType}&type=${state.type}&isValueCard=${state.isValueCard}&fee=${state.fee}&signAgencyId=${val['releaseProductStandards']['signAgencyId']}`,
			});
		} else {
			state.radiolist1 = [];
			// 处理卡的数据
			for (var i = 0; i < val['releaseProductStandards']['productStandards']['cardTypeArr'].split(",").length; i++) {
				const obj = {};
				obj["name"] = val['releaseProductStandards']['productStandards']['cardTypeArr'].split(",")[i];
				obj["disabled"] = false;
				state.radiolist1.push(obj)
			}
			state.choiceCardShow = true;
			console.log("state.radiolist1", state.radiolist1)
		}
	};

	onLoad((option : any) => {
		// #ifdef MP-ALIPAY
		state.sysType = 'ALI';
		// #endif
		// #ifdef MP-WEIXIN
		state.sysType = 'WECHAT';
		// #endif
		state.userType = option.userType;
		state.type = option.type;
		productList();
		console.log("option选择产品列表", option)
	});
	onShow(() => {
	})
	// 产品列表
	const productList = () => {
		var data = {
			userType: state.userType,
			agencyId: agentId,
			vanType: state.type,
			promotionMode: 1
		};
		const options = {
			type: 2,
			data: data,
			method: "POST",
			showLoading: true,
		};
		console.log("输出内容", options);
		request(etcQueryProduct, options).then((res) => {
			const data = stringToJson(res.bizContent);
			console.log("产品列表", data.list);
			if (data.list && data.list.length > 0) {
				state.dataArray = data.list ? data.list : [];
				console.log("state.dataArray", state.dataArray);
				for (var i = 0; i < state.dataArray.length; i++) {
					const cardTypeArr = []
					for (var j = 0; j < state.dataArray[i]['releaseProductStandards']['productStandards'].cardType.length; j++) {
						if (state.dataArray[i]['releaseProductStandards']['productStandards'].cardType[j] == '2') {
							cardTypeArr.push('储值卡')
						} else if (state.dataArray[i]['releaseProductStandards']['productStandards'].cardType[j] == '1') {
							cardTypeArr.push('记账卡')
						} else if (state.dataArray[i]['releaseProductStandards']['productStandards'].cardType[j] == '3') {
							cardTypeArr.push('预存卡')
						}
					}
					state.dataArray[i]['releaseProductStandards']['productStandards']['cardTypeArr'] = cardTypeArr.toString()
				}
			} else {
				uni.showModal({
					title: '提示',
					content: '尊敬的用户：感谢您的关注！我们正紧锣密鼓地为您准备一款全新的产品。虽然目前尚未上线，但请您耐心等待，我们将以更好的姿态与更丰富的功能，为您呈现一份超出期待的产品。',
					showCancel: false,
					success: function (res) {
						if (res.confirm) {
							console.log('用户点击确定');
							uni.switchTab({
								url: '/pages/index/index'
							})
						} else if (res.cancel) {
							console.log('用户点击取消');
						}
					}
				});
			}

			console.log("state.dataArray", state.dataArray)
		});
	}
	//监听页面滚动
	onPageScroll((e) => {
		scrollTop.value = e.scrollTop;
	});

	const state = reactive({
		isValueCard: 1, //卡的类型
		radiolist1: [], //选择卡的数据列表
		choiceCardShow: false, //选择卡的弹出框
		isSign: '',
		sysType: "",
		orderId: "",
		userType: 1, //1 个人 2单位
		type: 0, //0 客车 1货车
		vehiclePlateColor: "",
		data: {
			show: false,
			src: imgURL + "applyCard/edit.png",
		},
		dataArray: [],
		list: [
			{
				bg: imgURL + "applyCard/product-bg.png",
				icon: imgURL + "applyCard/wechat.png",
				title: "【货车】微信车主服务",
				tip: "绑定微信支付，无需绑定银行卡",
			},
		],
		fee: 0,  //产品金额
		equityId: "",
		signAgencyId:"",//渠道标识
	});
	const closeMask = () => {
		state.choiceCardShow = false;
	};
</script>

<style lang="scss" scoped>
	::v-deep .u-radio {
		display: flex !important;
		align-items: center !important;
		float: none !important;
	}

	::v-deep .u-icon__icon {
		top: -4px !important;
	}

	.bottomTip {
		margin-top: 100rpx;
		text-align: center;
		font-size: 28rpx;
		font-family: Microsoft YaHei;
		font-weight: 400;
		color: #b3b3b3;
	}

	.content-value {
		position: relative;
		padding: 0rpx 30rpx;
		position: relative;

		.img-pos {
			position: absolute;
			left: 500rpx;
			top: -38rpx;
			right: 50rpx;

			.img-flex {
				display: flex;
				justify-content: space-between;
				align-items: center;

				.car-img {
					width: 86rpx;
					height: 42rpx;
				}

				.flag-img {
					width: 30rpx;
					height: 35rpx;
				}
			}
		}
	}

	.flex {
		display: flex;
		align-items: center;
	}

	.action {
		margin-top: 30rpx;
		padding-left: 20rpx;
		padding-right: 20rpx;
		padding-bottom: 30rpx;

		.button {
			height: 80rpx;
			background: linear-gradient(-90deg, #43a1e0 0%, #13e7c1 100%);
			border-radius: 40rpx;
			font-size: 32rpx;
			font-weight: 400;
			color: #ffffff;
			line-height: 80rpx;
		}
	}

	.action-btn {
		margin-left: 45rpx;
		width: 121rpx;
		height: 61rpx;
		border: 1px solid rgba(255, 255, 255, 1);
		border-radius: 30rpx;
		background: rgba(255, 255, 255, 0.2);

		text-align: center;
		font-size: 30rpx;
		font-family: Microsoft YaHei;
		font-weight: 400;
		color: #ffffff;
		line-height: 61rpx;
	}

	.tag1 {
		padding: 5rpx;
		background: rgba(0, 179, 139, 0.5);
		border-radius: 6rpx;
		font-size: 22rpx;
		font-family: Microsoft YaHei;
		font-weight: 400;
		color: #ffffff;
	}

	.tag3 {
		padding: 5rpx;
		background: rgba(139, 112, 228, 0.5);
		border-radius: 6rpx;
		font-size: 22rpx;
		font-family: Microsoft YaHei;
		font-weight: 400;
		color: #ffffff;
	}

	.tag2 {
		padding: 5rpx;
		background: rgba(249, 97, 60, 0.5);
		border-radius: 6rpx;
		font-size: 22rpx;
		font-family: Microsoft YaHei;
		font-weight: 400;
		color: #ffffff;
	}

	.ul-item {
		padding: 5px 20rpx;
		display: flex;
		align-items: center;

		.item-value {
			padding: 20rpx;
			position: absolute;
			display: flex;
			align-items: center;
			width: 80%;

			.content {
				width: 51%;

				.title {
					font-size: 32rpx;
					font-family: Microsoft YaHei;
					font-weight: 400;
					color: #ffffff;

				}

				.tip {
					font-size: 24rpx;
					font-family: Microsoft YaHei;
					font-weight: 400;
					color: #ffffff;
				}
			}
		}

		.icon-tip {
			width: 100rpx;
			height: 100rpx;
		}

		.content {
			margin-left: 40rpx;
		}
	}

	.money {
		color: white;
	}

	::v-deep .u-mode-center-box {
		border-radius: 10rpx;
	}

	.squire {
		padding: 30rpx 30rpx 50rpx 50rpx;
	}

	.mask-close {
		text-align: right;
	}

	.icon-closed {
		width: 48rpx;
		height: 48rpx;
	}

	.mask-title {
		text-align: center;
		font-size: 32rpx;
		color: $uni-text-color-black;
		margin-bottom: 50rpx;
	}

	.icon-closed {
		width: 40rpx;
		height: 40rpx;
	}
</style>