|
@@ -16,13 +16,24 @@ const app = getApp();
|
|
Page({
|
|
Page({
|
|
data: {
|
|
data: {
|
|
|
|
|
|
- tabs: [],
|
|
|
|
|
|
+ tabs: [{
|
|
|
|
+ title: '足浴'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ title: '美甲'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ title: '附加服务'
|
|
|
|
+ }
|
|
|
|
+ ],
|
|
activeTab: 0,
|
|
activeTab: 0,
|
|
- productHeight: 0,
|
|
|
|
|
|
+ tabHeight: 500,
|
|
productList: [],
|
|
productList: [],
|
|
isLocation: false,
|
|
isLocation: false,
|
|
- pageNo: 1,
|
|
|
|
- pageSum: 0
|
|
|
|
|
|
+ pageNo: [1, 1, 1],
|
|
|
|
+ pageSum: [],
|
|
|
|
+ activeIndex: 0,
|
|
|
|
+ productHeight: 0
|
|
|
|
|
|
},
|
|
},
|
|
|
|
|
|
@@ -38,44 +49,56 @@ Page({
|
|
wx.setStorageSync('token', tokenData.token)
|
|
wx.setStorageSync('token', tokenData.token)
|
|
requestApi.HEAD.token = tokenData.token
|
|
requestApi.HEAD.token = tokenData.token
|
|
}
|
|
}
|
|
- if (!options.storeId){
|
|
|
|
- wx.getSetting({
|
|
|
|
- success: (res) => {
|
|
|
|
- let authSetting = res.authSetting
|
|
|
|
- if (authSetting['scope.userLocation']) {
|
|
|
|
- console.log('已授权地理位置')
|
|
|
|
- // 已授权
|
|
|
|
- self.getLocation();
|
|
|
|
- } else {
|
|
|
|
- // 未授权
|
|
|
|
- console.log('未授权地理位置');
|
|
|
|
- wx.getLocation({
|
|
|
|
- type: 'wgs84',
|
|
|
|
- async success(res) {
|
|
|
|
- console.log(res)
|
|
|
|
- const latitude = res.latitude
|
|
|
|
- const longitude = res.longitude
|
|
|
|
- wx.setStorageSync('lon', longitude)
|
|
|
|
- wx.setStorageSync('lat', latitude)
|
|
|
|
- const rs = await storeApi.getNearStore(latitude, longitude)
|
|
|
|
- console.log(rs.info);
|
|
|
|
- self.setData({
|
|
|
|
- locationFlag: true,
|
|
|
|
- storeInfo: rs.info
|
|
|
|
- })
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
|
|
+ if (!options.storeId) {
|
|
|
|
+ wx.getSetting({
|
|
|
|
+ success: (res) => {
|
|
|
|
+ let authSetting = res.authSetting
|
|
|
|
+ if (authSetting['scope.userLocation']) {
|
|
|
|
+ console.log('已授权地理位置')
|
|
|
|
+ // 已授权
|
|
|
|
+ self.getLocation();
|
|
|
|
+ } else {
|
|
|
|
+ // 未授权
|
|
|
|
+ console.log('未授权地理位置');
|
|
|
|
+ wx.getLocation({
|
|
|
|
+ type: 'wgs84',
|
|
|
|
+ async success(res) {
|
|
|
|
+ console.log(res)
|
|
|
|
+ const latitude = res.latitude
|
|
|
|
+ const longitude = res.longitude
|
|
|
|
+ wx.setStorageSync('lon', longitude)
|
|
|
|
+ wx.setStorageSync('lat', latitude)
|
|
|
|
+ const rs = await storeApi.getNearStore(latitude, longitude)
|
|
|
|
+ console.log(rs.info);
|
|
|
|
+ self.setData({
|
|
|
|
+ locationFlag: true,
|
|
|
|
+ storeInfo: rs.info
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ }
|
|
}
|
|
}
|
|
- }
|
|
|
|
- })
|
|
|
|
- }else {
|
|
|
|
- const rs = await storeApi.getStoreByI(options.storeId)
|
|
|
|
- self.setData({
|
|
|
|
- storeInfo: rs.info
|
|
|
|
|
|
+ })
|
|
|
|
+ } else {
|
|
|
|
+ const rs = await storeApi.getStoreByI(options.storeId)
|
|
|
|
+ self.setData({
|
|
|
|
+ storeInfo: rs.info
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //根据机型设置现有的tab-content盒子高度
|
|
|
|
+ let windowHeight = parseInt(wx.getSystemInfoSync().windowHeight) * parseInt(750 / wx.getSystemInfoSync().windowWidth) - 185
|
|
|
|
+
|
|
|
|
+ await this.getProductList();
|
|
|
|
+ let tabs = this.data.tabs;
|
|
|
|
+ let activeTab = this.data.activeTab;
|
|
|
|
+ console.log(tabs[activeTab].list.length)
|
|
|
|
+ let productHeight = tabs[activeTab].list.length * 170
|
|
|
|
+ this.setData({
|
|
|
|
+ tabHeight: windowHeight,
|
|
|
|
+ productHeight
|
|
})
|
|
})
|
|
- }
|
|
|
|
|
|
|
|
- // this.getProductHeight()
|
|
|
|
},
|
|
},
|
|
onShow: async function (op) {
|
|
onShow: async function (op) {
|
|
console.log(op)
|
|
console.log(op)
|
|
@@ -85,47 +108,49 @@ Page({
|
|
wx.setStorageSync('token', tokenData.token)
|
|
wx.setStorageSync('token', tokenData.token)
|
|
requestApi.HEAD.token = tokenData.token
|
|
requestApi.HEAD.token = tokenData.token
|
|
}
|
|
}
|
|
- if (self.data.chooseStoreId){
|
|
|
|
|
|
+ if (self.data.chooseStoreId) {
|
|
const rs = await storeApi.getStoreById(self.data.chooseStoreId)
|
|
const rs = await storeApi.getStoreById(self.data.chooseStoreId)
|
|
self.setData({
|
|
self.setData({
|
|
storeInfo: rs.info,
|
|
storeInfo: rs.info,
|
|
- chooseStoreId:0
|
|
|
|
|
|
+ chooseStoreId: 0
|
|
})
|
|
})
|
|
}
|
|
}
|
|
-
|
|
|
|
- var tabs = await this.getProductList(true);
|
|
|
|
- this.setData({
|
|
|
|
- tabs
|
|
|
|
- });
|
|
|
|
|
|
+
|
|
|
|
+ await this.getProductList();
|
|
|
|
+
|
|
},
|
|
},
|
|
|
|
|
|
|
|
|
|
getProductList: async function (refresh = false) {
|
|
getProductList: async function (refresh = false) {
|
|
const self = this
|
|
const self = this
|
|
- let pageNo = 1
|
|
|
|
- if (refresh) {
|
|
|
|
- pageNo = 1
|
|
|
|
- this.setData({
|
|
|
|
- pageNo
|
|
|
|
- })
|
|
|
|
- } else {
|
|
|
|
- pageNo = this.data.pageNo;
|
|
|
|
- }
|
|
|
|
|
|
+ let activeTab = self.data.activeTab;
|
|
|
|
+ let tabs = self.data.tabs;
|
|
|
|
+ let pageSum = self.data.pageSum;
|
|
|
|
+ let pageNo = self.data.pageNo;
|
|
|
|
+
|
|
|
|
+
|
|
|
|
|
|
- let productList = this.data.productList;
|
|
|
|
- const proList = await productApi.getProductList(pageNo, 4)
|
|
|
|
- let list = proList.list;
|
|
|
|
- if (pageNo == 1) {
|
|
|
|
- productList = list
|
|
|
|
|
|
+ let prolist = await productApi.getProductList(activeTab + 1, pageNo[activeTab],10);
|
|
|
|
+ pageSum[activeTab] = prolist.pageCount;
|
|
|
|
+ let list = prolist.list;
|
|
|
|
+
|
|
|
|
+ if (!tabs[activeTab].list) {
|
|
|
|
+ tabs[activeTab].list = [];
|
|
|
|
+ }
|
|
|
|
+ if (pageNo[activeTab] == 1) {
|
|
|
|
+ tabs[activeTab].list = list;
|
|
} else {
|
|
} else {
|
|
list.forEach((item) => {
|
|
list.forEach((item) => {
|
|
- productList.push(item)
|
|
|
|
|
|
+ let oldList = tabs[activeTab].list;
|
|
|
|
+ oldList.push(item);
|
|
|
|
+ tabs[activeTab].list = oldList;
|
|
})
|
|
})
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
self.setData({
|
|
self.setData({
|
|
- productList,
|
|
|
|
- pageSum: proList.pageCount
|
|
|
|
|
|
+ tabs,
|
|
|
|
+ pageSum
|
|
})
|
|
})
|
|
},
|
|
},
|
|
requestAll(url, data, header = {}, method) {
|
|
requestAll(url, data, header = {}, method) {
|
|
@@ -181,9 +206,12 @@ Page({
|
|
|
|
|
|
onChange(e) {
|
|
onChange(e) {
|
|
const index = e.detail.index
|
|
const index = e.detail.index
|
|
|
|
+ let pageNo = this.data.pageNo;
|
|
this.setData({
|
|
this.setData({
|
|
- activeTab: index
|
|
|
|
- })
|
|
|
|
|
|
+ activeTab: index,
|
|
|
|
+ // pageNo: [1, 1, 1, 1]
|
|
|
|
+ }),
|
|
|
|
+ this.getProductList()
|
|
},
|
|
},
|
|
handleClick(e) {
|
|
handleClick(e) {
|
|
|
|
|
|
@@ -218,16 +246,23 @@ Page({
|
|
* 页面上拉触底事件的处理函数
|
|
* 页面上拉触底事件的处理函数
|
|
*/
|
|
*/
|
|
onReachBottom: function () {
|
|
onReachBottom: function () {
|
|
- console.log(1213131)
|
|
|
|
|
|
+ let activeTab = this.data.activeTab;
|
|
let pageNo = this.data.pageNo;
|
|
let pageNo = this.data.pageNo;
|
|
let pageSum = this.data.pageSum;
|
|
let pageSum = this.data.pageSum;
|
|
- pageNo++;
|
|
|
|
- if (this.data.pageNo <= pageSum) {
|
|
|
|
- this.setData({
|
|
|
|
- pageNo
|
|
|
|
- })
|
|
|
|
|
|
+ pageNo[activeTab]++;
|
|
|
|
+ console.log('触底了')
|
|
|
|
+ this.setData({
|
|
|
|
+ pageNo
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ if (pageNo[activeTab] <= pageSum[activeTab]) {
|
|
|
|
+
|
|
|
|
+ console.log(pageNo)
|
|
|
|
+
|
|
this.getProductList()
|
|
this.getProductList()
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
},
|
|
},
|
|
/**
|
|
/**
|
|
* 页面相关事件处理函数--监听用户下拉动作
|
|
* 页面相关事件处理函数--监听用户下拉动作
|
|
@@ -286,7 +321,7 @@ Page({
|
|
// return
|
|
// return
|
|
}
|
|
}
|
|
wx.navigateTo({
|
|
wx.navigateTo({
|
|
- url: '../appointment/appointment?' + 'shopId=' + shopId + '&productId=' + productId + '&address=' + address+"&shopName="+shopName,
|
|
|
|
|
|
+ url: '../appointment/appointment?' + 'shopId=' + shopId + '&productId=' + productId + '&address=' + address + "&shopName=" + shopName,
|
|
})
|
|
})
|
|
}
|
|
}
|
|
})
|
|
})
|