prize.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. // pages/luckDraw/prize.js
  2. import LuckDraw from '../../api/luck-draw'
  3. import { parseTime } from '../../utils/util';
  4. import {getMobileCache, getPhoneNumber as getPhoneNumberSync} from '../../utils/user'
  5. Page({
  6. /**
  7. * 页面的初始数据
  8. */
  9. data: {
  10. page: 1,
  11. pageSize: 10,
  12. lock: false,
  13. noResult: false,
  14. noMore: false,
  15. isLogin: false,
  16. mobileTop: 'TONY WU',
  17. couponNum: 0,
  18. productNum: 0,
  19. goodsItemList: []
  20. },
  21. /**
  22. * 生命周期函数--监听页面加载
  23. */
  24. onLoad: function (options) {
  25. this.setData({
  26. isLogin: getMobileCache() != ''
  27. })
  28. if(this.data.isLogin){
  29. this.getUserPrizeList();
  30. }
  31. },
  32. /**
  33. * 生命周期函数--监听页面初次渲染完成
  34. */
  35. onReady: function () {
  36. },
  37. /**
  38. * 生命周期函数--监听页面显示
  39. */
  40. onShow: function () {
  41. },
  42. /**
  43. * 生命周期函数--监听页面隐藏
  44. */
  45. onHide: function () {
  46. },
  47. /**
  48. * 生命周期函数--监听页面卸载
  49. */
  50. onUnload: function () {
  51. },
  52. /**
  53. * 页面相关事件处理函数--监听用户下拉动作
  54. */
  55. onPullDownRefresh: function () {
  56. },
  57. /**
  58. * 用户点击右上角分享
  59. */
  60. onShareAppMessage: function () {
  61. },
  62. getUserPrizeList: function() {
  63. LuckDraw.getUserPrizeList({
  64. page: this.data.page,
  65. pageSize: this.data.pageSize,
  66. mobile: getMobileCache(),
  67. goodsType: 2
  68. }).then(res => {
  69. if (res.code == 200) {
  70. this.uaerPrizeListView(res.data)
  71. }
  72. this.data.lock = false
  73. }).catch(_ => {
  74. this.data.lock = false
  75. })
  76. },
  77. uaerPrizeListView: function(data) {
  78. if (!Array.isArray(data.goodsItemList) || data.goodsItemList.length == 0) {
  79. console.log("奖品数据");
  80. if (this.data.page == 1) {
  81. this.setData({
  82. mobileTop:getMobileCache(),
  83. couponNum: data.couponNum,
  84. productNum: data.productNum,
  85. noResult: true
  86. })
  87. } else {
  88. this.setData({
  89. mobileTop:getMobileCache(),
  90. noMore: true
  91. })
  92. }
  93. return
  94. }
  95. data.goodsItemList.forEach(v => {
  96. let beginTime = v.couponBeginTimestamp
  97. let endTime = v.couponEndTimestamp
  98. v.couponBeginTimestamp = parseTime(beginTime, "{y}.{m}.{d}")
  99. v.couponEndTimestamp = parseTime(endTime, "{y}.{m}.{d}")
  100. })
  101. if (this.data.page == 1) {
  102. this.setData({
  103. couponNum: data.couponNum,
  104. productNum: data.productNum
  105. })
  106. }
  107. this.data.goodsItemList = this.data.goodsItemList.concat(...data.goodsItemList)
  108. this.setData({
  109. mobileTop:getMobileCache(),
  110. goodsItemList: this.data.goodsItemList
  111. })
  112. },
  113. /**
  114. * 页面上拉触底事件的处理函数
  115. */
  116. onReachBottom: function () {
  117. if (this.data.lock || this.data.noResult) {
  118. return
  119. }
  120. this.data.lock = true
  121. this.data.page++
  122. this.getUserPrizeList()
  123. },
  124. toProfile(e) {
  125. const url = "profile?id=" + e.currentTarget.dataset.id
  126. wx.redirectTo({
  127. url
  128. })
  129. },
  130. turnPrize: function() {
  131. console.log("开始查看")
  132. if (this.islock || !this.data.isLogin) {
  133. return
  134. }
  135. },
  136. // 授权手机号
  137. getPhoneNumber(e) {
  138. getPhoneNumberSync(e, _ => {
  139. this.setData({
  140. isLogin: true,
  141. mobileTop:getMobileCache(),
  142. })
  143. this.getUserPrizeList()
  144. })
  145. },
  146. toRecordPrize(e) {
  147. const url = "recordPrize?id=" + e.currentTarget.dataset.id
  148. wx.redirectTo({
  149. url
  150. })
  151. },
  152. })