捐款时检测实名,未实名跳转去实名

This commit is contained in:
WindowBird 2025-09-16 16:21:36 +08:00
parent 04b12ae621
commit 0f6fb41e56
3 changed files with 220 additions and 15 deletions

View File

@ -0,0 +1,179 @@
<script>
import CommonEnum from "../../../enum/common";
export default {
name: "goToCertification",
props: {
//
visible: {
type: Boolean,
default: false,
},
},
computed: {
CommonEnum() {
return CommonEnum;
},
},
data() {
return {
iconUrl: {
close: "https://api.ccttiot.com/image-1758006069513.png",
},
};
},
methods: {
handleClose() {
this.$emit("handleClose");
},
goToCertification() {
this.$emit("goToCertification");
},
},
};
</script>
<template>
<view v-if="visible" class="page">
<view class="box">
<view class="title"> 善举需记 福报有凭</view>
<view class="tip">实名认证留存您的慈悲痕迹</view>
<image :src="CommonEnum.LotusMeditation" class="flower"></image>
<view class="tip2">烦请完成实名认证留存您的慈悲痕迹</view>
<button @click="goToCertification">
<text>前去认证</text>
</button>
<view class="close" @click="handleClose">
<image
:src="iconUrl.close"
mode="widthFix"
style="width: 56rpx; height: 56rpx"
></image>
</view>
</view>
</view>
</template>
<style lang="scss" scoped>
.page {
position: fixed;
top: 0;
width: 100vw;
height: 100vh;
background-color: rgba(0, 0, 0, 0.5); /* 黑色50% 透明度 */
}
.box {
position: absolute;
left: 56rpx;
top: 522rpx;
width: 638rpx;
height: 494rpx;
border-radius: 32rpx;
opacity: 1;
background: #ffffff;
}
.title {
position: absolute;
left: 44rpx;
top: 88rpx;
width: 370rpx;
height: 60rpx;
opacity: 1;
font-family: AlibabaPuHuiTi;
font-size: 44rpx;
font-weight: 500;
line-height: normal;
letter-spacing: 0em;
font-feature-settings: "kern" on;
color: #c7a26d;
}
.tip {
position: absolute;
left: 44rpx;
top: 170rpx;
height: 38rpx;
opacity: 1;
font-family: AlibabaPuHuiTi;
font-size: 28rpx;
font-weight: normal;
line-height: normal;
letter-spacing: 0em;
font-feature-settings: "kern" on;
color: #c7a26d;
}
.tip2 {
position: absolute;
left: 44rpx;
top: 262rpx;
height: 36rpx;
opacity: 1;
font-family: AlibabaPuHuiTi;
font-size: 26rpx;
font-weight: normal;
line-height: normal;
letter-spacing: 0em;
font-feature-settings: "kern" on;
color: #522510;
}
button {
position: absolute;
left: 44rpx;
top: 352rpx;
width: 548rpx;
height: 86rpx;
border-radius: 47rpx;
opacity: 1;
background: #c7a26d;
text {
width: 126rpx;
height: 44rpx;
font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
font-weight: 500;
font-size: 32rpx;
color: #ffffff;
line-height: 44rpx;
text-align: left;
font-style: normal;
text-transform: none;
}
}
.flower {
position: absolute;
left: 428rpx;
top: 24rpx;
width: 30.72%;
height: 29.53%;
opacity: 1;
}
.close {
position: absolute;
left: 292rpx;
bottom: -102rpx;
width: 56rpx;
height: 56rpx;
//background-color: #c7a26d;
image {
width: 56rpx;
height: 56rpx;
}
}
</style>

View File

@ -139,6 +139,12 @@
</button>
</view>
</u-popup>
<goToCertification
:visible="visible"
@goToCertification="goToCertification"
@handleClose="handleClose"
></goToCertification>
</view>
</template>
@ -150,8 +156,10 @@ import {
} from "../../api/institutionalStructure/institutionalStructureDetail";
import { createPagination } from "../../composables/winB_Pagination";
import { postInstitutionalStructure } from "../../api/institutionalStructure/institutionalStructure";
import GoToCertification from "./components/goToCertification.vue";
export default {
components: { GoToCertification },
mixins: [
createPagination({
fetchData: getProjectSchedule,
@ -162,6 +170,7 @@ export default {
],
data() {
return {
visible: false,
show: false,
CommonEnum,
buddhaIcon: "https://api.ccttiot.com/image-1756353071821.png",
@ -244,6 +253,14 @@ export default {
this.loadPageData();
},
methods: {
handleClose() {
this.visible = false;
},
goToCertification() {
uni.navigateTo({
url: "/pages/realName/realName",
});
},
//
async loadPageData() {
try {
@ -348,16 +365,18 @@ export default {
if (res.code === 200) {
this.openPaymentUrl(res.data.payParams.payUrl);
} else if (res.code === 10001) {
uni.showModal({
title: "去实名",
content: "需要实名",
showCancel: true,
confirmText: "yes",
cancelText: "no",
success: function () {
uni.navigateTo({ url: "/pages/realName/realName" });
},
});
this.show = false;
this.visible = true; //
// uni.showModal({
// title: "",
// content: "",
// showCancel: true,
// confirmText: "yes",
// cancelText: "no",
// success: function () {
// uni.navigateTo({ url: "/pages/realName/realName" });
// },
// });
console.log("10001", res.msg);
}
},

View File

@ -48,10 +48,7 @@
<script>
import CommonEnum from "../../enum/common";
import {
getRefreshRealName,
putTwoElementRealName,
} from "../../api/realName/realName";
import { putTwoElementRealName } from "../../api/realName/realName";
export default {
components: {},
@ -75,9 +72,19 @@ export default {
});
try {
const res = await putTwoElementRealName(this.twoElementRealName);
if (res.code === 200) {
uni.hideLoading();
await getRefreshRealName();
uni.showModal({
title: "认证成功",
showCancel: false,
});
} else {
uni.hideLoading();
uni.showModal({
title: res.msg,
showCancel: false,
});
}
//
} catch (error) {