wechatpayCallback.vue 1.82 KB
<!--
 * @Date: 2022-04-27 10:08:22
 * @LastEditors: hookehuyr hookehuyr@gmail.com
 * @LastEditTime: 2022-06-17 13:50:54
 * @FilePath: /tswj/src/views/client/wechatpayCallback.vue
 * @Description: 微信支付成功后回调
-->
<template>
  <div class="wechatpay-callback-page">
    <div class="pay-success">
      <van-image width="50" height="50" :src="icon_wechatpay" />
      <div class="text">支付成功</div>
    </div>
    <div class="pay-main">
      <p class="title">上海市儿童基金会</p>
      <div class="amount">
        <p>¥</p>&nbsp;
        <p>{{ amount }}</p>
      </div>
    </div>
    <div class="button-wrapper">
      <my-button type="primary" @on-click="getCert">查看证书</my-button>
    </div>
  </div>
</template>

<script setup>
import MyButton from '@/components/MyButton/index.vue'
import icon_wechatpay from '@images/zhifu@2x.png'
import { ref, onMounted } from 'vue'
import { useRoute, useRouter } from 'vue-router'
const $route = useRoute();
const $router = useRouter();

const amount = ref(0)
onMounted(() => {
  // 捐赠金额
  amount.value = $route.query.amount
})

// 需要获取 donate_id
// 跳转到捐赠证书页面,替换掉当前页面,不能返回这个页面
const getCert = () => {
  $router.replace({
    path: '/client/donateCertificate',
    query: {
      donate_id: $route.query.donate_id
    }
  });
}
</script>

<style lang="less" scoped>
.wechatpay-callback-page {
  .pay-success {
    text-align: center;
    padding: 20%;

    .text {
      color: #52ab38;
    }
  }

  .pay-main {
    color: #222222;
    text-align: center;

    .title {
      font-size: 1.15rem;
      margin-bottom: 1rem;
    }

    .amount {
      p {
        font-size: 1.5rem;
        display: inline-block;
        vertical-align: middle;
      }
    }
  }

  .button-wrapper {
    padding: 30% 4rem;
  }
}
</style>