// let util = require("../../utils/util");
const navigationBarHeight = (getApp().statusBarHeight + 50) + 'px'
let Http = require("../../utils/HttpBasics");
let config = require("../../config/config.js");
let app = getApp();
const imgurl = require("../../utils/imgurl");
const QR = require("../../utils/memberqrcode.js");
Page({
  data: {
    navigationBarHeight,
    btomLineUrl: imgurl.btomLine.url,
    topLineUrl: imgurl.topLine.url,
    lineUrl: imgurl.line.url,
    wm01Url: imgurl.wm01.url,
    wm02Url: imgurl.wm02.url,
    wm03Url: imgurl.wm03.url,
    wm04Url: imgurl.wm04.url,
    upDataRqUrl: imgurl.upDataRq.url,
    upDataRqUrlF: imgurl.upDataRqF.url,
    code: "",
    //存储计时器
    setInter: "",
    staticGamedata: {},
    showIf: false,
    curHtml: '',
    contentType: 0,
    showhieRq: false,
    dynamicRq: "",
    expiredSeconds: 0,
    templTiem: ""
  },
  gotogame: function () {
    let that = this;
    tt.navigateTo({
      url: '/pages/game/index?url=' + that.data.staticGamedata.url + "&id=" + that.data.staticGamedata.id + "&gameId=" + that.data.staticGamedata.gameId,
    })
  },
  // 获取游戏
  getStaticGame(token) {
    let _this = this;
    Http.get({
      url: config.api.getGame,
      data: {
        triggleAction: 4 // 核销触发
      }
    }).then(res => {
      if (res.data.id) {
        _this.setData({
          showIf: true
        })
      }
      _this.setData({
        staticGamedata: res.data
      })
    })
      .catch(err => {
        tt.showToast({
          title: err.errMsg,
          icon: 'none',
          duration: 2000,
          mask: false
        });
      })
  },

  setRq() {
    let _this = this
    _this.setData({
      showhieRq: false,
    })
    Http.get({//获取动态二维码
      url: config.api.dynamicId,
      data: {
        couponOrderId: _this.data.code
      }
    }).then(res => {
      console.log(res, "res")
      _this.setData({
        dynamicRq: res.data.dynamicId,
        expiredSeconds: res.data.expiredSeconds
      })

      let url = JSON.stringify({
        END: "C",
        TYPE: "couponorder",
        ID: _this.data.dynamicRq
      })

      let inre = setInterval(() => {
        if (_this.data.expiredSeconds > 1) {
          _this.setData({
            expiredSeconds: _this.data.expiredSeconds - 1
          })
          console.log("有效", _this.data.expiredSeconds)
        } else {
          console.log("无效", _this.data.expiredSeconds)
          clearInterval(_this.data.templTiem)
          _this.setData({
            showhieRq: true
          })
        }
      }, 1000)
      _this.setData({
        templTiem: inre
      })
      // util.qrcode("qrcode", url, 350, 350);
      _this.createQrCode(url, "qrcode", 350, 350);
      }).catch(err => {
        tt.showToast({
          title: err.message,
          icon: 'none',
          duration: 2000,
          mask: false
        });
      })
  },

  onLoad: function (options) { //quancode
    console.log(options)
    console.log(app.globalData.curHtml)
    let that = this;
    // let value = JSON.stringify({ END: "C", TYPE: "couponorder", ID: options.quancode})
    // that.createQrCode(value, "qrcode", 350, 350);
    that.setData({
      code: options.quancode,
      title: options.title,
      subtitle: options.subtitle,
      remark: options.remark,
      couponorderstatus: options.couponorderstatus,
      validStatus: options.validstatus,
      contentType: options.contentType
    });
    if (options.couponorderstatus==0){
      that.setRq()//动态获取二维码 这个方法必须在拿到 options.quancode 后调用
    }
    
    if (options.contentType != undefined && options.contentType==1) {
      this.setData({
        curHtml: app.globalData.curHtml
      })
    }
    /**
     * 如果没有核销
     */
    that.data.setInter = setInterval(function () {
      if (that.data.couponorderstatus == 0) {
        Http.get({
          url: config.api.getStatus,
          data: {
            couponOrderId: options.quancode
          }
        }).then(res => {
          console.log(res);
          that.setData({
            couponorderstatus: res.data.CouponOrderStatus
          });
          if (res.data.CouponOrderStatus == 1) {
            /**
             * 动态改变上一级页面的核销状态
             */
            that.getStaticGame()
            var pages = getCurrentPages();
            var prevPage = pages[pages.length - 2]; //上一个页面
            //直接调用上一个页面的setData()方法，把数据存到上一个页面中去
            prevPage.setData({
              mystatus: res.data.CouponOrderStatus
            });
          }
        })
          .catch(err => {
            tt.showToast({
              title: err.errMsg,
              icon: 'none',
              duration: 2000,
              mask: false
            });
          })
      }
    }, 2000);

    if (that.data.couponorderstatus == 1) {
      /**
       * 如果已经核销
       * 不需要循环
       */
      Http.get({
        url: config.api.getStatus,
        data: {
          couponOrderId: options.quancode
        }
      }).then(res => {
        that.setData({
          couponorderstatus: res.data.CouponOrderStatus
        });
      })
        .catch(err => {
          tt.showToast({
            title: err.errMsg,
            icon: 'none',
            duration: 2000,
            mask: false
          });
        })
    }
    /**
     * couponorderstatus
     * 0 没有核销 
     * 1 已经核销成功
     */
  },
  createQrCode: function (url, canvasId, cavW, cavH) {
    //调用插件中的draw方法，绘制二维码图片
    let that = this;
    QR.api.draw(url, canvasId, cavW, cavH, function (res) {
      that.setData({
        tempFilePath: res
      })
    });
  },
  onUnload: function () {
    let that = this;
    clearInterval(that.data.setInter);
    clearInterval(that.data.templTiem);
  },
  onHide: function () {
    let that = this;
    clearInterval(that.data.setInter);
    clearInterval(that.data.templTiem);
  },
  // onHide:function(){
  //   console.log(app.globalData.sight)
  //   tt.setScreenBrightness({
  //     value: app.globalData.sight,
  //   })
  // }
});
