<template>
  <div
    class="signPrizeDiv"
    :style="styleData[keyData.signPrizeDiv]"
    ref="organizeSignPrize"
    @click="styleClick('click', 'organizeSignPrize')"
    @mousemove="styleClick('mousemove', 'organizeSignPrize')"
    @mouseout="styleClick('mouseout')"
  >
    <div
      v-if="isWebClick"
      class="signDiv"
      :style="styleData[keyData.signDiv]"
    >
      <img
        :style="styleData[keyData.imageSignStyle]"
        :src="styleData.imageSignStyle.imageUrl"
      />
      <span v-if="datas.signTitle">{{ datas.signTitle }}</span>
    </div>
    <div
      v-else
      class="signDiv"
      :style="styleData[keyData.signDiv]"
      v-lz-click="'18'"
      @click="operClick(1)"
    >
      <img
        :style="styleData[keyData.imageSignStyle]"
        :src="styleData.imageSignStyle.imageUrl"
      />
      <span v-if="datas.signTitle">{{ datas.signTitle }}</span>
    </div>
  </div>
</template>

<script>
import {
  MyPrizePopComService,
  AcRulePopComService,
} from "../../../util/comCreate.js";
export default {
  props: [
    "datas",
    "styleData",
    "keyData",
    "isTemplate",
    "templateData",
    "isWebClick",
    "modifyContent",
  ],
  data() {
    return {
      isShow: true,
      isEditAddress: true, //是否可以编辑地址 默认可以编辑地址
      isAlLookAddress: false, //是否可以一直查看地址 默认不可以一直查看

      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: {},
      },
      styleDataOld: {},
    };
  },

  created() {
    //深拷贝重置需要
    this.styleDataOld = JSON.parse(JSON.stringify(this.styleData));
    this.isShow = this.datas.isShowPrize;
    this.isEditAddress = this.datas.isEditAddress == false ? false : true;
    this.isAlLookAddress = this.datas.isAlLookAddress == 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.styleData,
          c_this: this,
          styleDataOld: this.styleDataOld,
        };
        this.$emit("opertaionCom", type, byValue);
      }
    },
    initData() {
      var datas = this.templateData;
      if (this.isTemplate == true) {
        this.templateData = datas;
      }
      this.isShow = this.datas.isShowPrize;

      // this.publicData.$emit("isNotyFiceWinnerReorrd",true,this.isTemplate)
    },

    //type 1 签到规则 2 我的奖品
    operClick(type) {
      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");
          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);
          MyPrizePopComService.create(
            this.myPrizePopComData,
            this.isTemplate,
            (prizeRecordDetilClick) => {
              MyPrizePopComService.close();
            }
          );
          break;
      }
    },
  },
};
</script>

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