<template>
	<x-skeleton data-component-name="diy-coupon" type="banner" :loading="loading" :configs="skeletonConfig">
		<view class="coupon-wrap" :class="'coupon-box-' + value.style" :style="[
			value.couponType == 'img' && { backgroundImage: 'url(' + $util.img(value.couponBgUrl) + ')' },
			value.couponType == 'color' && { backgroundColor: value.couponBgColor }
		]">

			<template v-if="value.style == '1'">
				<swiper class="coupon-style-one" circular>
					<swiper-item v-for="(numItem, numIndex) in Math.ceil(computedCouponList.length / 3)" :key="numIndex" class="coupon-item-box">

						<view v-for="(item, index) in computedCouponList" class="coupon-item" :key="index"
							v-if="index >= [numIndex * 3] && index < [(numIndex + 1) * 3]" :style="{
							color: value.moneyColor,
							backgroundImage: 'url(' + $util.img('public/uniapp/coupon/style1-bg.png') + ')',
							marginRight: couponItemHeight + 'px',
							marginLeft: couponItemHeight + 'px'
						}" @click="couponAction(item, index)">

							<view class="coupon-info">
								<view class="coupon-num" :style="{ color: value.moneyColor }" v-if="!parseInt(item.discount)">
									<text class="font-size-tag coupon-sign">￥</text>
									<text class="coupon-size">{{ item.money | moneyConduct }}</text>
								</view>
								<view class="coupon-num" :style="{ color: value.moneyColor }" v-else>
									<text class="coupon-size">{{ item.discount | moneyConduct }}</text>
									<text class="font-size-tag coupon-sign">折</text>
								</view>
								<view class="coupon-type font-size-tag" :style="{ color: value.limitColor }">
									{{ item.at_least > 0 ? '满' + Number(item.at_least) + '元可用' : '无门槛优惠券' }}
								</view>
							</view>
							<view class="coupon-get" :style="couponBtnStyle" v-if="item.useState == 0">
								{{ value.btnStyle.text }}
							</view>
							<view class="coupon-get" :style="couponBtnStyle" v-if="parseInt(item.useState)">去使用</view>
						</view>

					</swiper-item>
				</swiper>
			</template>

			<template v-if="value.style == '2'">
				<swiper class="coupon-style-two" circular>
					<swiper-item v-for="(numItem, numIndex) in Math.ceil(computedCouponList.length / 3)" :key="numIndex" class="coupon-item-box">
						<view class="coupon-item" v-for="(item, index) in computedCouponList" :key="index"
							v-if="index >= [numIndex * 3] && index < [(numIndex + 1) * 3]" :style="{
							color: value.moneyColor,
							backgroundImage: 'url(' + $util.img('public/uniapp/coupon/coupon_bg1.png') + ')',
							marginRight: couponItemHeight + 'px',
							marginLeft: couponItemHeight + 'px'
						}" @click="couponAction(item, index)">
							<view class="coupon-info">
								<view class="coupon-num" :style="{ color: value.moneyColor }" v-if="!parseInt(item.discount)">
									<text class="font-size-tag coupon-sign">￥</text>
									<text class="coupon-size">{{ item.money | moneyConduct }}</text>
								</view>
								<view class="coupon-num" :style="{ color: value.moneyColor }" v-else>
									<text class="coupon-size">{{ item.discount | moneyConduct }}</text>
									<text class="font-size-tag coupon-sign">折</text>
								</view>
								<view class="coupon-type font-size-tag" :style="{ color: value.limitColor }">
									{{ item.at_least > 0 ? '满' + Number(item.at_least) + '元可用' : '无门槛优惠券' }}
								</view>
							</view>
							<view class="coupon-get" :style="couponBtnStyle" v-if="item.useState == 0">
								{{ value.btnStyle.text || '领取' }}
							</view>
							<view class="coupon-get use" :style="couponBtnStyle" v-if="parseInt(item.useState)">去使用
							</view>
						</view>
					</swiper-item>
				</swiper>
			</template>

			<template v-if="value.style == '3'">
				<swiper class="coupon-style-three" circular>
					<swiper-item v-for="(numItem, numIndex) in Math.ceil(computedCouponList.length / 3)" :key="numIndex" class="coupon-item-box">
						<view class="coupon-item" v-for="(item, index) in computedCouponList" :key="index"
							v-if="index >= [numIndex * 3] && index < [(numIndex + 1) * 3]" :style="{
							color: value.moneyColor,
							backgroundImage: 'url(' + $util.img('public/uniapp/coupon/coupon_shu.png') + ')',
							marginRight: couponItemHeight + 'px',
							marginLeft: couponItemHeight + 'px'
						}" @click="couponAction(item, index)">
							<view class="coupon-num" :style="{ color: value.moneyColor }" v-if="!parseInt(item.discount)">
								<text class="font-size-tag coupon-sign">￥</text>
								<text class="coupon-size">{{ item.money | moneyConduct }}</text>
							</view>
							<view class="coupon-num" :style="{ color: value.moneyColor }" v-else>
								<text class="coupon-size">{{ item.discount | moneyConduct }}</text>
								<text class="font-size-tag coupon-sign">折</text>
							</view>
							<view class="coupon-type font-size-tag">
								<text :style="{ color: value.limitColor }">{{ item.at_least > 0 ? '满' + Number(item.at_least) + '元可用' : '无门槛优惠券' }}</text>
								<view class="item-text" v-if="item.goods_type == 1">所有商品可用</view>
								<view class="item-text" v-else-if="item.goods_type == 2">指定商品可用</view>
								<view class="item-text" v-else-if="item.goods_type == 3">指定商品不可用</view>
							</view>

							<view class="coupon-get" :style="couponBtnStyle" v-if="item.useState == 0">
								{{ value.btnStyle.text || '领取' }}
							</view>
							<view class="coupon-get" :style="couponBtnStyle" v-if="parseInt(item.useState)">去使用</view>
						</view>
					</swiper-item>
				</swiper>
			</template>

			<template v-if="value.style == '4'">
				<swiper class="coupon-style-four" circular>
					<swiper-item v-for="(numItem, numIndex) in Math.ceil(computedCouponList.length / 3)" :key="numIndex" class="coupon-item-box">
						<view class="coupon-item" v-for="(item, index) in computedCouponList" :key="index"
							v-if="index >= [numIndex * 3] && index < [(numIndex + 1) * 3]" :style="{
							color: value.moneyColor,
							backgroundImage: 'url(' + $util.img('public/uniapp/coupon/style4_bg.png') + ')',
							marginRight: couponItemHeight + 'px',
							marginLeft: couponItemHeight + 'px'
						}" @click="couponAction(item, index)">
							<view class="coupon-info">
								<view class="coupon-num" :style="{ color: value.moneyColor }" v-if="!parseInt(item.discount)">
									<text class="font-size-tag coupon-sign">￥</text>
									<text class="coupon-size">{{ item.money | moneyConduct }}</text>
								</view>
								<view class="coupon-num" :style="{ color: value.moneyColor }" v-else>
									<text class="coupon-size">{{ item.discount | moneyConduct }}</text>
									<text class="font-size-tag coupon-sign">折</text>
								</view>
								<view class="coupon-type font-size-tag" :style="{ color: value.limitColor }">
									{{ item.at_least > 0 ? '满' + Number(item.at_least) + '元可用' : '无门槛优惠券' }}
								</view>
							</view>
							<view class="coupon-get" :style="couponBtnStyle" v-if="item.useState == 0">
								{{ value.btnStyle.text || '立即使用' }}
							</view>
							<view class="coupon-get" :style="couponBtnStyle" v-if="parseInt(item.useState)">去使用</view>
						</view>
					</swiper-item>
				</swiper>
			</template>

			<template v-if="value.style == '5'">
				<view class="coupon-style-five">
					<view class="coupon-all">
						<view class="coupon-box">
							<view class="coupon-list" v-for="(item, index) in computedCouponList" :key="index" @click="couponAction(item, index)">
								<image :src="$util.img('public/uniapp/coupon/style5_bg.png')"></image>
								<view class="coupon">
									<view class="coupon-info">
										<view class="coupon-num" v-if="item.discount == '0.00'" :style="{ color: value.moneyColor }">
											<text class="coupon-size">{{ item.money | moneyConduct }}</text>
											<text class="font-size-tag coupon-sign">元</text>
										</view>
										<view class="coupon-num" v-else :style="{ color: value.moneyColor }">
											<text class="coupon-size">{{ item.discount | moneyConduct }}</text>
											<text class="font-size-tag coupon-sign">折</text>
										</view>
									</view>
									<view class="coupon-line"></view>
									<view class="coupon-content">
										<view class="coupon-type">
											<view class="coupon-name" :style="{ color: value.nameColor }">{{ item.coupon_name }}</view>
											<text class="coupon-least" :style="{ color: value.limitColor }" v-if="item.at_least > 0">满{{ Number(item.at_least) }}元可用</text>
											<text class="coupon-least" :style="{ color: value.limitColor }" v-else>无门槛优惠券</text>
										</view>
										<view class="coupon-get" :style="couponBtnStyle" v-if="item.useState == 0">{{ value.btnStyle.text || '立即领取' }}</view>
										<view class="coupon-get" :style="couponBtnStyle" v-if="parseInt(item.useState)">去使用</view>
									</view>
								</view>
							</view>
						</view>
					</view>
				</view>
			</template>

			<template v-if="value.style == '6'">
				<swiper class="coupon-style-six" circular>
					<swiper-item class="style-six-wrap" v-for="(numItem, numIndex) in Math.ceil(computedCouponList.length / 3)" :key="numIndex">
						<view class="coupon" v-for="(item, index) in computedCouponList" :key="index"
							v-if="index >= [numIndex * 3] && index < [(numIndex + 1) * 3]" :style="{
							color: value.moneyColor,
							backgroundImage: 'url(' + $util.img('public/uniapp/coupon/style6-bg-1.png') + ')',
							marginRight: couponItemHeight + 'px',
							marginLeft: couponItemHeight + 'px'
						}" @click="couponAction(item, index)">
							<view class="coupon-content">
								<view class="price-wrap">
									<text class="price" :style="{ color: value.moneyColor }">{{ (item.discount == '0.00' ? item.money : item.discount) | moneyConduct }}</text>
									<text class="unit">{{ item.discount == '0.00' ? '元' : '折' }}</text>
								</view>
								<text class="text">优惠券</text>
							</view>
							<text class="btn" v-if="item.useState == 0" :style="{
								color: value.btnStyle.textColor,
								backgroundColor: value.btnStyle.bgColor,
								borderTopLeftRadius: value.btnStyle.aroundRadius * 2 + 'rpx',
								borderBottomLeftRadius: value.btnStyle.aroundRadius * 2 + 'rpx'
							}">
								<text class="btn-content">{{ value.btnStyle.text }}</text>
							</text>
							<text class="btn" v-if="parseInt(item.useState)" :style="{
								color: value.btnStyle.textColor,
								backgroundColor: value.btnStyle.bgColor,
								borderTopLeftRadius: value.btnStyle.aroundRadius * 2 + 'rpx',
								borderBottomLeftRadius: value.btnStyle.aroundRadius * 2 + 'rpx'
							}">
								<text class="btn-content">去使用</text>
							</text>
							<text class="limit" :style="{ color: value.limitColor }" v-if="parseFloat(item.at_least) > 0">满{{ item.at_least | moneyConduct }}元使用</text>
							<text class="limit" :style="{ color: value.limitColor }" v-else>无门槛使用</text>
						</view>

						<div v-if="computedCouponList.length <= 2" @click="$util.redirectTo('/pages/goods/category')"
							class="coupon coupon-null" :style="{
							color: value.moneyColor,
							backgroundImage: 'url(' + $util.img('public/uniapp/coupon/style6-bg-2.png') + ')',
							marginRight: couponItemHeight + 'px',
							marginLeft: couponItemHeight + 'px'
						}">
							<div class="coupon-content" :style="{ color: value.moneyColor }">
								<span class="price">+</span>
								<span class="text">暂无优惠券</span>
							</div>
							<span class="limit" :style="{ color: value.limitColor }">去逛逛</span>
						</div>
					</swiper-item>
				</swiper>
			</template>

			<template v-if="value.style == '7'">
				<scroll-view class="coupon-style-seven" scroll-x="true">
					<view class="wrap">
						<view class="coupon-list" v-for="(item, index) in computedCouponList" :key="index" @click="couponAction(item, index)">
							<image :src="$util.img('public/uniapp/coupon/style7_bg.png')"></image>
							<view class="coupon">
								<view class="coupon-info">
									<view class="coupon-num" v-if="item.discount == '0.00'" :style="{ color: value.moneyColor }">
										<text class="coupon-size">{{ item.money | moneyConduct }}</text>
										<text class="font-size-tag coupon-sign">元</text>
									</view>
									<view class="coupon-num" v-else :style="{ color: value.moneyColor }">
										<text class="coupon-size">{{ item.discount | moneyConduct }}</text>
										<text class="font-size-tag coupon-sign">折</text>
									</view>
								</view>
								<view class="coupon-type">
									<text class="coupon-name" :style="{ color: value.limitColor }" v-if="item.at_least > 0">满{{ Number(item.at_least) }}元可用</text>
									<text class="coupon-name" :style="{ color: value.limitColor }" v-else>无门槛优惠券</text>
									<view class="coupon-least" :style="{ color: value.limitColor }">有效期至{{ $util.timeStampTurnTime(item.end_time, 'yearmonthday') }}</view>
								</view>
								<view class="coupon-line"></view>
								<view class="coupon-get" :style="couponBtnStyle" v-if="item.useState == 0">
									{{ value.btnStyle.text || '立即领取' }}
								</view>
								<view class="coupon-get" :style="couponBtnStyle" v-if="parseInt(item.useState)">去使用
								</view>
							</view>
						</view>
					</view>
				</scroll-view>
			</template>

			<ns-login ref="login"></ns-login>

		</view>

	</x-skeleton>
</template>

<script>
	// 优惠券
	export default {
		name: 'diy-coupon',
		props: {
			value: {
				type: Object,
				default: () => {
					return {};
				}
			}
		},
		data() {
			return {
				couponList: [],
				isHave: true,
				couponBtnSwitch: false,
				isSuccess: false,
				loading: true,
				skeletonConfig: {
					gridRows: 2,
					gridRowsGap: '20rpx',
					headHeight: '160rpx'
				}
			};
		},
		created() {
			this.getCanReceiveCouponQuery();
		},
		watch: {
			// 组件刷新监听
			componentRefresh: function(nval) {
				this.getCanReceiveCouponQuery();
			}
		},
		computed: {
			computedCouponList() {
				var list = [];
				this.couponList.filter(function(item) {
					if (item.count != item.lead_count) list.push(item);
				});
				return list;
			},
			couponItemHeight() {
				var width = '';
				const screenWidth = uni.getSystemInfoSync().windowWidth;
				if (this.value.style == '1') width = [screenWidth - this.rpxUpPx(210) * 3 - this.rpxUpPx(this.value.margin
					.both * 2) * 2] / 6;
				else if (this.value.style == '2') width = [screenWidth - this.rpxUpPx(210) * 3 - this.rpxUpPx(this.value
					.margin.both * 2) * 2] / 6;
				else if (this.value.style == '3') width = [screenWidth - this.rpxUpPx(24) * 2 - this.rpxUpPx(194) * 3 -
					this.rpxUpPx(this.value.margin.both * 2) * 2
				] / 6;
				else if (this.value.style == '4') width = [screenWidth - this.rpxUpPx(206) * 3 - this.rpxUpPx(this.value
					.margin.both * 2) * 2] / 6;
				else if (this.value.style == '6') width = [screenWidth - this.rpxUpPx(208) * 3 - this.rpxUpPx(this.value
					.margin.both * 2) * 2] / 6;

				return width;
			},
			couponBtnStyle() {
				var css = '';
				css += 'color:' + this.value.btnStyle.textColor + ';';
				css += 'background-color:' + this.value.btnStyle.bgColor + ';';
				css += 'border-radius:' + this.value.btnStyle.aroundRadius * 2 + 'rpx;';
				return css;
			}
		},
		methods: {
			rpxUpPx(res) {
				const screenWidth = uni.getSystemInfoSync().windowWidth;
				var data = (screenWidth * parseInt(res)) / 750;
				return Math.floor(data);
			},
			getCanReceiveCouponQuery() {
				var data = {
					num: this.value.count,
					can_receive: 1
				};
				if (this.value.sources == 'diy') {
					data.coupon_type_id_arr = this.value.couponIds.toString();
				}
				this.$api.sendRequest({
					url: '/coupon/api/coupon/typelists',
					data: data,
					success: res => {
						let data = res.data;
						if (data != null) {
							this.couponList = data;
							this.couponList.forEach(v => {
								if (v.max_fetch != 0 && v.member_coupon_num && v.member_coupon_num >= v
									.max_fetch) {
									v.useState = 1;
								} else {
									v.useState = 0;
								}
							});
						}
						this.loading = false;
					}
				});
			},
			couponAction(item, index) {
				if (item.useState == 0) {
					this.receiveCoupon(item, index);
				} else if (parseInt(item.useState)) {
					this.couponTap(item, index);
				}
			},
			couponTap(item, index) {
				if (item.count == item.lead_count) {
					this.$util.showToast({
						title: '该优惠券已抢光'
					});
					return;
				}
				if (item.useState == 0) this.receiveCoupon(item, index);
				else this.toGoodsList(item);
			},
			// 领取优惠券
			receiveCoupon(item, index) {
				let that = this;
				if (this.couponBtnSwitch) return;
				this.couponBtnSwitch = true;
				if (this.storeToken) {
					this.$api.sendRequest({
						url: '/coupon/api/coupon/receive',
						data: {
							coupon_type_id: item.coupon_type_id,
							get_type: 2 //获取方式:1订单2.直接领取3.活动领取
						},
						success: res => {
							var data = res.data;
							let msg = res.message;
							if (res.code == 0) {
								msg = '领取成功';
								if (res.data.is_exist == 1) {
									for (let i = 0; i < that.couponList.length; i++) {
										if (that.couponList[i].coupon_type_id == item.coupon_type_id) {
											that.$set(that.couponList[i], 'useState', 1);
										}
									}
								} else {
									for (let i = 0; i < that.couponList.length; i++) {
										if (that.couponList[i].coupon_type_id == item.coupon_type_id) {
											that.$set(that.couponList[i], 'useState', 2);
										}
									}
								}
							}
							this.$util.showToast({
								title: msg
							});

							this.$forceUpdate();
							this.couponBtnSwitch = false;
						},
						fail: res => {
							this.couponBtnSwitch = false;
						}
					});
				} else {
					this.$refs.login.open('/pages/index/index');
					this.couponBtnSwitch = false;
				}
			},
			//去使用
			toGoodsList(item) {
				if (item.goods_type != 1) {
					this.$util.redirectTo('/pages/goods/list', {
						coupon: item.coupon_type_id
					});
				} else {
					this.$util.redirectTo('/pages/goods/list', {});
				}
			}
		},
		filters: {
			moneyConduct(value) {
				var arr = value.split('.');
				var str = parseInt(arr[1].split('').reverse().join('')) + '';
				str = str.split('').reverse().join('');
				if (str == 0) return arr[0];
				else return arr[0] + '.' + str;
			}
		}
	};
</script>

<style lang="scss">
	.coupon-wrap {
		background-size: cover;
		background-repeat: no-repeat;
	}

	// 风格一
	/deep/.coupon-style-one {
		height: 110rpx;

		.coupon-item-box {
			display: flex;
			box-sizing: border-box;

			.coupon-item {
				display: flex;
				align-items: center;
				justify-content: space-between;
				width: 210rpx;
				height: 110rpx;
				background-repeat: no-repeat;
				background-size: contain;

				.coupon-get {
					position: relative;
					right: 14rpx;
					font-size: 24rpx;
					width: 26rpx;
					line-height: 1.1;
				}

				.coupon-info {
					width: 156rpx;
					display: flex;
					flex-direction: column;
					align-items: center;

					.coupon-type {
						margin-top: 14rpx;
						line-height: 1;
					}

					.coupon-num {
						margin-top: -6rpx;
						font-size: 40rpx;
						line-height: 1;
					}
				}
			}
		}
	}

	// 风格二
	/deep/.coupon-style-two {
		height: 96rpx;

		.coupon-item-box {
			display: flex;
			box-sizing: border-box;

			.coupon-item {
				display: flex;
				align-items: center;
				justify-content: space-between;
				width: 210rpx;
				height: 96rpx;
				background-repeat: no-repeat;
				background-size: contain;

				.coupon-get {
					position: relative;
					top: 2rpx;
					right: 12rpx;
					font-size: 24rpx;
					letter-spacing: 16rpx;
					width: 26rpx;

					&.use {
						top: 0;
						right: 4rpx;
						letter-spacing: 4rpx;
					}
				}

				.coupon-info {
					width: 156rpx;
					display: flex;
					flex-direction: column;
					align-items: center;
					margin-top: -8rpx;

					.coupon-type {
						margin-top: 10rpx;
						line-height: 1;
					}

					.coupon-num {
						font-size: 40rpx;
						line-height: 1;
					}
				}
			}
		}
	}

	// 风格三
	.coupon-wrap.coupon-box-3 {
		background-size: 100% 100%;
	}

	/deep/.coupon-style-three {
		height: 284rpx;
		padding: 20rpx;
		box-sizing: border-box;

		.coupon-item-box {
			height: 250rpx !important;
			display: flex;

			.coupon-item {
				display: flex;
				flex-direction: column;
				align-items: center;
				justify-content: center;
				width: 206rpx;
				height: 250rpx;
				background-repeat: no-repeat;
				background-size: contain;

				.coupon-size {
					font-size: 40rpx;
				}

				.coupon-type {
					margin-top: 20rpx;
					margin-bottom: 6rpx;
					line-height: 1;
					text-align: center;
				}

				.coupon-num {
					margin-top: 8rpx;
					line-height: 1;
				}

				.coupon-get {
					width: 120rpx;
					height: 46rpx;
					line-height: 46rpx;
					text-align: center;
					font-size: 24rpx;
				}
			}
		}
	}

	// 风格四
	/deep/.coupon-style-four {
		height: 108rpx;

		.coupon-item-box {
			display: flex;
			box-sizing: border-box;

			.coupon-item {
				display: flex;
				align-items: center;
				justify-content: space-between;
				width: 206rpx;
				height: 108rpx;
				background-repeat: no-repeat;
				background-size: contain;

				.coupon-get {
					position: relative;
					top: 0;
					right: 12rpx;
					font-size: 24rpx;
					width: 26rpx;
					line-height: 1.1;
				}

				.coupon-info {
					width: 156rpx;
					display: flex;
					flex-direction: column;
					align-items: center;

					.coupon-type {
						margin-top: 10rpx;
						line-height: 1;
					}

					.coupon-num {
						font-size: 40rpx;
						line-height: 1;
					}
				}
			}
		}
	}

	/* 样式一 */
	.coupon-all {
		width: 100%;
		flex-direction: row;
		white-space: nowrap;
		box-sizing: border-box;
		line-height: 1;
	}

	.coupon-list {
		position: relative;
		line-height: 1;
	}

	.coupon {
		width: 254rpx;
		height: 114rpx;
		border-radius: $border-radius;
		overflow: hidden;
		display: flex;
		justify-content: space-between;
		position: absolute;
		left: 0;
		top: 0;

		.coupon-info {
			width: 71%;
			height: 100%;
			padding: 10rpx 15rpx;
			box-sizing: border-box;
			display: flex;
			flex-direction: column;
			justify-content: center;

			.coupon-type {
				color: #ffffff;
				font-size: $font-size-activity-tag;
				text-align: center;
				overflow: hidden;
				white-space: nowrap;
			}

			.coupon-num {
				display: flex;
				align-items: flex-end;
				justify-content: center;
				margin-bottom: 10rpx;

				.coupon-sign {
					margin-bottom: 4rpx;
				}

				.coupon-size {
					font-size: 40rpx;
				}

				text {
					line-height: 1;
				}
			}
		}

		.coupon-get {
			width: 26%;
			height: 100%;
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;

			view {
				line-height: 1.2;
				font-size: $font-size-tag;
			}
		}
	}

	//风格五
	.coupon-style-five {
		.coupon-all {
			.coupon-box {
				width: 100%;
				display: inline-block;
				position: relative;

				.coupon-list {
					height: 160rpx;
					position: relative;
					padding: 10rpx 0;

					image {
						width: 100%;
						height: 100%;
					}

					.coupon {
						width: 100%;
						height: 100%;
						display: flex;
						align-items: center;
						justify-content: flex-start;

						.coupon-info {
							width: 25%;
							min-width: 25%;
							max-width: 25%;

							.coupon-num {
								margin: 0;
								overflow: hidden;
								white-space: nowrap;
								text-overflow: ellipsis;
								width: 100%;

								.coupon-size {
									font-weight: bold;
								}

								.coupon-sign {}
							}
						}

						.coupon-line {
							border-left: 1rpx dashed #999;
							height: 65%;
						}

						.coupon-content {
							display: flex;
							width: 100%;
							justify-content: space-between;
							padding: 0 20rpx;
							align-items: center;

							.coupon-type {
								.coupon-name {
									font-size: 32rpx;
									font-weight: bold;
									width: 300rpx;
									overflow: hidden;
									white-space: nowrap;
									text-overflow: ellipsis;
								}

								.coupon-least {
									font-size: 28rpx;
									color: #999;
								}
							}

							.coupon-get {
								color: #fff;
								background-color: #303133;
								border-radius: 6rpx;
								padding: 4rpx 8rpx;
								margin-right: 20rpx;
								font-size: $font-size-tag;
							}
						}
					}
				}
			}
		}
	}

	//风格六
	.coupon-style-six {
		height: 270rpx;
		box-sizing: border-box;

		.style-six-wrap {
			display: flex;
		}

		.coupon {
			margin-right: 20rpx;
			display: flex;
			flex-direction: column;
			align-items: center;
			justify-content: center;
			width: 208rpx;
			height: 270rpx;
			background-repeat: no-repeat;
			background-size: contain;
			box-sizing: border-box;
			position: relative;
			flex-shrink: 0;

			&::after {
				content: '';
				position: absolute;
				left: 26rpx;
				right: 26rpx;
				bottom: 70rpx;
				border-bottom: 2rpx dashed #999;
			}

			.btn {
				position: absolute;
				height: 36rpx;
				min-width: 62rpx;
				font-size: 24rpx;
				top: 20rpx;
				right: 0;
				display: flex;
				justify-content: center;
				align-items: center;
				line-height: 1;
				padding: 0 4rpx 0 6rpx;

				.btn-content {
					display: inline-block;
					line-height: 1;
					transform: scale(0.8);
				}
			}

			.coupon-content {
				display: flex;
				flex-direction: column;
				justify-content: space-between;
				align-items: center;
				font-size: 24rpx;
				height: 200rpx;

				.price-wrap {
					margin-top: 60rpx;
				}

				.price {
					font-size: 60rpx;
					font-weight: bold;
					line-height: 1;
				}

				.text {
					position: relative;
					color: #401d00;
					margin-bottom: 16rpx;

					&::after {
						content: '';
						position: absolute;
						top: 50%;
						transform: translateY(-50%);
						width: 20rpx;
						right: -26rpx;
						border-bottom: 1px solid #401d00;
					}

					&::before {
						content: '';
						position: absolute;
						top: 50%;
						transform: translateY(-50%);
						width: 20rpx;
						left: -26rpx;
						border-bottom: 2rpx solid #401d00;
					}
				}

				.unit {
					line-height: 1;
					margin-top: 13px;
					color: #222;
					display: inline-block;
					transform: scale(0.8);
				}
			}

			.limit {
				display: flex;
				align-items: center;
				justify-content: center;
				height: 70rpx;
				font-size: 24rpx;
				font-weight: bold;
			}

			&.coupon-null {
				.limit {
					color: #333;
				}

				.unit {
					color: #6f5640;
				}

				.text {
					color: #6f5640;
				}

				.coupon-content .text::before,
				.coupon-content .text::after {
					border-color: #6f5640;
				}

				.coupon-content .price {
					color: #999;
					font-weight: inherit;
					border: 4rpx solid #999;
					border-radius: 50%;
					height: 42rpx;
					width: 42rpx;
					line-height: 38rpx;
					text-align: center;
					font-size: 50rpx;
					margin-top: 60rpx;
				}
			}
		}
	}

	//风格七
	/deep/ .coupon-style-seven {
		.wrap {
			display: flex;
		}

		.coupon-list {
			margin-right: 16rpx;
			flex-shrink: 0;
			width: 608rpx;
			height: 160rpx;
			position: relative;
			padding: 10rpx 0;

			image {
				width: 100%;
				height: 100%;
			}

			.coupon {
				width: 100%;
				height: 100%;
				display: flex;
				align-items: center;
				justify-content: space-between;

				.coupon-info {
					min-width: 25%;
					max-width: 30%;
					padding: 0;

					.coupon-num {
						margin: 0;
						overflow: hidden;
						white-space: nowrap;
						text-overflow: ellipsis;
						width: 100%;

						.coupon-size {
							font-size: 60rpx;
							font-weight: bold;
							margin-right: 4rpx;
						}
					}
				}

				.coupon-line {
					border-left: 1rpx dashed #fd463e;
					height: 65%;
				}

				.coupon-type {
					.coupon-name {
						display: block;
						font-size: 32rpx;
						font-weight: bold;
						width: 280rpx;
						overflow: hidden;
						white-space: nowrap;
						text-overflow: ellipsis;
					}

					.coupon-least {
						font-size: $font-size-tag;
						color: #999;
					}
				}

				.coupon-get {
					padding: 4rpx 40rpx;
					width: 130rpx;
					font-size: $font-size-tag;
					box-sizing: border-box;
					flex-shrink: 0;
				}
			}
		}
	}

	/deep/.uni-scroll-view ::-webkit-scrollbar {
		/* 隐藏滚动条，但依旧具备可以滚动的功能 */
		display: none;
		width: 0;
		height: 0;
		color: transparent;
		background: transparent;
	}

	/deep/::-webkit-scrollbar {
		display: none;
		width: 0;
		height: 0;
		color: transparent;
		background: transparent;
	}
</style>
<style scoped>
	.coupon-all>>>.uni-scroll-view::-webkit-scrollbar {
		display: none;
	}
</style>