From 6a6b899fbffe820f37e9e991f2335ef0c6b911c8 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期一, 09 六月 2025 16:21:25 +0800
Subject: [PATCH] Merge branch 'dev-ui' of http://120.26.58.240:8888/r/LifePaymentFront into dev-ui

---
 apps/taro/src/subpackages/my/applyResult/applyResult.vue |   64 +++++++++++++++++++++++++++++---
 1 files changed, 58 insertions(+), 6 deletions(-)

diff --git a/apps/taro/src/subpackages/my/applyResult/applyResult.vue b/apps/taro/src/subpackages/my/applyResult/applyResult.vue
index 59e712a..297ffab 100644
--- a/apps/taro/src/subpackages/my/applyResult/applyResult.vue
+++ b/apps/taro/src/subpackages/my/applyResult/applyResult.vue
@@ -12,19 +12,71 @@
 <script setup lang="ts">
 import { PageLayout } from '@/components';
 import { ResultWithoutBG } from '@life-payment/components';
+import {
+  APIgetChannelConsultationByIdParams,
+  APIgetPromoterParams,
+  CreateOrUpdatePromoterInput,
+  useLifeRechargeContext,
+} from '@life-payment/core-vue';
 import Taro from '@tarojs/taro';
 
 defineOptions({
-  name: 'applyAgent',
+  name: 'applyResult',
 });
 
 const router = Taro.useRouter();
+const { blLifeRecharge } = useLifeRechargeContext();
+const consultationId = router.params?.consultationId ?? '';
 
-const promoterIdNumber = router.params?.promoterIdNumber ?? '';
+async function getPromoter(phoneNumber: string) {
+  try {
+    let params: APIgetPromoterParams = {
+      phoneNumber: phoneNumber,
+    };
+    return await blLifeRecharge.services.getPromoter(params);
+  } catch (error) {}
+}
 
-function generate() {
-  RouteHelper.navigateTo({
-    url: `${RouterPath.generatePromotionCode}?promoterIdNumber=${promoterIdNumber}`,
-  });
+async function getChannelConsultationById() {
+  try {
+    let params: APIgetChannelConsultationByIdParams = {
+      id: consultationId,
+    };
+    return await blLifeRecharge.services.getChannelConsultationById(params);
+  } catch (error) {}
+}
+
+async function createOrUpdatePromoter(name: string, phoneNumber: string) {
+  try {
+    let params: CreateOrUpdatePromoterInput = {
+      userId: blLifeRecharge.accountModel.userId,
+      name: name,
+      phoneNumber: phoneNumber,
+    };
+    return await blLifeRecharge.services.createOrUpdatePromoter(params);
+  } catch (error) {}
+}
+
+async function generate() {
+  try {
+    if (consultationId) {
+      let res = await getChannelConsultationById();
+      if (res) {
+        let promoterIdNumber = await getPromoter(res.phoneNumber);
+        if (promoterIdNumber) {
+          RouteHelper.navigateTo({
+            url: `${RouterPath.promotionQrcode}?promoterIdNumber=${promoterIdNumber}`,
+          });
+        } else {
+          let promoterIdNumber = await createOrUpdatePromoter(res.name, res.phoneNumber);
+          if (promoterIdNumber) {
+            RouteHelper.navigateTo({
+              url: `${RouterPath.promotionQrcode}?promoterIdNumber=${res}`,
+            });
+          }
+        }
+      }
+    }
+  } catch (error) {}
 }
 </script>

--
Gitblit v1.9.1