From aebf1603cd6df5341160ffe23c715919bf14c4a7 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期一, 25 八月 2025 17:06:47 +0800
Subject: [PATCH] feat: 签约
---
apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue | 26 ++++++++++++++++++++++----
packages/hooks/user.ts | 30 ++++++++++++++++++++++++++++++
packages/services/apiV2/typings.d.ts | 1 +
3 files changed, 53 insertions(+), 4 deletions(-)
diff --git a/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue b/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue
index 0ef1f73..c8e03d3 100644
--- a/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue
@@ -24,8 +24,22 @@
:isCollapse="true"
>
<template #footer>
- <PageFooterBtn v-if="userResumeInfo" type="primary" plain>瑙g害</PageFooterBtn>
- <PageFooterBtn type="primary" @click="goToSign">绛剧害</PageFooterBtn>
+ <PageFooterBtn
+ v-if="
+ enterpriseEmployeeInfo.userSignContractStatus === EnumTaskUserSignContractStatus.Pass
+ "
+ type="primary"
+ plain
+ >瑙g害</PageFooterBtn
+ >
+ <PageFooterBtn
+ type="primary"
+ @click="goToSign"
+ v-if="
+ enterpriseEmployeeInfo.userSignContractStatus === EnumTaskUserSignContractStatus.Wait
+ "
+ >绛剧害</PageFooterBtn
+ >
</template>
</JobDetailContent>
</LoadingLayout>
@@ -33,8 +47,8 @@
<script setup lang="ts">
import Taro from '@tarojs/taro';
-import { useQuery } from '@tanstack/vue-query';
-import { useUserResume } from '@12333/hooks';
+import { EnumTaskUserSignContractStatus } from '@12333/constants';
+import { useGetEnterpriseEmployee, useUserResume } from '@12333/hooks';
defineOptions({
name: 'InnerPage',
@@ -47,6 +61,10 @@
enterpriseEmployeeId: enterpriseEmployeeId,
});
+const { enterpriseEmployeeInfo } = useGetEnterpriseEmployee({
+ id: enterpriseEmployeeId,
+});
+
function goToSign() {
Taro.navigateTo({
url: `${RouterPath.flexJobSign}?enterpriseEmployeeId=${enterpriseEmployeeId}`,
diff --git a/packages/hooks/user.ts b/packages/hooks/user.ts
index 190eaf1..1c703a5 100644
--- a/packages/hooks/user.ts
+++ b/packages/hooks/user.ts
@@ -1,5 +1,6 @@
import { MaybeRef, computed, unref } from 'vue';
import * as userResumeServices from '@12333/services/apiV2/userResume';
+import * as enterpriseEmployeeServices from '@12333//services/apiV2/enterpriseEmployee';
import { useQuery, useQueryClient } from '@tanstack/vue-query';
type UseUserResumeOptions = {
@@ -52,3 +53,32 @@
updateUserResume,
};
}
+
+type UseGetEnterpriseEmployeeOptions = {
+ id?: MaybeRef<string>;
+};
+
+export function useGetEnterpriseEmployee(options: UseGetEnterpriseEmployeeOptions = {}) {
+ const { id } = options;
+
+ const { data, refetch, isLoading, isError } = useQuery({
+ queryKey: ['enterpriseEmployeeServices/getEnterpriseEmployee', id],
+ queryFn: async () => {
+ return await enterpriseEmployeeServices.getEnterpriseEmployee(
+ { id: unref(id) },
+ {
+ showLoading: false,
+ }
+ );
+ },
+ placeholderData: () => ({} as API.GetEnterpriseEmployeeQueryResult),
+ enabled: computed(() => !!unref(id)),
+ });
+
+ return {
+ enterpriseEmployeeInfo: data,
+ refetch,
+ isLoading,
+ isError,
+ };
+}
diff --git a/packages/services/apiV2/typings.d.ts b/packages/services/apiV2/typings.d.ts
index 2884491..0b8e9b4 100644
--- a/packages/services/apiV2/typings.d.ts
+++ b/packages/services/apiV2/typings.d.ts
@@ -2593,6 +2593,7 @@
enterpriseSignContractTime?: string;
/** 鐢靛瓙鍚堝悓 */
contractUrl?: string;
+ userSignContractStatus?: EnumTaskUserSignContractStatus;
}
interface GetEnterpriseEmployeesQuery {
--
Gitblit v1.9.1