list.js 7.45 KB
var e = getApp(), i = e.request, a = e.globalData.setting,os=a,ut = require("../../../../utils/util.js");
var regeneratorRuntime = require('../../../../utils/runtime.js');

Page({
    data: {
        url: a.imghost,
        killtime: null,
        currentPage: 1,
        goodlist: null,
        type:1,
        timer:null,
        ismore:1,  //是否可以加载更多
        isshow:0,
				ad_data:null,
				max_sw_height:200,
    },

    //------初始化加载----------
    onLoad: function(t) {
		// wx.setNavigationBarTitle({ title: "商品秒杀",})
        var  first_leader = t.first_leader;
		var type=t.type;
		if(type!=undefined){
		    this.setData({type:type});
        }

		var th=this;

        // console.log("------------");
        console.log(first_leader);		
		getApp().getConfig();

        if (first_leader) {
            getApp().globalData.first_leader = first_leader;
            //调用接口判断是不是会员
            getApp().request.promiseGet("/api/weshop/shoppingGuide/get/" + os.stoid + "/" + first_leader, {}).then(res => {
                if (res.data.code == 0) {
                    getApp().globalData.guide_id = res.data.data.id;
                    getApp().globalData.guide_pick_id= res.data.data.pickup_id
                }
            })
        }
		
		
		// 广告
		getApp().request.promiseGet("/api/weshop/ad/page?pid=1203&store_id=" + os.stoid, {
		  data: {
		    enabled: 1
		  }
		}).then(res => {
			if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){
				var a = res.data.data.pageData;
				var narr=[];
				for(var i in a){
					var tt = {
					  'ad_code': os.imghost + a[i].ad_code,
					  'media_link': '',
					  'ad_weapplink':a[i].ad_weapplink
					};
					narr.push(tt);
				}
				th.setData({ad_data:narr});				
			}					 			
		});
		
    },


    onShow: function(t) {

        getApp().check_can_share();

       this.data.ismore=1;
       this.data.is_timer=1;
       this.data.currentPage=1;
       var th=this;th.setData({goodlist:null,})
       this.requestSalelist();
       //设置全局定时器
       // th.data.timer=setInterval(function () {
       //    th.countDown();
       // },1000);
    },
		
    onHide:function() {
      //--清理定时器--
      // clearInterval(this.timer);
      this.setData({isshow:0});
    },
		
   //---小于10的格式化函数----
   timeFormat(param) {
      return param < 10 ? '0' + param : param;
   },

  //----倒计时函数-----
   countDown() {
    
    if(!this.data.is_timer) return false;
    var th=this;
    // 获取当前时间,同时得到活动结束时间数组
    let newTime = ut.gettimestamp();
    var endTimeList = th.data.goodlist;
    if(endTimeList == null) return null;
    // 对结束时间进行处理渲染到页面
    for (var i = 0; i < endTimeList.length;i++){
         var o = endTimeList[i];
         var endTime = o.start_time;
         if(th.data.type==0) endTime = o.start_time;
         let obj = null;
         // 如果活动未结束,对时间进行处理
         if (endTime - newTime > 0){
              let time = (endTime - newTime);
              // 获取天、时、分、秒
              let day = parseInt(time / (60 * 60 * 24));
              let hou = parseInt(time % (60 * 60 * 24) / 3600);
              let min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
              let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
              obj = {
                day: this.timeFormat(day), hou: this.timeFormat(hou), min: this.timeFormat(min), sec: this.timeFormat(sec), hide: 1
              }
          }else{
             //活动已结束,全部设置为'00'
           obj = { day: '00', hou: '00', min: '00', sec: '00' }
          }
          var txt ="goodlist["+i+"].djs";
          th.setData({ [txt]: obj});
        }
   },

  //  请求活动列表
   async requestSalelist() {
        //--没有更多就不调用--
        if(!this.data.ismore) return false;
        var e = this,
            th = e, 
            i = "/api/weshop/prom/zhbuy/page?is_end=0&timetype=" + this.data.type + "&page=" + e.data.currentPage;
        // var plist=null,alllist=th.data.goodlist;
        // if(!alllist) alllist=[];
        let {goodlist} = this.data;
        const {data:res}=await getApp().request.promiseGet(i,{
          isShowLoading:1,
          data:{
            store_id: os.stoid,
            user_id: getApp().globalData.user_id,
          }
        })
        if(res.code==0 && res.data.pageData.length>0){
          if(res.data.page>1){
            th.data.goodlist = goodlist.concat(res.data.pageData)
          }else{
            th.data.goodlist = res.data.pageData;
          }

          if (th.data.type == 0) {
            clearInterval(ot);
            var ot = setInterval(function () {
                th.countDown();
            }, 1000);
              
          }
          
        }else{
          getApp().showWarning("没有更多数据");
          th.data.ismore=0;
        }
        e.data.currentPage++;
        th.setData({
          goodlist: th.data.goodlist,
          isshow: 1
        });

    },

    onPullDownRefresh: function() {
        this.reloadGoodList();
    },

    reloadGoodList: function() {
       this.data.goodlist = null;
       this.data.currentPage = 1; 
       this.requestSalelist();
    },

    onReachBottom: function() {
      this.requestSalelist();
    },

    //点击tab事件
    tip:function(e) {
       var a = e.currentTarget.dataset.ty,
       th = this;
       th.data.type = a;
       th.data.ismore = 1;
       this.setData({
         type:a,
         goodlist: null
        });
       this.reloadGoodList();
       
    },


    //---------分享配置--------
    onShareAppMessage: function (e) {
        getApp().globalData.no_clear=1
        var curPage=this;
        var pagePath = curPage.route; //当前页面url
        if (pagePath.indexOf('/') != 0) {
            pagePath = '/' + pagePath;
        }
        if(getApp().globalData.user_id){

            if(pagePath.indexOf("?")>0){
                pagePath+="&first_leader="+getApp().globalData.user_id;
            }else{
                pagePath+="?first_leader="+getApp().globalData.user_id;
            }
        }

        // console.log("11"+pagePath);
        return {
            title: "组合购列表",
            path:pagePath,
        }
    },

    //图片失败,默认图片
    bind_bnerr2: function (e) {
       var _errImg = e.target.dataset.errorimg;
       var val = e.target.dataset.val;
       if(val==undefined || val==null || val=='null') {
          var _errObj = {};
          _errObj[_errImg] = "/public/images/default_goods_image_240.gif";
          this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
       }
    },
		
		// onShareTimeline() {
		// 	var store_name=getApp().globalData.config?getApp().globalData.config.store_name:'';
		// 	if(!store_name)
		// 	   store_name=getApp().globalData.setting.appName;
		// 	return {
		// 		title: '秒杀活动-' + store_name,
		// 	}
		// },
		
		imageLoad:function(e){
		  var imgwidth = e.detail.width;
		  var imgheight = e.detail.height;
		  //宽高比
		  var ratio = imgwidth / imgheight;
		  //计算的高度值
		  var viewHeight = 750 / ratio;
		  var hei=this.data.max_sw_height;
		
		  if (hei< viewHeight) {
		      this.setData({ max_sw_height: viewHeight });
		   }
    },
    go_url(e){
      let url=e.currentTarget.dataset.url;
      if(url){
        getApp().goto(url);
      }
    }

});