123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265 |
- const { default: activity } = require("../../api/activity");
- const util = require('../../utils/util.js')
- const app = getApp();
- import { getMobileCache, getPhoneNumberNew as getPhoneNumberSync } from '../../utils/user'
- Page({
- /**
- * 页面的初始数据
- */
- data: {
- activityId:'', //活动id
- userMobile:'', //电话
- codeId:'',//code唯一码
- memberMobile:'',//领取人手机号
- isEffective:false, //是否过期,默认过期
- activityInfo:[],
- },
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad: function (options) {
- let _self = this;
- if(options.q) {
- let url = decodeURIComponent(options.q);
- let id = util.getQueryVariable('id',url);
- if(id) {
- _self.setData({
- codeId:id,
- })
- //根据codeId查出该活动是否过期
- _self.getShareActivityCode(id);
- }
- }
-
- },
- //根据code-id获取券详情信息 判断该codeId是否过期
- async getShareActivityCode(codeId) {
- let _self = this;
- try {
- let result = await activity.getShareActivityCode(codeId);
- _self.setData({
- // activityInfo:result.activityInfo,
- activityId:result.activityInfo.activityId
- })
- _self.activityInfo(result.activityInfo.activityId);
- let expireTime = result.expireTime;
- //失效的时间
- let expireTimeTime = util.getUnixTime(expireTime);
- //获取当前的时间戳
- var nowTime = Date.parse(new Date())/1000;
- if(expireTimeTime-nowTime>0) {
- _self.setData({
- isEffective:true
- })
- }
- }catch(error) {
- _self.setData({
- isEffective:false
- })
- }
- },
- /**
- *
- */
- getNowCoupon() {
- let _self = this;
- //判断是否过期
- if(_self.isEffective==false) {
- wx.showToast('券码包已过期')
- return;
- }
- _self.createOrder();
- },
- /**
- * 创建订单
- */
- async createOrder() {
- let _self = this;
- try {
- let order = await activity.createOrder(_self.data.activityId,_self.data.memberMobile);
- let orderSn = order.orderSn;
- _self.setData({
- orderSn:orderSn
- })
- let codeId = _self.data.codeId;
- try {
- //插入 订单 和 codeId bind-share-code
- let res = await activity.bindShareCode(orderSn,codeId);
- }catch(e) {
- console.log(e)
- }
- if (_self.data.activityInfo.isPay == 1 && orderSn) {
- // console.log(22222)
- //TODO::暂时屏蔽
- // _self.goPay();
- app.showToast('领取成功','success',1000,function(){
- wx.redirectTo({
- url: '/pages/myCoupons/myCoupons?mobile='+_self.data.memberMobile,
- })
- })
- } else {
- //领取成功
- app.showToast('领取成功','success',1000,function(){
- wx.redirectTo({
- url: '/pages/myCoupons/myCoupons?mobile='+_self.data.memberMobile,
- })
- })
- }
- }catch(e) {
- }
- },
- /**
- * 获取订单参数
- */
- async goPay() {
- var _self = this;
- try {
- let res = await activity.getOrderParams(_self.data.orderSn,_self.activityInfo.name);
- console.log(res);
- res = res.wxPrePayVo
- wx.requestPayment({
- timeStamp: res.timeStamp,
- package: res.pack,
- nonceStr: res.nonceStr,
- signType: res.signType,
- paySign: res.paySign,
- success: function (res) {
- //领取成功
- app.showToast('领取成功','success',1000,function(){
- wx.redirectTo({
- url: '/pages/myCoupons/myCoupons?mobile='+_self.data.memberMobile,
- })
- })
- },
- fail: function (res) {
- }
- })
- } catch (err) {
- console.log(err)
- }
- },
- //获取手机号
- getPhoneNumber(e) {
- let _self = this;
- getPhoneNumberSync(e, _ => {
- let userMobile = activity.getMobileCache();
- if (userMobile.length !== 0) {
- _self.setData({
- memberMobile: userMobile,
- })
- _self.createOrder();
- }
- })
- // let _self = this;
- // var encryptedData = e.detail.encryptedData;
- // console.log(encryptedData);
- // var iv = e.detail.iv;
- // if (!encryptedData || encryptedData.length == 0 || !iv || iv.length == 0) {
- // return;
- // }
- // //获取手机号
- // getApp().doDecodePhone(encryptedData, iv, function () {
- // let userMobile = activity.getMobileCache();
- // if (userMobile.length !== 0) {
- // _self.setData({
- // memberMobile: userMobile,
- // })
- // _self.createOrder();
- // }
- //
- // });
- },
- /**
- * 生命周期函数--监听页面初次渲染完成
- */
- onReady: function () {
- },
- /**
- * 生命周期函数--监听页面显示
- */
- onShow: function () {
- },
- /**
- * 生命周期函数--监听页面隐藏
- */
- onHide: function () {
- },
- /**
- * 生命周期函数--监听页面卸载
- */
- onUnload: function () {
- },
- /**
- * 页面相关事件处理函数--监听用户下拉动作
- */
- onPullDownRefresh: function () {
- },
- /**
- * 页面上拉触底事件的处理函数
- */
- onReachBottom: function () {
- },
- /**
- * 用户点击右上角分享
- */
- onShareAppMessage: function () {
- },
- /**
- * 获取活动详细信息
- * @param {*} activityId
- */
- async activityInfo(activityId){
- let result = await activity.getActivityDetail(activityId);
- // console.log('获取活动详细信息');
- // console.log(result)
- var objSwitch = getApp().globalData.typeSwitchObj
- var couponTypeAndNumObj = {};
- var couponList = result.activityCouponList;
- for (let j = 0; j < couponList.length; j++) {
- var couponNum = couponList[j]['num'] ? couponList[j]['num'] : 1;
- var value = couponList[j]['coupon']['type'];
- var showText = objSwitch[couponList[j]['coupon']['type']];
- var nowNume = 0;
- if (couponTypeAndNumObj[value]) {
- nowNume = couponTypeAndNumObj[value]['num'];
- console.log(nowNume)
- }
- couponTypeAndNumObj[value] = {
- "typeText": showText,
- "num": couponNum + nowNume
- }
- }
- result.couponTypeAndNumObj = couponTypeAndNumObj
- this.setData({
- activityInfo:result
- })
- },
- })
|