activityList.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. const { default: activity } = require("../../api/activity");
  2. // pages/activityList/activityList.js
  3. Page({
  4. /**
  5. * 页面的初始数据
  6. */
  7. data: {
  8. userMobile:'',
  9. //火热
  10. list: [], //卡券列表
  11. page:1,
  12. pageNum:10,
  13. count:0,
  14. },
  15. /**
  16. * 生命周期函数--监听页面加载
  17. */
  18. onLoad: function () {
  19. this.getList()
  20. },
  21. /**
  22. * 生命周期函数--监听页面初次渲染完成
  23. */
  24. onReady: function () {
  25. },
  26. /**
  27. * 生命周期函数--监听页面显示
  28. */
  29. onShow: function () {
  30. },
  31. /**
  32. * 生命周期函数--监听页面隐藏
  33. */
  34. onHide: function () {
  35. },
  36. /**
  37. * 生命周期函数--监听页面卸载
  38. */
  39. onUnload: function () {
  40. },
  41. /**
  42. * 页面相关事件处理函数--监听用户下拉动作
  43. */
  44. onPullDownRefresh: function () {
  45. },
  46. /**
  47. * 页面上拉触底事件的处理函数
  48. */
  49. onReachBottom: function () {
  50. var totalPage = Math.ceil(this.data.count/this.data.pageNum)
  51. console.log('到底了')
  52. var page = this.data.page
  53. page++;
  54. this.setData({
  55. page:page
  56. })
  57. if(page<=totalPage){
  58. console.log(123)
  59. this.getList();
  60. }
  61. },
  62. /**
  63. * 用户点击右上角分享
  64. */
  65. onShareAppMessage: function () {
  66. },
  67. goToShare(e){
  68. console.log(e)
  69. let _self = this;
  70. wx.navigateTo({
  71. url: '/pages/activityInfo/activityInfo?id='+e.currentTarget.dataset.id+'&mobile='+_self.data.userMobile,
  72. })
  73. },
  74. //获取手机号
  75. getPhoneNumber(e) {
  76. let _self = this;
  77. var encryptedData = e.detail.encryptedData;
  78. var iv = e.detail.iv;
  79. if (!encryptedData || encryptedData.length == 0 || !iv || iv.length == 0) {
  80. return;
  81. }
  82. //获取手机号
  83. getApp().doDecodePhone(encryptedData, iv, function () {
  84. let userMobile = activity.getMobileCache();
  85. console.log(userMobile)
  86. if (userMobile.length !== 0) {
  87. _self.setData({
  88. userMobile: userMobile,
  89. })
  90. }
  91. });
  92. },
  93. getList: async function() {
  94. var result = await activity.getActivityList(this.data.page,this.data.pageNum,2);
  95. var list = this.handleCouponList(result.list);
  96. if(this.data.page != 1){
  97. var nowResult = this.data.list.concat(list)
  98. }else{
  99. var nowResult = list
  100. }
  101. this.setData({
  102. list:nowResult,
  103. count:result.count,
  104. page:result.page
  105. })
  106. },
  107. handleCouponList(list) {
  108. if (list.length === 0) {
  109. return list;
  110. }
  111. var objSwitch = getApp().globalData.typeSwitchObj
  112. for (let i = 0; i < list.length; i++) {
  113. var couponList = list[i].activityCouponList;
  114. var couponTypeAndNumObj = {};
  115. for (let j = 0; j < couponList.length; j++) {
  116. var couponNum = couponList[j]['num'] ? couponList[j]['num'] : 1;
  117. var value = couponList[j]['coupon']['type'];
  118. var showText = objSwitch[couponList[j]['coupon']['type']];
  119. var nowNume = 0;
  120. if (couponTypeAndNumObj[value]) {
  121. nowNume = couponTypeAndNumObj[value]['num'];
  122. console.log(nowNume)
  123. }
  124. couponTypeAndNumObj[value] = {
  125. "typeText": showText,
  126. "num": couponNum + nowNume
  127. }
  128. }
  129. list[i].couponTypeAndNum = couponTypeAndNumObj
  130. }
  131. console.log(list);
  132. return list;
  133. },
  134. })