coupons.js 9.58 KB
var e = function(e) {
    return e && e.__esModule ? e : {
      default: e
    };
  }(require("../../../utils/LoadMore.js")),
  t = getApp(),
  a = t.request,
  o = t.globalData.setting,
  os = o,
 i = require("../../../utils/util.js"),
  ut = i,
  b = require("../../../app.js"),
  app = b,
  s = require("../../../utils/common.js"),

  n = new e.default();
var regeneratorRuntime = require('../../../utils/runtime.js');
var auth = require("../../../utils/auth.js"),rq = require("../../../utils/request.js");
const {
  barcode,
  qrcode
} = require('../../../utils/index.js')
Page({

  /**
   * 页面的初始数据
   */
  data: {
    sheng:1,    //是否有更多
	overdue_sheng:1, //是否有更多
	
    details: [], //可使用的数据
    sum: 0, //全部票
    val: 0, //可使用票
    number: 0, //已过期票
    //判断已过期的
    ygq: false,
    ksy: true,
    pageSize: 10,
    page: 1,
    current_page: 0,
    is_no_more: 0,
    /**
     * 页面配置
     */
    winWidth: 0,
    winHeight: 0,
    currentTab: 0,
    // 点击选中二维码
    show: true,
    udata: null,
    iurl:os.imghost,
    is_show_dhwz:0,
	
	b_can_arr:null,  //包邮券的未使用内容
	b_out_arr:null,  //包邮券的已过期的内容
	b_isuse_arr:null,//包邮券的已使用的内容
	
	isloading:0, //正在加载中的代码
	isset:0,
  },
  // 点击选中二维码
  click: function(e) {
  var val = e.currentTarget.dataset.cashrepno;
    getApp().globalData.val =val;
	  wx.navigateTo({
		url: 'qr_code/qr_code',
	  })
   
  },
  // 点击返回主页
  clicks: function() {
    this.setData({
      show: true
    })
  },
  /**
   * 点击tab切换,已过期,控制页面显示隐藏和样式的显示隐藏
   */
  swichNav: function(e) {
    this.setData({ current_page:0})
    this.data.details=[];
      
    var that = this;
    var current = e.currentTarget.dataset.current
   
    //控制显示隐藏
    if (e.currentTarget.dataset.current == 0) {
      
      var ygq = true;
      var ksy = false;
      that.setData({
        details:[],
        ygq: ygq,
        ksy: ksy,
        currentTab: e.currentTarget.dataset.current
      });
     this.myyhj();
    } else {
     
      var ygq = false;
      var ksy = true;
      var currentTab=this.data.currentTab;
     
      that.setData({
        details: [],
        ygq: ygq,
        ksy: ksy,
        currentTab: e.currentTarget.dataset.current
      });
      this.overdue();
    
    } //控制样式
    if (this.data.currentTab === e.currentTarget.dataset.current) {
     
      return false;
    } else {
      var details=this.data.details;
     
      that.setData({
        currentTab: e.currentTarget.dataset.current,
        details:[],
      })
    }
    
  },
  // 微卷兑换
  exchange: function() {
    wx.navigateTo({
      url: 'exchange/exchange'
    })
  },
  // 维劵查询
  query: function() {
    wx.navigateTo({
      url: 'query/index'
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
      var th = this;
      getApp().getConfig2(function (ee) {
        var json_d = JSON.parse(ee.switch_list);
        th.setData({ is_show_dhwz: json_d.dhwz_switch });
      })
	
  },

  
  onShow: function() {
	var th=this;   
	wx.setNavigationBarTitle({  title: "我的优惠券", })
  
    //--先判断会员状态--
    var user_info = getApp().globalData.userInfo;
    if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
      wx.navigateTo({ url: '/pages/getphone/getphone', })
      return false;
    }
    this.init(th.myyhj);	
   
  },
  
  //----------券的界面初始化-----------
  init:function(func){
	  var user_id = getApp().globalData.user_id;
	  var store_id = os.stoid;
	  var th=this;
	   rq.get("/api/weshop/users/getinfo/" + os.stoid + "/" + user_id, {
	     isShowLoading: 0,
	     success: function (su) {
	    
	       var data = su.data.data;      
	       data.cashcount = parseInt(data.CashCount);
	       getApp().globalData.Integral = data.Integral;
	         	
	       getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea",{data:{user_id: user_id, store_id: os.stoid, pageSize:200}}).then(res=>{
			   if(res.data.code==0 && res.data.data && res.data.data.total>0 ){
				     var b_arr=res.data.data.pageData;
					 var b_can_arr=[];   //未使用
					 var b_out_arr=[];   //已过期
					 var b_isuse_arr=[]; //已过期
					 for(var i in b_arr){
						 b_arr[i].isby=1; 
						 if(b_arr[i].isuse==0){		 
							  if(b_arr[i].use_end_time<ut.gettimestamp()){
								   b_can_arr.push(b_arr[i]);
							  }else{
								   b_can_arr.push(b_arr[i]);
							  }
							 
						 }else{
							b_isuse_arr.push(b_arr[i]);
						 }
					 }				 					 
					 data.cashcount= data.cashcount+b_arr.length;  //加上包邮券的数量
					 th.data.b_can_arr=b_can_arr;      //可使用
					 th.data.b_out_arr=b_out_arr;      //过期
					 th.data.b_isuse_arr=b_isuse_arr;  //已使用
					 th.setData({ udata: data}); 
					 func();
					 
			   }else{
				   th.setData({ udata: data});   
				   func();
			   }		       
		   })	   	
	                 
	     }
	   }) 
  },
  

  //获取劵的数量
  myyhj:function() {
        if(this.data.isloading) return;	
		
		var len = this.data.details.length;
		this.data.current_page++;
		var e = this, sum, val, number;
		var user_id = getApp().globalData.user_id;
		var store_id = os.stoid;
		var th=this; var init_num=0;
      
		var get_data = {
		  user_id: user_id,
		  store_id: store_id,
		  IsUse: 0,
		  pageSize: 10,
		  page: e.data.current_page
		};
        var big_arr = this.data.details; 
		//可用券加入包邮券
		if(big_arr.length==0 && this.data.b_can_arr){
			big_arr=this.data.b_can_arr;			
		}
		if(this.data.b_can_arr) init_num=this.data.b_can_arr.length;
	
        wx.showLoading(); th.data.isloading=1;
	    getApp().request.promiseGet("/api/weshop/users/listQuan", {
		  data: get_data,
		}).then(res => {
		   th.data.isloading=0;	
		
		   var a = res.data;
		   val = a.data.total; 
		   var details = a.data.pageData;
		   
		   th.setData({isset:1});
		 
		    //没有找到优惠券的时候
		    if (details.length == 0 && th.data.current_page==1) {
			   this.setData({sheng:0}); 
			   getApp().showWarning("未找更多数据");	   
			   if(big_arr.length>0) {
				    th.setData({ details: big_arr, });	
					th.setData({ val: init_num});		
					setTimeout(function(){
						 details=big_arr;
						 for (var i = 0; i < details.length; i++) {
						   var no = i + len;
						   qrcode('qrcode' + no, details[i].CashRepNo?details[i].CashRepNo:details[i].no, 460, 460);		 
						 }
					},1000)
			   }
			   return false;
			}
			  	
			th.setData({ val: val+init_num });	
			
			//数组合并  
			big_arr=big_arr.concat(details);
			//设置数组  		
			th.setData({ details: big_arr, });	
		  
		    //延迟显示二维码的内容
		    setTimeout(function () {			
				if(th.data.current_page==1) details=big_arr;	
				for (var i = 0; i < details.length; i++) {
					var no = i + len;		
					qrcode('qrcode' + no, details[i].CashRepNo?details[i].CashRepNo:details[i].no, 460, 460);      
				}
				wx.hideLoading();
			 }, 1200)
		 
		})
	
 
  
  },
  
 overdue:function(){
	
	if(this.data.isloading) return;	

    var len = this.data.details.length;
    this.data.current_page++;
    var e = this,sum, val, number;
    var user_id = getApp().globalData.user_id;
    var store_id = os.stoid,init_num=0,th=this;
   
    var get_data = {
      user_id: user_id,
      store_id: store_id,
      IsUse: 2,
      pageSize: 10,
      page: e.data.current_page
    };
    var big_arr= this.data.details;
	//可用券加入包邮券
	if(big_arr.length==0 && this.data.b_out_arr){
		big_arr=this.data.b_can_arr;	
	}
	init_num=this.data.b_out_arr.length;
	
	
    wx.showLoading();th.data.isloading=1;
     getApp().request.promiseGet("/api/weshop/users/listQuan"
      , {
        data: get_data,
      }).then(res => {
		  
		th.data.isloading=0;  	  
        var a = res.data;
        number = a.data.total;    
        var details = a.data.pageData;
     
        if (details.length == 0) {
          this.setData({overdue_sheng:0}); 
          getApp().showWarning("未找更多数据");
		  if( big_arr.length>0 && th.data.current_page==1) {
		  		th.setData({ details: big_arr, });	
		  		th.setData({ number: init_num});	
				setTimeout(function(){
					 details=big_arr;
					 for (var i = 0; i < details.length; i++) {
					   var no = i + len;
					   qrcode('qrcode' + no, details[i].CashRepNo?details[i].CashRepNo:details[i].no, 460, 460);		 
					 }
				},1000)
								
		  }
          return false;
        }
       
        big_arr=big_arr.concat(details);
    
        this.setData({
          details: big_arr, number:number+init_num,
        });
		
		
        setTimeout(function () {
		  if(th.data.current_page==1) details=big_arr;	
          for (var i = 0; i < details.length; i++) {
            var no = i + len;
            qrcode('qrcode' + no, details[i].CashRepNo?details[i].CashRepNo:details[i].no, 460, 460);
          
          }
          wx.hideLoading();
        }, 800)
      })
  },
  
  //---加载更多是靠这个函数----
  onReachBottom: function() {
	if(this.data.isloading) return false;  //正在加载中,则不处理
    var currentTab=this.data.currentTab;
    if (currentTab==2){
		if(this.data.overdue_sheng==0) return false;  
        this.overdue();
    }
	if (currentTab==0){
		if(this.data.sheng==0) return false;  
	    this.myyhj();
	}
  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function() {

  }
})