From 9c2cb0c24dabf68ca5f4703340ed2b1f13ddf969 Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期三, 13 八月 2025 19:37:15 +0800 Subject: [PATCH] fix: 灵工管理 --- apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue | 60 ++++++---- apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue | 30 +++-- apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue | 11 + packages/services/apiV2/enterpriseEmployee.ts | 30 +++++ apps/bMiniApp/project.private.config.json | 2 apps/bMiniApp/src/components/JobDetailContent/components/curriculumView.vue | 81 ++++++++---- apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue | 47 ++++--- apps/bMiniApp/src/subpackages/jobApplicationManage/components/SignList.vue | 6 apps/bMiniApp/src/components/JobDetailContent/JobDetailContent.vue | 26 ++++ apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue | 2 packages/services/apiV2/typings.d.ts | 25 ++++ apps/bMiniApp/src/components/JobDetailContent/components/experienceView.vue | 31 ++++- packages/components/src/Card/FlexJobCard.vue | 4 apps/bMiniApp/src/pages/home/index.vue | 2 14 files changed, 253 insertions(+), 104 deletions(-) diff --git a/apps/bMiniApp/project.private.config.json b/apps/bMiniApp/project.private.config.json index 56374b3..0251a20 100644 --- a/apps/bMiniApp/project.private.config.json +++ b/apps/bMiniApp/project.private.config.json @@ -11,7 +11,7 @@ { "name": "鐏靛伐璇︽儏", "pathName": "subpackages/flexJob/flexJobDetail/flexJobDetail", - "query": "id=700a3a67-5da5-49d2-a65a-08ddd661238b", + "query": "enterpriseEmployeeId=700a3a67-5da5-49d2-a65a-08ddd661238b", "launchMode": "default", "scene": null }, diff --git a/apps/bMiniApp/src/components/JobDetailContent/JobDetailContent.vue b/apps/bMiniApp/src/components/JobDetailContent/JobDetailContent.vue index 4fdb0ed..5bf9aba 100644 --- a/apps/bMiniApp/src/components/JobDetailContent/JobDetailContent.vue +++ b/apps/bMiniApp/src/components/JobDetailContent/JobDetailContent.vue @@ -37,7 +37,17 @@ fullHeight > <ProTabPane :title="`绠�鍘哷" pane-key="1"> - <curriculumView /> + <curriculumView + :userExpectJobs="userExpectJobs" + :freeTime="freeTime" + :jobSeekingStatus="jobSeekingStatus" + :userCredentials="userCredentials" + :workSeniority="workSeniority" + :workExperience="workExperience" + :photos="photos" + :height="height" + :weight="weight" + /> </ProTabPane> <ProTabPane :title="`缁忓巻`" pane-key="2"> <experienceView /> @@ -73,6 +83,20 @@ contactPhoneNumber?: string; identity?: string; userId?: string; + + userExpectJobs?: API.GetUserResumeQueryResultExpectJob[]; + freeTime?: API.EnumPersonalFreeTime; + jobSeekingStatus?: API.EnumPersonalJobSeekingStatus; + userCredentials?: API.GetUserResumeQueryResultCredential[]; + workSeniority?: string; + workExperience?: string; + photos?: string[]; + /** 韬珮 */ + height?: number; + /** 浣撻噸 */ + weight?: number; + + taskInfoUsers?: API.GetUserResumeQueryResultExperience[]; }; const tab = ref('1'); diff --git a/apps/bMiniApp/src/components/JobDetailContent/components/curriculumView.vue b/apps/bMiniApp/src/components/JobDetailContent/components/curriculumView.vue index b06b8f9..7946288 100644 --- a/apps/bMiniApp/src/components/JobDetailContent/components/curriculumView.vue +++ b/apps/bMiniApp/src/components/JobDetailContent/components/curriculumView.vue @@ -5,18 +5,22 @@ <div class="curriculum-list"> <CurriculumViewItem label="鏈熸湜宀椾綅锛�"> <div class="curriculum-position-list"> - <div class="curriculum-position-list-item">瀹㈡埧鏈嶅姟鍛�</div> - <div class="curriculum-position-list-item">瀹㈡埧鏈嶅姟鍛�</div> - <div class="curriculum-position-list-item">瀹㈡埧鏈嶅姟鍛�</div> - <div class="curriculum-position-list-item">瀹㈡埧鏈嶅姟鍛�</div> - <div class="curriculum-position-list-item">瀹㈡埧鍛�</div> - <div class="curriculum-position-list-item">瀹㈡埧鏈嶅姟鍛�</div> - <div class="curriculum-position-list-item">瀹㈡埧鏈嶅姟鍛�</div> - <div class="curriculum-position-list-item">瀹㈡埧鏈嶅姟鍛�</div> + <div + v-for="userExpectJob in userExpectJobs" + :key="userExpectJob.expectJobCode" + class="curriculum-position-list-item" + > + {{ userExpectJob.expectJobContent }} + </div> </div> </CurriculumViewItem> - <CurriculumViewItem label="绌洪棽鏃堕棿锛�" text="涓嶉檺"> </CurriculumViewItem> - <CurriculumViewItem label="姹傝亴鐘舵�侊細" text="绉瀬鎵惧伐浣�"> </CurriculumViewItem> + <CurriculumViewItem label="绌洪棽鏃堕棿锛�" :text="EnumPersonalFreeTimeText[freeTime]"> + </CurriculumViewItem> + <CurriculumViewItem + label="姹傝亴鐘舵�侊細" + :text="EnumPersonalJobSeekingStatusText[jobSeekingStatus]" + > + </CurriculumViewItem> </div> </CellChunk> <CellChunk title="璧勬牸璇佷功"> @@ -25,31 +29,34 @@ :column-num="3" :border="false" :gutter="20" - v-if="list.length > 0" + v-if="_userCredentials.length > 0" class="pro-img-grid" > - <nut-grid-item v-for="(item, index) in list" :key="item" class="pro-img-grid-item"> + <nut-grid-item + v-for="(item, index) in _userCredentials" + :key="item" + class="pro-img-grid-item" + > <div class="pro-img-grid-img-item"> - <PreviewImage :src="item" class="pro-img-grid-img" :urls="list" /> + <PreviewImage :src="item" class="pro-img-grid-img" :urls="_userCredentials" /> </div> </nut-grid-item> </nut-grid> </CellChunk> <CellChunk title="宸ヤ綔缁忛獙"> - <CurriculumViewItem label="宸ヤ綔骞撮檺锛�" text="鏃犲伐浣滅粡楠岋紝鐢ㄦ埛鑷繁濉啓"> + <CurriculumViewItem label="宸ヤ綔骞撮檺锛�" :text="workSeniority ? `${workSeniority}骞碻 : ''"> </CurriculumViewItem> - <CurriculumViewItem label="宸ヤ綔缁忛獙锛�" text="瀹㈡埧鏈嶅姟鍛橈紝鐢ㄦ埛鑷繁濉啓"> - </CurriculumViewItem> + <CurriculumViewItem label="宸ヤ綔缁忛獙锛�" :text="workExperience"> </CurriculumViewItem> </CellChunk> <CellChunk title="璇︾粏淇℃伅"> <CurriculumViewItem label="韬珮锛�" - text="175 cm" + :text="`${height} cm`" :label-width="labelWidth" ></CurriculumViewItem> <CurriculumViewItem label="浣撻噸锛�" - text="80 kg" + :text="`${weight} kg`" :label-width="labelWidth" ></CurriculumViewItem> <CurriculumViewItem label="涓汉鐓х墖锛�"> @@ -58,12 +65,12 @@ :column-num="2" :border="false" :gutter="20" - v-if="list.length > 0" + v-if="_photos.length > 0" class="pro-img-grid" > - <nut-grid-item v-for="(item, index) in list" :key="item" class="pro-img-grid-item"> + <nut-grid-item v-for="(item, index) in _photos" :key="item" class="pro-img-grid-item"> <div class="pro-img-grid-img-item"> - <PreviewImage :src="item" class="pro-img-grid-img" :urls="list" /> + <PreviewImage :src="item" class="pro-img-grid-img" :urls="_photos" /> </div> </nut-grid-item> </nut-grid> @@ -77,19 +84,37 @@ import CurriculumViewItem from './CurriculumViewItem.vue'; import { PreviewImage } from '@12333/components'; import Taro from '@tarojs/taro'; +import { EnumPersonalFreeTimeText, EnumPersonalJobSeekingStatusText } from '@12333/constants'; +import { setOSSLink } from '@12333/utils'; defineOptions({ name: 'curriculumView', }); -const labelWidth = Taro.pxTransform(120); +type Props = { + userExpectJobs?: API.GetUserResumeQueryResultExpectJob[]; + freeTime?: API.EnumPersonalFreeTime; + jobSeekingStatus?: API.EnumPersonalJobSeekingStatus; + userCredentials?: API.GetUserResumeQueryResultCredential[]; + workSeniority?: string; + workExperience?: string; + photos?: string[]; + /** 韬珮 */ + height?: number; + /** 浣撻噸 */ + weight?: number; +}; -const list = ref([ - 'https://storage.360buyimg.com/jdc-article/NutUItaro34.jpg', - 'https://storage.360buyimg.com/jdc-article/NutUItaro2.jpg', - 'https://storage.360buyimg.com/jdc-article/welcomenutui.jpg', - 'https://storage.360buyimg.com/jdc-article/fristfabu.jpg', -]); +const props = withDefaults(defineProps<Props>(), { + userExpectJobs: () => [], + userCredentials: () => [], + photos: () => [], +}); + +const _userCredentials = computed(() => props.userCredentials.map((x) => setOSSLink(x.img))); +const _photos = computed(() => props.photos.map((x) => setOSSLink(x))); + +const labelWidth = Taro.pxTransform(120); </script> <style lang="scss"> diff --git a/apps/bMiniApp/src/components/JobDetailContent/components/experienceView.vue b/apps/bMiniApp/src/components/JobDetailContent/components/experienceView.vue index 6cd3d6e..b901e3c 100644 --- a/apps/bMiniApp/src/components/JobDetailContent/components/experienceView.vue +++ b/apps/bMiniApp/src/components/JobDetailContent/components/experienceView.vue @@ -1,24 +1,43 @@ <template> <ContentScrollView> <Cell title="宀椾綅缁忓巻"> - <nut-steps direction="vertical" progress-dot :current="3" class="job-detail-content-steps"> - <nut-step title="2024.12.24" content="鎮ㄧ殑璁㈠崟宸茬粡鎵撳寘瀹屾垚锛屽晢鍝佸凡鍙戝嚭"></nut-step> - <nut-step title="2024.12.24" content="鎮ㄧ殑璁㈠崟姝e湪閰嶉�侀�斾腑"></nut-step> - <nut-step title="2024.12.24"> + <nut-steps + v-if="taskInfoUsers.length > 0" + direction="vertical" + progress-dot + :current="3" + class="job-detail-content-steps" + > + <nut-step + v-for="(taskInfoUser, index) in taskInfoUsers" + :key="index" + :title="taskInfoUser.signContractTime" + > <template #content> - <p>鏀惰揣鍦板潃涓猴細</p> - <p>鍖椾含甯傜粡娴庢妧鏈紑鍙戝尯绉戝垱鍗佷竴琛�18鍙烽櫌浜笢澶у帵</p> + <p>鍦▄{ taskInfoUser.enterpriseName }}锛�</p> + <p>鍋氳繃{{ taskInfoUser.name }}</p> </template> </nut-step> </nut-steps> + <NoData v-else /> </Cell> </ContentScrollView> </template> <script setup lang="ts"> +import NoData from '../../NoData/NoData.vue'; + defineOptions({ name: 'experienceView', }); + +type Props = { + taskInfoUsers?: API.GetUserResumeQueryResultExperience[]; +}; + +const props = withDefaults(defineProps<Props>(), { + taskInfoUsers: () => [], +}); </script> <style lang="scss"> diff --git a/apps/bMiniApp/src/pages/home/index.vue b/apps/bMiniApp/src/pages/home/index.vue index 8912acb..af9b8e4 100644 --- a/apps/bMiniApp/src/pages/home/index.vue +++ b/apps/bMiniApp/src/pages/home/index.vue @@ -175,7 +175,7 @@ function goFlexJobDetail(item: API.GetUserResumesQueryResultItem) { Taro.navigateTo({ - url: `${RouterPath.flexJobDetail}?id=${item.id}`, + url: `${RouterPath.flexJobDetail}?enterpriseEmployeeId=${item.id}`, }); } diff --git a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue index 4b3bde8..307de77 100644 --- a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue +++ b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue @@ -13,7 +13,17 @@ :contactPhoneNumber="userResumeInfo.contactPhoneNumber" :identity="userResumeInfo.identity" :isCollapse="isCollapse" - :userId="userId" + :userId="enterpriseEmployeeId" + :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" > <template #footer> <PageFooterAction @@ -23,7 +33,7 @@ openType="share" ></PageFooterAction> <PageFooterAction - :icon="IconAttentionActive" + :icon="userResumeInfo.isCollected ? IconAttentionActive : IconAttention" text="鏀惰棌" :isFlex="false" @click="handleAttention" @@ -52,10 +62,10 @@ }); const router = Taro.useRouter(); -const userId = router.params?.id ?? ''; +const enterpriseEmployeeId = router.params?.enterpriseEmployeeId ?? ''; const { isLoading, isError, userResumeInfo, refetch } = useUserResume({ - userId, + userId: enterpriseEmployeeId, }); const { isCollapse, toggle } = useToggle(); @@ -63,7 +73,7 @@ const handleContact = useAccessLogin(async () => { try { if (!isCollapse.value) { - await userResumeServices.contactUserResume({ id: userId }); + await userResumeServices.contactUserResume({ id: enterpriseEmployeeId }); toggle(); } } catch (error) {} @@ -72,17 +82,13 @@ async function handleAttention() { try { let params: API.CollectUserResumeCommand = { - id: userId, - // isCollected: userResumeInfo.value.i, + id: enterpriseEmployeeId, + isCollected: !userResumeInfo.value.isCollected, }; let res = await userResumeServices.collectUserResume(params); if (res) { - Message.success('鏀惰棌鎴愬姛'); + refetch({ type: 'inactive' }); } } catch (error) {} } </script> - -<style lang="scss"> -@import '@/styles/common.scss'; -</style> diff --git a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue index b239454..3275278 100644 --- a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue +++ b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue @@ -1,9 +1,36 @@ <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" + :userId="enterpriseEmployeeId" + :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> - <PageFooterBtn type="primary" plain @click="taskWorkerHireRefuse(10)">璋㈢粷</PageFooterBtn> - <PageFooterBtn type="primary" @click="taskWorkerHireRefuse(20)">褰曠敤</PageFooterBtn> + <PageFooterBtn type="primary" plain @click="setTaskUserHire(EnumTaskUserHireStatus.Refuse)" + >璋㈢粷</PageFooterBtn + > + <PageFooterBtn type="primary" @click="setTaskUserHire(EnumTaskUserHireStatus.Pass)" + >褰曠敤</PageFooterBtn + > </template> </JobDetailContent> </LoadingLayout> @@ -14,33 +41,22 @@ import { useQuery } from '@tanstack/vue-query'; import * as taskUserServices from '@12333/services/apiV2/taskUser'; import { Message } from '@12333/utils'; +import { useUserResume } from '@12333/hooks'; +import { EnumTaskUserHireStatus } from '@12333/constants'; defineOptions({ name: 'InnerPage', }); const router = Taro.useRouter(); +const enterpriseEmployeeId = router.params?.enterpriseEmployeeId ?? ''; const id = router.params?.id ?? ''; -const { - isLoading, - isError, - data: detail, - refetch, -} = useQuery({ - queryKey: ['taskServices/getTaskInfo', id], - queryFn: async () => { - return await taskServices.getTaskInfo( - { id: id }, - { - showLoading: false, - } - ); - }, - placeholderData: () => ({} as API.GetTaskInfoQueryResult), +const { isLoading, isError, userResumeInfo, refetch } = useUserResume({ + userId: enterpriseEmployeeId, }); -async function taskWorkerHireRefuse(hireStatus: FlexTaskWorkerHireEnum) { +async function setTaskUserHire(hireStatus: EnumTaskUserHireStatus) { try { let params: API.SetTaskUserHireCommand = { id: id, @@ -56,7 +72,3 @@ } catch (error) {} } </script> - -<style lang="scss"> -@import '@/styles/common.scss'; -</style> diff --git a/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue b/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue index f1ba77d..ebde239 100644 --- a/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue +++ b/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue @@ -1,6 +1,29 @@ <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" + :userId="enterpriseEmployeeId" + :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> <PageFooterBtn type="primary" plain>瑙g害</PageFooterBtn> <PageFooterBtn type="primary">绛剧害</PageFooterBtn> @@ -12,31 +35,17 @@ <script setup lang="ts"> import Taro from '@tarojs/taro'; import { useQuery } from '@tanstack/vue-query'; -import * as flexWorkerServices from '@12333/services/api/FlexWorker'; +import { useUserResume } from '@12333/hooks'; defineOptions({ name: 'InnerPage', }); const router = Taro.useRouter(); -const taskId = router.params?.id ?? ''; +const enterpriseEmployeeId = router.params?.enterpriseEmployeeId ?? ''; -const { - isLoading, - isError, - data: detail, - refetch, -} = useQuery({ - queryKey: ['flexWorkerServices/getOrdeForDetail', taskId], - queryFn: async () => { - return await flexWorkerServices.getOrdeForDetail( - { id: taskId }, - { - showLoading: false, - } - ); - }, - placeholderData: () => ({} as API.OrderInfoDto), +const { isLoading, isError, userResumeInfo, refetch } = useUserResume({ + userId: enterpriseEmployeeId, }); </script> diff --git a/apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue b/apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue index 15b3dfa..c47dcb3 100644 --- a/apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue +++ b/apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue @@ -102,7 +102,7 @@ function goDetail(item: API.GetEnterpriseEmployeesQueryResultItem) { Taro.navigateTo({ - url: `${RouterPath.flexJobDetailFromManage}?userId=${item.id}`, + url: `${RouterPath.flexJobDetailFromManage}?enterpriseEmployeeId=${item.id}`, }); } diff --git a/apps/bMiniApp/src/subpackages/jobApplicationManage/components/SignList.vue b/apps/bMiniApp/src/subpackages/jobApplicationManage/components/SignList.vue index 557ab87..45182b1 100644 --- a/apps/bMiniApp/src/subpackages/jobApplicationManage/components/SignList.vue +++ b/apps/bMiniApp/src/subpackages/jobApplicationManage/components/SignList.vue @@ -22,7 +22,7 @@ </div> </template> <template #footerRight> - <nut-button type="primary" @click="goToJobDetail(item.id)">鏌ョ湅璇︽儏</nut-button> + <nut-button type="primary" @click="goToJobDetail(item)">鏌ョ湅璇︽儏</nut-button> </template> </FlexJobCard> </template> @@ -52,9 +52,9 @@ id: id, }); -function goToJobDetail(id: string) { +function goToJobDetail(item: API.GetTaskUsersQueryResultItem) { Taro.navigateTo({ - url: `${RouterPath.flexJobDetailFromTask}?id=${id}`, + url: `${RouterPath.flexJobDetailFromTask}?enterpriseEmployeeId=${item.enterpriseEmployeeId}&id=${item.id}`, }); } </script> diff --git a/apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue index 3a2e09d..0dcd380 100644 --- a/apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue +++ b/apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue @@ -78,11 +78,12 @@ return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.waitAssignCount ?? 0; }); -function goSubmitTaskDetail(item: API.GetTaskInfosQueryResultItem) { - Taro.navigateTo({ - url: `${RouterPath.flexJobDetail}?taskId=${item.id}`, - }); -} +//鏈夐棶棰� +// function goSubmitTaskDetail(item: API.GetTaskInfosQueryResultItem) { +// Taro.navigateTo({ +// url: `${RouterPath.taskManage}?taskId=${item.id}`, +// }); +// } function goBatchTaskList(item: API.GetTaskInfosQueryResultItem, status: EnumTaskUserArrangeStatus) { Taro.navigateTo({ diff --git a/packages/components/src/Card/FlexJobCard.vue b/packages/components/src/Card/FlexJobCard.vue index 36fca70..2d5cbb8 100644 --- a/packages/components/src/Card/FlexJobCard.vue +++ b/packages/components/src/Card/FlexJobCard.vue @@ -14,9 +14,7 @@ {{ workExperience }} </div> <div class="flexJob-card-done-detail" v-if="showDoneDetail"> - <div class="flexJob-card-done-detail-item"> - {{ workSeniority }} - </div> + <div class="flexJob-card-done-detail-item">{{ workSeniority }}骞�</div> <!-- <div class="flexJob-card-done-detail-item">{{ '鍦ㄣ�屽畞娉㈤浄杩.閰掑簵銆嶏紝鍋氳繃瀹㈡埧鏈嶅姟鍛�' }}</div> --> </div> <div class="flexJob-card-footer"> diff --git a/packages/services/apiV2/enterpriseEmployee.ts b/packages/services/apiV2/enterpriseEmployee.ts index 1c915b2..cb2c49a 100644 --- a/packages/services/apiV2/enterpriseEmployee.ts +++ b/packages/services/apiV2/enterpriseEmployee.ts @@ -2,6 +2,21 @@ // @ts-ignore import { request } from '@/utils/request'; +/** 缂栬緫鐏靛伐淇℃伅 POST /api/user/enterpriseEmployee/editEnterpriseEmployee */ +export async function editEnterpriseEmployee( + body: API.EditEnterpriseEmployeeCommand, + options?: API.RequestConfig +) { + return request<string>('/api/user/enterpriseEmployee/editEnterpriseEmployee', { + method: 'POST', + headers: { + 'Content-Type': 'application/json-patch+json', + }, + data: body, + ...(options || {}), + }); +} + /** 鏌ヨ鐏靛伐璇︽儏 GET /api/user/enterpriseEmployee/getEnterpriseEmployee */ export async function getEnterpriseEmployee( // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄) @@ -37,3 +52,18 @@ } ); } + +/** 瀵煎叆鐏靛伐淇℃伅 POST /api/user/enterpriseEmployee/importEnterpriseEmployees */ +export async function importEnterpriseEmployees( + body: API.ImportEnterpriseEmployeesCommand, + options?: API.RequestConfig +) { + return request<number>('/api/user/enterpriseEmployee/importEnterpriseEmployees', { + method: 'POST', + headers: { + 'Content-Type': 'application/json-patch+json', + }, + data: body, + ...(options || {}), + }); +} diff --git a/packages/services/apiV2/typings.d.ts b/packages/services/apiV2/typings.d.ts index db45e9b..923570c 100644 --- a/packages/services/apiV2/typings.d.ts +++ b/packages/services/apiV2/typings.d.ts @@ -243,6 +243,24 @@ ids: string[]; } + interface EditEnterpriseEmployeeCommand { + /** 鐏靛伐Id */ + id?: string; + /** 濮撳悕 */ + name?: string; + /** 韬唤璇佸彿 */ + identity?: string; + /** 鎵嬫満鍙� */ + contactPhoneNumber?: string; + gender?: EnumUserGender; + /** 骞撮緞 */ + age?: number; + /** 韬唤璇佷汉鍍忛潰 */ + identityImg?: string; + /** 韬唤璇佸浗寰介潰 */ + identityBackImg?: string; + } + enum EnumBillingMethod { /**鎸夋湀 */ Month = 10, @@ -2672,6 +2690,8 @@ photos?: string[]; /** 缁忓巻 */ taskInfoUsers?: GetUserResumeQueryResultExperience[]; + /** 鏄惁宸叉敹钘� */ + isCollected?: boolean; } interface GetUserResumeQueryResultCredential { @@ -2785,6 +2805,11 @@ workExperience?: string; } + interface ImportEnterpriseEmployeesCommand { + /** Excel鍦板潃 */ + excelUrl?: string; + } + interface LoginCommandCallback { /** 鐢ㄦ埛Id */ id?: string; -- Gitblit v1.9.1