diy_pingd_buy.js 5.77 KB
// var e = function(e) {
//       return e && e.__esModule ? e : {
//         default: e
//       };
//     }(require("../../utils/LoadMore3.js")),
//     n = new e.default(),
var t = getApp(),
    a = t.request,
    o = t.globalData.setting,
    os = o,
    i = require("../../utils/util.js"),
    ut = i,
    s = require("../../utils/common.js");
var regeneratorRuntime = require('../../utils/runtime.js');

Component({
  properties: {
    // 这里定义了innerText属性,属性值可以在组件使用时指定
    object: {
      type: Object,
      value: null,
    },
    goods_array: {
      type: Array,
      value: []
    },
    newTime: {
      type: Number,
      value: 0
    },
  },
  data: {
    // 这里是一些组件内部数据
    yc: false,
    someData: null,
    ylp_img: "https://mshopimg.yolipai.net/",
    timer: null,
    iurl:o.imghost,
  },
  
  pageLifetimes:{
    //要处理一下,游客登录后的界面的变化,主要还该是改变会员
    show: function () {
  		var th=this;
  		if(this.data.goods_array.length>0){
  			th.data.timer = setInterval(function() {
  			  th.countDown2(th);
  			}, 1000);
  		}
  	}
  },	
  
  
  ready: function() {
    console.log("ready");
    var g_id = this.data.object.data;
    console.log(g_id);
    this.init(g_id);
  },
  detached() {
    // 页面被被销毁的时候,清除定时器
    clearInterval(this.data.timer);
  },
  methods: {
    // 这里是一个自定义方法
    customMethod: function() {},
    init: function(g_id) {
      var th = this,
         app = getApp(), all_array = [],
         index = 0,
         goodsidlist="";
		
		 //-- 当是默认的调用的时候 --		 
		 if(!g_id || g_id.length<=0 ){
			 th.no_gid_set();
		 }else{ 
			  //--先把商品ID串起来--
			  g_id.forEach(function(val, ind) {
				var item = {};
				goodsidlist+=val.goodsid+",";
			  })
			  goodsidlist= goodsidlist.substr(0,goodsidlist.length-1);

			  //--调用接口,读取拼单--
			  app.request.promiseGet("/api/weshop/teamlist/getGoodsList?store_id="
				  +os.stoid+"&goodsidlist="+goodsidlist, {}).then(res => {
				  //如果拼单的数组为空的时候
				  var goodslist=res.data.data;
				  if(goodslist && goodslist.length>0){
					  th.set_goods_list(g_id,goodslist);  
				  }
				
			  });
	  }
    },
		
	no_gid_set(){
		var th=this;
		var url= "/api/weshop/teamlist/pageteam/2?page=1&pageSize=9";
		getApp().request.promiseGet(url, {
		  data: {
		    store_id: os.stoid,is_end: 0,is_show: 1,	   
		  }
		}).then(res => {
		   if(res.data.code==0 && res.data.data.pageData && res.data.data.pageData.length>0){
				var goodslist=res.data.data.pageData;
				th.set_goods_list(null,goodslist);
		   } 
		})
	},
    
	//设置商品列表
	set_goods_list:function(g_id,goodslist){
		var th=this,all_array=[];
		if(g_id){
			/*--商品队列按照添加的顺序排列--*/
			g_id.forEach(function(val, ind) {
			  goodslist.forEach(function (vy,indy) {
				if(val.goodsid==vy.goods_id){
				  all_array.push(vy);
				  //th.setData({goods_array:arr});
				}
			  })
			})
		}else{
			all_array=goodslist;
		}
				
		if(all_array.length==0){
		  all_array=goodslist;
		}
		
		var arr = new Array();
		//--三个三个一组---
		for(var i=0;i< all_array.length;i+=3){
		  arr.push(all_array.slice(i,i+3));
		}
		/*--熏染到前台--*/
		th.setData({goods_array:arr});
		  var newTime = ut.gettimestamp();
		  th.setData({ newTime: newTime });
		
		th.data.timer = setInterval(function() {
		  th.countDown2(th);
		}, 1000);
	},
	
	//---小于10的格式化函数----
    timeFormat: function(param) {
      return param < 10 ? '0' + param : param;
    },
    //----拼单倒计时函数-----
    countDown2: function(ob) {
      if (ob == undefined) return false;
      var ee = ob;
      // 获取当前时间,同时得到活动结束时间数组
      var newTime = ut.gettimestamp();
	  this.setData({newTime:newTime});
	  
      var List = ee.data.goods_array;
      if (List.length == 0) return false;
      for (var j = 0; j < List.length; j++) {
        // 对结束时间进行处理渲染到页面
        var endTimeList = List[j];
        for (var i = 0; i < endTimeList.length; i++) {
          var o = endTimeList[i];
          var endTime = o.end_time;
          //  if (o.status == 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)
            }
          } else {
            //活动已结束,全部设置为'00'
            obj = {
              day: '00',
              hou: '00',
              min: '00',
              sec: '00'
            }
          }
          var txt = "goods_array[" + j + "][" + i + "].djs";
          ee.setData({
            [txt]: obj
          });
        }
      }
    },
    //图片失败,默认图片
    bind_bnerr3: function (e) {
      var _errImg = e.target.dataset.errorimg;
      var _Img = e.target.dataset.img;
      if (_Img != undefined) {
        var _errObj = {};
        _errObj[_errImg] = "/public/images/default_goods_image_240.gif";
        this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
      }
    },
    go_to_pindlist:function () {
      wx.navigateTo({
        url:"/pages/activity/pind_list/pind_list"
      });
    }
  },


})