<template>
	<view class="content bg-white position-re">
		<!-- <cu-custom class="bg-main-oil" isBack bgColor="bg-main-oil">
			<block slot="content">中石化紫云路</block>
			<block slot="backText">返回</block>
		</cu-custom> -->
		<view class="bg-img fixed-top  flex align-end margin-bottom-lg "
			:style="'background-image: url('+otherImgURL+'bg.png '+');width: 750upx;height: 326rpx;background-size:cover'">
			<image @tap="goBack" :src="imgURL+'site-back.png'" width="20upx" mode="widthFix"
				class="position-ab site-back">
			</image>
			<view class="cu-list menu margin padding-sm  radius my-shadow  bg-white yu-card-xuan">
				<view class="cu-item ">
					<view class="content">
						<view class="strong padding-bottom-xs">
							{{siteInfo.siteName}}
						</view>
						<view class="font-12 color-999 site-label text-cut">
							{{siteInfo.address}}
						</view>
						<view class="font-12 color-999 site-label text-cut">
							营业时间 00:00 至 23:59
						</view>
					</view>
					<view class="action " @tap="openMap">
						<view class="oil-main-color">
							<my-icon iconName="sy-der-icon.png" class="padding-right-xs text-sm"></my-icon>
							<text v-if="!location">暂无信息</text>
							<text v-else>{{siteInfo.juli|distanceFilter}}</text>
						</view>
					</view>
				</view>
			</view>
		</view>
		<view class="bg-img placeholder-hidden  flex align-end margin-bottom-lg "
			:style="'background-image: url('+imgURL+'site-bg.png '+');width: 750upx;height: 326rpx;background-size:cover'">
			<image @tap="goBack" :src="imgURL+'site-back.png'" width="20upx" mode="widthFix"
				class="position-ab site-back">
			</image>
			<view class="flex-sub">
				<view class="cu-list menu margin padding-sm  radius my-shadow  bg-white yu-card-xuan">
					<view class="cu-item ">
						<view class="content">
							<view class="strong padding-bottom-xs">
								{{siteInfo.siteName}}
							</view>
							<view class="font-12 color-999 site-label text-cut">
								{{siteInfo.address}}
							</view>
							<view class="font-12 color-999 site-label text-cut">
								营业时间 00:00 至 23:59
							</view>
						</view>
						<view class="action " @tap="openMap">
							<view class="oil-main-color">
								<my-icon iconName="sy-der-icon.png" class="padding-right-xs text-sm"></my-icon>
								<text v-if="!location">暂无信息</text>
								<text v-else>{{siteInfo.juli|distanceFilter}}</text>
							</view>
						</view>
					</view>
				</view>
			</view>
		</view>
		<view class="placeholder margin-bottom">

		</view>
		<!-- 价格 -->
		<price-tab @onChangeChannelCode="getChannelCode" @onChangePayQr="onChangePayQr" @onChangePay="onChangePay"
			:channel-list="siteInfo.oilSiteChannelDetailsVos" :siteInfo="siteInfo"></price-tab>


		<!-- 客户评价 -->
		<view class="bg-gray padding-top-sm ">
			<view class="bg-white  padding ">
				<text>客户评价</text>
				<view class="padding-top-sm">
					<text class="cu-tag margin-right-xs"> 服务周到</text>
					<text class="cu-tag margin-right-xs">交通便利</text>
					<text class="cu-tag margin-right-xs">便捷高效</text>
				</view>
			</view>

		</view>

		<!-- 客户订单 -->
		<view class="bg-gray padding-top-sm ">
			<view class="cu-list bg-white no-border  menu padding-top ">
				<text class="padding margin-top">客户订单</text>
				<view class="cu-item " v-for="(itm,index) in siteInfo.oilSiteOrderInfoVos" :key="index">
					<text class="text-black">
						{{itm.userName|usernameF}} {{itm.plateNumber|plateNumberF}}
					</text>
					<text class=" text-black ">加 {{itm.oilsCode}} {{itm.volume}}L 节省 <text class="text-red">
							¥{{itm.discountAmount}}</text></text>
				</view>
				<view class="cu-item no-border"
					v-if="siteInfo.oilSiteOrderInfoVos && !siteInfo.oilSiteOrderInfoVos.length">
					暂无
				</view>

			</view>
			<!-- 底部去支付 -->
			<view class="">
				<!-- <view class="btn bg-white placeholder-hidden">
					<view class="flex bg-white padding flex-direction">
						<button class="cu-btn block bg-main-oil lg" v-if="activePay" @tap="makePay">
							<image class="site-icon margin-right-sm" :src="imgURL+'site-yz.png'" mode="widthFix">
							</image>
							一键支付
						</button> 
					</view>
				</view> -->
				<view class="btn bg-white fixed ">
					<view class="flex bg-white padding flex-direction">
						<button class="cu-btn block bg-main-oil lg" @tap="makePay">
							<image class="site-icon margin-right-sm" :src="imgURL+'site-yz.png'" mode="widthFix">
							</image>
							一键支付
						</button>
					</view>
				</view>
			</view>
		</view>
		<view class=" cu-modal show" v-show="showtitle">
			<view class="cu-dialog overflow-unset box-paddings">
				<view class="close-icon" @tap="hidendialog">
					<image src="../../../static/img/close.png" mode="" style="width:50rpx;height: 50rpx;"></image>
				</view>
				<view class="">
					<image src="../../../static/img/errIcon.png" mode="" style="width:100rpx;height: 100rpx;"></image>
				</view>
				<view class="cu-bar box-panding text-centerS">
					<text class="headShow"> 支付提醒 </text>
				</view>
				<view class="cu-bar box-panding">
					<text class="showtext">当前油站距离您较远,请与加油员确认您选择的油站是否正确。</text>
				</view>
				<view class="checklocation_box_button">
					<view class="cu-tn btn-box red_btn" @tap="backTohome">
						返回油站列表
					</view>
					<view class="cu-tn btn-box" @tap="gotoPay">
						确认下单
					</view>
				</view>
			</view>
		</view>
	</view>
</template>

<script>
	import oilSiteApi from '@/api/oil-site.js'
	import priceTab from '../components/price-tab.vue'
	export default {
		components: {
			priceTab
		},
		data() {
			return {
				location: null,
				showtitle: false,
				radio: 'B',
				mainURL: this.global.mainURL,
				imgURL: this.global.imgURL,
				otherImgURL: this.global.otherImgURL,
				active: 0,
				ColorList: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
				siteInfo: {},
				activeCur: '',
				activePay: null,
				qrcodePay: null,
				siteId: '',
				activeChannelCode: '',
				secondChannelCode: ''
			}
		},
		onHide() {
			if (this.innerAudioContext) {
				this.innerAudioContext.stop()
			}
		},
		onUnload() {
			if (this.innerAudioContext) {
				this.innerAudioContext.stop()
				this.innerAudioContext.destroy()
			}
		},
		onLoad(option) {
			if (option.q) {
				try {
					let originLink = decodeURIComponent(option.q)
					let target = this.obtainUrlPathParameterTarget(originLink)
					let authorization = uni.getStorageSync('Authorization')
					if (authorization && target.siteId) {
						uni.showModal({
							content: '该二维码非最新版,请提示油站工作人员更新',
							success: res => {
								if(res.confirm) {
									this.siteId = target.siteId
									this.gotoPay()
								}
								if(res.cancel) {
									this.backTohome()
								}
							}
						})
					}
				} catch (e) {}
				return
			}

			this.location = uni.getStorageSync('location')
			
			// console.log('option',option)

			if (!option.item) {
				let siteInfos = uni.getStorageSync('siteInfo')
				var oilItem = JSON.parse(decodeURIComponent(siteInfos))
			} else {
				var oilItem = JSON.parse(decodeURIComponent(option.item));
			}
			// console.log(oilItem, 'oilItemoilItemoilItem')
			uni.setStorageSync('oilItem', oilItem)
			this.getSiteInfo(oilItem)
			this.siteId = oilItem.siteId
			if (oilItem.listTag == '万金油') {
				this.audioUrl = 'https://publicxingyou.oss-cn-hangzhou.aliyuncs.com/mp-oil/wanjinyou.mp3'
			} else if (oilItem.listTag == '星油') {
				this.audioUrl = 'https://publicxingyou.oss-cn-hangzhou.aliyuncs.com/mp-oil/xingyouyunzhan.mp3'
			} else if (oilItem.listTag == '壳牌') {
				this.audioUrl = 'https://publicxingyou.oss-cn-hangzhou.aliyuncs.com/mp-oil/qiaopainew.mp3'
			} else if (oilItem.listTag == '上汽联名卡') {
				this.audioUrl = 'https://publicxingyou.oss-cn-hangzhou.aliyuncs.com/mp-oil/shangqi.mp3'
			}
			this.ContextAudio(this.audioUrl);

		},
		methods: {
			obtainUrlPathParameterTarget(url) {
				let target = {}
				if (url.includes('?')) {
					let paramsText = url.split("?")[1]
					let paramsArr = paramsText.split("&")
					paramsArr.forEach(item => {
						target[item.split('=')[0]] = item.split('=')[1]
					})
				}
				return target
			},
			// 生成音频文件
			ContextAudio(url) {
				this.innerAudioContext = uni.createInnerAudioContext();
				this.innerAudioContext.autoplay = true;
				this.innerAudioContext.src = url;
				this.innerAudioContext.onPlay(() => {
					console.log('开始播放');
				});
				this.innerAudioContext.onError((res) => {
					console.log(res);
				});
			},
			backTohome() {
				// this.innerAudioContext && this.innerAudioContext.stop()
				uni.switchTab({
					url: '../../../pages/tabbar/home/home'
				})
			},
			hidendialog() {
				this.showtitle = false
			},
			gotoPay() {
				// this.innerAudioContext && this.innerAudioContext.stop()
				// console.log('this.activeCur',this.activeCur)
				// return
				uni.navigateTo({
					url: `/BagStation/pages/makeOrder/makeOrder?siteId=${this.siteId}&activeCur=${this.activeCur}`
				})
			},
			getChannelCode(val, sec) {
				this.activeChannelCode = val
				this.secondChannelCode = sec
			},
			siteQrPay() {
				// this.innerAudioContext && this.innerAudioContext.stop()
				uni.navigateTo({
					url: `/BagStation/pages/stationDetail/stieQr?siteId=${this.siteId}&activeChannelCode=${this.activeChannelCode}&secondChannelCode=${this.secondChannelCode}`
				})
			},
			getSiteInfo(item) {
				let data2 = {
					...uni.getStorageSync('location'),
					siteId: item.siteId,
					clientBelong: "ZHONGPIN"
				}
				oilSiteApi.getSiteDetailsByKA(data2).then(res => {
					if (res.code == 20000) {
						this.siteInfo = Object.assign(item, res.data);
					}else {
						this.siteInfo = item
					}
				})
				// let user = uni.getStorageSync('user');
				// if (user) {
				// 	oilSiteApi.getSiteDetailsByKA(data2).then(res => {
				// 		if (res.code == 20000) {
				// 			this.siteInfo = Object.assign(item, res.data);
				// 		}
				// 	})
				// } else {
				// 	this.siteInfo = item;
				// }

			},
			makePay() {
				let user = uni.getStorageSync('user');
				if (!user) {
					uni.showModal({
						title: '请您登录',
						content: "登录中品加油才可以加油 |˛˙꒳​˙)♡",
						confirmText: '去登陆',
						success: (res) => {
							if (res.confirm) {
								uni.reLaunch({
									url: '../../../BagAuth/pages/login/login?loginType=true'
								})
							}
						}
					});
					return
				}
				if (this.siteInfo.juli > 1000) {
					this.showtitle = true
				} else {
					// this.innerAudioContext && this.innerAudioContext.stop()
					uni.navigateTo({
						url: `/BagStation/pages/makeOrder/makeOrder?siteId=${this.siteId}&activeCur=${this.activeCur}`
					})
				}
			},
			onChangePayQr(val) {
				this.qrcodePay = val
			},
			onChangePay(val, active) {
				this.activePay = val
				this.activeCur = active
			},
			openPlugin() {
				const key = this.qqKey; //使用在腾讯位置服务申请的key  
				const referer = '星油云'; //调用插件的app的名称  
				const endPoint = JSON.stringify({
					name: '油站',
					latitude: 39.89631551,
					longitude: 116.323459711
				});

				wx.navigateTo({
					url: 'plugin://routePlan/index?key=' + key + '&referer=' + referer + '&endPoint=' + endPoint
				})

			},
			goBack() {
				// this.innerAudioContext.stop()

				uni.switchTab({
					url: '/pages/tabbar/home/home'
				});
			},
			selectRadio() {
				this.radio === 'A' ? this.radio = '' : this.radio = 'A'
			},
			openMap() {
				let that = this
				uni.openLocation({
					latitude: this.siteInfo.latitude,
					longitude: this.siteInfo.longitude,
					name: this.siteInfo.siteName,
					address: this.siteInfo.address,
					scale: 12,
					success: function() {
						// console.log('success')
					},
					fail: (error) => {
						// console.log('error')
						// console.log(error)
					},
					complete: () => {
						// console.log('made')
					},

				})

				var map = uni.createMapContext('map')
				map.moveToLocation()
			}
		},
		filters: {
			distanceFilter(value) {
				if (value) {
					return value > 1000 ? ((value / 1000).toFixed(2) + 'km') : (value + 'm')
				}
			},
			usernameF(value) {
				if (value) {
					return value.substr(0, 1) + '**'
				} else {
					return '匿名'
				}
			},
			plateNumberF(value) {
				if (value) {
					return value.substr(0, 2) + '*****'
				} else {
					return '车牌号已隐藏'
				}
			}
		}
	}
</script>

<style scoped>
	.content {
		min-height: 100%;
		position: relative;
	}

	.navigation {
		position: absolute;
		right: 16px;
		top: 10px;
	}

	.icon-self {
		width: 1rem;
		height: 1rem;
	}

	.oil-price {
		position: relative;
	}

	.oil-price radio {
		position: absolute;
		left: 0rem;
		top: 10px;
	}

	.qr-icon {
		font-size: 2rem;
	}

	.pay-desc {
		line-height: 2rem;
	}

	.bottom-pay {
		min-height: 100rpx;
		width: 750upx;
	}

	.pay-bar {
		width: 750upx;
		position: absolute;
		bottom: 0;
	}



	.placeholder {
		min-height: 10upx;
	}

	.yu-card-xuan {
		position: relative;
		top: 110rpx
	}

	.site-label {
		max-width: 450upx;
		min-width: 450upx;
	}

	.cu-btn.sm {
		width: 80%;
	}

	.site-back {
		width: 2rem;
		top: 2.8rem;
		left: 1rem;
	}

	.site-icon {
		width: 1.5rem;
		vertical-align: middle;
	}

	.my-tag {
		padding: 0 12rpx;
	}

	.fixed {
		position: fixed;
		bottom: 0;
		width: 750upx;
	}

	.placeholder-hidden {
		opacity: 0;
	}

	.yu-card-xuan .action {
		white-space: nowrap;
	}

	.close-icon {
		position: absolute;
		right: 2%;
		top: 2%;
	}

	.dialog-box {
		position: relative;
	}

	.text-centerS {
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
	}

	.red_btn {
		color: #FFFFFF;
		background-color: #1890FF;
	}

	.box-paddings {
		padding: 40rpx 0;
	}

	.headShow {
		font-size: 36rpx;
		font-weight: 600;
	}

	.showtext {
		line-height: 2;
		font-size: 30rpx;
		margin-bottom: 30rpx;
		padding: 0 10%;
		word-spacing: 10px;
		letter-spacing: 3px;
		text-align: left;
	}

	.checklocation_box_button {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 0 5%;
	}

	.btn-box {
		width: 45%;
		flex: 0 0 auto;
		text-align: center;
		padding: 3%;
		border-radius: 20rpx;
		font-size: 28rpx;
		box-sizing: border-box;
		border: 2rpx solid #bfbfbf;
	}

	.box-panding {
		padding: 10 0;
	}

	.checklocation {
		position: fixed;
		top: 50%;
		left: 20%;
		right: 20%;
		z-index: 999;
	}

	.checklocation_box {
		background-color: #FFFFFF;
	}

	.content {
		min-height: 100%;
		position: relative;
	}

	.navigation {
		position: absolute;
		right: 16px;
		top: 10px;
	}

	.icon-self {
		width: 1rem;
		height: 1rem;
	}

	.oil-price {
		position: relative;
	}

	.oil-price radio {
		position: absolute;
		left: 0rem;
		top: 10px;
	}

	.qr-icon {
		font-size: 2rem;
	}

	.pay-desc {
		line-height: 2rem;
	}

	.bottom-pay {
		min-height: 100rpx;
		width: 750upx;
	}

	.pay-bar {
		width: 750upx;
		position: absolute;
		bottom: 0;
	}



	.placeholder {
		min-height: 10upx;
	}

	.yu-card-xuan {
		position: relative;
		top: 110rpx
	}

	.site-label {
		max-width: 450upx;
		min-width: 450upx;
	}

	.cu-btn.sm {
		width: 80%;
	}

	.site-back {
		width: 2rem;
		top: 2.8rem;
		left: 1rem;
	}

	.site-icon {
		width: 1.5rem;
		vertical-align: middle;
	}

	.my-tag {
		padding: 0 12rpx;
	}

	.fixed {
		position: fixed;
		bottom: 0;
		width: 750upx;
	}

	.placeholder-hidden {
		opacity: 0;
	}

	.yu-card-xuan .action {
		white-space: nowrap;
	}
</style>