|
- // let util = require("../../utils/util");
- const navigationBarHeight = (getApp().statusBarHeight + 44) + '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: {
- showIdFalg: false,
- 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: ""
- },
- showId() {
- let this_ = this;
- if (!this_.data.showIdFalg) {
- wx.showModal({
- content: '是否查看完整券码',
- success(res) {
- if (res.confirm) {
- this_.setData({
- showIdFalg: true
- })
- } else if (res.cancel) {
- console.log('用户点击取消')
- }
- }
- })
- } else {
- this.setData({
- showIdFalg: false
- })
- }
-
- },
- gotogame: function () {
- let that = this;
- wx.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 => {
- wx.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
- })
- if (res.data.expiredSeconds==0){
-
- }else{
-
- 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 => {
- wx.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,
- codeS: options.quancode.slice(0, 4) + `******` + options.quancode.slice(14),
- 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 => {
- wx.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 => {
- wx.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)
- // wx.setScreenBrightness({
- // value: app.globalData.sight,
- // })
- // }
- });
|