补充 VP 模块注册 + 前端 API 封装

- app.module.ts: 注册 VirtualPaymentModule
- config.ts + api.ts: 添加虚拟支付 API 端点
- useGravityPurchase.ts: VP 购买逻辑
- interview.vue / user.vue: 适配 VP 调用
- admin.controller.ts: 管理端虚拟支付相关调整
- payment.controller.spec.ts: 测试适配
This commit is contained in:
yuzhiran
2026-06-24 10:35:25 +08:00
parent 81f86d995d
commit 52e5350ba0
8 changed files with 66 additions and 74 deletions
+4 -22
View File
@@ -53,7 +53,7 @@
<view class="gravity-actions">
<text class="gravity-btn share" @click="goSharePage">分享得引力值</text>
<text class="gravity-btn contribute" @click="goContributePage">贡献面经</text>
<text class="gravity-btn h5buy" @click="goH5Buy">官网购买</text>
<text class="gravity-btn h5buy" @click="goH5Buy">购买引力值</text>
</view>
</view>
</view>
@@ -77,14 +77,11 @@
<text class="menu-text">面试复盘</text>
<text class="menu-arrow"></text>
</view>
<!-- 会员中心菜单注释隐藏微信审核 -->
<!--
<view class="menu-item" @click="goVip">
<view class="menu-icon-wrap wrap-purple"><text class="menu-icon">💎</text></view>
<text class="menu-text">会员中心</text>
<text class="menu-arrow"></text>
</view>
-->
<view class="menu-item" @click="requireLogin(goResume, '我的简历')">
<view class="menu-icon-wrap wrap-green"><text class="menu-icon">📄</text></view>
<text class="menu-text">我的简历</text>
@@ -148,12 +145,12 @@
<text class="gp-method-arrow"></text>
</view>
<!-- 官网购买 -->
<!-- 购买引力值 -->
<view class="gp-get-method" @click="goH5Buy">
<view class="gp-method-icon-wrap"><text class="gp-method-icon">🛒</text></view>
<view class="gp-method-info">
<text class="gp-method-name">官网购买</text>
<text class="gp-method-desc">通过官网网页端可购买引力值套餐支持更多支付方式</text>
<text class="gp-method-name">购买引力值</text>
<text class="gp-method-desc">小程序内直接购买微信支付安全便捷</text>
</view>
<text class="gp-method-arrow"></text>
</view>
@@ -278,22 +275,7 @@ const goLogin = () => uni.navigateTo({ url: '/pages/login/login' })
const showGetGravityModal = ref(false)
const openBuyModal = () => { showGetGravityModal.value = true }
const goH5Buy = () => {
const token = uni.getStorageSync('token') || ''
const url = `https://zhiyin.yzrcloud.cn/?buy=gravity${token ? '&token=' + token : ''}`
// #ifdef H5
uni.navigateTo({ url: '/pages/member/member' })
// #endif
// #ifdef MP-WEIXIN
uni.setClipboardData({
data: url,
success: () => {
uni.showToast({ title: '链接已复制,请在手机浏览器中打开', icon: 'none', duration: 3000 })
},
fail: () => {
uni.showToast({ title: '复制失败,请手动访问 zhiyin.yzrcloud.cn', icon: 'none', duration: 3000 })
},
})
// #endif
}
const goCareer = () => uni.navigateTo({ url: '/pages/career/career' })