orderBtnMixins.js 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. import Vue from 'vue'
  2. const orderMixins = {
  3. data() {
  4. return {
  5. params: {
  6. payType:'LARGE',
  7. payAmount:'',
  8. shopOrderId:0,
  9. orderId: 0,
  10. userId: 0 ,
  11. },
  12. bigPayInfo: { // 银联转账信息
  13. orderNo: '',// 订单编号
  14. shopOrderId: '',// 子订单编号
  15. bankName: '',// 收款网点
  16. bankNumber: '',// 收款账号
  17. receiverName: '' // 收款账户名
  18. },
  19. obligation:''
  20. }
  21. },
  22. computed: {
  23. },
  24. methods: {
  25. async getPayOrderInfo(shopOrderId) {
  26. //初始化支付信息
  27. try {
  28. const { data } = await this.PayService.PayOrderCheckoutShoporders({ shopOrderId: shopOrderId })
  29. this.obligation = data.shopOrder.obligation // 待付金额
  30. this.params.shopOrderId = this.bigPayInfo.shopOrderId = shopOrderId // 子订单Id
  31. this.params.userId = data.shopOrder.userId // 子订单Id
  32. this.params.orderId = data.shopOrder.orderId // 主订单Id
  33. this.bigPayInfo.orderNo = data.shopOrder.orderNo
  34. this.params.payAmount = this.toFixedFn(this.obligation) // 自定义金额
  35. if (data.bankInfo) {
  36. this.bigPayInfo.bankNumber = data.bankInfo.bankNumber
  37. this.bigPayInfo.receiverName = data.bankInfo.receiverName
  38. this.bigPayInfo.bankName = data.bankInfo.bankName
  39. this.$parent.isBigPayModal = true
  40. this.$parent.bigPayInfo = this.bigPayInfo
  41. }else{
  42. this.PayOrderLarge()
  43. }
  44. } catch (error) {
  45. console.log(error)
  46. }
  47. },
  48. // 调用获取银联转账账号
  49. async PayOrderLarge(){
  50. try {
  51. const { data } = await this.PayService.PayOrderLarge(this.params)
  52. this.bigPayInfo.bankNumber = data.rt9_largePaymentNo
  53. this.bigPayInfo.receiverName = data.rt10_receiverName
  54. this.bigPayInfo.bankName = data.rt11_bankName
  55. this.$parent.bigPayInfo = this.bigPayInfo
  56. this.$parent.isBigPayModal = true
  57. } catch (error) {
  58. console.log(error)
  59. }
  60. },
  61. toFixedFn(value) {
  62. //处理小数点后两位数
  63. return Number(value).toFixed(2)
  64. },
  65. }
  66. }
  67. export default orderMixins