From 74953600e30027aa89aec6eeb939a182a2a7ecda Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期一, 09 六月 2025 16:20:05 +0800
Subject: [PATCH] feat: 接口

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

diff --git a/apps/taro/src/subpackages/my/applyResult/applyResult.vue b/apps/taro/src/subpackages/my/applyResult/applyResult.vue
index 56d16be..c916847 100644
--- a/apps/taro/src/subpackages/my/applyResult/applyResult.vue
+++ b/apps/taro/src/subpackages/my/applyResult/applyResult.vue
@@ -2,7 +2,7 @@
   <PageLayout title="绔嬪嵆鐢宠" class="applyAgent-page-wrapper" hasBgColor :needAuth="false">
     <ResultWithoutBG
       remark="鎴戜滑鐨勮繍钀ヤ汉鍛樹細鍦�5涓伐浣滄棩鍐呰仈绯绘偍娌熼�氫唬鐞嗕簨瀹滐紝璇蜂繚鎸佺數璇濈晠閫�!"
-      tips="娉細鎴愬姛鎷涘嫙浠g悊鍟嗭紝杩樻湁鏈�楂�1000鍏冨鍔憋紝璇﹁璇峰挩璇細16505012333"
+      tips="娉細鎴愬姛鎷涘嫙浠g悊鍟嗭紝杩樻湁鏈�楂�1000鍏冨鍔憋紝璇﹁璇峰挩璇細18968263725"
       title="鎻愪氦鎴愬姛"
       @generate="generate"
     ></ResultWithoutBG>
@@ -12,14 +12,74 @@
 <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',
 });
 
-function generate() {
-  RouteHelper.navigateTo({
-    url: RouterPath.promotionQrcode,
-  });
+const router = Taro.useRouter();
+const { blLifeRecharge } = useLifeRechargeContext();
+
+const channelConsultationId = router.params?.channelConsultationId ?? '';
+console.log('channelConsultationId: ', channelConsultationId);
+
+async function getPromoter(phoneNumber: string) {
+  try {
+    let params: APIgetPromoterParams = {
+      phoneNumber: phoneNumber,
+    };
+    return await blLifeRecharge.services.getPromoter(params);
+  } catch (error) {}
+}
+
+async function getChannelConsultationById() {
+  try {
+    let params: APIgetChannelConsultationByIdParams = {
+      id: channelConsultationId,
+    };
+    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 (channelConsultationId) {
+      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}`,
+            });
+          }
+        }
+      }
+    } else {
+    }
+  } catch (error) {}
 }
 </script>

--
Gitblit v1.9.1