// packageA//pages/distribution/commision/commision.js const app = getApp(); let self = null; Page({ /** * 页面的初始数据 */ data: { isInputFocus: false,//记录搜索输入框是否聚焦 inputVal: '',//记录搜索输入框的内容 isSort: false,//控制排序开关状态,true开启排序 isDescending: false, //isDescending降序,ascending升序 imghost: '', tabArr: ['最新','销量','评论','价格'], currentTabIndex: 0, isShowRow: false,//控制视图切换状态 isHiddenDropdown: true,//控制筛选下拉菜单显隐 list: null, isLoading: false, // 检测是否已经发送请求,防止重复发送请求 noMore: false, // 检测是否有更多数据,true为没有更多数据,false为还有数据 pageNum: 1, // 当前页数 }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { self = this;//保存全局指针 app.isLogin().then(function(data) {//进入页面前已经授权登录成功 self.setData({ userInfo: data, }); }); // 判断会员是否授权登录, // 没有登录则跳转到登录页, // 已登录则设置已登录状态,请求加载签到数据 // isLogin记录登录状态 // app.isLogin().then(function(data) { // // 1.登录成功 // self.setData({ // isLogin: true, // userInfo: data, // currentQuery: { // store_id: app.globalData.setting.stoid, // user_id: app.globalData.user_id, // }, // }); // // 2.请求全部商品数据 // self.getData(true, '/api/weshop/users/distribut/pagemyshop', self.data.currentQuery); // // 3.请求新品 // app.request.promiseGet('/api/weshop/users/distribut/pagemyshop?type=2', { // data: self.data.currentQuery, // }).then(function(res) { // self.setData({ // newList: res.data.data, // }); // }) // }); }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { if(app.globalData.userInfo) { if(!this.data.isLogin) { this.setData({ userInfo: app.globalData.userInfo, imghost: app.globalData.setting.imghost, currentQuery: { store_id: app.globalData.setting.stoid, user_id: app.globalData.user_id, }, isLogin: true, }); // 请求数据 this.getData(true, '/api/weshop/users/distribut/pagemyshop', this.data.currentQuery); // 新品 app.request.promiseGet('/api/weshop/users/distribut/pagemyshop?type=2', { data: self.data.currentQuery, }).then(res => { self.setData({ newList: res.data.data, }); }); // 广告banner app.request.promiseGet("/api/weshop/ad/page", { data: { pid: 401, enabled: 1, store_id: app.globalData.setting.stoid, } }).then(res => { if(res.data.code == 0 && res.data.data) { let item = res.data.data.pageData[0]; if(item && item.ad_code) { self.setData({ ad_img: item.ad_code, }); }; }; }); }; }; }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { this.scrollToLower('/api/weshop/users/distribut/pagemyshop', this.data.currentQuery); }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { }, /** * 点击下拉菜单 */ clickDropdown() { this.setData({ isHiddenDropdown: !this.data.isHiddenDropdown, }); }, /** * 点击遮罩层 */ clickMask() { this.setData({ isHiddenDropdown: true, }); }, /** * 选择下拉菜单项 */ selectDropdown(e) { let currentIndex = e.target.dataset.index; this.setData({ isHiddenDropdown: true, currentSelect: this.data.dropdownArr[currentIndex], }); }, /** * 搜索输入框聚焦 */ inputFocus() { this.setData({ isInputFocus: true, }); }, /** * 搜索输入框失焦 */ inputBlur() { this.setData({ isInputFocus: false, }); }, /** * 获取搜索输入框输入的内容 */ input(e) { this.data.inputVal = e.detail.value; }, /** * 搜索输入框清空内容 */ inputClear() { let inputVal = this.data.inputVal; console.log('input', inputVal); if(inputVal) { this.setData({ inputVal: '', }); }; }, /** * 搜索输入框聚焦 */ search() { let data = this.data.currentQuery; data.key = this.data.inputVal; if(data.orderField) { delete data.orderField; }; if(data.page) { delete data.page; }; this.setData({ currentTabIndex: 4, isSort: false, isDescending: false, currentQuery: data, pageNum: 1, }); this.getData(true, '/api/weshop/users/distribut/pagemyshop', data); }, /** * 点击排序 */ clickSort(e) { let data = this.data.currentQuery; data.orderField = 'shop_price'; if(data.page) { delete data.page; }; if(!this.data.isSort) { this.setData({ isSort: true, }); data.orderType = 'asc'; } else { this.setData({ isDescending: !this.data.isDescending, }); if(this.data.isDescending) { data.orderType = 'desc'; } else { data.orderType = 'asc'; }; }; console.log('当前参数:', data); this.setData({ currentQuery: data, noMore: false, }); // 请求数据 this.getData(true, '/api/weshop/users/distribut/pagemyshop', data); }, /** * 点击视图切换按钮 */ change() { this.setData({ isShowRow: !this.data.isShowRow }); }, /** * 点击Tab */ clickTab(e) { let data = this.data.currentQuery; let isSort = this.data.isSort; let currentIndex = e.target.dataset.index; if(currentIndex != 3) { if(isSort) { isSort = false; }; if(data.orderType) {// 清除orderType delete data.orderType; }; }; this.setData({ list: null, currentTabIndex: currentIndex, isSort, pageNum: 1, noMore: false, }); if(data.page) {// 清除page delete data.page; }; if(currentIndex == 0) { if(data.orderField) {// 清除orderField delete data.orderField; }; }; if(currentIndex == 1) { data.orderField = 'sales_sum'; }; if(currentIndex == 2) { data.orderField = 'comment_count'; }; if(currentIndex == 3) { // console.log('点击价格'); return; }; this.data.currentQuery = data; this.getData(true, '/api/weshop/users/distribut/pagemyshop', data); }, /** * 点击筛选 */ clickFilter() { this.setData({ isHiddenDropdown: !this.data.isHiddenDropdown, }); }, /** * 点击遮罩层,关闭筛选下拉菜单 */ clickMask() { if(!this.data.isHiddenDropdown) { this.setData({ isHiddenDropdown: true, }); } }, /** * 请求数据 */ getData: function(isInit, url, data) { app.request.promiseGet(url, { data: data, isShowLoading: true, }) .then(function(res) { // console.log('1121', res.data.code); if(res.data.code == 0) { self.setData({ isLoading: false }); if(isInit) {// 第一次加载 self.setData({ list: res.data.data }); } else { self.setData({ 'list.pageData': self.data.list.pageData.concat(res.data.data.pageData) }); }; if((res.data.data.pageData.length == 0) || (res.data.data.pageSize * res.data.data.page >= res.data.data.total)) { self.setData({ noMore: true }); }; } else { self.setData({ 'list.pageData': [] }); }; }) .catch(function(err) { console.log('出错拉!!!!',err); self.setData({ 'list.pageData': [] }); }); }, /** * 上拉加载 */ scrollToLower(url, requestData) { // 数据总量 let total = this.data.list.total; // 单页最大数据量 let pageSize = this.data.list.pageSize; // 如果数据总量不为0且小于或等于单页最大数据量,说明数据已全部加载,显示‘没有更多了’ if((total != 0)&&(total <= pageSize)) { this.setData({ noMore: true }); }; if(!this.data.isLoading && !this.data.noMore) { this.setData({ isLoading: true, pageNum: this.data.pageNum + 1 }); requestData.page = this.data.pageNum; console.log('滚动data:', requestData); this.getData(false, url, requestData); }; }, /** * 点击跳转 */ goto(e) { let url = ''; if(e.target.dataset.url) { url = e.target.dataset.url; } else { url = e.currentTarget.dataset.url; } console.log(url); app.goto(url); }, })