collage-details.js 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. // pages/groupPage/collage-details/collage-details.js
  2. import httpRequestApi from '../../../utils/APIClient';
  3. import util from '../../../utils/util';
  4. const app = getApp()
  5. Page({
  6. /**
  7. * 页面的初始数据
  8. */
  9. data: {
  10. groupPurchaseInfo: {},
  11. organizer: {},
  12. surplusNum: '',
  13. joinUserList: [],
  14. surplusList: [],
  15. timeList: [],
  16. productId: '',
  17. orderId: '',
  18. groupId: '',
  19. content: [{
  20. text: "转发给自己的朋友们",
  21. color: "#000"
  22. },
  23. {
  24. text: " 分享好课,追随您一起学习进步",
  25. color: "#000"
  26. },
  27. {
  28. text: " 您的魅力不是吹的",
  29. color: "#000"
  30. },
  31. {
  32. text: "在限定时间内成功拼团,您将得到奖学金。",
  33. color: "#FF4600"
  34. }
  35. ],
  36. ifGroupSuccessed: false,
  37. organizerUid: '',
  38. hosterUid: wx.getStorageSync('uid'),
  39. colonelName: '',
  40. rewardMoney: '',
  41. goBackHome: false,
  42. dataLoading: true
  43. },
  44. //显示分享页
  45. openShare: function () {
  46. if (this.data.ifGroupSuccessed) {
  47. const productId = this.data.productId;
  48. const id = this.data.orderId;
  49. const groupId = this.data.groupId;
  50. wx.navigateTo({
  51. url: `/pages/groupPage/grade-details/grade-details?productId=${productId}&id=${id}&groupId=${groupId}&share=true`
  52. })
  53. } else {
  54. this.shareDialog = this.selectComponent("#share-dialog");
  55. const data = {
  56. avatar: this.data.organizer.avatar,
  57. author: this.data.organizer.wechatName,
  58. iconImg: this.data.groupPurchaseInfo.bgImg,
  59. title: this.data.groupPurchaseInfo.productTitle,
  60. path: `pages/groupPage/group-details/group-details`,
  61. scene: `QR${this.data.orderId}`,
  62. groupPurchaseInfo: this.data.groupPurchaseInfo,
  63. groupType: this.data.groupOsType
  64. }
  65. this.shareDialog.share(data);
  66. }
  67. },
  68. // 下拉刷新
  69. onPullDownRefresh: function () {
  70. this.setData({
  71. surplusList: []
  72. }, () => {
  73. this.getInfo();
  74. })
  75. wx.showNavigationBarLoading() //在标题栏中显示加载
  76. //模拟加载
  77. setTimeout(function () {
  78. wx.hideNavigationBarLoading() //完成停止加载
  79. wx.stopPullDownRefresh() //停止下拉刷新
  80. }, 1500);
  81. },
  82. /**
  83. * 生命周期函数--监听页面加载
  84. */
  85. onLoad: function (options) {
  86. // if (app.globalData.isIOS) {
  87. // wx.redirectTo({
  88. // url: '../../index/index'
  89. // })
  90. // return
  91. // }
  92. if (options.read) {
  93. this.setData({
  94. ifGroupSuccessed: options.read
  95. })
  96. }
  97. if (options.goBackHome == 'true') {
  98. this.setData({
  99. goBackHome: true
  100. })
  101. }
  102. // options.scene = 'QR1541862338777268';
  103. wx.setNavigationBarTitle({
  104. title: '拼团详情'
  105. })
  106. console.log(options);
  107. console.log(options.orderId);
  108. const orderId = options.orderId ? options.orderId : options.scene.replace('QR', '');
  109. // if (options.orderId) {
  110. // return false;
  111. // }
  112. console.log(orderId)
  113. this.setData({
  114. orderId
  115. }, () => {
  116. this.getInfo()
  117. })
  118. },
  119. getInfo: function () {
  120. httpRequestApi.getMygroupInfo(this.data.orderId).success(res => {
  121. const groupOrder = res.data.data.groupPurchaseOrder;
  122. const surplusNum = groupOrder.headcount - groupOrder.joinCount;
  123. this.setData({
  124. organizerUid: groupOrder.organizer,
  125. ifGroupSuccessed: groupOrder.status === 'SUCCESSED' ? true : false
  126. })
  127. for (var i = 0; i < surplusNum; i++) {
  128. this.data.surplusList.push(1);
  129. }
  130. // 剩余时间 如果团购已结束则不显示
  131. let timeLast = '';
  132. const stillGoing = groupOrder.closeTime - Date.parse(new Date()) <= 0 ? false : true
  133. if (stillGoing) {
  134. timeLast = util.lastHours(groupOrder.closeTime - Date.parse(new Date()));
  135. }
  136. this.setData({
  137. groupPurchaseInfo: res.data.data.groupPurchaseInfo,
  138. organizer: res.data.data.organizer,
  139. surplusNum,
  140. joinUserList: res.data.data.joinUserList,
  141. surplusList: this.data.surplusList,
  142. timeLast,
  143. stillGoing,
  144. productId: groupOrder.productId,
  145. groupId: groupOrder.groupId,
  146. rewardMoney: res.data.data.groupPurchaseInfo.organizerPrice / 100,
  147. dataLoading: false,
  148. groupOsType: groupOrder.os
  149. })
  150. if (groupOrder.groupType === 'PROMOTION') {
  151. this.setData({
  152. colonelName: res.data.data.organizer.wechatName,
  153. promotion: true
  154. // joinUserList: this.data.joinUserList
  155. })
  156. }
  157. })
  158. },
  159. /**
  160. * 生命周期函数--监听页面初次渲染完成
  161. */
  162. onReady: function () {
  163. this.shareDialog = this.selectComponent("#share-dialog");
  164. },
  165. /**
  166. * 用户点击右上角分享
  167. */
  168. onShareAppMessage: function (ops) {
  169. if (ops.from === 'button') {
  170. console.log(ops.target)
  171. }
  172. const id = this.data.orderId;
  173. const data = {
  174. shareTypeEnum: 'LINK',
  175. shareContentEnum: 'GROUP',
  176. productId: this.data.productId
  177. }
  178. httpRequestApi.shareRecord(data).success((res) => {
  179. console.log(res)
  180. })
  181. return {
  182. title: '老师同学都在玩的配音show,你还在等什么?',
  183. path: `pages/groupPage/group-details/group-details?share=true&shareId=${id}`,
  184. imageUrl: `https://efunbox.lingjiao.cn/reader/resource/share/group_${this.data.productId}.jpg`,
  185. }
  186. }
  187. })