orderPaySn.js 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. const getReq = require('./../../config.js').getReq
  2. import recordSource from '../../utils/recordSource'
  3. let app = getApp()
  4. Page({
  5. /**
  6. * 页面的初始数据
  7. */
  8. data: {
  9. order_info: {},
  10. defaultAddress: null,
  11. firstLoad: true,
  12. user_bonus: 0,
  13. fromSource: '',
  14. totalPrice: '',
  15. available_pred: 0,
  16. room_bonus: 0,
  17. full_discount: 0,
  18. opgoods_discount: 0
  19. },
  20. /**
  21. * 生命周期函数--监听页面加载
  22. */
  23. onLoad: function (options) {
  24. let pay_sn = options.pay_sn;
  25. this.getDatas(pay_sn);
  26. },
  27. getDatas(pay_sn) {
  28. let self = this;
  29. let fromSource = recordSource(app, `act=member_order&op=pay_info&pay_sn=${pay_sn}&client_type=mini`)
  30. this.setData({
  31. fromSource: app.globalData.fromSource
  32. })
  33. wx.showLoading({
  34. title: '加载中',
  35. })
  36. getReq({
  37. act: 'member_order',
  38. op: 'pay_info',
  39. pay_sn: pay_sn,
  40. from: fromSource
  41. }, function (res) {
  42. wx.hideLoading();
  43. if (res.code == 200) {
  44. console.log(res);
  45. let { order_info } = res.datas.order
  46. let { goods_amount, shipping_fee, available_pred = 0, user_bonus = 0, room_bonus = 0, full_discount = 0, opgoods_discount = 0 } = order_info
  47. let totalPrice = (goods_amount + shipping_fee - available_pred - user_bonus - room_bonus - full_discount - opgoods_discount).toFixed(2)
  48. self.setData({
  49. defaultAddress: {
  50. mob_phone: res.datas.order.reciver_info.mob_phone,
  51. true_name: res.datas.order.reciver_info.reciver_name,
  52. area_info: res.datas.order.reciver_info.area,
  53. address: res.datas.order.reciver_info.street
  54. },
  55. order_info: res.datas.order.order_info,
  56. firstLoad: false,
  57. totalPrice,
  58. user_bonus,
  59. available_pred,
  60. room_bonus,
  61. full_discount,
  62. opgoods_discount
  63. });
  64. }
  65. else {
  66. wx.showToast({
  67. icon: 'none',
  68. title: res.message,
  69. duration: 2000
  70. })
  71. }
  72. })
  73. },
  74. getGoodsList(summary, goods_list) {
  75. let newGoodsList = []
  76. goods_list.map((item, index) => {
  77. summary.find((list, key) => {
  78. if (item.goods_id == list.goods_id) {
  79. let goods_item = list
  80. goods_item.goods_num = item.goods_num
  81. newGoodsList.push(goods_item)
  82. return true
  83. }
  84. })
  85. })
  86. return newGoodsList
  87. },
  88. toPay() {
  89. let params = {
  90. act: 'member_order',
  91. op: 'pay',
  92. pay_sn: this.data['order_info']['pay_sn'],
  93. payment: 'minipay'
  94. }
  95. getReq(params, function (res) {
  96. if (res.code == 200) {
  97. let param = res.datas.param.data;
  98. wx.requestPayment({
  99. timeStamp: param.timeStamp, //时间戳,自1970年以来的秒数
  100. nonceStr: param.nonceStr, //随机串
  101. package: param.package,
  102. signType: param.signType, //微信签名方式:
  103. paySign: param.paySign, //微信签名
  104. success: function (res) {
  105. wx.redirectTo({
  106. url: "/pages/order_tabs/orderTabs?state_type=state_pay"
  107. })
  108. console.log("成功:", res);
  109. console.log('支付成功')
  110. },
  111. fail: function (res) {
  112. setTimeout(() => {
  113. wx.showToast({
  114. icon: 'none',
  115. title: res.errMsg,
  116. duration: 2000
  117. })
  118. }, 200);
  119. console.log("失败:", res);
  120. }
  121. });
  122. }
  123. })
  124. },
  125. /**
  126. * 生命周期函数--监听页面初次渲染完成
  127. */
  128. onReady: function () {
  129. },
  130. /**
  131. * 生命周期函数--监听页面显示
  132. */
  133. onShow: function () {
  134. if (!this.data.firstLoad) {
  135. let defaultAddress = app.globalData.defaultAddress
  136. app.setFromSource(this.data.fromSource)
  137. if (defaultAddress) {
  138. this.setData({
  139. defaultAddress
  140. })
  141. }
  142. }
  143. },
  144. /**
  145. * 生命周期函数--监听页面隐藏
  146. */
  147. onHide: function () {
  148. },
  149. /**
  150. * 生命周期函数--监听页面卸载
  151. */
  152. onUnload: function () {
  153. },
  154. /**
  155. * 页面相关事件处理函数--监听用户下拉动作
  156. */
  157. onPullDownRefresh: function () {
  158. },
  159. /**
  160. * 页面上拉触底事件的处理函数
  161. */
  162. onReachBottom: function () {
  163. }
  164. })