index.js 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207
  1. // pages/purchased-content/index.js
  2. const { request, serverName } = require('../../../utils/services');
  3. const {
  4. newRequestFns,
  5. newServerName
  6. } = require('../../../utils/newServices.js');
  7. const { defaultImg, noExhibitionImg } = require('../../../utils/images');
  8. const { Toast } = require('../../../utils/util.js');
  9. Page({
  10. /**
  11. * 页面的初始数据
  12. */
  13. data: {
  14. tabs: [{
  15. name: '全部', tag: ""
  16. }, {
  17. name: '待付款', tag: "0"
  18. }, {
  19. name: '待使用', tag: "-1"
  20. }, {
  21. name: '待评论', tag: "-1"
  22. }],
  23. myOrders: [],
  24. // testImg: '../../../imgs/testImg/thumbSmallImg2.jpg',
  25. avatar: '../../../imgs/testImg/1.jpg',
  26. testImg: '../../../imgs/testImg/fdkz.png',
  27. activeIndex: 0,
  28. sliderOffset: 0,
  29. currentPage: 0,
  30. loading: false,
  31. loadMore: false,
  32. paymentStatus: ""
  33. },
  34. tabClick: function (e) {
  35. this.setData({
  36. myOrders: [],
  37. paymentStatus: e.currentTarget.dataset.status || "",
  38. activeIndex: e.currentTarget.id,
  39. });
  40. if (e.currentTarget.dataset.status != '-1') {
  41. this.getOrders(1);
  42. }
  43. console.log(this.data.paymentStatus)
  44. },
  45. _clickItem: function (e) {
  46. let { paystatus, exhibitionid, ordersn } = e.currentTarget.dataset;
  47. console.log(exhibitionid)
  48. if (paystatus == '已付款' || paystatus=='已取消') {
  49. wx.navigateTo({
  50. url: `../../yuezhan/pay_page/index?id=${exhibitionid}`,
  51. success: function (res) { },
  52. fail: function (res) { },
  53. complete: function (res) { },
  54. })
  55. } else if (paystatus == '未付款') {
  56. this.doWeChatPay(ordersn);
  57. }
  58. else {
  59. }
  60. },
  61. doWeChatPay: function (orderSn) {
  62. let loginSessionKey = wx.getStorageSync("token");
  63. request['getPayParams']({
  64. orderSn,
  65. loginSessionKey,
  66. }, "get", res => {
  67. const { data: wechatPayModel } = res.data;
  68. const {
  69. timeStamp,
  70. nonceStr,
  71. signType,
  72. paySign,
  73. package: packageStr
  74. } = wechatPayModel;
  75. console.log(timeStamp,
  76. nonceStr,
  77. signType,
  78. paySign)
  79. // prettier-ignore
  80. wx.requestPayment({
  81. timeStamp,
  82. nonceStr,
  83. signType,
  84. paySign,
  85. 'package': packageStr,
  86. success: res => {
  87. this.getOrders(1);
  88. console.log(res);
  89. },
  90. fail: err => {
  91. console.log(err);
  92. Toast.showToast2('warn', '支付取消');
  93. }
  94. });
  95. })
  96. },
  97. onLoad: function (options) {
  98. if (options.status && options.id) {
  99. console.log(options.status)
  100. let { status, id } = options;
  101. this.setData({
  102. paymentStatus: status,
  103. activeIndex: id,
  104. defaultImg
  105. })
  106. }
  107. this.setData({
  108. serverName,
  109. noExhibitionImg
  110. })
  111. let loginSessionKey = wx.getStorageSync("token") || "";
  112. if (options.status!='-1'){
  113. this.getOrders(1);
  114. }
  115. },
  116. loadMore: function () {
  117. if (!this.data.lastPage) {
  118. console.log(this.data.currentPage + 1)
  119. this.getOrders(this.data.currentPage + 1);
  120. } else {
  121. return;
  122. }
  123. },
  124. onReachBottom: function () {
  125. if (!this.data.loading) {
  126. this.loadMore();
  127. console.log('reach Bottom');
  128. }
  129. },
  130. getOrders: function (page) {
  131. let loginSessionKey = wx.getStorageSync("token") || "";
  132. let paymentStatus = this.data.paymentStatus
  133. newRequestFns["getOrders"]({
  134. loginSessionKey,
  135. paymentStatus,
  136. pageNumber: page
  137. }, "", res => {
  138. if (res.data.code > -1) {
  139. let tempContent = this.data.myOrders
  140. ? this.data.myOrders
  141. : [];
  142. let { pageData: myOrders, total } = res.data.data;
  143. // 判断是否为最后一页(返回空数组表示没有更多数据)
  144. let isLastPage = !myOrders || myOrders.length === 0;
  145. if (isLastPage) {
  146. this.setData({
  147. loading: false,
  148. lastPage: true
  149. });
  150. wx.stopPullDownRefresh();
  151. return;
  152. }
  153. for (var i = 0; i < myOrders.length; i++) {
  154. if (myOrders[i].paymentStatus == 'paid') {
  155. myOrders[i].paymentStatus = '已付款'
  156. } else if (myOrders[i].paymentStatus == 'unpaid') {
  157. myOrders[i].paymentStatus = '未付款'
  158. }
  159. else {
  160. myOrders[i].paymentStatus = '已取消'
  161. }
  162. }
  163. // 拼接新数据
  164. let newMyOrders = tempContent.concat(myOrders);
  165. console.log(res)
  166. this.setData({
  167. currentPage: page,
  168. lastPage: false, // 有数据时设为false
  169. loading: false,
  170. myOrders: newMyOrders,
  171. });
  172. console.log(myOrders)
  173. wx.stopPullDownRefresh();
  174. }
  175. }, err => {
  176. },
  177. complete => {
  178. })
  179. },
  180. });