From 1cbf9952dff257482264fb09e49d38b5df97d52e Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期四, 14 八月 2025 15:58:18 +0800
Subject: [PATCH] feat: 接口对接

---
 src/views/CPersonManage/CPersonManageList.vue |  122 ++++++++++++++++++----------------------
 1 files changed, 54 insertions(+), 68 deletions(-)

diff --git a/src/views/CPersonManage/CPersonManageList.vue b/src/views/CPersonManage/CPersonManageList.vue
index 6a801c6..2c64ef9 100644
--- a/src/views/CPersonManage/CPersonManageList.vue
+++ b/src/views/CPersonManage/CPersonManageList.vue
@@ -5,25 +5,20 @@
         <template #query>
           <QueryFilterItem tip-content="瀹炲悕鐘舵��">
             <FieldRadio
-              v-model="extraParamState.realVerifyStatus"
+              v-model="extraParamState.isReal"
               :value-enum="[
-                {
-                  value: false,
-                  label: '鏈疄鍚�',
-                },
-                {
-                  value: true,
-                  label: '宸插疄鍚�',
-                },
+                { label: '宸插疄鍚�', value: true },
+                { label: '鏈疄鍚�', value: false },
               ]"
               buttonStyle
               showAllBtn
+              :all-btn-value="null"
               @change="getList()"
             />
           </QueryFilterItem>
           <QueryFilterItem tip-content="鏈�杩戝綍鐢ㄦ椂闂�">
             <FieldDatePicker
-              v-model="extraParamState.nearlyHireDateTime"
+              v-model="extraParamState.hireTime"
               type="daterange"
               range-separator="~"
               start-placeholder="寮�濮嬫椂闂�"
@@ -34,7 +29,7 @@
           </QueryFilterItem>
           <QueryFilterItem tip-content="鏈�杩戠绾︽椂闂�">
             <FieldDatePicker
-              v-model="extraParamState.nearlySignDateTime"
+              v-model="extraParamState.signContractTime"
               type="daterange"
               range-separator="~"
               start-placeholder="寮�濮嬫椂闂�"
@@ -45,7 +40,7 @@
           </QueryFilterItem>
           <QueryFilterItem>
             <SearchInput
-              v-model="extraParamState.searchKeys"
+              v-model="extraParamState.keywords"
               style="width: 300px"
               placeholder="濮撳悕/鎵嬫満/韬唤璇佸彿/瀹㈡埛"
               @on-click-search="getList"
@@ -78,12 +73,10 @@
   UploadUserFile,
 } from '@bole-core/components';
 import { useAccess, useGlobalEventContext } from '@/hooks';
-import * as flexEnterpriseWokerServices from '@/services/api/FlexEnterpriseWoker';
-import { Gender } from '@/constants';
 import CPersonDetailDialog from './components/CPersonDetailDialog.vue';
-import { OrderInputType } from '@bole-core/core';
 import { convertApi2FormUrlOnlyOne, format } from '@/utils';
 import { ModelValueType } from 'element-plus';
+import * as userServices from '@/services/api/user';
 
 defineOptions({
   name: 'CPersonManageList',
@@ -129,33 +122,24 @@
 } = useTable(
   async ({ pageIndex, pageSize }, extraParamState) => {
     try {
-      let params: API.GetUserClientForBackInput = {
+      let params: API.GetPersonalUserInfosQuery = {
         pageModel: {
           rows: pageSize,
           page: pageIndex,
           orderInput: extraParamState.orderInput,
         },
-        searchKeys: extraParamState.searchKeys,
-        nearlyHireDateTimeBegin: format(
-          extraParamState.nearlyHireDateTime?.[0] ?? '',
+        keywords: extraParamState.keywords,
+        hireTimeBegin: format(extraParamState.hireTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'),
+        hireTimeEnd: format(extraParamState.hireTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'),
+        signContractBegin: format(
+          extraParamState.signContractTime?.[0] ?? '',
           'YYYY-MM-DD 00:00:00'
         ),
-        nearlyHireDateTimeEnd: format(
-          extraParamState.nearlyHireDateTime?.[1] ?? '',
-          'YYYY-MM-DD 23:59:59'
-        ),
-        nearlySignDateTimeBegin: format(
-          extraParamState.nearlySignDateTime?.[0] ?? '',
-          'YYYY-MM-DD 00:00:00'
-        ),
-        nearlySignDateTimeEnd: format(
-          extraParamState.nearlySignDateTime?.[1] ?? '',
-          'YYYY-MM-DD 23:59:59'
-        ),
-        realVerifyStatus: extraParamState.realVerifyStatus,
+        signContractEnd: format(extraParamState.signContractTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'),
+        isReal: extraParamState.isReal,
       };
 
-      let res = await flexEnterpriseWokerServices.getUserClientList(params, {
+      let res = await userServices.getPersonalUserInfos(params, {
         showLoading: !state.loading,
       });
       return res;
@@ -165,64 +149,66 @@
   },
   {
     defaultExtraParams: {
-      searchKeys: '',
-      realVerifyStatus: '' as any as boolean,
-      nearlyHireDateTime: [] as unknown as ModelValueType,
-      nearlySignDateTime: [] as unknown as ModelValueType,
-      orderInput: [{ property: 'userId', order: OrderInputType.Desc }],
+      keywords: '',
+      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
+      hireTime: [] as unknown as ModelValueType,
+      signContractTime: [] as unknown as ModelValueType,
+      isReal: null as any as boolean,
     },
-    queryKey: ['flexEnterpriseWokerServices/getUserClientList'],
+    queryKey: ['userServices/getPersonalUserInfos'],
     columnsRenderProps: {
-      realVerifyStatus: {
-        type: 'enum',
-        valueEnum: [
-          { label: '宸插疄鍚�', value: true },
-          { label: '鏈疄鍚�', value: false },
-        ],
+      gender: { type: 'enum', valueEnum: EnumUserGenderTextForPerson },
+      isReal: {
+        formatter: (row: API.GetPersonalUserInfosQueryResultItem) => {
+          return row.isReal ? '宸插疄鍚�' : '鏈疄鍚�';
+        },
       },
-      realVerifyTime: { type: 'date' },
+      hireTime: { type: 'date' },
+      realTime: { type: 'date' },
+      signContractTime: { type: 'date' },
+      enterprises: {
+        formatter: (row: API.GetPersonalUserInfosQueryResultItem) => {
+          return row.enterprises ? row.enterprises.map((x) => x).join(',') : '';
+        },
+      },
     },
   }
 );
 
-async function openDialog(row?: API.GetUserClientForBackOutput) {
-  const res = await getUserDetailForBack('98ac4c01-3598-ebf3-fa7d-3a189bb6b587');
+async function openDialog(row?: API.GetPersonalUserInfosQueryResultItem) {
+  const res = await getPersonalUserInfoSignContracts(row?.id ?? '');
   handleEdit({
-    userId: row.userId ?? '98ac4c01-3598-ebf3-fa7d-3a189bb6b587',
-    name: res.name,
-    idNumber: res.idNumber,
-    contactPhone: res.contactPhone,
-    age: res.age,
-    certificateFrontImgUrl: res.certificateFrontImgUrl
-      ? convertApi2FormUrlOnlyOne(res.certificateFrontImgUrl)
-      : [],
-    certificateBackImgUrl: res.certificateBackImgUrl
-      ? convertApi2FormUrlOnlyOne(res.certificateBackImgUrl)
-      : [],
+    id: row.id ?? '',
+    name: row.name ?? '',
+    identity: row.identity ?? '',
+    contactPhoneNumber: row.contactPhoneNumber,
+    age: row.age ?? ('' as any as number),
+    identityImg: row.identityImg ? convertApi2FormUrlOnlyOne(row.identityImg) : [],
+    identityBackImg: row.identityBackImg ? convertApi2FormUrlOnlyOne(row.identityBackImg) : [],
 
-    genderType: Gender.Female,
+    gender: row.gender,
     tabType: 'user',
   });
 }
 
 const { dialogProps, handleEdit } = useFormDialog({
   defaultFormParams: {
-    userId: '',
+    id: '',
     name: '',
-    idNumber: '',
-    contactPhone: '',
+    identity: '',
+    contactPhoneNumber: '',
     age: 0,
-    genderType: '' as any as Gender,
-    certificateFrontImgUrl: [] as UploadUserFile[],
-    certificateBackImgUrl: [] as UploadUserFile[],
+    gender: '' as any as EnumUserGender,
+    identityImg: [] as UploadUserFile[],
+    identityBackImg: [] as UploadUserFile[],
 
     tabType: '',
   },
 });
 
-async function getUserDetailForBack(userId: string) {
+async function getPersonalUserInfoSignContracts(id: string) {
   try {
-    return await flexEnterpriseWokerServices.getUserDetailForBack({ userId: userId });
+    return await userServices.getPersonalUserInfoSignContracts({ id: id });
   } catch (error) {}
 }
 </script>

--
Gitblit v1.9.1