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