From 608ed6ae8348a77ca332ca44d3f5d55d6e6fdd6b Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期五, 29 八月 2025 15:01:13 +0800 Subject: [PATCH] feat: 签约 --- apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue | 30 +++++++++++++++++++++++------- 1 files changed, 23 insertions(+), 7 deletions(-) diff --git a/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue b/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue index 38af6bf..db31ead 100644 --- a/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue +++ b/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue @@ -76,13 +76,14 @@ EnumTaskUserSignContractStatus, EnumTaskUserSignContractStatusText, } from '@12333/constants'; -import { format } from '@12333/utils'; +import { format, Message } from '@12333/utils'; import Taro from '@tarojs/taro'; defineOptions({ name: 'InnerPage', }); +const { userDetail } = useUser(); const router = Taro.useRouter(); const id = router.params?.id; const code = router.params?.code; @@ -93,7 +94,7 @@ data: detail, refetch, } = useQuery({ - queryKey: ['enterpriseEmployeeServices/getTaskInfo', id, code], + queryKey: ['enterpriseEmployeeServices/getPersonalUserElectronSign', id, code], queryFn: async () => { return await enterpriseEmployeeServices.getPersonalUserElectronSign( { id: id, code: code }, @@ -109,13 +110,28 @@ }); function checkAgreement() { - const encodedUrl = encodeURIComponent(detail?.value?.contractUrl); - Taro.navigateTo({ - url: `${RouterPath.mineAgreementSignDetail}?url=${encodedUrl}`, - }); + if (detail?.value?.userSignContractStatus === EnumTaskUserSignContractStatus.Wait) { + goToSign(); + } else { + const encodedUrl = encodeURIComponent(detail?.value?.contractUrl); + Taro.navigateTo({ + url: `${RouterPath.mineAgreementSignDetail}?url=${encodedUrl}`, + }); + } } -const goToSign = useAccessReal(() => {}); +const goToSign = useAccessReal(async () => { + try { + let params: API.PersonalUserElectronSignCommand = { + id: id, + }; + let res = await enterpriseEmployeeServices.personalUserElectronSign(params); + if (res) { + const encodedUrl = encodeURIComponent(res.signContractLongUrl); + Taro.navigateTo({ url: `${RouterPath.mineAgreementSignExtraPage}?url=${encodedUrl}` }); + } + } catch (error) {} +}); </script> <style lang="scss"> -- Gitblit v1.9.1