From 9d3dbc4d8f91df57545550dcc4d3a918fd737f44 Mon Sep 17 00:00:00 2001 From: abson Date: Wed, 30 Mar 2022 14:55:38 +0800 Subject: [PATCH] 首页分享朋友圈不能调起解决 --- pages/index/index/index.js | 2394 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 1 file changed, 1196 insertions(+), 1198 deletions(-) diff --git a/pages/index/index/index.js b/pages/index/index/index.js index 03fc98f..052a9a3 100644 --- a/pages/index/index/index.js +++ b/pages/index/index/index.js @@ -1,16 +1,16 @@ var e = function (e) { - return e && e.__esModule ? e : { - default: 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, - s = require("../../../utils/common.js"), - n = new e.default(); + t = getApp(), + a = t.request, + o = t.globalData.setting, + os = o, + i = require("../../../utils/util.js"), + ut = i, + s = require("../../../utils/common.js"), + n = new e.default(); var regeneratorRuntime = require('../../../utils/runtime.js'); var api = require('../../../api/api.js'); var d = getApp().globalData; @@ -19,1202 +19,1200 @@ var full_screen = require('full_screen.js'); Page({ - data: { - url: o.imghost, - swiperimage: [{ - image: "/miniapp/images/title.png", - nav_url: 0 - }], - resourceUrl: o.resourceUrl, - logo: o.appLogo, - homeData: null, - saleGoods: null, - sale: { - countTime: { - hour: 0, - minute: 0, - second: 0 - }, - diffTime: 0, - good: null, - }, - timer: null, - recommend: null, - scrollTop: 0, - currentPage: 1, - banner: null, - - appdata: null, - saleGoods: null, //秒杀数据 - pindGoods: null, //拼单数据 - newGoods: null, //新商品 - hotGoods: null, //hot商品 - preGoods:null, //预售商品 - //----控制是是否显示计时器--- - is_timer: 1, - ishow: 0, - //是不是显示自定义模板 - isTemplate: 0, - template_arr: null, - bgcolor_t: '', - - banner_index: 0, - flash_index: 0, - pt_index: 0, - - pt_timer_item: null, - pt_timer_arr: null, - pt_timer: null, - pt_timer_active: 0, - //看下商家是否开通会员权益 - is_boot: 0, - gd_category: null, - is_no_more: 0, - max_sw_height: 0, //banner的最大高度 - is_disgraceful: 0, //是否显示新人广告 - new_image: "", //新人有礼弹窗图片 - new_nav: "", //新人页面跳转地址 - w_holiday_pop: 0, - - showHongbao: false, - showHongbaoSmall: false, - - is_full_screen_show: 0, //全屏显示 - sec_show: 3, //倒计时的秒数 - full_ad: null, //全屏广告 - full_screen: 0, //全屏广告 - is_ok_h5:0, //判断要不要显示关注二维码 - }, - - onLoad: async function (tt) { - var th = this; - var first_leader = tt.first_leader; - if (!first_leader && tt.scene) { - var first_leader_str = decodeURIComponent(tt.scene); - var f_arr = first_leader_str.split("_"); - first_leader = f_arr[0] && parseFloat(f_arr[0]) > 0 ? f_arr[0] : null; - //注册门店 - if (f_arr[1] && parseFloat(f_arr[1]) > 0) { - getApp().globalData.store_number = f_arr[1]; - } - } - - getApp().getConfig(function (e) { - //--首页的问题-- - if (getApp().globalData.config && getApp().globalData.config.store_name != undefined && getApp().globalData.config.store_name != null) { - wx.setNavigationBarTitle({ - title: getApp().globalData.config.store_name, - }); - } else { - wx.setNavigationBarTitle({ - title: getApp().globalData.setting.appName, - }); - }; - }); - - - var th = this; - getApp().getConfig2(function (config2) { - if (config2 && config2.is_overdue == 1) { - getApp().promiseGet("/store/storemoduleendtime/page?store_id=" + os.stoid + "&type=5", {}).then(res => { - var o = res; - if (o.data.code == 0) { - var ob = { isout: 0, isbuy: 1 }; - var arr = o.data.data.pageData; - var isbuy = 0; - //----如果数组不为空---- - if (arr.length > 0) { - arr.forEach(function (val, ind) { - if (val.is_sy == 0 && val.type == 5) { - isbuy = 1; - var now = ut.gettimestamp(); - if (now > val.end_time) ob.isout = 1; - return false; - } - }) - } - ob.isbuy = isbuy; - - var pages = getCurrentPages(); //获取加载的页面 - var currentPage = pages[pages.length - 1]; //获取当前页面的对象 - - // console.log("当前路由"); - // console.log(currentPage.route); - - - th.setappdata(ob); - - if (ob.isbuy && !ob.isout) { - th.onload_init(); - } - } else { - th.onload_init(); - } - }) - } - else { - th.onload_init(); - } - }) - - if (first_leader) { - //-- user_id代过来免登录 -- - 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().request.promiseGet('/api/weshop/redmoney/redConfig/get/' + getApp().globalData.setting.stoid, { - data: {} - }).then(function (data) { - let code = data.data.code; - if (code == 0) { - - th.setData({ - showHongbao: true, - }); - } else if (code == -1) { - th.setData({ - showHongbao: false, - }); - }; - }); - - - // console.log(9090909); - //看一下商家是否开通了权益 - //--初始化是否有打勾-- - getApp().request.promiseGet("/api/weshop/users/grade/vip/init/get", { - data: { - storeId: os.stoid - } - }).then(res => { - if (res.data.data) { - var is_init = res.data.data.isBool; - th.setData({ - is_boot: is_init - }); - - if (!is_init) { - th.setData({ - swiperimage: [] - }); - } - } - }) - - //调用底部导航 - //getApp().globalData.url=th.data.url - //t.editTabBar(th,o.stoid,th.data.url); - - }, - - async onload_init() { - var th = this; - await this.init_load(); - //显示的时候要开启计时器 - this.data.is_timer = 1; - //如果是自定义模板 - if (this.data.isTemplate) { - //---先获取会员--- - //t.getUserFir(function () { - if(getApp().globalData.user_id) { - th.is_festival(); - var new_nav = th.data.new_nav; - if (new_nav == "") { - th.is_new(); - } - // sty - setTimeout(function () { - if (getApp().globalData.user_id) getApp().requestCardNum(th); - }, 500) - } - - //}); - } else { - await this.init_fir(); - wx.setNavigationBarColor({ - frontColor: '#ffffff', // 必写项 - backgroundColor: '#ff7295', // 必写项 - }) - } - - //--正再拼团中的处理-- - var url = "/api/weshop/order/pageTuan?pt_status=2&is_pt=1&store_id=" + os.stoid + "&pageSize=6&page=1" - await getApp().request.promiseGet(url, {}).then(res => { - if (res.data.code == 0 && res.data.data && res.data.data.pageData) { - th.data.pt_timer_arr = res.data.data.pageData; - } - }) - if (th.data.pt_timer_arr && th.data.pt_timer_arr.length > 0) { - for (var i in th.data.pt_timer_arr) { - var p_item = th.data.pt_timer_arr[i]; - await getApp().request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + p_item.user_id, { - 1: 1 - }).then(res => { - th.data.pt_timer_arr[i].head_pic = res.data.data.head_pic; - th.data.pt_timer_arr[i].nickname = res.data.data.nickname; - }) - } - th.Interval_pt(); - } - - //---处理正在6个分类---- - await getApp().request.promiseGet("/api/weshop/goodscategory/page", { - data: { - store_id: os.stoid, - pageSize: 5, - is_show: 1, - level: 1 - } - }).then(res => { - if (res.data.data) { - var gd_category = res.data.data.pageData; - th.setData({ - gd_category: gd_category - }); - } - }) - }, - - - //关闭新用户领取广告 - close_disgraceful: function () { - var th = this; - th.setData({ - is_disgraceful: 0 - }) - }, - - async onShow() { - - getApp().check_can_share(); + data: { + url: o.imghost, + swiperimage: [{ + image: "/miniapp/images/title.png", + nav_url: 0 + }], + resourceUrl: o.resourceUrl, + logo: o.appLogo, + homeData: null, + saleGoods: null, + sale: { + countTime: { + hour: 0, + minute: 0, + second: 0 + }, + diffTime: 0, + good: null, + }, + timer: null, + recommend: null, + scrollTop: 0, + currentPage: 1, + banner: null, + + appdata: null, + saleGoods: null, //秒杀数据 + pindGoods: null, //拼单数据 + newGoods: null, //新商品 + hotGoods: null, //hot商品 + preGoods: null, //预售商品 + //----控制是是否显示计时器--- + is_timer: 1, + ishow: 0, + //是不是显示自定义模板 + isTemplate: 0, + template_arr: null, + bgcolor_t: '', + + banner_index: 0, + flash_index: 0, + pt_index: 0, + + pt_timer_item: null, + pt_timer_arr: null, + pt_timer: null, + pt_timer_active: 0, + //看下商家是否开通会员权益 + is_boot: 0, + gd_category: null, + is_no_more: 0, + max_sw_height: 0, //banner的最大高度 + is_disgraceful: 0, //是否显示新人广告 + new_image: "", //新人有礼弹窗图片 + new_nav: "", //新人页面跳转地址 + w_holiday_pop: 0, + + showHongbao: false, + showHongbaoSmall: false, + + is_full_screen_show: 0, //全屏显示 + sec_show: 3, //倒计时的秒数 + full_ad: null, //全屏广告 + full_screen: 0, //全屏广告 + is_ok_h5: 0, //判断要不要显示关注二维码 + }, + + onLoad: async function (tt) { + wx.showShareMenu({ + withShareTicket:true, + menus:['shareAppMessage','shareTimeline'] + }) + var th = this; + var first_leader = tt.first_leader; + if (!first_leader && tt.scene) { + var first_leader_str = decodeURIComponent(tt.scene); + var f_arr = first_leader_str.split("_"); + first_leader = f_arr[0] && parseFloat(f_arr[0]) > 0 ? f_arr[0] : null; + //注册门店 + if (f_arr[1] && parseFloat(f_arr[1]) > 0) { + getApp().globalData.store_number = f_arr[1]; + } + } + + getApp().getConfig(function (e) { + //--首页的问题-- + if (getApp().globalData.config && getApp().globalData.config.store_name != undefined && getApp().globalData.config.store_name != null) { + wx.setNavigationBarTitle({ + title: getApp().globalData.config.store_name, + }); + } else { + wx.setNavigationBarTitle({ + title: getApp().globalData.setting.appName, + }); + }; + }); + + + var th = this; + getApp().getConfig2(function (config2) { + if (config2 && config2.is_overdue == 1) { + getApp().promiseGet("/store/storemoduleendtime/page?store_id=" + os.stoid + "&type=5", {}).then(res => { + var o = res; + if (o.data.code == 0) { + var ob = { isout: 0, isbuy: 1 }; + var arr = o.data.data.pageData; + var isbuy = 0; + //----如果数组不为空---- + if (arr.length > 0) { + arr.forEach(function (val, ind) { + if (val.is_sy == 0 && val.type == 5) { + isbuy = 1; + var now = ut.gettimestamp(); + if (now > val.end_time) ob.isout = 1; + return false; + } + }) + } + ob.isbuy = isbuy; + + var pages = getCurrentPages(); //获取加载的页面 + var currentPage = pages[pages.length - 1]; //获取当前页面的对象 + + // console.log("当前路由"); + // console.log(currentPage.route); + + + th.setappdata(ob); + + if (ob.isbuy && !ob.isout) { + th.onload_init(); + } + } else { + th.onload_init(); + } + }) + } + else { + th.onload_init(); + } + }) + + if (first_leader) { + //-- user_id代过来免登录 -- + 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().request.promiseGet('/api/weshop/redmoney/redConfig/get/' + getApp().globalData.setting.stoid, { + data: {} + }).then(function (data) { + let code = data.data.code; + if (code == 0) { + + th.setData({ + showHongbao: true, + }); + } else if (code == -1) { + th.setData({ + showHongbao: false, + }); + }; + }); + + + // console.log(9090909); + //看一下商家是否开通了权益 + //--初始化是否有打勾-- + getApp().request.promiseGet("/api/weshop/users/grade/vip/init/get", { + data: { + storeId: os.stoid + } + }).then(res => { + if (res.data.data) { + var is_init = res.data.data.isBool; + th.setData({ + is_boot: is_init + }); + + if (!is_init) { + th.setData({ + swiperimage: [] + }); + } + } + }) + + + + //调用底部导航 + //getApp().globalData.url=th.data.url + //t.editTabBar(th,o.stoid,th.data.url); + + }, + + async onload_init() { + var th = this; + await this.init_load(); + //显示的时候要开启计时器 + this.data.is_timer = 1; + //如果是自定义模板 + if (this.data.isTemplate) { + //---先获取会员--- + //t.getUserFir(function () { + if (getApp().globalData.user_id) { + th.is_festival(); + var new_nav = th.data.new_nav; + if (new_nav == "") { + th.is_new(); + } + // sty + setTimeout(function () { + if (getApp().globalData.user_id) getApp().requestCardNum(th); + }, 500) + } + + //}); + } else { + await this.init_fir(); + wx.setNavigationBarColor({ + frontColor: '#ffffff', // 必写项 + backgroundColor: '#ff7295', // 必写项 + }) + } + + //--正再拼团中的处理-- + var url = "/api/weshop/order/pageTuan?pt_status=2&is_pt=1&store_id=" + os.stoid + "&pageSize=6&page=1" + await getApp().request.promiseGet(url, {}).then(res => { + if (res.data.code == 0 && res.data.data && res.data.data.pageData) { + th.data.pt_timer_arr = res.data.data.pageData; + } + }) + if (th.data.pt_timer_arr && th.data.pt_timer_arr.length > 0) { + for (var i in th.data.pt_timer_arr) { + var p_item = th.data.pt_timer_arr[i]; + await getApp().request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + p_item.user_id, { + 1: 1 + }).then(res => { + th.data.pt_timer_arr[i].head_pic = res.data.data.head_pic; + th.data.pt_timer_arr[i].nickname = res.data.data.nickname; + }) + } + th.Interval_pt(); + } + + //---处理正在6个分类---- + await getApp().request.promiseGet("/api/weshop/goodscategory/page", { + data: { + store_id: os.stoid, + pageSize: 5, + is_show: 1, + level: 1 + } + }).then(res => { + if (res.data.data) { + var gd_category = res.data.data.pageData; + th.setData({ + gd_category: gd_category + }); + } + }) + }, + + + //关闭新用户领取广告 + close_disgraceful: function () { + var th = this; + th.setData({ + is_disgraceful: 0 + }) + }, + + async onShow() { + + getApp().check_can_share(); + + this.getTabBar().setData({ + cartGoodsNum: getApp().globalData.cartGoodsNum + }) + var th = this; + //-- 登录回来判断弹框 -- + var user_id = getApp().globalData.user_id; + + if (!user_id) { + var userinfo = wx.getStorageSync('userinfo'); + if (userinfo) user_id = userinfo.user_id + } + + if (user_id) { + th.is_festival(); + var new_nav = th.data.new_nav; + if (new_nav == "") { + th.is_new(); + } + } + + console.log(this.data.isTemplate, '首页'); + + if (!this.data.isTemplate) { + var pre_data = { store_id: os.stoid, is_end: 0, timetype: 1, isuse: 1 }; + if (user_id) { + pre_data.user_id = user_id; + } + + getApp().request.get("/api/weshop/marketing/marketingPresellList/page", { + data: pre_data, + success: function (e) { + if (e.data.code == 0 && e.data.data.pageData && e.data.data.pageData.length > 0) { + var pre_data = e.data.data.pageData; + var arr = new Array(); + //--三个三个一组--- + for (var i = 0; i < pre_data.length; i += 3) { + arr.push(pre_data.slice(i, i + 3)); + } + th.setData({ + preGoods: arr + }); + } else { + th.setData({ + preGoods: null + }); + } + } + }) + // 获取幸运购活动列表 + getApp().request.promiseGet('/api/weshop/prom/luckyActivity/page', { + data: { + store_id: getApp().globalData.setting.stoid, + is_end: 0, + timetype: 1, + } + }).then(res => { + if (res.data.code == 0) { + th.setData({ + luckGo_list: res.data.data.pageData.slice(0, 3), + }); + } + }); + + //-----秒杀----- + var flash_data = null; + var f_req = { + store_id: os.stoid, + timetype: 2, + is_end: 0, + is_show: 1, + pageSize: 9, + user_id: 0 + }; + if (user_id) f_req.user_id = user_id; + //--获取活动-- + await getApp().request.promiseGet("/api/ms/flash_sale/spikepage", { + data: f_req, + }).then(res => { + var e = res; + if (e.data.code == 0) { + flash_data = e.data.data.pageData; + if (flash_data == null || flash_data.length <= 0) return false; + + //当前时间戳 + var nt = ut.gettimestamp(); + + flash_data.forEach(function (val, ind) { + + if (val.user_price) val.price = val.user_price; + if (val.start_time > nt) { + flash_data[ind].status = 0; + } else if (val.end_time > nt) { + flash_data[ind].status = 1; + } + + if (val.buy_num >= val.goods_num) { + flash_data[ind].status = 2; + } + }); + + var promisies = []; + for (const key in flash_data) { + if (Object.hasOwnProperty.call(flash_data, key)) { + const val = flash_data[key]; + promisies[key] = getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + + os.stoid + "/1/" + val.id, + {} + ).then(res => { + if (res.data.code == 0) { + if (res.data.data <= 0) flash_data[key].status = 2; + }; + }); + } + } + + Promise.all(promisies).then(() => { + var arr = new Array(); + //--三个三个一组--- + for (var i = 0; i < flash_data.length; i += 3) { + arr.push(flash_data.slice(i, i + 3)); + } + + th.setData({ + saleGoods: arr + }); + }); + + + + } + }); + + } + + + + + + + + + + //优惠券要实时更新 + getApp().getConfig2(function (e) { + var json_d = JSON.parse(e.switch_list); + th.setData({ is_closecoupon: json_d.is_closecoupon }) + th.setData({ is_topstore: json_d.is_show_storeselect }) + if (json_d.is_gz_h5) th.setData({ is_gz_h5: json_d.is_gz_h5 }) + }, 1) + + if (typeof this.getTabBar === 'function' && this.getTabBar()) { + var index = getApp().getPageIndex(this); this.getTabBar().setData({ - cartGoodsNum: getApp().globalData.cartGoodsNum + active: index //数字是当前页面在tabbar的索引 }) - var th = this; - //-- 登录回来判断弹框 -- - var user_id=getApp().globalData.user_id; - - if(!user_id){ - var userinfo=wx.getStorageSync('userinfo'); - if(userinfo) user_id=userinfo.user_id - } - - if (user_id) { - th.is_festival(); - var new_nav = th.data.new_nav; - if (new_nav == "") { - th.is_new(); - } - } - - console.log(this.data.isTemplate,'首页'); - - if(!this.data.isTemplate){ - var pre_data={store_id:os.stoid,is_end:0,timetype:1,isuse:1}; - if(user_id){ - pre_data.user_id= user_id; - } - - getApp().request.get("/api/weshop/marketing/marketingPresellList/page",{ - data:pre_data, - success:function (e) { - if(e.data.code==0 && e.data.data.pageData && e.data.data.pageData.length>0 ){ - var pre_data=e.data.data.pageData; - var arr = new Array(); - //--三个三个一组--- - for (var i = 0; i < pre_data.length; i += 3) { - arr.push(pre_data.slice(i, i + 3)); - } - th.setData({ - preGoods: arr - }); - }else{ - th.setData({ - preGoods: null - }); - } - } - }) - - // 获取幸运购活动列表 - getApp().request.promiseGet('/api/weshop/prom/luckyActivity/page', { - data: { - store_id: getApp().globalData.setting.stoid, - is_end: 0, - timetype: 1, - } - }).then(res => { - if(res.data.code == 0) { - th.setData({ - luckGo_list: res.data.data.pageData.slice(0,3), - }); - } - }); - - //-----秒杀----- - var flash_data = null; - var f_req={ - store_id: os.stoid, - timetype: 2, - is_end: 0, - is_show: 1, - pageSize: 9, - user_id:0 - }; - if(user_id) f_req.user_id=user_id; - //--获取活动-- - await getApp().request.promiseGet("/api/ms/flash_sale/spikepage", { - data:f_req , - }).then(res => { - var e = res; - if (e.data.code == 0) { - flash_data = e.data.data.pageData; - if (flash_data == null || flash_data.length <= 0) return false; - - //当前时间戳 - var nt = ut.gettimestamp(); - - flash_data.forEach(function (val, ind) { - - if(val.user_price) val.price=val.user_price; - if (val.start_time > nt) { - flash_data[ind].status = 0; - } else if (val.end_time > nt) { - flash_data[ind].status = 1; - } - - if (val.buy_num >= val.goods_num){ - flash_data[ind].status = 2; - } - }); - - var promisies = []; - for (const key in flash_data) { - if (Object.hasOwnProperty.call(flash_data, key)) { - const val = flash_data[key]; - promisies[key] = getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + - os.stoid + "/1/" + val.id, - {} - ).then(res => { - if (res.data.code == 0) { - if (res.data.data <= 0) flash_data[key].status = 2; - }; - }); - } - } - - Promise.all(promisies).then(() => { - var arr = new Array(); - //--三个三个一组--- - for (var i = 0; i < flash_data.length; i += 3) { - arr.push(flash_data.slice(i, i + 3)); - } - - th.setData({ - saleGoods: arr - }); - }); - - - - } - }); - - } - - - - - - - - - - //优惠券要实时更新 - getApp().getConfig2(function (e) { - var json_d = JSON.parse(e.switch_list); - th.setData({ is_closecoupon: json_d.is_closecoupon }) - th.setData({ is_topstore: json_d.is_show_storeselect }) - if(json_d.is_gz_h5) th.setData({is_gz_h5:json_d.is_gz_h5}) - }, 1) - - if (typeof this.getTabBar === 'function' && this.getTabBar()) { - var index = getApp().getPageIndex(this); - this.getTabBar().setData({ - active: index //数字是当前页面在tabbar的索引 - }) - getApp().requestCardNum(this); - } - - var th = this; - - var show = getApp().globalData.isLoad_ad; - - if(!show){ - setTimeout(function () { - full_screen.get_the_full_screen(th); - }, 800); - getApp().globalData.isLoad_ad=1; - if (!th.data.f_hidden) { - setTimeout(function () { - th.setData({ f_hidden: 1 }) - wx.hideLoading(); - }, 960) - } - } else { - th.setData({ f_hidden: 1 }) - } - - setTimeout(function () { - const query = wx.createSelectorQuery(); - query.select('#off_top').boundingClientRect(); - query.exec((res) => { - if(res && res[0] && res[0].height>0){ - th.setData({is_ok_h5:1}); - } - }) - },3600); - - }, - //当隐藏的时候就关闭计时器 - onHide: function () { - this.data.is_timer = 0; - if (this.data.pt_timer) clearInterval(this.data.pt_timer); - if (this.data.w_holiday_pop) clearInterval(this.data.w_holiday_pop); - if (this.data.full_screen) clearInterval(this.data.full_screen); - this.data.w_holiday_pop = 0; - - }, - - //同步初始加载 - async init_load() { - var th = this; - //因为营销版本的功能包含了自定义模板的功能,是同时的 - //读取全局是否有弄自定义模板 - await api.get_template_fir(o.stoid).then(res => { - var data = res.data.data; - if (data && data.length > 0) { - var temp_data = data[0]; - var t_arr = JSON.parse(temp_data.json_str); - - th.setData({ - template_arr: t_arr, - isTemplate: 1, - bgcolor_t: temp_data.bkcolor - }); - - //---如果有设定顶部的颜色的时候-- - if (temp_data.top_color && temp_data.top_color != 'null') { - - var top_w_color = "#ffffff"; - if (temp_data.top_word_color && temp_data.top_word_color == 'black') { - top_w_color = "#000000"; - } - wx.setNavigationBarColor({ - frontColor: top_w_color, // 必写项 - backgroundColor: temp_data.top_color, // 必写项 - }) - } - } - }) - - - }, - //---读取数据内容--- - async init_fir() { - console.log('init_fir'); - var th = this; - //----广告---- - var e = this; - await getApp().request.promiseGet("/api/weshop/ad/page?pid=2&store_id=" + o.stoid, { - data: { - enabled: 1 - } - }).then(res => { - - if (res.data.code == 0 && res.data.data.pageData && res.data.data.pageData.length > 0) { - var a = res.data.data.pageData; - var arr = new Array(); - for (var i = 0; i < a.length; i++) { - var tt = { - 'ad_code': o.imghost + a[i].ad_code, - 'media_link': '', - 'ad_weapplink': a[i].ad_weapplink - }; - arr.push(tt); - } - if (arr.length > 0) e.setData({ - banner: arr, - }); - - wx.stopPullDownRefresh(); - } - }) - let user_id=getApp().globalData.user_id; - - //----拼单----- - await getApp().request.promiseGet("/api/weshop/teamlist/pageteam/2", { - data: { - store_id: os.stoid, - is_end: 0, - is_show: 1, - pageSize: 6, - user_id, - } - }).then(res => { - var e = res; - if (e.data.code == 0) { - var pd_data = e.data.data.pageData; - - if (pd_data.length == 0) return; - - //获取当前 - var nt = ut.gettimestamp(); - pd_data.forEach(function (val, ind) { - if (val.start_time > nt) pd_data[ind].status = 0; - else if (val.end_time > nt) pd_data[ind].status = 1; - if (val.buy_num >= val.goods_num) pd_data[ind].status = 2; - }); - - //获取当前时间,比较拼团中还在未开始 - var timestamp = new Date().getTime(); - var is_team_tepy; - for (var j = 0; j < pd_data.length; j++) { - pd_data[j].is_team_tepy = 1; - if (timestamp < pd_data[j].start_time * 1000) { - var is_team_tepy; - pd_data[j].is_team_tepy = 0; - } - } - - var arr = new Array(); - //--2个2个一组--- - for (var i = 0; i < pd_data.length; i += 2) { - - arr.push(pd_data.slice(i, i + 2)); - } - - th.setData({ - pindGoods: arr - }); - th.countDown2(); - } - }) - - //------新品------- - await getApp().request.promiseGet("/api/weshop/goods/page?page=1", { - data: { - is_mainshow: 1, - isonsale: 1, - is_on_sale: 1, - store_id: o.stoid, - pageSize: 9, - is_new: 1, - orderField: "sort" - } - }).then(res => { - var e = res; - if (e.data.code == 0) { - var new_data = e.data.data.pageData; - var arr = new Array(); - //--三个三个一组--- - for (var i = 0; i < new_data.length; i += 3) { - arr.push(new_data.slice(i, i + 3)); - } - th.setData({ - newGoods: arr, - }); - } - }) - - //------热卖------- - await getApp().request.promiseGet("/api/weshop/goods/page?page=1", { - data: { - is_mainshow: 1, - isonsale: 1, - is_on_sale: 1, - store_id: o.stoid, - pageSize: 9, - is_hot: 1, - orderField: "sort" - } - }).then(res => { - var e = res; - if (e.data.code == 0) { - var new_data = e.data.data.pageData; - var arr = new Array(); - //--三个三个一组--- - for (var i = 0; i < new_data.length; i += 3) { - arr.push(new_data.slice(i, i + 3)); - } - console.log(arr); - th.setData({ - hotGoods: arr, - }); - } - }) - - //---调用信息--- - // this.requestRecommend(); - this.setData({ - ishow: 1 - }); - - //---先获取会员--- - //t.getUserFir(function () { - if(getApp().globalData.user_id) { - th.is_festival(); - var new_nav = th.data.new_nav; - if (new_nav == "") { - th.is_new(); + getApp().requestCardNum(this); + } + + var th = this; + + var show = getApp().globalData.isLoad_ad; + + if (!show) { + setTimeout(function () { + full_screen.get_the_full_screen(th); + }, 800); + getApp().globalData.isLoad_ad = 1; + if (!th.data.f_hidden) { + setTimeout(function () { + th.setData({ f_hidden: 1 }) + wx.hideLoading(); + }, 960) + } + } else { + th.setData({ f_hidden: 1 }) + } + + setTimeout(function () { + const query = wx.createSelectorQuery(); + query.select('#off_top').boundingClientRect(); + query.exec((res) => { + if (res && res[0] && res[0].height > 0) { + th.setData({ is_ok_h5: 1 }); + } + }) + }, 3600); + + }, + //当隐藏的时候就关闭计时器 + onHide: function () { + this.data.is_timer = 0; + if (this.data.pt_timer) clearInterval(this.data.pt_timer); + if (this.data.w_holiday_pop) clearInterval(this.data.w_holiday_pop); + if (this.data.full_screen) clearInterval(this.data.full_screen); + this.data.w_holiday_pop = 0; + + }, + + //同步初始加载 + async init_load() { + var th = this; + //因为营销版本的功能包含了自定义模板的功能,是同时的 + //读取全局是否有弄自定义模板 + await api.get_template_fir(o.stoid).then(res => { + var data = res.data.data; + if (data && data.length > 0) { + var temp_data = data[0]; + var t_arr = JSON.parse(temp_data.json_str); + + th.setData({ + template_arr: t_arr, + isTemplate: 1, + bgcolor_t: temp_data.bkcolor + }); + + //---如果有设定顶部的颜色的时候-- + if (temp_data.top_color && temp_data.top_color != 'null') { + + var top_w_color = "#ffffff"; + if (temp_data.top_word_color && temp_data.top_word_color == 'black') { + top_w_color = "#000000"; + } + wx.setNavigationBarColor({ + frontColor: top_w_color, // 必写项 + backgroundColor: temp_data.top_color, // 必写项 + }) + } + } + }) + + + }, + //---读取数据内容--- + async init_fir() { + console.log('init_fir'); + var th = this; + //----广告---- + var e = this; + await getApp().request.promiseGet("/api/weshop/ad/page?pid=2&store_id=" + o.stoid, { + data: { + enabled: 1 + } + }).then(res => { + + if (res.data.code == 0 && res.data.data.pageData && res.data.data.pageData.length > 0) { + var a = res.data.data.pageData; + var arr = new Array(); + for (var i = 0; i < a.length; i++) { + var tt = { + 'ad_code': o.imghost + a[i].ad_code, + 'media_link': '', + 'ad_weapplink': a[i].ad_weapplink + }; + arr.push(tt); + } + if (arr.length > 0) e.setData({ + banner: arr, + }); + + wx.stopPullDownRefresh(); + } + }) + let user_id = getApp().globalData.user_id; + + //----拼单----- + await getApp().request.promiseGet("/api/weshop/teamlist/pageteam/2", { + data: { + store_id: os.stoid, + is_end: 0, + is_show: 1, + pageSize: 6, + user_id, + } + }).then(res => { + var e = res; + if (e.data.code == 0) { + var pd_data = e.data.data.pageData; + + if (pd_data.length == 0) return; + + //获取当前 + var nt = ut.gettimestamp(); + pd_data.forEach(function (val, ind) { + if (val.start_time > nt) pd_data[ind].status = 0; + else if (val.end_time > nt) pd_data[ind].status = 1; + if (val.buy_num >= val.goods_num) pd_data[ind].status = 2; + }); + + //获取当前时间,比较拼团中还在未开始 + var timestamp = new Date().getTime(); + var is_team_tepy; + for (var j = 0; j < pd_data.length; j++) { + pd_data[j].is_team_tepy = 1; + if (timestamp < pd_data[j].start_time * 1000) { + var is_team_tepy; + pd_data[j].is_team_tepy = 0; + } + } + + var arr = new Array(); + //--2个2个一组--- + for (var i = 0; i < pd_data.length; i += 2) { + + arr.push(pd_data.slice(i, i + 2)); + } + + th.setData({ + pindGoods: arr + }); + th.countDown2(); + } + }) + + //------新品------- + await getApp().request.promiseGet("/api/weshop/goods/page?page=1", { + data: { + is_mainshow: 1, + isonsale: 1, + is_on_sale: 1, + store_id: o.stoid, + pageSize: 9, + is_new: 1, + orderField: "sort" + } + }).then(res => { + var e = res; + if (e.data.code == 0) { + var new_data = e.data.data.pageData; + var arr = new Array(); + //--三个三个一组--- + for (var i = 0; i < new_data.length; i += 3) { + arr.push(new_data.slice(i, i + 3)); + } + th.setData({ + newGoods: arr, + }); + } + }) + + //------热卖------- + await getApp().request.promiseGet("/api/weshop/goods/page?page=1", { + data: { + is_mainshow: 1, + isonsale: 1, + is_on_sale: 1, + store_id: o.stoid, + pageSize: 9, + is_hot: 1, + orderField: "sort" + } + }).then(res => { + var e = res; + if (e.data.code == 0) { + var new_data = e.data.data.pageData; + var arr = new Array(); + //--三个三个一组--- + for (var i = 0; i < new_data.length; i += 3) { + arr.push(new_data.slice(i, i + 3)); + } + console.log(arr); + th.setData({ + hotGoods: arr, + }); + } + }) + + //---调用信息--- + // this.requestRecommend(); + this.setData({ + ishow: 1 + }); + + //---先获取会员--- + //t.getUserFir(function () { + if (getApp().globalData.user_id) { + th.is_festival(); + var new_nav = th.data.new_nav; + if (new_nav == "") { + th.is_new(); + } + + // sty + setTimeout(function () { + if (getApp().globalData.user_id) getApp().requestCardNum(th); + }, 500) + } + //}); + + setTimeout(function () { + var goods_list = th.selectComponent("#goods_list"); //组件的id + goods_list.init(); + goods_list.get_list(); + }, 2000) + }, + + //--判断小程序是否过期-- + setappdata: function (t) { + if (t && t.isout == 1) + wx.reLaunch({ + url: "/pages/error/error?msg=该商城已到期,暂停浏览!\r\n可联系:" + getApp().globalData.config.store_tel, + }); + if (t && t.isbuy == 0) + wx.reLaunch({ + url: "/pages/error/error?msg=还未购买小程序", + }); + }, + //---加载更多是靠这个函数---- + onReachBottom: function () { + var goods_list = this.selectComponent("#goods_list"); //组件的id + if (goods_list) goods_list.get_list(); + + if (getApp().globalData.func_list) { + for (let i in getApp().globalData.func_list) { + let item = getApp().globalData.func_list[i]; + item.re_show(); + } + } + }, + + onPullDownRefresh: function (e) { + this.data.recommend = null, this.data.currentPage = 1, n.resetConfig(), this.requestHomePage(), + this.requestRecommend(); + }, + requestRecommend() { }, + requestHomePage() { }, + + onUnload: function () { + this.destroyActivityTimer(); + }, + setCountTime: function (e) { + e.diffTime || (e.diffTime = new Date().getTime() - 1e3 * e.server_time), this.setData({ + "sale.diffTime": e.diffTime + }), this.setData({ + "sale.good": e.flash_sale_goods[0] + }), this.destroyActivityTimer(), this.createActivityTimer(); + }, + createActivityTimer: function () { + var e = this.data.sale, + t = this; + this.data.timer = setInterval(function () { + var a = 1e3 * e.good.end_time - new Date().getTime() + e.diffTime, + o = i.transTime(a); + a <= 0 ? t.requestHomePage() : t.setData({ + "sale.countTime": o + }); + }, 1e3); + }, + destroyActivityTimer: function () { + this.data.timer && (clearInterval(this.data.timer), this.data.timer = null); + }, + onPageScroll: function (e) { + this.data.scrollTop = e.scrollTop; + var t = getCurrentPages(); + "pages/index/index/index" == t[t.length - 1].route; + /*--(e.scrollTop > 10 ? wx.setNavigationBarColor({ + frontColor: "#ffffff", + backgroundColor: "#f95959" + }) : wx.setNavigationBarColor({ + frontColor: "#000000", + backgroundColor: "#eeeeee" + }));--*/ + }, + jumpSearch: function () { + wx.navigateTo({ + url: "/pages/goods/search/search" + }); + }, + onShareAppMessage: function (e) { + getApp().globalData.no_clear = 1; + var url = "/pages/index/index/index"; + var userInfo = getApp().globalData.userInfo; + //是分销商才带 + if (userInfo) { + url += "?first_leader=" + userInfo.user_id; + } + console.log("---首页---分享--"); + var title = "商城首页" + //分享 + if (getApp().globalData.config && getApp().globalData.config.store_name) { + title = getApp().globalData.config.store_name; + } else if (getApp().globalData.setting.appName) { + title = getApp().globalData.setting.appName; + } + + var ob = { + title: title, + path: url, + }; + console.log(ob); + return ob; + }, + + //图片失败,默认图片 + bind_bnerr: function (e) { + var _errImg = e.target.dataset.errorimg; + var _errObj = {}; + _errObj[_errImg] = this.data.url + "/miniapp/images/del/logo.jpg"; + this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; + }, + + //图片失败,默认图片 + bind_bnerr2: function (e) { + var _errImg = e.target.dataset.errorimg; + var _errurl = e.target.dataset.url; + var _errObj = {}; + _errObj[_errImg] = "/miniapp/images/default_g_img.gif"; + this.setData(_errObj); //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; + + }, + //图片失败,默认图片 + 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) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; + } + }, + + + //秒杀倒计时 + //---小于10的格式化函数---- + timeFormat(param) { + return param < 10 ? '0' + param : param; + }, + + //----秒杀倒计时函数----- + countDown() { + if (!this.data.is_timer) return false; + var th = this; + // 获取当前时间,同时得到活动结束时间数组 + var newTime = ut.gettimestamp(); + var List = this.data.saleGoods; + 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 + + var obj = null; + // 如果活动未结束,对时间进行处理 + if (endTime - newTime > 0) { + var time = (endTime - newTime); + // 获取天、时、分、秒 + var day = parseInt(time / (60 * 60 * 24)); + var hou = parseInt(time % (60 * 60 * 24) / 3600); + var min = parseInt(time % (60 * 60 * 24) % 3600 / 60); + var 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 = "saleGoods[" + j + "][" + i + "].djs"; + th.setData({ + [txt]: obj + }); + } + + } + setTimeout(th.countDown, 1000); + }, + + //----拼单倒计时函数----- + countDown2() { + if (!this.data.is_timer) return false; + + var th = this; + // 获取当前时间,同时得到活动结束时间数组 + var newTime = ut.gettimestamp(); + var List = this.data.pindGoods; + 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 = "pindGoods[" + j + "][" + i + "].djs"; + th.setData({ + [txt]: obj + }); + } + } + setTimeout(th.countDown2, 1000); + }, + + bannerSwiperChange: function (e) { + var index = e.detail.current; + this.setData({ + banner_index: index + }); + }, + flashSwiperChange: function (e) { + var index = e.detail.current; + this.setData({ + flash_index: index + }); + }, + ptSwiperChange: function (e) { + var index = e.detail.current; + this.setData({ + pt_index: index + }); + }, + + Interval_pt() { + var th = this; + this.data.pt_timer = setInterval(function () { + var item = ut.get_rand_item(th.data.pt_timer_arr); + th.setData({ + pt_timer_active: 1, + pt_timer_item: item + }); + setTimeout(function () { + th.setData({ + pt_timer_active: 0 + }); + }, 1500) + }, 4000); + }, + + + //---扫一扫的函数--- + getScancode: function () { + var _this = this; + getApp().globalData.no_clear = 1; + // 允许从相机和相册扫码 + wx.scanCode({ + success: (res) => { + var result = res.result; + wx.navigateTo({ + url: "/pages/goods/search/search?s_key=" + result, + }); + } + }) + }, + + //跳转到分类 + go_cate: function () { + getApp().goto("/pages/goods/categoryList/categoryList"); + }, + + // 幸运购跳转 + go_url: function (e) { + + var url = e.currentTarget.dataset.url; + getApp().goto(url); + + }, // + + bind_bnerr_icon: function (e) { + var def = "/miniapp/images/no_cate_def.png"; + var _err = e.currentTarget.dataset.err; + var ob = {}; + ob[_err] = def; + this.setData(ob); + }, + + //跳转到分类的商品列表 + go_cate2: function (t) { + var cid = t.currentTarget.dataset.cid; + var pid = t.currentTarget.dataset.pid; + var lurl = "/pages/goods/goodsList/goodsList?cat_id=" + cid + "&pid=" + pid; + wx.navigateTo({ + url: lurl + }); + }, + new_nav: function (e) { + var th = this; + var new_nav = th.data.new_nav; + getApp().goto(new_nav); + }, + //跳转到权益 + go_quanyi: function (t) { + 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/togoin/togoin', + //url: '/pages/getphone/getphone', + }) + return false; + } + getApp().goto("/pages/user/userqy/userqy"); + }, + + imageLoad: function (e) { + var imgwidth = e.detail.width; + var imgheight = e.detail.height; + //宽高比 + var ratio = imgwidth / imgheight; + //计算的高度值 + var viewHeight = 715 / ratio; + if (this.data.max_sw_height < viewHeight) this.setData({ + max_sw_height: viewHeight + }); + }, + //判断该用户是否是新会员 + is_new: function () { + var th = this; + wx.hideLoading(); + getApp().request.promiseGet("/api/weshop/marketing/newpeople/act/judge", { + data: { + storeId: os.stoid, + userId: d.user_id + } + }).then(res => { + if (res.data.code == 0) { + var actid = res.data.data.id; //活动id + var giftBagId = res.data.data.giftBagId; //礼包id + var new_nav = "/pages/giftpack/newvipgift/newvipgift?actId=" + actid + '&' + 'actType=' + 1 + '&' + 'giftBagId=' + giftBagId; + var new_image = res.data.data.imageurl; + var swiperimage = th.data.swiperimage; + var img = { + image: "/miniapp/images/newpeople/newpeople.png", + nav_url: new_nav + } + swiperimage.unshift(img); + th.setData({ + swiperimage: swiperimage, + new_image: new_image, + new_nav: new_nav + }) + + getApp().request.promiseGet("/api/weshop/marketing/newpeople/act/bound/judge", { + data: { + storeId: o.stoid, + userId: d.user_id + } + }).then(res => { + if (res.data.code == 0) { + th.setData({ + is_disgraceful: 1 + }) + } else { + th.check_holiday_pop(); //节日的弹窗 + } + + }) + } else { + th.check_holiday_pop(); //节日的弹窗 + } + + }) + + }, + + is_festival: function (e) { + var th = this; + var url = "/api/weshop/marketing/holiday/act/judge"; + getApp().request.promiseGet(url, { + data: { + storeId: os.stoid, + userId: d.user_id + } + }).then(res => { + if (res.data.code == 0) { + var actid = res.data.data.id; //活动id + var giftBagId = res.data.data.gifBagId; //礼包id + var nav_url = "/pages/giftpack/festival/festival?actId=" + actid + '&' + 'actType=' + 3 + '&' + 'giftBagId=' + giftBagId; + var swiperimage = th.data.swiperimage; + var actBoundImg = res.data.data.actBoundImg ? res.data.data.actBoundImg : '/miniapp/images/default_g_img.gif'; + + th.data.holiday_image = res.data.data.actImg; + th.data.holiday_url = nav_url; + + var img = { + image: actBoundImg, + nav_url: nav_url, + id: res.data.data.id, + type: 'festival' + } + + for (var i in swiperimage) { + var item = swiperimage[i]; + if (item.id == img.id && item.type == img.type) { + return false; + } + } + + swiperimage.unshift(img); + th.setData({ + swiperimage: swiperimage, + new_nav: nav_url + }) + } + }) + }, + + //弹出节日有礼 + check_holiday_pop: function () { + var th = this; + getApp().waitfor2(th, 'w_holiday_pop', 'holiday_image', function () { + //等到结果才显示 + if (th.data.holiday_image) { + th.setData({ + new_image: th.data.holiday_image, + new_nav: th.data.holiday_url, + is_disgraceful: 1 + }) + } + }) + }, + + go_ad: function (e) { + var url = e.currentTarget.dataset.url; + if (!url || url == '') return; + if (url[0] != '/') url = '/' + url; + getApp().goto(url); + }, + + //导航跳转 + nav_goto: function (e) { + var url = e.currentTarget.dataset.url; + if (!url || url == '') return; + if (url[0] != '/') url = '/' + url; + getApp().goto(url); + if (this.data.showHongbao) { + this.setData({ + showHongbao: false, + showHongbaoSmall: true, //显示抢红包小图标 + }); + } + }, + + //----跳转到搭配购买---- + go_test: function () { + wx.navigateTo({ url: "/packageA/pages/goods_share/goods_share", }) + }, + onShareTimeline() { + getApp().globalData.no_clear=1; + var store_name = getApp().globalData.config ? getApp().globalData.config.store_name : ''; + if (!store_name){ + store_name = getApp().globalData.setting.appName; + } + return { + title: '首页-' + '-' + store_name, } + }, - // sty - setTimeout(function () { - if (getApp().globalData.user_id) getApp().requestCardNum(th); - }, 500) - } - //}); - - setTimeout(function () { - var goods_list = th.selectComponent("#goods_list"); //组件的id - goods_list.init(); - goods_list.get_list(); - }, 2000) - }, - - //--判断小程序是否过期-- - setappdata: function (t) { - if (t && t.isout == 1) - wx.reLaunch({ - url: "/pages/error/error?msg=该商城已到期,暂停浏览!\r\n可联系:" + getApp().globalData.config.store_tel, - }); - if (t && t.isbuy == 0) - wx.reLaunch({ - url: "/pages/error/error?msg=还未购买小程序", - }); - }, - //---加载更多是靠这个函数---- - onReachBottom: function () { - var goods_list = this.selectComponent("#goods_list"); //组件的id - if (goods_list) goods_list.get_list(); - - if (getApp().globalData.func_list) { - for (let i in getApp().globalData.func_list) { - let item = getApp().globalData.func_list[i]; - item.re_show(); - } - } - }, - - onPullDownRefresh: function (e) { - this.data.recommend = null, this.data.currentPage = 1, n.resetConfig(), this.requestHomePage(), - this.requestRecommend(); - }, - requestRecommend() { }, - requestHomePage() { }, - - onUnload: function () { - this.destroyActivityTimer(); - }, - setCountTime: function (e) { - e.diffTime || (e.diffTime = new Date().getTime() - 1e3 * e.server_time), this.setData({ - "sale.diffTime": e.diffTime - }), this.setData({ - "sale.good": e.flash_sale_goods[0] - }), this.destroyActivityTimer(), this.createActivityTimer(); - }, - createActivityTimer: function () { - var e = this.data.sale, - t = this; - this.data.timer = setInterval(function () { - var a = 1e3 * e.good.end_time - new Date().getTime() + e.diffTime, - o = i.transTime(a); - a <= 0 ? t.requestHomePage() : t.setData({ - "sale.countTime": o - }); - }, 1e3); - }, - destroyActivityTimer: function () { - this.data.timer && (clearInterval(this.data.timer), this.data.timer = null); - }, - onPageScroll: function (e) { - this.data.scrollTop = e.scrollTop; - var t = getCurrentPages(); - "pages/index/index/index" == t[t.length - 1].route; - /*--(e.scrollTop > 10 ? wx.setNavigationBarColor({ - frontColor: "#ffffff", - backgroundColor: "#f95959" - }) : wx.setNavigationBarColor({ - frontColor: "#000000", - backgroundColor: "#eeeeee" - }));--*/ - }, - jumpSearch: function () { - wx.navigateTo({ - url: "/pages/goods/search/search" - }); - }, - onShareAppMessage: function (e) { - getApp().globalData.no_clear=1; - var url = "/pages/index/index/index"; - var userInfo = getApp().globalData.userInfo; - //是分销商才带 - if (userInfo) { - url += "?first_leader=" + userInfo.user_id; - } - console.log("---首页---分享--"); - var title = "商城首页" - //分享 - if (getApp().globalData.config && getApp().globalData.config.store_name) { - title = getApp().globalData.config.store_name; - } else if (getApp().globalData.setting.appName) { - title = getApp().globalData.setting.appName; - } - - var ob = { - title: title, - path: url, - }; - console.log(ob); - return ob; - }, - - //图片失败,默认图片 - bind_bnerr: function (e) { - var _errImg = e.target.dataset.errorimg; - var _errObj = {}; - _errObj[_errImg] = this.data.url + "/miniapp/images/del/logo.jpg"; - this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; - }, - - //图片失败,默认图片 - bind_bnerr2: function (e) { - var _errImg = e.target.dataset.errorimg; - var _errurl = e.target.dataset.url; - var _errObj = {}; - _errObj[_errImg] = "/miniapp/images/default_g_img.gif"; - this.setData(_errObj); //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; - - }, - //图片失败,默认图片 - 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) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; - } - }, - - - //秒杀倒计时 - //---小于10的格式化函数---- - timeFormat(param) { - return param < 10 ? '0' + param : param; - }, - - //----秒杀倒计时函数----- - countDown() { - if (!this.data.is_timer) return false; - var th = this; - // 获取当前时间,同时得到活动结束时间数组 - var newTime = ut.gettimestamp(); - var List = this.data.saleGoods; - 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 - - var obj = null; - // 如果活动未结束,对时间进行处理 - if (endTime - newTime > 0) { - var time = (endTime - newTime); - // 获取天、时、分、秒 - var day = parseInt(time / (60 * 60 * 24)); - var hou = parseInt(time % (60 * 60 * 24) / 3600); - var min = parseInt(time % (60 * 60 * 24) % 3600 / 60); - var 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 = "saleGoods[" + j + "][" + i + "].djs"; - th.setData({ - [txt]: obj - }); - } - - } - setTimeout(th.countDown, 1000); - }, - - //----拼单倒计时函数----- - countDown2() { - if (!this.data.is_timer) return false; - - var th = this; - // 获取当前时间,同时得到活动结束时间数组 - var newTime = ut.gettimestamp(); - var List = this.data.pindGoods; - 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 = "pindGoods[" + j + "][" + i + "].djs"; - th.setData({ - [txt]: obj - }); - } - } - setTimeout(th.countDown2, 1000); - }, - - bannerSwiperChange: function (e) { - var index = e.detail.current; - this.setData({ - banner_index: index - }); - }, - flashSwiperChange: function (e) { - var index = e.detail.current; - this.setData({ - flash_index: index - }); - }, - ptSwiperChange: function (e) { - var index = e.detail.current; - this.setData({ - pt_index: index - }); - }, - - Interval_pt() { - var th = this; - this.data.pt_timer = setInterval(function () { - var item = ut.get_rand_item(th.data.pt_timer_arr); - th.setData({ - pt_timer_active: 1, - pt_timer_item: item - }); - setTimeout(function () { - th.setData({ - pt_timer_active: 0 - }); - }, 1500) - }, 4000); - }, - - - //---扫一扫的函数--- - getScancode: function () { - var _this = this; - getApp().globalData.no_clear=1; - // 允许从相机和相册扫码 - wx.scanCode({ - success: (res) => { - var result = res.result; - wx.navigateTo({ - url: "/pages/goods/search/search?s_key=" + result, - }); - } - }) - }, - - //跳转到分类 - go_cate: function () { - getApp().goto("/pages/goods/categoryList/categoryList"); - }, - - // 幸运购跳转 - go_url: function (e) { - - var url = e.currentTarget.dataset.url; - getApp().goto(url); - - }, // - - bind_bnerr_icon: function (e) { - var def = "/miniapp/images/no_cate_def.png"; - var _err = e.currentTarget.dataset.err; - var ob = {}; - ob[_err] = def; - this.setData(ob); - }, - - //跳转到分类的商品列表 - go_cate2: function (t) { - var cid = t.currentTarget.dataset.cid; - var pid = t.currentTarget.dataset.pid; - var lurl = "/pages/goods/goodsList/goodsList?cat_id=" + cid + "&pid=" + pid; - wx.navigateTo({ - url: lurl - }); - }, - new_nav: function (e) { - var th = this; - var new_nav = th.data.new_nav; - getApp().goto(new_nav); - }, - //跳转到权益 - go_quanyi: function (t) { - 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/togoin/togoin', - //url: '/pages/getphone/getphone', - }) - return false; - } - getApp().goto("/pages/user/userqy/userqy"); - }, - - imageLoad: function (e) { - var imgwidth = e.detail.width; - var imgheight = e.detail.height; - //宽高比 - var ratio = imgwidth / imgheight; - //计算的高度值 - var viewHeight = 715 / ratio; - if (this.data.max_sw_height < viewHeight) this.setData({ - max_sw_height: viewHeight - }); - }, - //判断该用户是否是新会员 - is_new: function () { - var th = this; - wx.hideLoading(); - getApp().request.promiseGet("/api/weshop/marketing/newpeople/act/judge", { - data: { - storeId: os.stoid, - userId: d.user_id - } - }).then(res => { - if (res.data.code == 0) { - var actid = res.data.data.id; //活动id - var giftBagId = res.data.data.giftBagId; //礼包id - var new_nav = "/pages/giftpack/newvipgift/newvipgift?actId=" + actid + '&' + 'actType=' + 1 + '&' + 'giftBagId=' + giftBagId; - var new_image = res.data.data.imageurl; - var swiperimage = th.data.swiperimage; - var img = { - image: "/miniapp/images/newpeople/newpeople.png", - nav_url: new_nav - } - swiperimage.unshift(img); - th.setData({ - swiperimage: swiperimage, - new_image: new_image, - new_nav: new_nav - }) - - getApp().request.promiseGet("/api/weshop/marketing/newpeople/act/bound/judge", { - data: { - storeId: o.stoid, - userId: d.user_id - } - }).then(res => { - if (res.data.code == 0) { - th.setData({ - is_disgraceful: 1 - }) - } else { - th.check_holiday_pop(); //节日的弹窗 - } - - }) - } else { - th.check_holiday_pop(); //节日的弹窗 - } - - }) - - }, - - is_festival: function (e) { - var th = this; - var url = "/api/weshop/marketing/holiday/act/judge"; - getApp().request.promiseGet(url, { - data: { - storeId: os.stoid, - userId: d.user_id - } - }).then(res => { - if (res.data.code == 0) { - var actid = res.data.data.id; //活动id - var giftBagId = res.data.data.gifBagId; //礼包id - var nav_url = "/pages/giftpack/festival/festival?actId=" + actid + '&' + 'actType=' + 3 + '&' + 'giftBagId=' + giftBagId; - var swiperimage = th.data.swiperimage; - var actBoundImg = res.data.data.actBoundImg ? res.data.data.actBoundImg : '/miniapp/images/default_g_img.gif'; - - th.data.holiday_image = res.data.data.actImg; - th.data.holiday_url = nav_url; - - var img = { - image: actBoundImg, - nav_url: nav_url, - id: res.data.data.id, - type: 'festival' - } + // 关闭首页抢红包主弹窗,显示侧边栏抢红包小图标 + closeHongbao() { + this.setData({ + showHongbao: false, //关闭抢红包主弹窗 + showHongbaoSmall: true, //显示抢红包小图标 + }); + }, + + /*-- 全屏广告 --*/ + close_full_screen() { + this.setData({ is_full_screen_show: 0, sec_show: 0 }); + }, + //-- 跳转到满屏广告的链接 -- + go_full_ad() { + if (!this.data.full_ad) return false; + if (!this.data.full_ad.ad_weapplink) return false; + getApp().goto(this.data.full_ad.ad_weapplink); + this.close_full_screen(); + }, + + go_pre: function (e) { + var userInfo = getApp().globalData.userInfo; + if (!userInfo) { + getApp().goto("/pages/togoin/togoin"); + return false; + } + var url = e.currentTarget.dataset.url; + getApp().goto(url); + }, - for (var i in swiperimage) { - var item = swiperimage[i]; - if (item.id == img.id && item.type == img.type) { - return false; - } - } - swiperimage.unshift(img); - th.setData({ - swiperimage: swiperimage, - new_nav: nav_url - }) - } - }) - }, - - //弹出节日有礼 - check_holiday_pop: function () { - var th = this; - getApp().waitfor2(th, 'w_holiday_pop', 'holiday_image', function () { - //等到结果才显示 - if (th.data.holiday_image) { - th.setData({ - new_image: th.data.holiday_image, - new_nav: th.data.holiday_url, - is_disgraceful: 1 - }) - } - }) - }, - - go_ad: function (e) { - var url = e.currentTarget.dataset.url; - if (!url || url == '') return; - if (url[0] != '/') url = '/' + url; - getApp().goto(url); - }, - - //导航跳转 - nav_goto: function (e) { - var url = e.currentTarget.dataset.url; - if (!url || url == '') return; - if (url[0] != '/') url = '/' + url; - getApp().goto(url); - if (this.data.showHongbao) { - this.setData({ - showHongbao: false, - showHongbaoSmall: true, //显示抢红包小图标 - }); - } - }, - - //----跳转到搭配购买---- - go_test: function () { - wx.navigateTo({ url: "/packageA/pages/goods_share/goods_share", }) - }, - - - onShareTimeline() { - getApp().globalData.no_clear=1; - - // getApp().getConfig(function(t) { - // return { - // title: '首页-' + getApp().globalData.config.store_name, - // } - // }); - var store_name = getApp().globalData.config ? getApp().globalData.config.store_name : ''; - if (!store_name) - store_name = getApp().globalData.setting.appName; - return { - title: '首页-' + store_name, - } - }, - - - // 关闭首页抢红包主弹窗,显示侧边栏抢红包小图标 - closeHongbao() { - this.setData({ - showHongbao: false, //关闭抢红包主弹窗 - showHongbaoSmall: true, //显示抢红包小图标 - }); - }, - - /*-- 全屏广告 --*/ - close_full_screen() { - this.setData({ is_full_screen_show: 0, sec_show: 0 }); - }, - //-- 跳转到满屏广告的链接 -- - go_full_ad() { - if (!this.data.full_ad) return false; - if (!this.data.full_ad.ad_weapplink) return false; - getApp().goto(this.data.full_ad.ad_weapplink); - this.close_full_screen(); - }, - - go_pre:function (e) { - var userInfo=getApp().globalData.userInfo; - if(!userInfo){ - getApp().goto("/pages/togoin/togoin"); - return false; - } - var url=e.currentTarget.dataset.url; - getApp().goto(url); - }, - - -- libgit2 0.21.4