sendFriend.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. import {
  2. get
  3. } from "../../utils/http";
  4. // pages/sendFriend/sendFriend.js
  5. const app = getApp()
  6. Page({
  7. /**
  8. * 页面的初始数据
  9. */
  10. data: {
  11. page: 0, //分页
  12. limit: 10, //条数
  13. couponInfo: '', //优惠券名称信息
  14. coupon_id: '', //优惠券id
  15. couponRecord: '', //赠送记录
  16. sendCoupon:'', //是否可以发送优惠券(1可以)
  17. timesLevel:'', //是否剩余领取次数
  18. recordId:'' //优惠券记录id
  19. },
  20. /**
  21. * 生命周期函数--监听页面加载
  22. */
  23. onLoad(options) {
  24. wx.hideShareMenu() // 禁止右上角分享好友
  25. this.getSendCoupon() //获取优惠券名称
  26. this.scrollToLower() //获取赠送记录
  27. this.getSendCouponLevel() // 获取是否可以发送优惠券
  28. this.getTimes() //获取是否剩余次数
  29. },
  30. /**
  31. * 生命周期函数--监听页面初次渲染完成
  32. */
  33. onReady() {
  34. },
  35. /**
  36. * 生命周期函数--监听页面显示
  37. */
  38. onShow() {
  39. },
  40. /**
  41. * 生命周期函数--监听页面隐藏
  42. */
  43. onHide() {
  44. },
  45. /**
  46. * 生命周期函数--监听页面卸载
  47. */
  48. onUnload() {
  49. },
  50. /**
  51. * 页面相关事件处理函数--监听用户下拉动作
  52. */
  53. onPullDownRefresh() {
  54. },
  55. /**
  56. * 页面上拉触底事件的处理函数
  57. */
  58. onReachBottom() {
  59. },
  60. /**
  61. * 用户点击右上角分享
  62. */
  63. onShareAppMessage() {
  64. },
  65. // 获取是否有剩余次数
  66. getTimes(){
  67. get('/v2/api/send_coupon/hand_out',{},(res)=>{
  68. if(res.code==200){
  69. console.log(res);
  70. this.setData({
  71. timesLevel:res.data
  72. })
  73. }
  74. })
  75. },
  76. // 送优惠券给好友
  77. onShareFriends() {
  78. if(this.data.sendCoupon!=1){
  79. wx.showToast({
  80. title: '您不满足此次活动要求',
  81. })
  82. return
  83. }
  84. if(this.data.timesLevel==0){
  85. wx.showToast({
  86. title: '没有剩余次数了',
  87. })
  88. return
  89. }
  90. },
  91. // 获取赠送优惠券名称
  92. getSendCoupon() {
  93. get('/v2/api/send_coupon/active', {}, (res) => {
  94. if (res.code == 200) {
  95. this.setData({
  96. couponInfo: res.data,
  97. coupon_id: res.data.coupon_id
  98. },()=>{
  99. get('/v2/api/send_coupon/send', {
  100. coupon_id:this.data.coupon_id
  101. }, (res) => {
  102. this.setData({
  103. recordId:res.data
  104. })
  105. })
  106. })
  107. }
  108. })
  109. },
  110. // 点击分享给好友
  111. onShareAppMessage() {
  112. return {
  113. title: '朋友送你的0元修丽可B5补水还未领取,点击去领取~', // 分享出的卡片标题
  114. path: `/pages/sendGetCoupon/sendGetCoupon?recordId=${this.data.recordId}`, // 他人通过卡片进入小程序的路径,可以在后面拼接URL的形式带参数
  115. imageUrl: 'https://we-spa.oss-cn-shenzhen.aliyuncs.com/wxapp/20220922/%E7%BC%96%E7%BB%84%402x.png',
  116. };
  117. },
  118. // 获取赠送记录列表
  119. scrollToLower() {
  120. this.setData({
  121. page: this.data.page + 1
  122. })
  123. get('/v2/api/send_coupon/list', {
  124. page: this.data.page,
  125. limit: this.data.limit
  126. }, (res) => {
  127. let arr = [...res.data, ...this.data.couponRecord]
  128. this.setData({
  129. couponRecord: arr
  130. })
  131. })
  132. },
  133. // 是否可以赠送优惠券
  134. getSendCouponLevel(){
  135. get('/v2/api/send_coupon/apply',{},(res)=>{
  136. this.setData({
  137. sendCoupon:res.data
  138. },)
  139. })
  140. },
  141. })