From 891a1ad22fdca6bf9ea2433377afd2a0e438c72f Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期五, 24 十月 2025 15:48:18 +0800
Subject: [PATCH] fix: bug

---
 apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue |   70 +++++++++++++++++++++--------------
 1 files changed, 42 insertions(+), 28 deletions(-)

diff --git a/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue b/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
index 4aa4cba..3cc9d01 100644
--- a/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
@@ -62,7 +62,7 @@
       </div>
     </ContentScrollView>
     <PageFooter v-if="detail?.userSignContractStatus === EnumTaskUserSignContractStatus.Wait">
-      <PageFooterBtn type="primary" @click="goToSign">鍘荤绾�</PageFooterBtn>
+      <PageFooterBtn type="primary" @click="goToSign" :loading="btnLoading">鍘荤绾�</PageFooterBtn>
     </PageFooter>
   </LoadingLayout>
 </template>
@@ -79,6 +79,7 @@
 } from '@12333/constants';
 import { format, hiddenPhone, Message, setOSSLink, openDocument } from '@12333/utils';
 import Taro from '@tarojs/taro';
+import _ from 'lodash';
 
 defineOptions({
   name: 'InnerPage',
@@ -86,11 +87,11 @@
 
 const { userDetail } = useUser();
 const router = Taro.useRouter();
-const launchOption = useLaunchOptions();
 const options = Taro.getLaunchOptionsSync();
 //鐏靛伐Id
 const id = router.params?.id;
 const code = router.params?.code || options?.query?.scene;
+const btnLoading = ref(false);
 
 const {
   isLoading,
@@ -113,44 +114,57 @@
   },
 });
 
-function checkAgreement() {
-  if (detail?.value?.userSignContractStatus === EnumTaskUserSignContractStatus.Wait) {
-    goToSign();
-  }
-  if (
-    detail?.value?.userSignContractStatus === EnumTaskUserSignContractStatus.Stop ||
-    detail?.value?.userSignContractStatus === EnumTaskUserSignContractStatus.Pass
-  ) {
-    if (!detail?.value?.contractUrl) {
-      Message.warning('鍗忚鏃犳硶鏌ョ湅锛岃绋嶅悗鍐嶈瘯');
-      return;
+async function checkAgreement() {
+  try {
+    const res = await refetch();
+    if (res?.data?.userSignContractStatus === EnumTaskUserSignContractStatus.Wait) {
+      goToSign();
     }
-    openDocument(setOSSLink(detail?.value?.contractUrl));
-  }
+    if (
+      res?.data?.userSignContractStatus === EnumTaskUserSignContractStatus.Stop ||
+      res?.data?.userSignContractStatus === EnumTaskUserSignContractStatus.Pass
+    ) {
+      if (!res?.data?.contractUrl) {
+        Message.warning('鍗忚鏃犳硶鏌ョ湅锛岃绋嶅悗鍐嶈瘯');
+        return;
+      }
+      openDocument(setOSSLink(res?.data?.contractUrl));
+    }
+  } catch (error) {}
 }
 
 const goToSign = useAccessReal(async () => {
   try {
-    // if (detail.value?.contractTemplateAccess === EnumElectronSignAccess.BestSign) {
+    btnLoading.value = true;
     let params: API.PersonalUserElectronSignCommand = {
       id: detail.value?.id,
+      returnUrl: `${RouterPath.mineAgreementSignDetail}?id=${id}`,
     };
     let res = await enterpriseEmployeeServices.personalUserElectronSign(params);
     if (res) {
-      const encodedUrl = encodeURIComponent(res.signContractLongUrl);
-      Taro.navigateTo({ url: `${RouterPath.extraPage}?url=${encodedUrl}` });
+      if (detail.value?.contractTemplateAccess === EnumElectronSignAccess.AlipaySign) {
+        try {
+          await Message.confirm({
+            message: `绛剧害鐭俊宸插彂閫佽嚦鎮�${hiddenPhone(
+              detail.value?.contactPhoneNumber
+            )}鐨勬墜鏈猴紝璇峰強鏃舵煡鐪嬪苟绛剧害`,
+            cancelText: '鏈敹鍒扮煭淇�',
+          });
+        } catch (error) {
+          goToSign();
+        }
+      } else {
+        const encodedUrl = encodeURIComponent(res.signContractLongUrl);
+        Taro.redirectTo({ url: `${RouterPath.extraPage}?url=${encodedUrl}` });
+      }
+    } else {
+      btnLoading.value = false;
     }
-    // }
-    // if (detail.value?.contractTemplateAccess === EnumElectronSignAccess.AlipaySign) {
-    //   Message.confirm({
-    //     message: `绛剧害鐭俊宸插彂閫佽嚦鎮�${hiddenPhone(
-    //       detail.value?.contactPhoneNumber
-    //     )}鐨勬墜鏈猴紝璇峰強鏃舵煡鐪嬪苟绛剧害`,
-    //     showCancelBtn: false,
-    //   });
-    // }
-  } catch (error) {}
+  } catch (error) {
+    btnLoading.value = false;
+  }
 });
+
 Taro.useDidShow(() => {
   refetch();
 });

--
Gitblit v1.9.1