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 |   72 +++++++++++++++++++++++++++---------
 1 files changed, 54 insertions(+), 18 deletions(-)

diff --git a/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue b/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
index db31ead..3cc9d01 100644
--- a/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
@@ -10,7 +10,7 @@
             ></MineAgreementSignDetailItem>
             <MineAgreementSignDetailItem
               label="鍗忚鐘舵��"
-              :detail="EnumTaskUserSignContractStatusText[detail?.userSignContractStatus]"
+              :detail="EnumTaskUserSignContractStatusSignText[detail?.userSignContractStatus]"
             ></MineAgreementSignDetailItem>
           </template>
         </MineAgreementSignDetailCard>
@@ -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>
@@ -73,11 +73,13 @@
 import MineAgreementSignDetailItem from './MineAgreementSignDetailItem.vue';
 import * as enterpriseEmployeeServices from '@12333/services/apiV2/enterpriseEmployee';
 import {
+  EnumElectronSignAccess,
   EnumTaskUserSignContractStatus,
-  EnumTaskUserSignContractStatusText,
+  EnumTaskUserSignContractStatusSignText,
 } from '@12333/constants';
-import { format, Message } from '@12333/utils';
+import { format, hiddenPhone, Message, setOSSLink, openDocument } from '@12333/utils';
 import Taro from '@tarojs/taro';
+import _ from 'lodash';
 
 defineOptions({
   name: 'InnerPage',
@@ -85,8 +87,11 @@
 
 const { userDetail } = useUser();
 const router = Taro.useRouter();
+const options = Taro.getLaunchOptionsSync();
+//鐏靛伐Id
 const id = router.params?.id;
-const code = router.params?.code;
+const code = router.params?.code || options?.query?.scene;
+const btnLoading = ref(false);
 
 const {
   isLoading,
@@ -109,28 +114,59 @@
   },
 });
 
-function checkAgreement() {
-  if (detail?.value?.userSignContractStatus === EnumTaskUserSignContractStatus.Wait) {
-    goToSign();
-  } else {
-    const encodedUrl = encodeURIComponent(detail?.value?.contractUrl);
-    Taro.navigateTo({
-      url: `${RouterPath.mineAgreementSignDetail}?url=${encodedUrl}`,
-    });
-  }
+async function checkAgreement() {
+  try {
+    const res = await refetch();
+    if (res?.data?.userSignContractStatus === EnumTaskUserSignContractStatus.Wait) {
+      goToSign();
+    }
+    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 {
+    btnLoading.value = true;
     let params: API.PersonalUserElectronSignCommand = {
-      id: id,
+      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.mineAgreementSignExtraPage}?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;
     }
-  } catch (error) {}
+  } catch (error) {
+    btnLoading.value = false;
+  }
+});
+
+Taro.useDidShow(() => {
+  refetch();
 });
 </script>
 

--
Gitblit v1.9.1