<template>
	<view>
		<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="奖品详情"></u-navbar>
		<view class="detail">
			<view class="detail-swiper">
				<u-swiper :list="picUrlArr" height="375" radius="0" :indicator="true" :circular="true" indicatorMode="dot" indicatorActiveColor="#FA822C"></u-swiper>
			</view>
			<!-- 详情 -->
			<view class="detail-info flex">
				<view class="detail-info-left">
					<view class="detail-info-left__title ells-one">{{ info.title }}</view>
					<view class="detail-info-left__coin">
						<view class="content flex">
							<image src="../static/goods_coin.png" mode=""></image>
							<view>× {{ info.exchangePrice }}</view>
						</view>
						<view class="txt">原价：<text>￥{{ $numberFormat(999) }}</text></view>
					</view>
					<view class="detail-info-left__price">￥{{ $numberFormat(999) }}</view>
				</view>
				<view class="detail-info-right" v-show="false">销量：30个</view>
			</view>
			<view class="detail-goods">产品介绍</view>
			<view class="detail-description">
				<u-parse :content="description" :selectable="true"></u-parse>
			</view>
			<view style="detail-merchant" @click="toCompanyData" v-if="info.merchantInfo?true:false">
				<view class="detail-merchant-warp">
					<view class="detail-merchant-warp-one">商家信息</view>
					<view class="detail-merchant-warp-two">
						<view style="float: left;">前往查看</view>
						<u-icon style="float: right;" name="arrow-right" size="18"></u-icon>
					</view>
				</view>
			</view>
		</view>
	</view>
</template>

<script>
	import env from '../../config/env.js'
	import $http from '@/utils/request.js'
	import { formatRichText } from '@/utils/util.js'
	export default {
		data() {
			return {
				boxId: '',
				picUrlArr: [],
				info: {},
				prizeList: [],
				description: '',
				goodsId: '',

				payShow: false,
				payInfo: {}
			};
		},
		onLoad(opthios) {
			this.getDetail(opthios.id)
			this.goodsId = opthios.id
		},
		methods: {
			getDetail(id) {
				uni.showLoading({
					title: '加载中'
				});
				$http.post('/api/v1/mp/user/exchange/goods/detail', {
					noToken: true,
					goodsId: id
				}).then(res => {
					uni.hideLoading();
					if (res.code == 0) {
						this.info = res.data
						let picUrlArr = res.data.picUrl.split(',')
						picUrlArr.forEach(item => {
							this.picUrlArr.push(env.filePublic + item + '?imageView2/2/w/750')
						})
						// 处理富文本
						const description = res.data.description.replaceAll(".jpg\"", ".jpg?imageView2/2/w/750\"")
							.replaceAll(".jpeg\"", ".jpeg?imageView2/2/w/750\"").replaceAll(".png\"",
								".png?imageView2/2/w/750\"");
						this.description = formatRichText(description);
					}
				}).catch(() => {
					uni.hideLoading();
				})
			},

			close() {
				this.payShow = false
			},

			exchange() {
				let data = {
					couponIds: [],
					autoCoupon: 1,
					boxId: this.info.boxId,
					ticketId: this.info.ticketId,
					orderNum: 1
				}
				$http.post('/api/v1/mp/user/ticket/order/settle', data).then(res => {
					if (res.code == 0) {
						let info = {
							...res.data,
							...this.info,
							picUrl: env.filePublic + res.data.picUrl,
						}
						this.payInfo = info
						this.payShow = true
					}
				})
			},
			
			toCompanyData(){
				uni.navigateTo({
					url:`/packageGoods/goods/company?goodsId=${ this.goodsId }`
				})
			},
		}
	}
</script>

<style lang="scss" scoped>
	.detail {

		// 商品轮播
		&-swiper {
			background-color: #FFFFFF;
		}
		
		// 详情
		&-info {
			background-color: #fff;
			justify-content: space-between;
			padding: 34rpx;
			margin-bottom: 22rpx;
			
			&-left {
				flex: 1;
				
				&__title {
					font-size: 34rpx;
					line-height: 34rpx;
					margin-bottom: 26rpx;
					font-weight: bold;
				}
				
				&__coin {
					display: flex;
					line-height: 30rpx;
					margin-bottom: 26rpx;
					font-size: 26rpx;
					
					.content {
						color: #FF2929;
						margin-right: 34rpx;
						
						image {
							width: 34rpx;
							height: 30rpx;
						}
					}
					
					.txt {
						color: #666666;
						
						text {
							text-decoration: line-through;
						}
					}
				}
				
				&__price {
					line-height: 24rpx;
					color: #666666;
				}
			}
			
			&-right {
				color: #666666;
			}
		}
		
		&-goods {
			height: 90rpx;
			text-align: center;
			line-height: 90rpx;
			font-weight: bold;
			font-size: 30rpx;
			background-color: #FFFFFF;
		}

		&-description {
			image {
				width: 100%;
			}
		}

		&-merchant {
			height: 88rpx;
			// text-align: center;
			line-height: 88rpx;
			font-weight: bold;
			background-color: #FFFFFF;

			&-warp {
				height: 88rpx;
				width: 100%;
				background-color: #ffffff;

				&-one {
					float: left;
					margin: 20rpx;
					font-weight: 600;
				}

				&-two {
					float: right;
					margin: 20rpx;
					font-weight: 600;
				}
			}
		}

		// 设置ios刘海屏底部横线安全区域
		padding-bottom: constant(safe-area-inset-bottom);
		padding-bottom: env(safe-area-inset-bottom);
	}
</style>
