<template>
  <div>
    <div style="height: 100vh;overflow: auto">
      <div class="group-index" ref="index" v-if="groupDetail" style="min-height: 120vh">
        <swiper :options="swiperOption" class="banner" ref="mySwiper">
          <swiper-slide
            v-if="groupDetail.goods_desc"
            v-for="(data,index) in groupDetail.goods_desc.img"
            :key="index"
          >
            <img :src="data.url" />
          </swiper-slide>
          <div class="swiper-pagination" slot="pagination"></div>
        </swiper>
        <!-- <img
          :src="refIcon"
          class="ref-icon shake"
          @click="goToActivity();buttonClick('功能','生成海报')"
        v-if="groupDetail.is_auth_user === 1&&!closeStatus">-->
        <img
          :src="couponTipImg"
          class="ref-icon shake"
          @click="couponPopup=true"
          v-if="closeStatus"/>
        <div class="head">
          <div class="title">{{groupDetail.name}}</div>
          <span class="detail">{{groupDetail.goods_desc.desc}}</span>
          <div class="price">
            <span class="price-content">¥{{groupDetail.current_price/100}}元</span>
            <span
              style="text-decoration:line-through;color: #bbb;font-size: 14px"
              v-if="groupDetail.goods_type === 1 && groupDetail.original_price > groupDetail.current_price"
            >¥{{groupDetail.original_price/100}}</span>
          </div>
        </div>
        <div class="head-icon">
          <img
            class="icon"
            v-for="(data,index) in groupDetail.header_url"
            v-if="index<5"
            :src="data"
            :key="data"/>
          <img class="more" :src="moreUrl" />
          <span class="has">已售{{groupDetail.has_group_num}}件</span>
        </div>
        <div
          class="welfare"
          v-if="groupDetail.head_welfare && groupDetail.head_welfare !== '' && groupDetail.head_welfare !== null"
        >团长福利:{{groupDetail.head_welfare}}</div>
        <div class="main-detail">
          <div class="tab-content">
            <div
              :class="{'tab-btn':true,active:tabType}"
              @click="tabType=true;buttonClick('展示','图文详情')"
            >图文详情</div>
            <div
              :class="{'tab-btn':true,active:!tabType}"
              @click="tabType=false;buttonClick('展示','购买须知')"
            >购买须知</div>
          </div>
          <div v-if="tabType" class="detail">
            <div v-html="groupDetail.desc.detail" v-lazy-container="{ selector: 'img' }" class="detail-content"></div>
          </div>
          <div v-if="!tabType" class="qa-block">
            <div class="qa-content qaDetail" v-html="groupDetail.desc.qa"></div>
          </div>
        </div>
        <div v-if="groupDetail.desc.customer_service[0]">
          <mt-popup v-model="popupVisible">
            <div class="pop-block">
              <img v-if="popType" :src="qrCode" />
              <img v-if="!popType" :src="groupDetail.desc.customer_service[0].url" />
              <div>
                <span v-if="popType" v-html="popcontentW"></span>
                <span v-if="!popType" v-html="popcontentT"></span>
              </div>
              <img class="close" :src="closeUrl" @click="popupVisible = false" />
            </div>
          </mt-popup>
        </div>
        <mt-popup v-model="popFill" :closeOnClickModal="false">
          <div class="pop-fill">
            您好,本次拼团已经结束。您可以选择重新开团或单独购买
            <div class="btn-block">
              <div class="btn" @click="rePlay()">重新开团</div>
            </div>
          </div>
        </mt-popup>
        <!-- 优惠券弹窗 -->
        <mt-popup
          class="couponPop"
          popup-transition="popup-fade"
          v-model="couponPopup"
          :closeOnClickModal="false"
        >
          <div class="box">
            <img class="bg" :src="couponBg" alt />
            <img class="closeImg" @click="closeCouponPop" :src="closeImg" alt />
            <div class="content">
              <p>您的好友<span class="name">{{shareName}}</span>赠您</p>
              <img class="btn couponBtn" ref="couponBtn" @click="getCoupon" :src="couponBtn" alt />
            </div>
          </div>
        </mt-popup>
        <mt-popup
          v-model="refVisible"
          style="background-color: transparent;margin-top: -80vw;margin-left: -40vw;transform: none"
        >
          <div
            :style="{backgroundImage:`url(${refBg})`}"
            class="ref-content"
            v-if="groupDetail.share_desc.refImg && groupDetail.share_desc.refImg.length > 0"
          >
            <div class="tips">长按保存图片</div>
          </div>
          <div
            class="img-cvs"
            id="capture"
            ref="imageWrapper"
            v-if="groupDetail.share_desc.refImg && groupDetail.share_desc.refImg.length > 0"
          >
            <img :src="groupDetail.share_desc.refImg[0].url" />
            <div id="qrcode" class="qrcode"></div>
          </div>
          <img :src="dataURL" class="cvs-img" />
        </mt-popup>
        <div v-if="groupDetail.status === 1 && invite_code_f">
          <div v-if="couponShadow" class="couponBox">您有{{couponInfo.money/100}}元优惠券可使用</div>
          <footer v-if="groupDetail.goods_type && groupDetail.goods_type === 2">
            <div
              class="btn"
              @click="showTeacher();buttonClick('老师','客服')"
              v-if="groupDetail.desc.customer_service[0]"
            >
              <img :src="weChatIcon" />
            </div>
            <div class="btn big price full" v-if="groupData && groupData.status !== 0">
              <div v-if="groupId">该团已满</div>
            </div>
            <div
              :class=" groupData && groupData.status !== 0 ? 'btn big price':'btn big'"
              @click="groupPay(0);buttonClick('购买按钮',groupId ? '重新开团':'单独购买')"
              :id="groupId ? 'reGroup':'singleBuy'"
            >
              <span v-if="!groupId">¥{{groupDetail.original_price/100}}</span>
              <div v-if="!groupId">单独购</div>
              <span v-if="groupId">¥{{groupDetail.current_price/100}}</span>
              <div v-if="groupId">重新开团</div>
            </div>
            <div
              class="btn big price"
              @click="groupPay(1);buttonClick('购买按钮',groupId ? '立即参团':'创建团')"
              :id="groupId ? 'joinGroup':'newGroup'"
              v-if="!groupData || groupData.status === 0"
            >
              <span>¥{{groupDetail.current_price/100}}</span>
              <div v-if="!groupId">{{groupDetail.desc.group_number}}人团</div>
              <div v-if="groupId">立即参团</div>
            </div>
          </footer>
          <footer v-if="groupDetail.goods_type && groupDetail.goods_type !== 2">
            <div
              class="btn"
              @click="showTeacher();buttonClick('功能','客服')"
              v-if="groupDetail.desc.customer_service[0]"
            >
              <img :src="weChatIcon" />
            </div>
            <div
              class="btn big price"
              v-if="groupDetail.current_price>0"
              @click="groupPay(1);buttonClick('购买按钮','直购购买')"
            >
              <span>¥{{groupDetail.current_price/100}}</span>
              <div>立即购买</div>
            </div>
            <div
              class="btn big price"
              v-if="groupDetail.current_price==0"
              @click="groupPay(1);buttonClick('购买按钮','直购购买')"
            >
              <!-- <span>¥{{groupDetail.current_price/100}}</span> -->
              <div class="free">免费领</div>
            </div>
          </footer>
        </div>
        <div v-if="groupDetail.goods_type==4" class="couponBox">代金券自领取成功后{{groupDetail.goods_desc.time_limit}}小时有效</div>
        <div v-if="groupDetail.status !== 1">
          <footer>
            <div style="color: #888">已售罄</div>
          </footer>
        </div>
      </div>
    </div>
    <login-page
      :bind-mobile="bindMobile"
      v-if="groupDetail"
      :groupDetail="groupDetail"
      @goToBuyPage="goToBuyPage"
    ></login-page>
  </div>
</template>

<script>
  import "swiper/dist/css/swiper.css";
  import { swiper, swiperSlide } from "vue-awesome-swiper";
  import { Popup } from "mint-ui";
  import comment from "../../util/common";
  import { Toast } from "vant";
  import {
    getwechatParam,
    getGoodsDetailApi,
    bindMobileApi,
    getUserDetailApi,
    sendMobileCodeApi,
    getGroupDetailApi,
    getStatusWechatApi,
    getCouponListApi,
    getAutomationCouponApi,
    getInvitedCouponApi,
    getReceiveCouponApi,
    getPassGoodInfoApi
  } from "../../service/api";
  import refBg from "../../assets/refBg.png";
  import moreUrl from "../../assets/moreIcon.png";
  import weChatIcon from "../../assets/wechatIcon.png";
  import weChatQrUrl from "../../assets/weChatCode.png";
  import loginPage from "./login";
  import closeUrl from "../../assets/closemy.png";
  import refIcon from "../../assets/refIcon.png";
  import couponBtn from "../../assets/activity/btn@2x.png";
  import couponBg from "../../assets/activity/popup@2x.png";
  import closeImg from "../../assets/activity/close.png";
  import couponTip from "../../assets/activity/popup_btn.png";
  import common from '../../util/common';
  export default {
    name: "index",
    components: {
      swiper,
      swiperSlide,
      loginPage,
      [Popup.name]: Popup
    },
    data() {
      return {
        refBg: refBg,
        bindMobile: {
          show: false,
          mobile: "",
          img_code: "",
          verify_code: "",
          flag: false
        },
        join: false,
        popType: false,
        popFill: false,
        popupVisible: false,
        refVisible: false,
        tabType: true,
        popcontentW: `您已经购买过课程,无需重复<br>购买,您可以添加微信公众号了解更多`,
        popcontentT: `为了更好地为您进行课程服务,<br>请扫码添加老师二维码`,
        qrCode: weChatQrUrl,
        weChatIcon: weChatIcon,
        closeUrl: closeUrl,
        moreUrl: moreUrl,
        refIcon: refIcon,
        swiperOption: {
          pagination: {
            el: ".swiper-pagination"
          }
        },
        QRCodeB: false,
        payFlag: true,
        dataURL: null,
        user_id: null,
        invite_code_f: true,
        invite_code: "",
        this_code: "",
        shopId: "",
        buyType: "",
        groupId: null,
        groupDetail: false,
        groupData: null,
        couponInfo: {},
        couponShadow: false,
        groupSuc: "",
        couponBg: couponBg,
        couponBtn: couponBtn,
        couponPopup: false,
        shareName: this.$route.query.nickname,
        closeImg: closeImg,
        couponTipImg: couponTip,
        closeStatus: false
      };
    },
    mounted() {
      this.getDetail();
      // document.body.addEventListener('focusout', () => { //软键盘关闭事件
      // document.documentElement.scrollTop = 0
      // document.body.scrollTop = 0
      //   console.log("键盘收起")
      // })
    },
    methods: {
      getCoupon() {
        this.$sa.quick('trackHeatMap',this.$refs.couponBtn)
        getReceiveCouponApi(this.$route.query.shopId).then(res => {
          this.couponShadow = true;
          this.couponPopup = false;
          this.closeStatus = false;
          Toast("领取成功");
        });
      },
      closeCouponPop() {
        this.couponPopup = false;
        this.closeStatus = true;
      },
      goToBuyPage(type) {
        this.buyType = type
        let query = { shopId: this.shopId, invite_code: this.invite_code };
        let invite = this.invite_code;

        if (this.groupId) {
          query.group_order_id = this.groupId;
        }
        console.log(this.buyType,333);
        if (this.buyType === 0 && !this.groupId) {
          query.type = "single";
          this.buyType = "single";
        } else if (this.buyType === 0 && this.groupId) {
          // 已购买生成团
          this.$router.push({
            name: "buy",
            query: {
              shopId: this.shopId,
              invite_code: this.invite_code,
              type: ""
            }
          });
          // debugger
          // window.location.reload();
          return false;
        } else {
          query.type = "";
        }
        if (localStorage.getItem("gdt_vid")) {
          query.gdt_vid = localStorage.getItem("gdt_vid");
        }

        if (window.location.href.indexOf("cct_user_id") > -1) {
          // console.log(comment.getParamhref())
          // console.log(comment.getUrlParam())
          query.cct_user_id = comment.getParamhref().cct_user_id;
        }
        this.$sa.track("buyCourse", {
          buyType:
              this.groupDetail.goods_type === 2 && this.buyType === 0
                  ? "团购"
                  : "直购",
          goodsID: this.shopId,
          salesType: invite ? invite.split("-")[1] : "null",
          salesID: invite ? Number(invite.split("-")[2]) : 0,
          gdt_vid: comment.getUrlParam().gdt_vid,
          cct_user_id: comment.getUrlParam().cct_user_id,
          redeem_code: comment.getUrlParam().redeem_code,
        });
        // debugger
        this.$router.push({
          name: "buy",
          query: query
        });
        this.$nextTick(() => {
          this.payFlag = true;
        });
      },
      goToActivity() {
        let query = {};
        if (window.location.href.indexOf("shopId") > -1) {
          query.shopId = this.$route.query.shopId;
        }
        if (window.location.href.indexOf("groupId") > -1) {
          query.groupId = this.$route.query.groupId;
        }
        if (window.location.href.indexOf("invite_code") > -1) {
          query.invite_code = this.$route.query.invite_code;
        }
        this.$router.push({ name: "activity", query: query });
      },
      enableShare: function(option) {
        let that = this;
        getwechatParam({
          api_list: "onMenuShareAppMessage,onMenuShareTimeline",
          url: window.location.href.split("#")[0]
        }).then(wechatRes => {
          wx.config({
            debug: false,
            appId: wechatRes.appId,
            timestamp: parseInt(wechatRes.timestamp),
            nonceStr: wechatRes.nonceStr,
            signature: wechatRes.signature,
            jsApiList: wechatRes.jsApiList
          });
          wx.ready(function() {
            wx.onMenuShareTimeline({
              title: option.product_title, // 分享标题
              desc: option.desc, // 分享描述
              link: option.shareUrl, // 分享链接
              imgUrl:
                  option.shareIcon ||
                  "https://cdn.singsingenglish.com/singsing/recommend/logo-refer.png", // 分享图标
              success: function() {
                console.log("分享成功");
              },
              cancel: function() {
                // alert("失败")
                console.log("分享失败");
              }
            });
            wx.onMenuShareAppMessage({
              title: option.product_title, // 分享标题
              desc: option.desc, // 分享描述
              link: option.shareUrl, // 分享链接
              imgUrl:
                  option.shareIcon ||
                  "https://cdn.singsingenglish.com/singsing/recommend/logo-refer.png", // 分享图标
              success: function() {},
              cancel: function() {}
            });
          });
        });
      },
      handleInviteCode() {
        if (!this.invite_code) {
          this.this_code = "CC-USER-" + this.user_id;
        } else {
          let invite_code = this.invite_code.split("-");
          if (
              invite_code.length > 2 &&
              (invite_code[1] === "TEACHER" || invite_code[1] === "XXMM")
          ) {
            invite_code[1] = "USER";
          }
          let code = `${invite_code[0]}-${invite_code[1]}`;
          this.this_code = `${code}-${this.user_id}`;
        }
      },
      onShare: function(type) {
        this.handleInviteCode();
        let URL = `${process.env.BUY_URL}shopId=${this.shopId}&invite_code=${this.this_code}`;
        this.enableShare({
          product_title: this.groupDetail.share_desc.title,
          desc: this.groupDetail.share_desc.content,
          shareIcon: this.groupDetail.share_desc.img.length !== 0 ? this.groupDetail.share_desc.img[0].url : '',
          shareUrl: URL
        });
      },
      toDataURLBase64(src, callback) {
        let xhttp = new XMLHttpRequest();
        xhttp.onload = function() {
          let fileReader = new FileReader();
          fileReader.onloadend = function() {
            callback(fileReader.result);
          };
          fileReader.readAsDataURL(xhttp.response);
        };
        xhttp.responseType = "blob";
        xhttp.open("GET", src, true);
        xhttp.send();
      },
      // 初始化
      getDetail() {
        if (window.location.href.indexOf("invite_code") > -1) {
          this.invite_code = this.$route.query.invite_code;
          let l = this.invite_code.split("-").length;
          console.log(l,470)
          if (l === 2) {
            this.invite_code_f = false;
          }
        }
        // if(window.location.href.indexOf('gdt_vid')> -1){
        //   comment.getUrlParam().gdt_vid
        //   console.log(comment.getUrlParam().gdt_vid)
        // }
        if (this.$route.query.invite_code) {
          this.invite_code = this.$route.query.invite_code;
        }

        if (window.location.href.indexOf("shopId") > -1) {
          this.shopId = this.$route.query.shopId;
          getPassGoodInfoApi(this.shopId).then(res => {
            res.desc = JSON.parse(res.desc);
            res.goods_desc = JSON.parse(res.goods_desc);
            res.share_desc = JSON.parse(res.share_desc);
            //商品下架跳转绑定商品
            if (res.status === 2 && res.bind_goods_id) {
              this.$router.push({
                name: "buyDetail",
                query: {
                  shopId: res.bind_goods_id,
                  invite_code: this.invite_code
                }
              });
              this.getDetail();
              return;
            }
            Toast.clear()
            this.groupDetail = res;
            sessionStorage.setItem('groupDetail', res)
            this.groupDetail.desc.detail = comment.letslazyload(this.groupDetail.desc.detail)
            for (let i = 0; i < this.groupDetail.header_url.length; i++) {
              this.groupDetail.header_url[i] = this.groupDetail.header_url[
                  i
                  ].replace("http://", "https://");
            }
            this.groupDetail.desc.detail = this.groupDetail.desc.detail.replace(
                /http:\/\//g,
                "https://"
            );
            this.groupDetail.desc.qa = this.groupDetail.desc.qa.replace(
                /http:\/\//g,
                "https://"
            );
            if (
                this.groupDetail.share_desc.refImg &&
                this.groupDetail.share_desc.refImg.length === 1
            ) {
              this.groupDetail.share_desc.refImg[0].url = this.groupDetail.share_desc.refImg[0].url.replace(
                  "http://",
                  "https://"
              );
              let _this = this;
              this.toDataURLBase64(
                  this.groupDetail.share_desc.refImg[0].url,
                  function(avatarUrl) {
                    _this.groupDetail.share_desc.refImg[0].url = avatarUrl;
                  }
              );
            }
            let invite = this.invite_code;
            this.$sa.track("viewCourseDetail190726", {
              goodsID: this.groupDetail.id.toString(),
              courseCate:
                  this.groupDetail.course_type === 1 ? "体验课" : "正式课",
              lessonNumber: this.groupDetail.watch_num,
              goodsName: this.groupDetail.name,
              coursePrice: Number(this.groupDetail.original_price / 100),
              discountPrice: Number(this.groupDetail.current_price / 100),
              courseID: this.groupDetail.course_id,
              courseName: "",
              salesType: invite ? invite.split("-")[1] : "null",
              salesID: invite ? Number(invite.split("-")[2]) : 0,
              gdt_vid: comment.getUrlParam().gdt_vid,
              cct_user_id: comment.getUrlParam().cct_user_id,
              redeem_code: comment.getUrlParam().redeem_code,
            });
            if (this.groupDetail.goods_type === 2) {
              if (localStorage.getItem("cc_token")) {
                getStatusWechatApi({ goods_id: this.shopId }).then(res => {
                  if (res.out_trade_no) {
                    if (res.buy_type === 1) {
                      this.$router.push({
                        name: "buySuccess",
                        query: { out_trade_no: res.out_trade_no, shopId: this.shopId }
                      });
                    } else {
                      this.$router.push({
                        name: "success",
                        query: { out_trade_no: res.out_trade_no, shopId: this.shopId  }
                      });
                    }
                  }
                });
              }
              if (window.location.href.indexOf("groupId") > -1) {
                this.groupId = this.$route.query.groupId;
                getGroupDetailApi(this.groupId).then(res => {
                  this.groupData = res;
                });
                this.onShare(0);
              } else {
                this.onShare(1);
              }
            } else {
              this.onShare(1);
              this.handleInviteCode();
            }
            console.log(sessionStorage.getItem('clickTag'), 979876896)
            if(sessionStorage.getItem('clickTag')){
              console.log(JSON.parse(localStorage.getItem("userDesc")))
              if (!JSON.parse(localStorage.getItem("userDesc")).mobile || JSON.parse(localStorage.getItem("userDesc")).mobile === "") {
                this.bindMobile.flag = sessionStorage.getItem('type');
                this.bindMobile.show = true;
                setTimeout(() => {
                  this.$sa.track("ViewRegisterpage", {});
                }, 1000);
              } else {
                this.goToBuyPage();
              }
              sessionStorage.setItem('clickTag','')
            }
            //   getInvitedCouponApi(this.$route.query.shopId).then(res => {
            //   if (res.code && res.code == 100) {
            //     if (res.data.flag == 0) {
            //       this.couponShadow = true;
            //       this.couponInfo.money = res.data.original_price;
            //       console.log(this.couponInfo);
            //     }
            //   } else if (this.$route.query.invite_code&&this.groupDetail.is_auth_user==1) {
            //     this.couponInfo = res;
            //     this.couponInfo.money = res.original_price;
            //     this.couponPopup = true;
            //     this.$sa.track('ViewShareCouponWindow',{});
            //     // res.original_price
            //   }
            // });
          });
        }
        let userCourse = JSON.parse(localStorage.getItem("userCourse"));
        // console.log(localStorage.getItem("userDesc"))
        // this.user_id = JSON.parse(localStorage.getItem("userDesc")).user_id;

        if (userCourse && !userCourse.periods_list) {
          // 优惠券
          getCouponListApi(this.$route.query.shopId).then(res => {
            if (res.length) {
              this.couponInfo = res[0];
              this.couponShadow = true;
            }
            console.log(this.couponInfo);
          });
        }
      },
      showTeacher() {
        this.popType = false;
        this.popupVisible = true;
      },
      buttonClick(buttonType, buttonName) {
        this.$sa.track("buttonClick", {
          tabTitle: "商品",
          moduleTitle: "详情页",
          buttonType: buttonType,
          buttonName: buttonName
        });
      },
      groupPay(type, status) {
        if (status) {
          this.groupSuc = status;
          // console.log(status)
        }
        getUserDetailApi().then(res => {
          // debugger
          localStorage.setItem('userDesc', JSON.stringify(res));
          if (!JSON.parse(localStorage.getItem("userDesc")).mobile || JSON.parse(localStorage.getItem("userDesc")).mobile === "") {
            this.bindMobile.flag = type;
            this.bindMobile.show = true;
            setTimeout(() => {
              this.$sa.track("ViewRegisterpage", {});
            }, 1000);
          } else {
            this.goToBuyPage();
          }
        }).catch((res) => {
        });
        /*if (!JSON.parse(localStorage.getItem("userDesc")).mobile || JSON.parse(localStorage.getItem("userDesc")).mobile === "") {
          this.bindMobile.flag = type;
          this.bindMobile.show = true;
          setTimeout(() => {
            this.$sa.track("ViewRegisterpage", {});
          }, 1000);
        } else {
          this.goToBuyPage(type);
        }*/
      }
    }
  };
</script>
<style>
  img,
  video {
    max-width: 100%;
  }
  @-webkit-keyframes swing {
    10% {
      transform: rotate(15deg);
    }
    20% {
      transform: rotate(-10deg);
    }
    30% {
      transform: rotate(5deg);
    }
    40% {
      transform: rotate(-5deg);
    }
    50%,
    100% {
      transform: rotate(0deg);
    }
  }
  .shake {
    -webkit-animation-name: swing;
    -webkit-animation-duration: 0.8s;
    -webkit-transform-origin: 50% 50%;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
  }
</style>
<style scoped lang="less">
  @import "../../util/public";
  .child-view {
    // position: relative;
  }
  .couponPop {
    background: transparent;
    .box {
      width: 319 * @toVw;
      .bg {
        width: 100%;
      }
      .content {
        position: absolute;
        top: 170 * @toVw;
        padding: 0 40 * @toVw;
        p {
          color: #ffefa8;
          font-size: 22 * @toVw;
        }
        .btn {
          margin-top: 150 * @toVw;
        }
        .name{display: inline-block;max-width: 90 * @toVw;vertical-align: bottom;
          overflow: hidden;text-overflow:ellipsis;white-space: nowrap;}
      }
      .closeImg {
        position: absolute;
        top: -26 * @toVw;
        right: 10 * @toVw;
        width: 27 * @toVw;
      }
    }
  }
  .img-cvs {
    position: absolute;
    width: 233 * @toVw;
    top: 176 * @toVw;
    left: 29 * @toVw;
    .qrcode {
      position: absolute;
      top: 305 * @toVw;
      left: 15 * @toVw;
      width: 60 * @toVw;
    }
  }
  .cvs-img {
    position: absolute;
    width: 233 * @toVw;
    top: 176 * @toVw;
    left: 29 * @toVw;
    z-index: 10;
  }
  .ref-content {
    width: 299 * @toVw;
    height: 564 * @toVw;
    background-size: 100% 100%;
    position: relative;
    .tips {
      font-size: 12px;
      position: absolute;
      color: #666;
      right: 10 * @toVw;
      top: 250 * @toVw;
      width: 1em;
    }
  }
  .group-index {
    z-index: 2;
    padding-bottom: toVw(150);
    background: #f0f0f0;
    font-family: PingFangSC-Regular;
    .ref-icon {
      position: fixed;
      height: 100/375 * 90vw;
      top: 70vw;
      z-index: 6;
      right: 10 * 100 /375vw;
      /*border-radius: 100px;*/
    }
    .banner {
      background: white;
      img {
        width: 100%;
      }
    }
    .head {
      background: white;
      margin-bottom: 10px;
      padding: 20/7.5vw;
      .title {
        font-size: 20px;
        color: #333333;
        margin-bottom: 15/7.5vw;
      }
      .detail {
        font-size: 12px;
        line-height: 1.6em;
        color: #333333;
        display: block;
        margin-bottom: 15/7.5vw;
      }
      .price {
        .price-content {
          font-family: PingFang-SC-Bold;
          font-size: 20px;
          color: #f83534;
        }
      }
    }
    .head-icon {
      padding: 20/7.5vw;
      background: white;
      margin-bottom: 2px;
      .icon {
        display: inline-block;
        width: 60/7.5vw;
        margin: 0 10/7.5vw;
        border-radius: 1000px;
        vertical-align: middle;
      }
      .more {
        width: 50/7.5vw;
        vertical-align: middle;
      }
      .has {
        font-size: 12px;
        line-height: 60/7.5vw;
        color: #999999;
        float: right;
      }
    }
    .welfare {
      background: white;
      padding: 10/7.5vw;
      font-size: 12px;
      text-align: center;
      color: #999999;
      margin-bottom: 20px;
    }
    .main-detail {
      padding: 20/7.5vw;
      background: white;
      .tab-content {
        border-radius: 9px;
        border: 1px solid #f63539;
        &:after {
          content: "";
          display: block;
          clear: both;
        }
        .tab-btn {
          width: 50%;
          float: left;
          height: 80/7.5vw;
          line-height: 80/7.5vw;
          text-align: center;
          color: #f63539;
          border-radius: 9px;
          &.active {
            background: #f63539;
            color: white;
          }
        }
      }
      .qa-block {
        padding-bottom: 50 * @toVw;
        img,
        video {
          max-width: 100%;
        }
        .qa-content {
          margin: toVw(10) 0;
          .qa-q {
            font-size: 16px;
            color: #666666;
          }
          .qa-a {
            font-size: 16px;
            color: #333333;
          }
        }
      }
      .detail {
        padding: 20/7.5vw 0 150/7.5vw 0;
        .detail-content {
          img,
          video {
            max-width: 100%;
          }
        }
      }
    }
    .couponBox {
      position: fixed;
      width: 100%;
      height: 25 * @toVw;
      background: #ffe83c;
      bottom: 70 * @toVw;
      text-align: center;
      color: #ff4d4f;
      line-height: 25 * @toVw;
      font-size: 12px;
    }
    footer {
      position: absolute;
      position: fixed;
      bottom: 0;
      width: 97.7vw;
      height: 120/7.5vw;
      display: -webkit-box; // OLD - iOS 6-, Safari 3.1-6 //
      display: -moz-box; // OLD - Firefox 19- (buggy but mostly works) //
      display: -ms-flexbox; // TWEENER - IE 10 //
      display: -webkit-flex; // NEW - Chrome //
      display: flex; // NEW, Spec - Opera 12.1, Firefox 20+ //
      background: white;
      padding: 1.3vw;
      border-top: 1px solid #d8d8d8;
      justify-content: space-around;
      .btn {
        border: 1px solid #cccccc;
        border-radius: 8px;
        width: 0;
        flex-grow: 2;
        text-align: center;
        padding: 15/7.5vw 0;
        margin: 0 10/7.5vw;
        line-height: 1.4em;
        font-size: 16px;
        color: #666666;
        .free {
          line-height: 120/9vw;
        }
        span {
          display: block;
          font-size: 20px;
          font-family: PingFang-SC-Bold;
        }
        img {
          width: 50/7.5vw;
        }
        &.big {
          padding: 5/7.5vw 0;
          flex-grow: 5;
          &.price {
            background: #f83534;
            border-color: #f83534;
            color: white;
            &.full {
              background: #dddddd;
              border-color: #dddddd;
              line-height: 50 * @toVw;
            }
          }
        }
      }
    }
    .pop-block {
      padding: 40/7.5vw 10/7.5vw;
      width: 600/7.5vw;
      text-align: center;
      font-size: 14px;
      color: #666666;
      position: relative;
      img {
        width: 250/7.5vw;
      }
      .close {
        width: 50/7.5vw;
        position: absolute;
        top: 20/7.5vw;
        right: 20/7.5vw;
      }
    }

    .pop-fill {
      width: 500/7.5vw;
      padding: 30/7.5vw 30/7.5vw;
      font-size: 16px;
      color: #333333;
      .btn-block {
        margin-top: 30/7.5vw;
        &:after {
          content: "";
          display: block;
          clear: both;
        }
        .btn {
          float: right;
          background: #f83534;
          font-size: 14px;
          padding: 5/7.5vw 10/7.5vw;
          border-radius: 8px;
          color: #ffffff;
        }
      }
    }
  }
</style>