From 2935cf3629d1495d959381a1550cddaa500a0986 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期二, 12 八月 2025 14:09:09 +0800
Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobMiniApp

---
 apps/cMiniApp/src/subpackages/curriculum/mineCertificateAddOrEdit/InnerPage.vue |    4 
 apps/cMiniApp/src/pages/home/index.vue                                          |    4 
 apps/cMiniApp/.eslintrc-auto-import.json                                        |    3 
 apps/cMiniApp/src/subpackages/curriculum/editMineInfo/InnerPage.vue             |    4 
 packages/services/apiV2/enterpriseEmployee.ts                                   |   21 +++
 apps/cMiniApp/src/subpackages/curriculum/mineJobIntention/InnerPage.vue         |    5 
 apps/cMiniApp/src/subpackages/mine/mineCollectTask/InnerPage.vue                |   50 ++++---
 apps/cMiniApp/project.private.config.json                                       |    7 +
 apps/cMiniApp/src/subpackages/curriculum/mineCertificate/InnerPage.vue          |    9 -
 apps/cMiniApp/src/subpackages/curriculum/mineCurriculumVitae/InnerPage.vue      |   20 +-
 apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue                     |   62 +++++++++
 packages/components/src/Card/TaskCard.vue                                       |    5 
 apps/cMiniApp/auto-imports.d.ts                                                 |    2 
 packages/services/apiV2/index.ts                                                |    2 
 apps/cMiniApp/src/subpackages/curriculum/mineDetailedInfo/InnerPage.vue         |    4 
 apps/cMiniApp/src/hooks/user.ts                                                 |   23 +++
 packages/services/apiV2/typings.d.ts                                            |  107 ++++++++++++-----
 apps/cMiniApp/src/subpackages/curriculum/mineWorkExperience/InnerPage.vue       |    4 
 packages/constants/apiEnum.ts                                                   |   10 -
 19 files changed, 237 insertions(+), 109 deletions(-)

diff --git a/apps/cMiniApp/.eslintrc-auto-import.json b/apps/cMiniApp/.eslintrc-auto-import.json
index ff1c0db..ade550f 100644
--- a/apps/cMiniApp/.eslintrc-auto-import.json
+++ b/apps/cMiniApp/.eslintrc-auto-import.json
@@ -109,6 +109,7 @@
     "useSwitchTab": true,
     "useTaskList": true,
     "useUser": true,
-    "useUserResume": true
+    "useUserResume": true,
+    "useUpdateResume": true
   }
 }
diff --git a/apps/cMiniApp/auto-imports.d.ts b/apps/cMiniApp/auto-imports.d.ts
index f8c3f8a..5702a8e 100644
--- a/apps/cMiniApp/auto-imports.d.ts
+++ b/apps/cMiniApp/auto-imports.d.ts
@@ -91,6 +91,7 @@
   const useSlots: typeof import('vue')['useSlots']
   const useSwitchTab: typeof import('./src/hooks/router')['useSwitchTab']
   const useTemplateRef: typeof import('vue')['useTemplateRef']
+  const useUpdateResume: typeof import('./src/hooks/user')['useUpdateResume']
   const useUser: typeof import('./src/hooks/user')['useUser']
   const useUserResume: typeof import('./src/hooks/user')['useUserResume']
   const watch: typeof import('vue')['watch']
@@ -203,6 +204,7 @@
     readonly useSlots: UnwrapRef<typeof import('vue')['useSlots']>
     readonly useSwitchTab: UnwrapRef<typeof import('./src/hooks/router')['useSwitchTab']>
     readonly useTemplateRef: UnwrapRef<typeof import('vue')['useTemplateRef']>
+    readonly useUpdateResume: UnwrapRef<typeof import('./src/hooks/user')['useUpdateResume']>
     readonly useUser: UnwrapRef<typeof import('./src/hooks/user')['useUser']>
     readonly useUserResume: UnwrapRef<typeof import('./src/hooks/user')['useUserResume']>
     readonly watch: UnwrapRef<typeof import('vue')['watch']>
diff --git a/apps/cMiniApp/project.private.config.json b/apps/cMiniApp/project.private.config.json
index 02429d4..63f3b52 100644
--- a/apps/cMiniApp/project.private.config.json
+++ b/apps/cMiniApp/project.private.config.json
@@ -77,6 +77,13 @@
                     "query": "",
                     "launchMode": "default",
                     "scene": null
+                },
+                {
+                    "name": "",
+                    "pathName": "subpackages/mine/mineCollectTask/mineCollectTask",
+                    "query": "",
+                    "launchMode": "default",
+                    "scene": null
                 }
             ]
         }
diff --git a/apps/cMiniApp/src/hooks/user.ts b/apps/cMiniApp/src/hooks/user.ts
index 4238c51..c288a10 100644
--- a/apps/cMiniApp/src/hooks/user.ts
+++ b/apps/cMiniApp/src/hooks/user.ts
@@ -2,7 +2,7 @@
 import Taro from '@tarojs/taro';
 import { object2query, LocationUtils } from '@12333/utils';
 import { ParkOrHRStatus, UserCertificationFrontStatus } from '@12333/constants';
-import { useQuery } from '@tanstack/vue-query';
+import { useQuery, useQueryClient } from '@tanstack/vue-query';
 import { MaybeRef } from 'vue';
 import { useRefeshDidShow } from '@12333/hooks/infiniteLoading';
 import * as userResumeServices from '@12333/services/apiV2/userResume';
@@ -117,3 +117,24 @@
     refetch,
   };
 }
+
+export function useUpdateResume() {
+  const queryClient = useQueryClient();
+
+  const updateUserResumeCredentials = () => {
+    return queryClient.invalidateQueries({
+      queryKey: ['userResumeServices/getUserResumeCredentials'],
+    });
+  };
+
+  const updateUserResume = () => {
+    return queryClient.invalidateQueries({
+      queryKey: ['userResumeServices/getUserResume'],
+    });
+  };
+
+  return {
+    updateUserResumeCredentials,
+    updateUserResume,
+  };
+}
diff --git a/apps/cMiniApp/src/pages/home/index.vue b/apps/cMiniApp/src/pages/home/index.vue
index fb3d2cb..5231954 100644
--- a/apps/cMiniApp/src/pages/home/index.vue
+++ b/apps/cMiniApp/src/pages/home/index.vue
@@ -57,7 +57,7 @@
       :key="queryState.orderType"
     >
       <template #renderItem="{ item }">
-        <TaskCard @click="goTaskDetail(item)" v-bind="item" @apply="goTaskApply(item)" />
+        <TaskCard @click="goTaskDetail(item)" v-bind="item" />
       </template>
     </InfiniteLoading>
   </PageLayoutWithBg>
@@ -65,8 +65,6 @@
 
 <script setup lang="ts">
 import { useUser } from '@/hooks';
-import { useUserStore } from '@/stores/modules/user';
-import { RectDown, Location2 } from '@nutui/icons-vue-taro';
 import Taro from '@tarojs/taro';
 import { setLocationCity } from '@/utils';
 import _ from 'lodash';
diff --git a/apps/cMiniApp/src/subpackages/curriculum/editMineInfo/InnerPage.vue b/apps/cMiniApp/src/subpackages/curriculum/editMineInfo/InnerPage.vue
index 399ab72..3eb5d6a 100644
--- a/apps/cMiniApp/src/subpackages/curriculum/editMineInfo/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/curriculum/editMineInfo/InnerPage.vue
@@ -54,6 +54,8 @@
   name: 'InnerPage',
 });
 
+const { updateUserResume } = useUpdateResume();
+
 const eventChannel = useEventChannel();
 
 const { dictionaryDataList: identityList } = useDictionaryDataSelect({
@@ -145,7 +147,7 @@
       Message.success('淇濆瓨鎴愬姛', {
         onClosed() {
           goBack();
-          eventChannel.emit('updateResume', { content: true });
+          updateUserResume();
         },
       });
     }
diff --git a/apps/cMiniApp/src/subpackages/curriculum/mineCertificate/InnerPage.vue b/apps/cMiniApp/src/subpackages/curriculum/mineCertificate/InnerPage.vue
index f546f29..e659738 100644
--- a/apps/cMiniApp/src/subpackages/curriculum/mineCertificate/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/curriculum/mineCertificate/InnerPage.vue
@@ -21,18 +21,9 @@
 import { RouterPath } from '@/constants';
 import * as userResumeServices from '@12333/services/apiV2/userResume';
 import { useQuery } from '@tanstack/vue-query';
-import { useEvent } from 'senin-mini/hooks';
 
 defineOptions({
   name: 'InnerPage',
-});
-
-useEvent('updateResume', function (data: { content: boolean }) {
-  if (data.content) {
-    refetch({
-      type: 'inactive',
-    });
-  }
 });
 
 const {
diff --git a/apps/cMiniApp/src/subpackages/curriculum/mineCertificateAddOrEdit/InnerPage.vue b/apps/cMiniApp/src/subpackages/curriculum/mineCertificateAddOrEdit/InnerPage.vue
index 26fc3cf..6aaee7d 100644
--- a/apps/cMiniApp/src/subpackages/curriculum/mineCertificateAddOrEdit/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/curriculum/mineCertificateAddOrEdit/InnerPage.vue
@@ -78,7 +78,7 @@
 const router = Taro.useRouter();
 const id = router.params?.id as string;
 const isEdit = computed(() => !!id);
-const queryClient = useQueryClient();
+const { updateUserResumeCredentials } = useUpdateResume();
 
 const { dictionaryDataList: certificateTypeList } = useDictionaryDataSelect({
   categoryCode: CategoryCode.CertificateType,
@@ -173,7 +173,7 @@
       Message.success(isEdit.value ? '缂栬緫鎴愬姛' : '娣诲姞鎴愬姛', {
         onClosed() {
           goBack();
-          queryClient.invalidateQueries(['userResumeServices/getUserResumeCredentials']);
+          updateUserResumeCredentials();
         },
       });
     }
diff --git a/apps/cMiniApp/src/subpackages/curriculum/mineCurriculumVitae/InnerPage.vue b/apps/cMiniApp/src/subpackages/curriculum/mineCurriculumVitae/InnerPage.vue
index 8165e96..2e12b89 100644
--- a/apps/cMiniApp/src/subpackages/curriculum/mineCurriculumVitae/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/curriculum/mineCurriculumVitae/InnerPage.vue
@@ -125,7 +125,6 @@
 import IconPhone from '@/assets/mine/icon-phone.png';
 import Taro from '@tarojs/taro';
 import { setOSSLink } from '@12333/utils';
-import { useEvent } from 'senin-mini/hooks';
 
 defineOptions({
   name: 'InnerPage',
@@ -140,16 +139,15 @@
 function goPage(routeName: string) {
   Taro.navigateTo({
     url: routeName,
-    events: {
-      updateResume(data: { content: boolean }) {
-        console.log('content: ', data.content);
-        if (data.content) {
-          refetch({
-            type: 'inactive',
-          });
-        }
-      },
-    },
+    // events: {
+    //   updateResume(data: { content: boolean }) {
+    //     if (data.content) {
+    //       refetch({
+    //         type: 'inactive',
+    //       });
+    //     }
+    //   },
+    // },
   });
 }
 function goEditMineInfo() {
diff --git a/apps/cMiniApp/src/subpackages/curriculum/mineDetailedInfo/InnerPage.vue b/apps/cMiniApp/src/subpackages/curriculum/mineDetailedInfo/InnerPage.vue
index 9a7eca4..07085f8 100644
--- a/apps/cMiniApp/src/subpackages/curriculum/mineDetailedInfo/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/curriculum/mineDetailedInfo/InnerPage.vue
@@ -38,7 +38,7 @@
   name: 'InnerPage',
 });
 
-const { refetch: userResumeRefetch } = useUserResume();
+const { updateUserResume } = useUpdateResume();
 
 const {
   isLoading,
@@ -81,7 +81,7 @@
       Message.success('淇濆瓨鎴愬姛', {
         onClosed() {
           goBack();
-          userResumeRefetch({ type: 'inactive' });
+          updateUserResume();
         },
       });
     }
diff --git a/apps/cMiniApp/src/subpackages/curriculum/mineJobIntention/InnerPage.vue b/apps/cMiniApp/src/subpackages/curriculum/mineJobIntention/InnerPage.vue
index d913841..a826890 100644
--- a/apps/cMiniApp/src/subpackages/curriculum/mineJobIntention/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/curriculum/mineJobIntention/InnerPage.vue
@@ -48,13 +48,12 @@
 import { Message } from '@12333/utils';
 import { useQuery } from '@tanstack/vue-query';
 import { goBack } from '@/utils';
-import { useEventChannel } from 'senin-mini/hooks';
 
 defineOptions({
   name: 'InnerPage',
 });
 
-const eventChannel = useEventChannel();
+const { updateUserResume } = useUpdateResume();
 
 const { dictionaryDataList: positionList } = useDictionaryDataSelect({
   categoryCode: CategoryCode.Position,
@@ -131,7 +130,7 @@
       Message.success('淇濆瓨鎴愬姛', {
         onClosed() {
           goBack();
-          eventChannel.emit('updateResume', { content: true });
+          updateUserResume();
         },
       });
     }
diff --git a/apps/cMiniApp/src/subpackages/curriculum/mineWorkExperience/InnerPage.vue b/apps/cMiniApp/src/subpackages/curriculum/mineWorkExperience/InnerPage.vue
index 1303900..36a1ced 100644
--- a/apps/cMiniApp/src/subpackages/curriculum/mineWorkExperience/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/curriculum/mineWorkExperience/InnerPage.vue
@@ -24,7 +24,7 @@
   name: 'InnerPage',
 });
 
-const { refetch: userResumeRefetch } = useUserResume();
+const { updateUserResume } = useUpdateResume();
 
 const form = reactive({
   workSeniority: '',
@@ -64,7 +64,7 @@
       Message.success('淇濆瓨鎴愬姛', {
         onClosed() {
           goBack();
-          userResumeRefetch({ type: 'inactive' });
+          updateUserResume();
         },
       });
     }
diff --git a/apps/cMiniApp/src/subpackages/mine/mineCollectTask/InnerPage.vue b/apps/cMiniApp/src/subpackages/mine/mineCollectTask/InnerPage.vue
index b4a33b2..c912d41 100644
--- a/apps/cMiniApp/src/subpackages/mine/mineCollectTask/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/mine/mineCollectTask/InnerPage.vue
@@ -1,14 +1,28 @@
 <template>
   <div class="my-collect-task">
     <div class="my-collect-task-title">鏀惰棌浠诲姟鍒楄〃</div>
-    <div class="my-collect-task-btn">娓呯┖宸插け鏁堜换鍔�</div>
+    <div class="my-collect-task-btn" @click="clearExpiredTask">娓呯┖宸插け鏁堜换鍔�</div>
   </div>
   <InfiniteLoading
     scrollViewClassName="common-infinite-scroll-list home-list"
     v-bind="infiniteLoadingProps"
   >
     <template #renderItem="{ item }">
-      <TaskCard> </TaskCard>
+      <TaskCard
+        :name="item.name"
+        :address-name="item.addressName"
+        :begin-time="item.beginTime"
+        :end-time="item.endTime"
+        :gender-limit="item.genderLimit"
+        :service-fee="item.serviceFee"
+        :billing-method="item.billingMethod"
+        :settlement-cycle="item.settlementCycle"
+        :benefits="item.benefits"
+      >
+        <template #actions>
+          <nut-button @click="goTaskDetail(item)" type="primary">鎶ュ悕</nut-button>
+        </template>
+      </TaskCard>
     </template>
   </InfiniteLoading>
 </template>
@@ -16,34 +30,24 @@
 <script setup lang="ts">
 import { TaskCard } from '@12333/components';
 import { useUserStore } from '@/stores/modules/user';
-import { useInfiniteLoading } from '@12333/hooks';
-import { OrderInputType } from '@12333/constants';
-import * as flexWorkerServices from '@12333/services/api/FlexWorker';
+import { useTaskList } from '@12333/hooks';
+import Taro from '@tarojs/taro';
 
 defineOptions({
   name: 'InnerPage',
 });
 
-const userStore = useUserStore();
+const { infiniteLoadingProps } = useTaskList({
+  defaultQueryMenuState: {},
+});
 
-const { infiniteLoadingProps } = useInfiniteLoading(
-  ({ pageParam }) => {
-    let params: API.GetFlexTaskListInput = {
-      pageModel: {
-        rows: 20,
-        page: pageParam,
-        orderInput: [{ property: 'creationTime', order: OrderInputType.Desc }],
-      },
-    };
+function goTaskDetail(item: API.GetTaskInfosQueryResultItem) {
+  Taro.navigateTo({
+    url: `${RouterPath.taskCheckDetail}?id=${item.id}`,
+  });
+}
 
-    return flexWorkerServices.getFlexTaskByArrange(params, {
-      showLoading: false,
-    });
-  },
-  {
-    queryKey: ['flexWorkerServices/getFlexTaskByArrange'],
-  }
-);
+function clearExpiredTask() {}
 </script>
 
 <style lang="scss">
diff --git a/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue b/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue
index 1e83219..9631f42 100644
--- a/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue
@@ -6,6 +6,7 @@
           <img
             :src="detail.isCollected ? IconAttentioActive : IconAttention"
             class="taskDetail-attention-icon"
+            @click="handleAttention"
           />
         </template>
         <div class="taskDetail-time">
@@ -100,9 +101,17 @@
         :isFlex="false"
         openType="share"
       ></PageFooterAction>
-      <PageFooterAction :icon="IconPhone" text="鎵嬫満" :isFlex="false"></PageFooterAction>
-      <PageFooterBtn v-if="detail.releaseStatus === EnumTaskReleaseStatus.InProcess" type="primary"
-        >鎶ュ悕锛坽{ detail.applyCount }}浜哄凡鎶ュ悕锛�</PageFooterBtn
+      <PageFooterAction
+        :icon="IconPhone"
+        text="鎵嬫満"
+        :isFlex="false"
+        @click="handleCall"
+      ></PageFooterAction>
+      <PageFooterBtn
+        v-if="detail.releaseStatus === EnumTaskReleaseStatus.InProcess"
+        type="primary"
+        @click="handleApply"
+        >{{ `鎶ュ悕锛�${detail?.applyCount ?? 0}浜哄凡鎶ュ悕锛塦 }}</PageFooterBtn
       >
       <PageFooterBtn v-if="detail.releaseStatus === EnumTaskReleaseStatus.Stopped" color="#999999"
         >宸插仠姝�</PageFooterBtn
@@ -115,6 +124,7 @@
 import Taro from '@tarojs/taro';
 import { useQuery } from '@tanstack/vue-query';
 import * as taskServices from '@12333/services/apiV2/task';
+import * as taskUserServices from '@12333/services/apiV2/taskUser';
 import { useToggle } from 'senin-mini/hooks';
 import { TaskPrice, TaskDetailWelfareItem } from '@12333/components';
 import IconAttention from '@/assets/task/icon-attention.png';
@@ -127,7 +137,7 @@
 import './taskDetail.scss';
 import CompanyDesc from '../components/CompanyDesc.vue';
 import dayjs from 'dayjs';
-import { TaskUtils, toThousand, setOSSLink } from '@12333/utils';
+import { TaskUtils, toThousand, setOSSLink, Message } from '@12333/utils';
 import {
   EnumSettlementCycleText,
   BillingMethodEnumUnit,
@@ -182,4 +192,48 @@
     });
   }
 });
+
+const handleApply = useAccessLogin(async () => {
+  try {
+    let params: API.ApplyTaskCommand = {
+      ids: [taskId],
+    };
+    let res = await taskUserServices.applyTask(params);
+    if (res) {
+      Message.success('鎶ュ悕鎴愬姛', {
+        onClosed() {
+          refetch({ type: 'inactive' });
+        },
+      });
+    }
+  } catch (error) {}
+});
+
+const handleAttention = useAccessLogin(async () => {
+  try {
+    await Message.confirm({
+      message: `纭畾${detail.value?.isCollected ? '鍙栨秷鏀惰棌' : '鏀惰棌'}鍚楋紵`,
+    });
+    let params: API.CollectTaskCommand = {
+      ids: [taskId],
+      isCollect: !detail.value?.isCollected,
+    };
+    let res = await taskUserServices.collectTask(params);
+    if (res) {
+      Message.success('鎿嶄綔鎴愬姛', {
+        onClosed() {
+          refetch({ type: 'inactive' });
+        },
+      });
+    }
+  } catch (error) {}
+});
+
+const handleCall = useAccessLogin(() => {
+  if (detail.value.contactPhoneNumber) {
+    Taro.makePhoneCall({
+      phoneNumber: detail.value.contactPhoneNumber,
+    });
+  }
+});
 </script>
diff --git a/packages/components/src/Card/TaskCard.vue b/packages/components/src/Card/TaskCard.vue
index 687f7f6..254b6c5 100644
--- a/packages/components/src/Card/TaskCard.vue
+++ b/packages/components/src/Card/TaskCard.vue
@@ -37,10 +37,7 @@
       </div>
       <div class="task-card-actions" v-if="showActions">
         <slot name="actions">
-          <nut-button
-            v-if="releaseStatus === EnumTaskReleaseStatus.InProcess"
-            type="primary"
-            @click.stop="emit('apply', id)"
+          <nut-button v-if="releaseStatus === EnumTaskReleaseStatus.InProcess" type="primary"
             >鎶ュ悕</nut-button
           >
         </slot>
diff --git a/packages/constants/apiEnum.ts b/packages/constants/apiEnum.ts
index 946c6dc..aec9be0 100644
--- a/packages/constants/apiEnum.ts
+++ b/packages/constants/apiEnum.ts
@@ -107,6 +107,8 @@
   UserResume = 8,
   /**浼佷笟淇℃伅 */
   Enterprise = 9,
+  /**鐏靛伐淇℃伅 */
+  EnterpriseEmployee = 10,
 }
 
 /** 璧勬簮璇锋眰鏂瑰紡 */
@@ -188,14 +190,6 @@
 /** 浠诲姟瀹夋帓鐘舵�� */
 export enum EnumTaskStatus {
   /**寰呭畨鎺� */
-  Wait = 10,
-  /**宸插畨鎺� */
-  Complete = 20,
-}
-
-/** 浠诲姟鐢ㄦ埛瀹夋帓鐘舵�� */
-export enum EnumTaskUserArrangeStatus {
-  /**鏈畨鎺� */
   Wait = 10,
   /**宸插畨鎺� */
   Complete = 20,
diff --git a/packages/services/apiV2/enterpriseEmployee.ts b/packages/services/apiV2/enterpriseEmployee.ts
new file mode 100644
index 0000000..8da2480
--- /dev/null
+++ b/packages/services/apiV2/enterpriseEmployee.ts
@@ -0,0 +1,21 @@
+/* eslint-disable */
+// @ts-ignore
+import { request } from '@/utils/request';
+
+/** 鏌ヨ鐏靛伐鍒嗛〉鍒楄〃鏁版嵁 POST /api/user/enterpriseEmployee/getEnterpriseEmployees */
+export async function getEnterpriseEmployees(
+  body: API.GetEnterpriseEmployeesQuery,
+  options?: API.RequestConfig
+) {
+  return request<API.GetEnterpriseEmployeesQueryResult>(
+    '/api/user/enterpriseEmployee/getEnterpriseEmployees',
+    {
+      method: 'POST',
+      headers: {
+        'Content-Type': 'application/json-patch+json',
+      },
+      data: body,
+      ...(options || {}),
+    }
+  );
+}
diff --git a/packages/services/apiV2/index.ts b/packages/services/apiV2/index.ts
index 110baef..042f909 100644
--- a/packages/services/apiV2/index.ts
+++ b/packages/services/apiV2/index.ts
@@ -4,6 +4,7 @@
 // API 鍞竴鏍囪瘑锛�
 import * as userResume from './userResume';
 import * as resource from './resource';
+import * as enterpriseEmployee from './enterpriseEmployee';
 import * as user from './user';
 import * as dictionary from './dictionary';
 import * as auth from './auth';
@@ -15,6 +16,7 @@
 export default {
   userResume,
   resource,
+  enterpriseEmployee,
   user,
   dictionary,
   auth,
diff --git a/packages/services/apiV2/typings.d.ts b/packages/services/apiV2/typings.d.ts
index aa36f3b..fbaf463 100644
--- a/packages/services/apiV2/typings.d.ts
+++ b/packages/services/apiV2/typings.d.ts
@@ -299,6 +299,8 @@
     UserResume = 8,
     /**浼佷笟淇℃伅 */
     Enterprise = 9,
+    /**鐏靛伐淇℃伅 */
+    EnterpriseEmployee = 10,
   }
 
   enum EnumResourceMethod {
@@ -371,13 +373,6 @@
 
   enum EnumTaskStatus {
     /**寰呭畨鎺� */
-    Wait = 10,
-    /**宸插畨鎺� */
-    Complete = 20,
-  }
-
-  enum EnumTaskUserArrangeStatus {
-    /**鏈畨鎺� */
     Wait = 10,
     /**宸插畨鎺� */
     Complete = 20,
@@ -478,6 +473,24 @@
     /** 閿欒鐮� */
     errorCode?: string;
     data?: GetEnterpriseElectronSignSettingQueryResult;
+    /** 鎵ц鎴愬姛 */
+    success?: boolean;
+    /** 閿欒淇℃伅 */
+    msg?: any;
+    /** 闄勫姞鏁版嵁 */
+    extras?: any;
+    /** 鏃堕棿鎴� */
+    timestamp?: number;
+  }
+
+  interface FriendlyResultGetEnterpriseEmployeesQueryResult {
+    /** 璺熻釜Id */
+    traceId?: string;
+    /** 鐘舵�佺爜 */
+    code?: number;
+    /** 閿欒鐮� */
+    errorCode?: string;
+    data?: GetEnterpriseEmployeesQueryResult;
     /** 鎵ц鎴愬姛 */
     success?: boolean;
     /** 閿欒淇℃伅 */
@@ -1208,6 +1221,58 @@
     mergeSignCost?: number;
   }
 
+  interface GetEnterpriseEmployeesQuery {
+    /** 鍏抽敭瀛楋紙濮撳悕/鎵嬫満/韬唤璇佸彿锛� */
+    keywords?: string;
+    /** 鐧昏鏃堕棿-鏈�鏃╂椂闂� */
+    createdTimeStart?: string;
+    /** 鐧昏鏃堕棿-鏈�鏅氭椂闂� */
+    createdTimeEnd?: string;
+    /** 绛剧害鏃堕棿-鏈�鏃╂椂闂� */
+    signContractTimeStart?: string;
+    /** 绛剧害鏃堕棿-鏈�鏅氭椂闂� */
+    signContractTimeEnd?: string;
+    hireStatus?: EnumTaskUserHireStatus;
+    /** 鏄惁瀹炲悕 */
+    isReal?: boolean;
+    userSignContractStatus?: EnumTaskUserSignContractStatus;
+    enterpriseSignContractStatus?: EnumTaskUserSignContractStatus;
+    pageModel?: PagedListQueryPageModel;
+  }
+
+  interface GetEnterpriseEmployeesQueryResult {
+    pageModel?: PagedListQueryResultPageModel;
+    /** 鏁版嵁 */
+    data?: GetEnterpriseEmployeesQueryResultItem[];
+  }
+
+  interface GetEnterpriseEmployeesQueryResultItem {
+    /** 鐏靛伐Id */
+    id?: string;
+    /** 濮撳悕 */
+    name?: string;
+    /** 韬唤璇佸彿 */
+    identity?: string;
+    gender?: EnumUserGender;
+    /** 骞撮緞 */
+    age?: number;
+    /** 鎵嬫満鍙� */
+    phoneNumber?: string;
+    hireStatus?: EnumTaskUserHireStatus;
+    /** 瀹炲悕鐘舵�� */
+    userIsReal?: boolean;
+    userSignContractStatus?: EnumTaskUserSignContractStatus;
+    /** 褰曠敤鏃堕棿 */
+    hireTime?: string;
+    /** 瀹炲悕鏃堕棿 */
+    userRealTime?: string;
+    /** 绛剧害鏃堕棿 */
+    userSignContractTime?: string;
+    enterpriseSignContractStatus?: EnumTaskUserSignContractStatus;
+    /** 浼佷笟绛剧害鏃堕棿 */
+    enterpriseSignContractTime?: string;
+  }
+
   interface GetEnterpriseQueryResult {
     /** Id */
     id?: string;
@@ -1860,22 +1925,6 @@
     photos?: string[];
     /** 缁忓巻 */
     taskInfoUsers?: GetUserResumeQueryResultExperience[];
-    /** 鎶ュ悕鏃堕棿 */
-    createdTime?: string;
-    hireStatus?: EnumTaskUserHireStatus;
-    /** 褰曠敤鏃堕棿 */
-    hireTime?: string;
-    arrangeStatus?: EnumTaskUserArrangeStatus;
-    /** 瀹夋帓鐘舵�� */
-    arrangeTime?: string;
-    userSignContractStatus?: EnumTaskUserSignContractStatus;
-    /** 鐏靛伐绛剧害鏃堕棿 */
-    userSignContractTime?: string;
-    enterpriseSignContractStatus?: EnumTaskUserSignContractStatus;
-    /** 浼佷笟绛剧害鏃堕棿 */
-    enterpriseSignContractTime?: string;
-    /** 鐢靛瓙鍚堝悓 */
-    contractUrl?: string;
   }
 
   interface GetUserResumeQueryResultCredential {
@@ -1972,18 +2021,6 @@
     workSeniority?: string;
     /** 宸ヤ綔缁忛獙 */
     workExperience?: string;
-    hireStatus?: EnumTaskUserHireStatus;
-    /** 褰曠敤鏃堕棿 */
-    hireTime?: string;
-    arrangeStatus?: EnumTaskUserArrangeStatus;
-    /** 瀹夋帓鐘舵�� */
-    arrangeTime?: string;
-    userSignContractStatus?: EnumTaskUserSignContractStatus;
-    /** 鐏靛伐绛剧害鏃堕棿 */
-    userSignContractTime?: string;
-    enterpriseSignContractStatus?: EnumTaskUserSignContractStatus;
-    /** 浼佷笟绛剧害鏃堕棿 */
-    enterpriseSignContractTime?: string;
   }
 
   type GetUserResumeWorkExperienceQuery = Record<string, any>;

--
Gitblit v1.9.1