|
@@ -16,11 +16,15 @@ function handleNavLeftClick() {
|
|
|
router.replace("/stxk/jz");
|
|
|
}
|
|
|
|
|
|
+// 报名状态
|
|
|
+// 0: 未报名
|
|
|
+// 1: 已报名未付款
|
|
|
+// 2: 已报名已付款
|
|
|
// 当前学生是否可报名
|
|
|
-let isOpen = $ref(false);
|
|
|
+let orderStatus = $ref(undefined);
|
|
|
|
|
|
let loading = $ref(true);
|
|
|
-let detailInfo = $ref();
|
|
|
+let detailInfo = $ref(0);
|
|
|
request({
|
|
|
url: "/khfw/kcgl/detail",
|
|
|
data: {
|
|
@@ -32,14 +36,21 @@ request({
|
|
|
detailInfo = res.data.one_info;
|
|
|
detailInfo.$kk_kcfy = detailInfo.kk_kcfy * 100;
|
|
|
|
|
|
- isOpen = detailInfo.khfw_kcbmxx.kkbm_id === "0";
|
|
|
+ if (detailInfo.khfw_kcbmxx.kkbm_id === "0") {
|
|
|
+ orderStatus = 0;
|
|
|
+ }
|
|
|
+ else if (detailInfo.khfw_kcbmxx.kjf_zfzt === "1") {
|
|
|
+ orderStatus = 1;
|
|
|
+ } else if (detailInfo.khfw_kcbmxx.kjf_zfzt === "2") {
|
|
|
+ orderStatus = 2;
|
|
|
+ }
|
|
|
} else {
|
|
|
}
|
|
|
loading = false;
|
|
|
});
|
|
|
|
|
|
function handleSubmitbarClick() {
|
|
|
- console.log("handleSubmitbarClick", isOpen, child);
|
|
|
+ console.log("handleSubmitbarClick", orderStatus, child);
|
|
|
|
|
|
request({
|
|
|
url: "/khfw/kcbmxx/add",
|
|
@@ -92,10 +103,10 @@ function onBridgeReady(data) {
|
|
|
case "get_brand_wcpay_request:ok":
|
|
|
showSuccessToast("支付成功");
|
|
|
return resolve(true);
|
|
|
- case "get_brand_wcpay_request:ok":
|
|
|
+ case "get_brand_wcpay_request:cancel":
|
|
|
showFailToast("取消支付");
|
|
|
return resolve(false);
|
|
|
- case "get_brand_wcpay_request:ok":
|
|
|
+ case "get_brand_wcpay_request:fail":
|
|
|
showFailToast("支付失败");
|
|
|
return resolve(false);
|
|
|
default:
|
|
@@ -124,7 +135,7 @@ if (code) {
|
|
|
})
|
|
|
.then((res) => {
|
|
|
if (res.code === "1") {
|
|
|
- // isOpen = false
|
|
|
+ // orderStatus = false
|
|
|
if (typeof WeixinJSBridge == "undefined") {
|
|
|
console.log("WeixinJSBridge is not ready");
|
|
|
document.addEventListener(
|
|
@@ -140,12 +151,26 @@ if (code) {
|
|
|
.then((res) => {
|
|
|
location.search = "";
|
|
|
if (res) {
|
|
|
- isOpen = false;
|
|
|
+ /* todo: 支付成功 */
|
|
|
+ orderStatus = 2;
|
|
|
// router.replace('/stsk/jz/wd')
|
|
|
} else {
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
+
|
|
|
+const orderStatusText = computed(() => {
|
|
|
+ switch (orderStatus) {
|
|
|
+ case 0:
|
|
|
+ return "立即报名";
|
|
|
+ case 1:
|
|
|
+ return "申请中";
|
|
|
+ case 2:
|
|
|
+ return "已报名";
|
|
|
+ default:
|
|
|
+ return "立即报名";
|
|
|
+ }
|
|
|
+});
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
@@ -202,38 +227,24 @@ if (code) {
|
|
|
<div class="mb-10">
|
|
|
<div class="pre font-bold mb-2">教师简介</div>
|
|
|
<div v-if="detailInfo.kk_teachers != ''">
|
|
|
- <div
|
|
|
- class="flex text-sm shadow-md p-2 mb-4"
|
|
|
- v-for="item in detailInfo.kk_teachers"
|
|
|
- >
|
|
|
+ <div class="flex text-sm shadow-md p-2 mb-4" v-for="item in detailInfo.kk_teachers">
|
|
|
<div class="w-1/3 flex-none flex flex-col items-center">
|
|
|
- <van-image
|
|
|
- :src="item.avatar"
|
|
|
- width="100"
|
|
|
- height="100"
|
|
|
- round
|
|
|
- fit="cover"
|
|
|
- ></van-image>
|
|
|
+ <van-image :src="item.avatar" width="100" height="100" round fit="cover"></van-image>
|
|
|
<div>
|
|
|
<div>{{ item.name }}</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div>{{ item.intro }}</div>
|
|
|
<!-- <ul class="list-disc list-inside">
|
|
|
- <li>{{ detailInfo.kk_teacher.intro }}</li>
|
|
|
- </ul> -->
|
|
|
+ <li>{{ detailInfo.kk_teacher.intro }}</li>
|
|
|
+ </ul> -->
|
|
|
</div>
|
|
|
</div>
|
|
|
<div v-else>暂无数据</div>
|
|
|
</div>
|
|
|
|
|
|
- <van-submit-bar
|
|
|
- :price="detailInfo.$kk_kcfy"
|
|
|
- :button-text="isOpen ? '立即报名' : '已报名'"
|
|
|
- :disabled="!isOpen"
|
|
|
- @submit="handleSubmitbarClick"
|
|
|
- placeholder
|
|
|
- />
|
|
|
+ <van-submit-bar :price="detailInfo.$kk_kcfy" :button-text="orderStatusText" :disabled="orderStatus !== 0"
|
|
|
+ @submit="handleSubmitbarClick" placeholder />
|
|
|
</van-skeleton>
|
|
|
</div>
|
|
|
</template>
|