cash.js 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
  1. var _request = require('../../../../utils/request.js')
  2. var util = require('../../../../utils/util.js')
  3. var MAX_MERCHANT_TRANSFER_CASH = 20000
  4. var TAKE_CASH_SUBSCRIBE_TEMPLATE_ID = "pmQeRrQUpBvt2jgDF4XwSEfDd7n2Gnyk8k_au1G6wP8"
  5. Page({
  6. data: {
  7. page: 1,
  8. per_page: 20,
  9. list: [],
  10. more: true,
  11. balance: 0,
  12. confirmDialog:false,
  13. min_cash:0,
  14. max_cahs:0,
  15. fee:0,
  16. withdraw_num:0,
  17. view_withdraw:0,
  18. view_fee:0
  19. },
  20. onLoad: function (options) {
  21. this.getBalanceInfo()
  22. this.getBalanceList()
  23. // this.getCashTotal()
  24. },
  25. onShow () {
  26. },
  27. onReachBottom: function () {
  28. if (this.data.more) {
  29. var page = this.data.page + 1
  30. this.setData({
  31. page: page
  32. })
  33. this.getBalanceList()
  34. }
  35. },
  36. getBalanceInfo () {
  37. var that = this
  38. var url = 'v1/user/cash/balance/info'
  39. var params = {
  40. }
  41. var success = function (res) {
  42. var result = res.data.available
  43. that.setData({
  44. balance: result,
  45. cashTotal: res.data
  46. })
  47. that.getWithDrawlimit()
  48. }
  49. _request.$get(url, params, success)
  50. },
  51. getBalanceList () {
  52. var that = this
  53. var url = 'v1/user/cash/balances'
  54. var params = {
  55. page: this.data.page,
  56. per_page: this.data.per_page
  57. }
  58. var success = function (res) {
  59. var result = that.data.list.concat(res.data.balance_list || [])
  60. that.setData({
  61. list: result
  62. })
  63. var listMore = res.data.balance_count > that.data.list.length
  64. that.setData({
  65. more: listMore
  66. })
  67. }
  68. _request.$get(url, params, success)
  69. },
  70. refreshBalancePage () {
  71. this.setData({
  72. page: 1,
  73. list: [],
  74. more: true
  75. })
  76. this.getBalanceInfo()
  77. this.getBalanceList()
  78. },
  79. getDetail (val) {
  80. var id = val.currentTarget.dataset.val
  81. wx.navigateTo({
  82. url: '/packageUser/pages/user/cashDetail/cashDetail?id=' + id
  83. })
  84. },
  85. onShareAppMessage: function (val) {
  86. return _request.share({
  87. sc: 'xcx_user_radish'
  88. })
  89. },
  90. getCashTotal () {
  91. var that = this
  92. var url = 'v1/user/cash/balance/info'
  93. var params = {
  94. }
  95. var success = function (res) {
  96. console.log('res.data',res.data)
  97. that.setData({
  98. cashTotal: res.data
  99. })
  100. }
  101. _request.$get(url, params, success)
  102. },
  103. getWithDrawlimit () {
  104. var that = this
  105. var url = 'v1/user/takecash/limit'
  106. var params = {}
  107. var success = function (res) {
  108. var maxCash = Math.min(res.data.max_limit_cash || MAX_MERCHANT_TRANSFER_CASH, MAX_MERCHANT_TRANSFER_CASH)
  109. var withdrawnum = that.data.balance > maxCash ? maxCash : that.data.balance;
  110. that.setData({
  111. min_cash: res.data.min_limit_cash,
  112. max_cash: maxCash,
  113. fee:res.data.fee_bl ? res.data.fee_bl : 0,
  114. withdraw_num: withdrawnum,
  115. view_withdraw:parseFloat(withdrawnum/100).toFixed(2),
  116. view_fee:parseFloat(withdrawnum * (res.data.fee_bl?res.data.fee_bl/100:0)/100).toFixed(2)
  117. })
  118. }
  119. _request.$get(url, params, success)
  120. },
  121. goWithdrawClick () {
  122. wx.navigateTo({
  123. url: '/packageUser/pages/user/withdraw/withdraw'
  124. })
  125. },
  126. getBankInfoAndTip(){
  127. var that = this
  128. that.requestTakeCashSubscribe(function () {
  129. that.showWithdrawConfirm()
  130. })
  131. },
  132. showWithdrawConfirm () {
  133. var that = this
  134. // var url = 'v1/user/get_bank_info'
  135. // var params = {
  136. // }
  137. // var success = function (res) {
  138. // that.setData({
  139. // has_bank:res.data.has_bank
  140. // })
  141. // if(that.data.has_bank){
  142. that.data.confirmDialog = !that.data.confirmDialog
  143. if (that.data.withdraw_num > that.data.min_cash) {
  144. that.setData({
  145. confirmDialog: that.data.confirmDialog
  146. })
  147. } else {
  148. wx.showToast({
  149. title: '单次提现金额范围,大于'+parseFloat(that.data.min_cash/100).toFixed(2) +'元 单次最高'+parseFloat(that.data.max_cash/100).toFixed(2) +'元',
  150. icon: 'none',
  151. duration: 2000
  152. })
  153. }
  154. // }
  155. // _request.$get(url, params, success)
  156. },
  157. confrimClick () {
  158. var that = this
  159. console.log('that.data.has_bank',that.data.has_bank)
  160. // if (that.data.has_bank) {
  161. that.withdrawClick()
  162. // } else {
  163. // that.setData({
  164. // confirmDialog: false,
  165. // identityDialog: true
  166. // })
  167. // }
  168. },
  169. requestTakeCashSubscribe (done) {
  170. if (!wx.requestSubscribeMessage) {
  171. done && done()
  172. return
  173. }
  174. wx.requestSubscribeMessage({
  175. tmplIds: [TAKE_CASH_SUBSCRIBE_TEMPLATE_ID],
  176. success: function (res) {
  177. console.log("take cash subscribe message", res)
  178. },
  179. fail: function (res) {
  180. console.log("take cash subscribe message fail", res)
  181. },
  182. complete: function () {
  183. done && done()
  184. }
  185. })
  186. },
  187. closedDialog () {
  188. var that = this
  189. that.setData({
  190. confirmDialog: false
  191. })
  192. },
  193. withdrawClick () {
  194. var that = this
  195. var url = 'v1/user/takecash'
  196. var params = {
  197. amount: that.data.withdraw_num
  198. }
  199. var success = function (res) {
  200. if (res.data) {
  201. that.setData({
  202. confirmDialog: false
  203. })
  204. // that.data.lockWithdraw = false
  205. wx.showToast({
  206. title: '提现成功~',
  207. icon: 'none',
  208. duration: 2000
  209. })
  210. getApp().globalData.withdrawChanged = true
  211. that.refreshBalancePage()
  212. that.getCashTotal()
  213. wx.navigateTo({
  214. url: '/packageUser/pages/user/withdraw/withdraw'
  215. })
  216. }
  217. }
  218. _request.$post(url, params, success)
  219. },
  220. })