yuminge-app/yun-min-program-plugin-master/packageH/stock/promotion_center/promotion_center.js

147 lines
3.2 KiB
JavaScript

// packageH/stock/promotion_center/promotion_center.js
const App = getApp();
function getAwardStatusText(status) {
switch (status) {
case 1:
return "未结算";
case 2:
return "已结算";
case 3:
return "失效";
}
}
Page({
/**
* 页面的初始数据
*/
data: {
currentShowType: 1,
awardData: [],
loading: false,
isMoreData: true,
page: 1,
agent: null,
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function () {
this.getAgent();
wx.setNavigationBarTitle({
title: "推广中心",
});
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
if (this.data.loading === false || this.data.isMoreData === true) {
this.getAwardData();
}
},
onShareAppMessage() {},
onShareTimeline() {},
getAgent() {
let urlStr = App.getNetAddresss("plugin.agency.api.agency.index");
App._postNetWork({
url: urlStr,
success: ({ data: { data, result, msg } }) => {
if (result === 0) {
wx.hideLoading();
wx.showToast({
title: msg,
success: (result) => {
wx.navigateBack({
delta: 1,
});
},
});
return;
}
this.setData({
agent: data,
});
wx.hideLoading();
this.getAwardData();
},
});
},
switchTabs(event) {
let type = parseInt(event.detail.name);
let hiddenNormalList = true;
if ([1, 3, 4].includes(type)) {
hiddenNormalList = false;
}
this.setData(
{
awardData: [],
loading: false,
isMoreData: true,
page: 1,
currentShowType: type,
hiddenNormalList,
},
() => {
this.getAwardData();
}
);
},
getAwardData() {
if (this.data.loading === true || this.data.isMoreData === false) {
return;
}
this.setData({
loading: true,
});
wx.showLoading({
title: "加载中",
mask: true,
});
let urlStr = App.getNetAddresss("plugin.agency.api.award.get-list");
urlStr +=
"&agency_type=" + this.data.currentShowType + "&page=" + this.data.page;
App._postNetWork({
url: urlStr,
success: ({ data: { data, result, msg } }) => {
if (result === 0) {
wx.hideLoading();
wx.showToast({
title: msg,
success: () => {
wx.navigateBack({
delta: 1,
});
},
});
return;
}
const setData = {};
if (
data.current_page == data.last_page ||
data.data.length === 0 ||
data.data.length < per_page
) {
setData["isMoreData"] = false;
}
let awardData = this.data.awardData;
let awards = data.data;
for (const item of awards) {
item["award_status_text"] = getAwardStatusText(item["award_status"]);
}
awardData.push(...awards);
setData["awardData"] = awardData;
setData["loading"] = false;
awardData["page"] = this.data.page + 1;
this.setData(setData);
wx.hideLoading();
},
});
},
});