From bfb3b8ead34656a6160dd23aaa4648dfc63e282c Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期四, 14 八月 2025 13:25:38 +0800 Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobMiniApp --- apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue | 102 ++++++++++++++++++++++++++++++++++----------------- 1 files changed, 68 insertions(+), 34 deletions(-) diff --git a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue index d42c8da..98269b8 100644 --- a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue +++ b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue @@ -1,15 +1,52 @@ <template> <LoadingLayout :loading="isLoading" :error="isError" :loadError="refetch"> - <JobDetailContent :isCollapse="true"> + <JobDetailContent + :avatar="userResumeInfo.avatar" + :name="userResumeInfo.name" + :age="userResumeInfo.age" + :isReal="userResumeInfo.isReal" + :gender="userResumeInfo.gender" + :personalIdentityContent="userResumeInfo.personalIdentityContent" + :educationalBackgroundContent="userResumeInfo.educationalBackgroundContent" + :taskCount="userResumeInfo.taskCount" + :contactPhoneNumber="userResumeInfo.contactPhoneNumber" + :identity="userResumeInfo.identity" + :userExpectJobs="userResumeInfo.userExpectJobs" + :freeTime="userResumeInfo.freeTime" + :jobSeekingStatus="userResumeInfo.jobSeekingStatus" + :userCredentials="userResumeInfo.userCredentials" + :workSeniority="userResumeInfo.workSeniority" + :workExperience="userResumeInfo.workExperience" + :photos="userResumeInfo.photos" + :height="userResumeInfo.height" + :weight="userResumeInfo.weight" + :taskInfoUsers="userResumeInfo.taskInfoUsers" + :isCollapse="true" + > <template #footer> + <template v-if="taskUserHireStatusResult.hireStatus === EnumTaskUserHireStatus.Wait"> + <PageFooterBtn + type="primary" + plain + @click="setTaskUserHire(EnumTaskUserHireStatus.Refuse)" + >璋㈢粷</PageFooterBtn + > + <PageFooterBtn type="primary" @click="setTaskUserHire(EnumTaskUserHireStatus.Pass)" + >褰曠敤</PageFooterBtn + > + </template> <PageFooterBtn + v-else-if="taskUserHireStatusResult.hireStatus === EnumTaskUserHireStatus.Refuse" type="primary" plain - @click="taskWorkerHireRefuse(FlexTaskWorkerHireEnum.Refused)" - >璋㈢粷</PageFooterBtn + disabled + >宸茶阿缁�</PageFooterBtn > - <PageFooterBtn type="primary" @click="taskWorkerHireRefuse(FlexTaskWorkerHireEnum.Hired)" - >褰曠敤</PageFooterBtn + <PageFooterBtn + v-else-if="taskUserHireStatusResult.hireStatus === EnumTaskUserHireStatus.Pass" + type="primary" + disabled + >宸插綍鐢�</PageFooterBtn > </template> </JobDetailContent> @@ -19,53 +56,50 @@ <script setup lang="ts"> import Taro from '@tarojs/taro'; import { useQuery } from '@tanstack/vue-query'; -import * as flexWorkerServices from '@12333/services/api/FlexWorker'; +import * as taskUserServices from '@12333/services/apiV2/taskUser'; import { Message } from '@12333/utils'; -import { FlexTaskWorkerHireEnum } from '@12333/constants/task'; +import { useUserResume } from '@12333/hooks'; +import { EnumTaskUserHireStatus } from '@12333/constants'; defineOptions({ name: 'InnerPage', }); const router = Taro.useRouter(); -const taskId = router.params?.id ?? ''; +const enterpriseEmployeeId = router.params?.enterpriseEmployeeId ?? ''; +const id = router.params?.id ?? ''; +const taskInfoId = router.params?.taskInfoId ?? ''; -const { - isLoading, - isError, - data: detail, - refetch, -} = useQuery({ - queryKey: ['flexWorkerServices/getFlexTaskDto', taskId], - queryFn: async () => { - return await flexWorkerServices.getFlexTaskDto( - { id: taskId }, - { - showLoading: false, - } - ); - }, - placeholderData: () => ({} as API.GetFlexTaskDtoOutput), +const { isLoading, isError, userResumeInfo, refetch } = useUserResume({ + enterpriseEmployeeId: enterpriseEmployeeId, }); -async function taskWorkerHireRefuse(hireStatus: FlexTaskWorkerHireEnum) { +const { data: taskUserHireStatusResult, refetch: taskUserHireStatusRefetch } = useQuery({ + queryKey: ['taskUserServices/getTaskUserHireStatus', taskInfoId, userResumeInfo.value.id], + queryFn: () => { + let params: API.APIgetTaskUserHireStatusParams = { + taskInfoId: taskInfoId, + userId: userResumeInfo.value.id, + }; + return taskUserServices.getTaskUserHireStatus(params, { showLoading: false }); + }, + enabled: computed(() => !!userResumeInfo.value.id && !!taskInfoId), + placeholderData: () => ({} as API.GetTaskUserHireStatusQueryResult), +}); + +async function setTaskUserHire(hireStatus: EnumTaskUserHireStatus) { try { - let params: API.TaskWorkerHireRefuseInput = { - flexTaskId: taskId, - flexWorkerId: detail.value?.taskId, + let params: API.SetTaskUserHireCommand = { + id: id, hireStatus: hireStatus, }; - let res = await flexWorkerServices.taskWorkerHireRefuse(params); + let res = await taskUserServices.setTaskUserHire(params); if (res) { Message.success('鎿嶄綔鎴愬姛'); - refetch({ + taskUserHireStatusRefetch({ type: 'inactive', }); } } catch (error) {} } </script> - -<style lang="scss"> -@import '@/styles/common.scss'; -</style> -- Gitblit v1.9.1