From 58c21b87419938ea0134654ef87f30ff5abc3c3c Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期二, 21 十月 2025 21:09:22 +0800
Subject: [PATCH] fix: bug
---
apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue | 123 +++++++++++++++++++++++++++++++---------
1 files changed, 95 insertions(+), 28 deletions(-)
diff --git a/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue b/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
index 0382b05..0101b4d 100644
--- a/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
@@ -6,23 +6,11 @@
<template #content>
<MineAgreementSignDetailItem
label="鍗忚缂栧彿"
- detail="QY1052511040446686047"
+ :detail="detail?.contractCode"
></MineAgreementSignDetailItem>
<MineAgreementSignDetailItem
label="鍗忚鐘舵��"
- detail="鐢熸晥涓�/宸茬粓姝�"
- ></MineAgreementSignDetailItem>
- <MineAgreementSignDetailItem
- label="璧峰鏃堕棿"
- detail="2024.05.20"
- ></MineAgreementSignDetailItem>
- <MineAgreementSignDetailItem
- label="缁堟鏃堕棿"
- detail="2025.05.19"
- ></MineAgreementSignDetailItem>
- <MineAgreementSignDetailItem
- label="鍗忚绫诲瀷"
- detail="鍔冲姩鍚堝悓"
+ :detail="EnumTaskUserSignContractStatusSignText[detail?.userSignContractStatus]"
></MineAgreementSignDetailItem>
</template>
</MineAgreementSignDetailCard>
@@ -30,20 +18,19 @@
<template #content>
<MineAgreementSignDetailItem
label="鍛樺伐濮撳悕"
- detail="闃抽槼"
+ :detail="detail?.name"
></MineAgreementSignDetailItem>
<MineAgreementSignDetailItem
label="璇佷欢绫诲瀷"
- detail="灞呮皯韬唤璇�"
+ :detail="detail?.identityType"
></MineAgreementSignDetailItem>
<MineAgreementSignDetailItem
label="璇佷欢鍙风爜"
- detail="622429199105261913"
+ :detail="detail?.identity"
></MineAgreementSignDetailItem>
- <MineAgreementSignDetailItem label="宀椾綅" detail="淇濇磥"></MineAgreementSignDetailItem>
<MineAgreementSignDetailItem
label="绛剧害鏃堕棿"
- detail="2024.05.20"
+ :detail="format(detail?.userSignContractTime, 'YYYY-MM-DD')"
></MineAgreementSignDetailItem>
</template>
</MineAgreementSignDetailCard>
@@ -51,15 +38,15 @@
<template #content>
<MineAgreementSignDetailItem
label="涓讳綋绫诲瀷"
- detail="鍏徃"
+ :detail="detail?.enterpriseType"
></MineAgreementSignDetailItem>
<MineAgreementSignDetailItem
label="绛剧害涓讳綋"
- detail="瀹佹尝浜哄姏鏃犲咖浜哄姏璧勬簮"
+ :detail="detail?.enterpriseName"
></MineAgreementSignDetailItem>
<MineAgreementSignDetailItem
label="绛剧害鏃堕棿"
- detail="2024.05.20"
+ :detail="format(detail?.enterpriseSignContractTime, 'YYYY-MM-DD')"
></MineAgreementSignDetailItem>
</template>
</MineAgreementSignDetailCard>
@@ -67,33 +54,113 @@
<template #content>
<MineAgreementSignDetailItem label="鍗忚鍐呭">
<template #detail>
- <div class="detail-card-btn">鏌ョ湅鍗忚</div>
+ <div class="detail-card-btn" @click="checkAgreement">鏌ョ湅鍗忚</div>
</template>
</MineAgreementSignDetailItem>
</template>
</MineAgreementSignDetailCard>
</div>
</ContentScrollView>
- <PageFooter>
+ <PageFooter v-if="detail?.userSignContractStatus === EnumTaskUserSignContractStatus.Wait">
<PageFooterBtn type="primary" @click="goToSign">鍘荤绾�</PageFooterBtn>
</PageFooter>
</LoadingLayout>
</template>
<script setup lang="ts">
-import { useUserStore } from '@/stores/modules/user';
+import { useQuery } from '@tanstack/vue-query';
import MineAgreementSignDetailCard from './MineAgreementSignDetailCard.vue';
import MineAgreementSignDetailItem from './MineAgreementSignDetailItem.vue';
+import * as enterpriseEmployeeServices from '@12333/services/apiV2/enterpriseEmployee';
+import {
+ EnumElectronSignAccess,
+ EnumTaskUserSignContractStatus,
+ EnumTaskUserSignContractStatusSignText,
+} from '@12333/constants';
+import { format, hiddenPhone, Message, setOSSLink, openDocument } from '@12333/utils';
+import Taro from '@tarojs/taro';
+import _ from 'lodash';
defineOptions({
name: 'InnerPage',
});
-const queryState = reactive({});
+const { userDetail } = useUser();
+const router = Taro.useRouter();
+const options = Taro.getLaunchOptionsSync();
+//鐏靛伐Id
+const id = router.params?.id;
+const code = router.params?.code || options?.query?.scene;
-const userStore = useUserStore();
+const {
+ isLoading,
+ isError,
+ data: detail,
+ refetch,
+} = useQuery({
+ queryKey: ['enterpriseEmployeeServices/getPersonalUserElectronSign', id, code],
+ queryFn: async () => {
+ return await enterpriseEmployeeServices.getPersonalUserElectronSign(
+ { id: id, code: code },
+ {
+ showLoading: false,
+ }
+ );
+ },
+ placeholderData: () => ({} as API.GetPersonalUserElectronSignQueryResult),
+ onSuccess(data) {
+ // if (data.isExistTradeChatRecord) setTrue();
+ },
+});
-function goToSign() {}
+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;
+ }
+ openDocument(setOSSLink(detail?.value?.contractUrl));
+ }
+}
+
+const goToSign = useAccessReal(async () => {
+ try {
+ Taro.showLoading({ title: '姝e湪鍔犺浇涓�' });
+ let params: API.PersonalUserElectronSignCommand = {
+ id: detail.value?.id,
+ returnUrl: `${RouterPath.mineAgreementSignDetail}?id=${id}`,
+ };
+ let res = await enterpriseEmployeeServices.personalUserElectronSign(params);
+ if (res) {
+ Taro.hideLoading();
+ 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}` });
+ }
+ }
+ } catch (error) {}
+});
+
+Taro.useDidShow(() => {
+ refetch();
+});
</script>
<style lang="scss">
--
Gitblit v1.9.1