|
- const navigationBarHeight = (getApp().statusBarHeight + 44) + 'px'
- const util = require("../../../utils/util");
- const config = require("../../../config/config.js");
- const Http = require("../../../utils/HttpBasics");
- let app = getApp();
- const imgurl = require("../../../utils/imgurl");
- const QR = require("../../../utils/memberqrcode.js");
- //券详情页面
- Page({
- data: {
- showIdFalg: false,
- navigationBarHeight,
- code: "",
- topLine: imgurl.topLine.url,
- btomLine: imgurl.btomLine.url,
- lineUrl: imgurl.line.url,
- wm01Url: imgurl.wm01.url,
- wm02Url: imgurl.wm02.url,
- wm03Url: imgurl.wm03.url,
- upDataRqUrl: imgurl.upDataRq.url,
- upDataRqUrlF: imgurl.upDataRqF.url,
- wm04Url: imgurl.wm04.url,
- teljpgUrl: imgurl.teljpg.url,
- newUrl: imgurl.new1.url,
- data: {
- salePrice: null,
- price: null,
- usePrice: null
- },
- createDate: "",
- expiredTime: "",
- validStartDate: "",
- validEndDate: "",
- updateDate: "",
- //存储计时器
- setInter: "",
- staticGamedata: {},
- showIf: false,
- curHtml: '',
- showhieRq: false,
- dynamicRq: "",
- expiredSeconds: 0,
- templTiem: "",
- mallList: []
- },
- 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);
- },
- gotogame: function () {
- let that = this;
- wx.redirectTo({
- 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
- });
- })
- },
- // onShow(options) {
- // setTimeout(function () {
- // wx.setScreenBrightness({
- // value: 0.7,
- // })
- // }, 200)
- // },
- 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
- });
- })
- },
-
- 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
- })
- }
- },
-
- onLoad: function (options) {
- console.log(options, 'options');
- let that = this;
- that.setData({
- code: options.quancode,
- codeS: options.quancode.slice(0, 4) + `******` + options.quancode.slice(14),
- couponorderstatus: options.couponorderstatus
- });
-
- if (
- options.quancode &&
- that.data.couponorderstatus == 0
- ) {
- //aaa
- that.setRq()//动态二维码 //这个方法必须在拿到 options.quancode 后调用
- that.getHtml(options.quancode);
- // Http.get({
- // url: config.api.couponMerchant,
- // data: {
- // couponChannelId: options.quancode
- // }
- // }).then(res => {
- // const keys = Object.keys(res.data)
- // const mallList = []
- // keys.forEach(item => {
- // const arr = item.split('|')
- // const obj = {
- // tenantId: arr[0],
- // mallName: arr[1],
- // merchantVoList: res.data[item],
- // expand: true
- // }
- // mallList.push(obj)
- // })
- // this.setData({
- // mallList: mallList
- // })
- // console.log(this.data.mallList, 'mallList');
- // })
- }
- //获得优惠券的详情
- that.data.setInter = setInterval(function () {
- if (
- options.quancode &&
- that.data.couponorderstatus == 0
- ) {
-
- Http.get({
- url: config.api.couponOrderDetail,
- data: {
- couponOrderId: options.quancode
- }
- }).then(res => {
- that.setData({
- couponorderstatus: res.data.couponOrderStatus,
- data: res.data,
- });
- if (res.data.couponOrderStatus == 1) {
- /**
- * 动态改变上一级页面的核销状态
- */
-
- that.getStaticGame()
- var pages = getCurrentPages();
- var prevPage = pages[pages.length - 2]; //上一个页面
- //直接调用上一个页面的setData()方法,把数据存到上一个页面中去
- prevPage.setData({
- mystatus: res.data.couponOrderStatus
- });
- }
- that.setData({
- expiredTime: util.formatTime(that.data.data.expiredTime, "yyyy-MM-dd hh:mm:ss"),
- updateDate: util.formatTime(that.data.data.updateDate, "yyyy-MM-dd hh:mm:ss"),
- createDate: util.formatTime(that.data.data.createDate, "yyyy-MM-dd hh:mm:ss")
- });
- if (that.data.data.soldStartTime && that.data.data.soldEndTime) {
- that.setData({
- soldStartTime: util.formatTime(that.data.data.soldStartTime, "yyyy-MM-dd hh:mm:ss"),
- soldEndTime: util.formatTime(that.data.data.soldEndTime, "yyyy-MM-dd hh:mm:ss"),
- validStartDate: util.formatTime(res.data.validStartDate, "yyyy-MM-dd hh:mm:ss"),
- validEndDate: util.formatTime(res.data.validEndDate, "yyyy-MM-dd hh:mm:ss"),
- })
- }
-
- })
- .catch(err => {
- wx.showToast({
- title: err.errMsg,
- icon: 'none',
- duration: 2000,
- mask: false
- });
- })
- }
- }, 2000);
-
- /**
- * 页面需要初始渲染的效果
- */
- Http.get({
- url: config.api.couponOrderDetail,
- data: {
- couponOrderId: options.quancode
- }
- }).then(res => {
- that.setData({
- couponorderstatus: res.data.couponOrderStatus,
- data: res.data
- });
- that.setData({
- expiredTime: util.formatTime(that.data.data.expiredTime, "yyyy-MM-dd hh:mm:ss"),
- updateDate: util.formatTime(that.data.data.updateDate, "yyyy-MM-dd hh:mm:ss"),
- createDate: util.formatTime(that.data.data.createDate, "yyyy-MM-dd hh:mm:ss")
- });
- if (that.data.data.validStartDate && that.data.data.validEndDate) {
- that.setData({
- validStartDate: util.formatTime(that.data.data.validStartDate, "yyyy-MM-dd hh:mm:ss"),
- validEndDate: util.formatTime(that.data.data.validEndDate, "yyyy-MM-dd hh:mm:ss")
- })
- }
-
- })
- .catch(err => {
- wx.showToast({
- title: err.errMsg,
- icon: 'none',
- duration: 2000,
- mask: false
- });
- })
- },
- getHtml(couponChannelId) {
- Http.get({
- url: config.api.couponHtmlDetailForPkg,
- data: {
- // couponChannelId: '433119630735183872'
- couponOrderId: couponChannelId
- }
- }).then(res => {
- if (res.code == 200 && res.data.html) {
- this.setData({
- curHtml: decodeURI(res.data.html),
- })
- }
- })
- },
- upDataRq() {
- console.log(1123)
- },
- createQrCode: function (url, canvasId, cavW, cavH) {
- //调用插件中的draw方法,绘制二维码图片
- let that = this;
- QR.api.draw(url, canvasId, cavW, cavH, function (res) {
- that.setData({
- tempFilePath: res
- })
- });
- },
- phone: function (e) {
- let that = this;
- if (e.currentTarget.dataset.merchantlinkphone) {
- wx.makePhoneCall({
- phoneNumber: e.currentTarget.dataset.merchantlinkphone
- });
- }
- }
- });
|