Authored by 邱骏

助力排队

... ... @@ -9,147 +9,148 @@ let yas;
let router = global.router;
Page({
data: {
tabSelected: 0,
refreshText: '下拉刷新',
footText: '内容加载中...',
userInfo: {},
tabBarArr: [
{
icon: '../../static/images/limit/icon_rmfs_n@3x.png',
iconSelected: '../../static/images/limit/icon_rmfs_p@3x.png',
name: '热门发售',
method: 'app.limitProduct.hotLimitProduct'
},
{
icon: '../../static/images/limit/icon_jjfs_n@3x.png',
iconSelected: '../../static/images/limit/icon_jjfs_p@3x.png',
name: '即将发售',
method: 'app.limitProduct.soonToSaleLimitProduct'
},
{
icon: '../../static/images/limit/icon_yjfs_n@3x.png',
iconSelected: '../../static/images/limit/icon_yjfs_p@3x.png',
name: '已经发售',
method: 'app.limitProduct.alreadySaleLimitProduct'
}
],
listData: [
{}, {}, {}
],
icon: {
clock: '../../static/images/limit/clock_left.png'
}
},
onLoad: function() {
yas = new Yas(app);
data: {
tabSelected: 0,
refreshText: '下拉刷新',
footText: '内容加载中...',
userInfo: {},
tabBarArr: [
{
icon: '../../static/images/limit/icon_rmfs_n@3x.png',
iconSelected: '../../static/images/limit/icon_rmfs_p@3x.png',
name: '热门发售',
method: 'app.limitProduct.hotLimitProduct'
},
{
icon: '../../static/images/limit/icon_jjfs_n@3x.png',
iconSelected: '../../static/images/limit/icon_jjfs_p@3x.png',
name: '即将发售',
method: 'app.limitProduct.soonToSaleLimitProduct'
},
{
icon: '../../static/images/limit/icon_yjfs_n@3x.png',
iconSelected: '../../static/images/limit/icon_yjfs_p@3x.png',
name: '已经发售',
method: 'app.limitProduct.alreadySaleLimitProduct'
}
],
listData: [
{}, {}, {}
],
icon: {
clock: '../../static/images/limit/clock_left.png'
}
},
onLoad: function () {
yas = new Yas(app);
this.getList(0, 1, 20, false);
},
onShow: function() {
yas.pageOpenReport();
},
onPullDownRefresh: function() {
this.setData({
refreshText: '加载中...'
});
this.getList(0, 1, 20, false);
},
onShow: function () {
yas.pageOpenReport();
},
onPullDownRefresh: function () {
this.setData({
refreshText: '加载中...'
});
this.getList(this.data.tabSelected, 1, 20, false).then(() => {
wx.stopPullDownRefresh();
this.setData({
refreshText: '下拉刷新'
});
});
this.getList(this.data.tabSelected, 1, 20, false).then(() => {
wx.stopPullDownRefresh();
this.setData({
refreshText: '下拉刷新'
});
});
},
onReachBottom: function() {
let page = this.data.listData[this.data.tabSelected].page;
let page_total = this.data.listData[this.data.tabSelected].page_total;
},
onReachBottom: function () {
let page = this.data.listData[this.data.tabSelected].page;
let page_total = this.data.listData[this.data.tabSelected].page_total;
if (page < page_total) {
page += 1;
this.getList(this.data.tabSelected, page, 20, true);
}
},
getUserInfo: function(e) {
console.log(e);
if (e.detail.errMsg === 'getUserInfo:ok') {
// AccountModel.decodeUserInfo();
}
app.setUserInfo(e.detail.userInfo);
this.setData({
userInfo: e.detail.userInfo,
hasUserInfo: true
});
},
tabChange: function(e) { // 切换TAB
let index = e.currentTarget.dataset.index;
if (page < page_total) {
page += 1;
this.getList(this.data.tabSelected, page, 20, true);
}
},
getUserInfo: function (e) {
console.log(e);
if (e.detail.errMsg === 'getUserInfo:ok') {
// AccountModel.decodeUserInfo();
}
app.setUserInfo(e.detail.userInfo);
this.setData({
userInfo: e.detail.userInfo,
hasUserInfo: true
});
},
tabChange: function (e) { // 切换TAB
let index = e.currentTarget.dataset.index;
if (index !== this.data.tabSelected) {
this.setData({
tabSelected: index
});
if (index !== this.data.tabSelected) {
this.setData({
tabSelected: index
});
// 如果listData没有数据,或者数据为空,则调用接口
if (!this.data.listData[index].limitProductVoList || this.data.listData[index].limitProductVoList.length === 0) {
this.getList(index, 1, 20, false);
}
}
},
// 如果listData没有数据,或者数据为空,则调用接口
if (!this.data.listData[index].limitProductVoList || this.data.listData[index].limitProductVoList.length === 0) {
this.getList(index, 1, 20, false);
}
}
},
/**
/**
* 获取限定发售列表
* index: tab的index,
* page:分页,
* limit: 每页数量,
* isBottom:是否是到达底部后触发
*/
getList: function(index, page, limit, isBottom) {
let method = this.data.tabBarArr[index].method;
let that = this;
getList: function (index, page, limit, isBottom) {
let method = this.data.tabBarArr[index].method;
let that = this;
this.setData({
footText: '内容加载中...'
});
this.setData({
footText: '内容加载中...'
});
return LimitModel.getLimitSaleList({
method: method,
page: page,
limit: limit
}).then(res => {
console.log(res.data);
if (res.data && res.data.limitProductVoList) {
// 获取到已有的data数据,对某部分数据进行赋值后再setData
let list = that.data.listData;
return LimitModel.getLimitSaleList({
method: method,
page: page,
limit: limit
}).then(res => {
console.log(res.data);
if (res.data && res.data.limitProductVoList) {
// 获取到已有的data数据,对某部分数据进行赋值后再setData
let list = that.data.listData;
if (isBottom) {
list[index].page = page;
list[index].limitProductVoList =
if (isBottom) {
list[index].page = page;
list[index].limitProductVoList =
list[index].limitProductVoList.concat(res.data.limitProductVoList);
} else {
list[index] = res.data;
}
that.setData({
listData: list,
footText: '暂无更多内容'
} else {
list[index] = res.data;
}
that.setData({
listData: list,
footText: '暂无更多内容'
});
}
});
}
});
},
navigateToDetail: function(e) { // 跳转到详情页
console.log(e);
let id = e.currentTarget.dataset.id;
let limitProductCode = e.currentTarget.dataset.code;
},
navigateToDetail: function (e) { // 跳转到详情页
console.log(e);
let id = e.currentTarget.dataset.id;
let limitProductCode = e.currentTarget.dataset.code;
if (app.getUid() && app.getUserInfo().wechat) {
router.go('productDetail', { limitProductCode });
} else {
let referer = getCurrentPages()[0].route;
if (app.getUid() && app.getUserInfo().wechat) {
router.go('productDetail', {limitProductCode});
} else {
let pages = getCurrentPages();
let referer = pages[pages.length - 1].route;
router.go('userCenter', { referer });
router.go('userCenter', {referer});
}
},
navigateToHome: function (e) { // 跳转到我的限购码
router.go('userCenter');
}
},
navigateToHome: function(e) { // 跳转到我的限购码
router.go('userCenter');
}
});
... ...
... ... @@ -160,6 +160,7 @@ Page(Object.assign({
};
} else if (res.from === 'button') {
// 用户点击分享按钮
console.log(`/pages/product/detail/detail?limitProductCode=${this.data.limitProductCode}&originUid=${app.getUid()}&originUnionID=${app.getUnionID()}`)
return {
title: params.TITLE, // 分享标题
desc: params.DESC, // 分享描述
... ...
... ... @@ -4,7 +4,8 @@ import event from '../../common/event';
import LimitModel from '../../models/limit/index';
import helper from '../../utils/helper';
import wx from '../../utils/wx';
import {Actionsheet} from '../../vendors/zanui/index';
import { Actionsheet } from '../../vendors/zanui/index';
import { stringify } from '../../vendors/query-stringify';
let app = getApp();
let router = global.router;
... ... @@ -102,7 +103,7 @@ Page(Object.assign({
tempScrollTop: 0, // 手动滚动页面时保存当前滚动的位置
showMsg: 0, // 0不显示提示框, 1显示提示框
hidePopup: 0, // 用于显示头像旁边的气泡 0:显示 1:不显示
hideInviteButton: 0, // 用户显示邀请按钮
hideInviteButton: 1, // 用户显示邀请按钮
actionSheet: {
componentId: 'shareActionSheet',
show: false,
... ... @@ -162,6 +163,11 @@ Page(Object.assign({
*/
onShow: function(options) {
setTimeout(this.hidePopup, 4000);
if (app.getUid()) {
this.setData({
hideInviteButton: 0
});
}
},
/**
... ... @@ -343,17 +349,20 @@ Page(Object.assign({
* 点击参加活动按钮
*/
joinInQueue: function(e) {
let uid = app.getUid() || this.data.test_uid[this.data.now_test_uid_index];
let uid = app.getUid();
let activityId = this.data.activityInfo.activityId;
let isEnd = this.data.activityInfo.isEnd === 0 ? 0 : 1;
if (activityId && uid && !isEnd) {
this.addQueue(this.data.activityInfo.activityId, uid);
} else if (isEnd) {
this.setData({
showMsg: 1
});
} else if(!uid) {
let pages = getCurrentPages();
let referer = pages[pages.length - 1].route + '?' + stringify(this.data.shareInfo);
router.go('userCenter', { referer });
}
},
... ...