<template>
  <div :key="timer" class="sigPrizeNew" :style="styleDataNew[keyData.signPrizeDiv]" ref="sigPrizeNew"
    @click.stop="styleClick('click', 'sigPrizeNew')" @mousemove.stop="styleClick('mousemove', 'sigPrizeNew')"
    @mouseout.stop="styleClick('mouseout')">
    <div>
      <!-- 活动规则 -->
      <div v-lz-click="'18'" @click="operClick(1)" v-if="datas.isSign && styleDataNew.imageSignStyle">
        <img :style="styleDataNew.imageSignStyle" :src="styleDataNew.imageSignStyle.imageUrl" />
      </div>
      <!-- 我的奖品 -->
      <div @click="operClick(2)" v-lz-click="'19'" v-if="datas.isPrize && styleDataNew.imagePrizeStyle">
        <img :style="styleDataNew.imagePrizeStyle" :src="styleDataNew.imagePrizeStyle.imageUrl" />
      </div>
      <!-- 邀请好友 -->
      <div @click="operClick(4)" v-if="datas.shareBtn && styleDataNew.imageSignStyle">
        <img :style="styleDataNew.shareFriendStyle" :src="styleDataNew.shareFriendStyle.imageUrl" />
      </div>

      <div @click="goShop" v-lz-click="'4'" v-if="datas.shopBtn && styleDataNew.imageShopStyle">
        <img :style="styleDataNew.imageShopStyle" :src="styleDataNew.imageShopStyle.imageUrl" />
      </div>

      <div v-lz-click="'7'" @click="operClick(7)" v-if="datas.myOrder && styleDataNew.imageOrderStyle">
        <img :style="styleDataNew.imageOrderStyle" :src="styleDataNew.imageOrderStyle.imageUrl" />
      </div>
    </div>
  </div>
</template>

<script>
import {
  MyPrizePopComService,
  AcRulePopComService,
  ShareFriendPopComService,
  LuckDrawRecordPopComService,
  MyOrderPrizePopComService,
  GiftPopComService,
} from "../../../util/comCreate.js";
import {
  StepMyOrderPopService
} from "../../../util/hdzxtcomCreate.js";
import { goToShopPage } from "../../../util/tools.js";
import store from "../../../store/store";
import { Toast } from "vant";
import apis1 from '../../../util/apis1.js'
let { storeGoodsPoint } = apis1
export default {
  props: [
    "datas",
    "styleData",
    "keyData",
    "isTemplate",
    "templateData",
    "modifyContent",
    "isWebClick",
  ],
  data() {
    return {
      timer: new Date().getTime(),
      isShowImg: true, // 活动规则是 按钮图片 false 不显示图片
      isShow: true,
      isShowImg2: false,
      isEditAddress: true, //是否可以编辑地址 默认可以编辑地址
      isAlLookAddress: false, //是否可以一直查看地址 默认不可以一直查看
      isShowLuckDrawRecord: false, // 积分猜大小 游戏记录
      styleDataNew: {},
      styleDataOld: {},
      myPrizePopComData: {
        styleData: {},
        datas: {},
        keyData: {
          prizeType: "prizeType",
          prizeUrl: "showImg",
          prizeName: "prizeName",
          prizeDate: "dayTime",
          prizeStatus: "activityType",
          realName: "realName",
          recevierPhone: "mobile",
          logisticsJson: "logisticsJson",
          nickName: "nickName",
        },
      },
      acRulePopComData: {
        styleData: {},
        datas: {},
        keyData: {},
      },
      goToShopList: [],
      shareFlag: false,
      shareUserId: "",
      goToshopImg: true,
      LogoUrl: null,
      shopFlag: false, // true 不需要从新请求API
      shopNameFlag: false,
    };
  },

  created() {
    //深拷贝重置需要
    this.styleDataOld = JSON.parse(JSON.stringify(this.styleData));
    //如果父组件传递过来的样式数据则使用样式数据否则使用默认数据
    this.styleDataNew = this.styleData; //父组件传递过来的样式数据
    this.isShow = this.datas.isShowPrize;
    this.isShowImg = this.datas.isShowImg == false ? false : true;
    this.isShowImg2 = this.datas.isShowImg2 == false ? false : true;
    this.isEditAddress = this.datas.isEditAddress == false ? false : true;
    this.isAlLookAddress = this.datas.isAlLookAddress == true ? true : false;
    this.isShowLuckDrawRecord =
      this.datas.isShowLuckDrawRecord == true ? true : false;
    this.publicData.$on("showMyPrize", (datas) => {
      if (datas == true) {
        //显示我的奖品组件
        this.isShow = true;
        if (this.isTemplate == true) {
          this.initData(this.templateData);
        } else {
          this.initData();
        }
      } else {
        this.isShow = false;
      }
    });
    this.initData();
  },

  methods: {
    //点击可修改位置的方法
    styleClick(type, refName) {
      if (this.isWebClick) {
        //传值给B端
        let byValue = {
          modifyContent: this.modifyContent,
          refName: refName,
          styleData: this.styleDataNew,
          styleDataOld: this.styleDataOld,
          c_this: this,
        };
        this.$emit("opertaionCom", type, byValue);
      }
    },
    initData() {
      var datas = this.templateData;
      if (this.isTemplate == true) {
        this.templateData = datas;
      }
      this.isShow = this.datas.isShowPrize;
      this.timer = new Date().getTime();
      // this.publicData.$emit("isNotyFiceWinnerReorrd",true,this.isTemplate)
    },

    goShop() {
      if (this.isTemplate == true) {
        // this.$toast("活动预览，仅供查看");
        return;
      }
      let shopId = store.state.shopId;
      storeGoodsPoint(4)
      goToShopPage(shopId);
    },

    //type 1 签到规则 2 我的奖品 3、积分抽奖记录
    operClick(type) {
      console.log(123333, type);
      if (this.isWebClick) {
        return;
      }
      if (this.isTemplate) {
        // this.$toast("活动预览，仅供查看");
        return;
      }
      switch (type) {
        case 1:
          // this.$emit('operClick', 1);
          console.log("签到规则1", this.acRulePopComData);
          console.log("签到规则2", this.templateData);
          AcRulePopComService.create(
            this.acRulePopComData,
            this.isTemplate,
            this.templateData,
            (prizeRecordDetilClick) => {
              AcRulePopComService.close();
            }
          );
          break;
        case 2:
          let actStatus = sessionStorage.getItem("actStatus");
          let activityType = sessionStorage.getItem("activityType");

          if (actStatus == 1) {
            this.$toast("活动尚未开始");
            return;
          }
          // this.$emit('operClick', 2);

          this.myPrizePopComData.datas.isEditAddress = this.isEditAddress;
          this.myPrizePopComData.datas.isAlLookAddress = this.isAlLookAddress;
          console.log("我的奖品", this.myPrizePopComData);
          if (activityType == 10030) {
            MyOrderPrizePopComService.create(
              this.myPrizePopComData,
              this.isTemplate,
              (prizeRecordDetilClick) => {
                MyOrderPrizePopComService.close();
              }
            );
          } else {
            MyPrizePopComService.create(
              this.myPrizePopComData,
              this.isTemplate,
              (prizeRecordDetilClick) => {
                MyPrizePopComService.close();
              }
            );
          }
          break;
        case 3:
          let actStatus1 = sessionStorage.getItem("actStatus");
          if (actStatus1 == 1) {
            this.$toast("活动尚未开始");
            return;
          }
          LuckDrawRecordPopComService.create(
            this.myPrizePopComData,
            this.isTemplate,
            (prizeRecordDetilClick) => {
              LuckDrawRecordPopComService.close();
            }
          );
          break;
        case 4:
          // ShareFriendPopComService
          ShareFriendPopComService.create(
            (prizeRecordDetilClick) => {
              ShareFriendPopComService.close();
            }
          );
          break;
        case 7:
          let actStatus4 = sessionStorage.getItem("actStatus");
          if (actStatus4 == 1) {
            this.$toast("活动尚未开始");
            return;
          }
          this.stopScroll();
          StepMyOrderPopService.create(
            this.isTemplate,
            this.styleData,
            submit => {
              this.canScroll();
              StepMyOrderPopService.close();
            }
          );
          break;
      }
    },
  },
};
</script>

<style lang="scss"></style>
