From 4f0a665d8b0078defa95c6557ed46c681ca29fc6 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期四, 11 九月 2025 17:38:04 +0800
Subject: [PATCH] feat: 页面

---
 src/views/CPersonManage/components/CPersonDetailDialog.vue |  180 +++---------------------------------------------------------
 1 files changed, 9 insertions(+), 171 deletions(-)

diff --git a/src/views/CPersonManage/components/CPersonDetailDialog.vue b/src/views/CPersonManage/components/CPersonDetailDialog.vue
index cd5cb06..9c2baf9 100644
--- a/src/views/CPersonManage/components/CPersonDetailDialog.vue
+++ b/src/views/CPersonManage/components/CPersonDetailDialog.vue
@@ -2,49 +2,13 @@
   <ProDialog title="鐢宠璇︽儏" v-model="visible" width="1200px" destroy-on-close>
     <ProTabs v-model="form.tabType" hasBorder>
       <ProTabPane lazy label="浜哄憳璇︽儏" name="user">
-        <ProForm :model="form" ref="dialogForm" label-width="120px" is-read>
-          <ProFormItemV2 label="濮撳悕:" prop="name">
-            <ProFormText v-model.trim="form.name" />
-          </ProFormItemV2>
-          <ProFormItemV2 label="韬唤璇佸彿:" prop="identity">
-            <ProFormText v-model.trim="form.identity" />
-          </ProFormItemV2>
-          <ProFormItemV2 label="鎵嬫満鍙�:" prop="contactPhoneNumber">
-            <ProFormText v-model.trim="form.contactPhoneNumber" />
-          </ProFormItemV2>
-          <ProFormItemV2 label="鎬у埆:" prop="gender">
-            <ProFormRadio
-              v-model="form.gender"
-              :value-enum="EnumUserGenderTextForPerson"
-            ></ProFormRadio>
-          </ProFormItemV2>
-          <ProFormItemV2 label="骞撮緞:" prop="age">
-            <ProFormInputNumber v-model="form.age" unit="宀�"></ProFormInputNumber>
-          </ProFormItemV2>
-          <ProFormItemV2 label="韬唤璇佹闈�:" prop="identityImg">
-            <ProFormImageUpload v-model:file-url="form.identityImg" />
-          </ProFormItemV2>
-          <ProFormItemV2 label="韬唤璇佸弽闈�:" prop="identityBackImg">
-            <ProFormImageUpload v-model:file-url="form.identityBackImg" />
-          </ProFormItemV2>
-        </ProForm>
+        <!-- <StaffDetailInfoView :form="form" /> -->
+      </ProTabPane>
+      <ProTabPane lazy label="浜哄憳绠�鍘�" name="resume">
+        <!-- <StaffResumeView :form="form" /> -->
       </ProTabPane>
       <ProTabPane lazy label="绛剧害璇︽儏" name="sign">
-        <ProDialogTableWrapper :height="400">
-          <ProTableV2 v-bind="proTableProps" :columns="column" :show-operation-column="false">
-            <template #contractUrl="{ row }">
-              <PreviewBtn
-                v-if="
-                  row.userSignContractStatus === EnumTaskUserSignContractStatus.Pass &&
-                  row.contractUrl
-                "
-                :show-download-btn="false"
-                :url="setOSSLink(row.contractUrl)"
-              >
-              </PreviewBtn>
-            </template>
-          </ProTableV2>
-        </ProDialogTableWrapper>
+        <SignDetailView :form="form" />
       </ProTabPane>
     </ProTabs>
     <template #footer>
@@ -56,33 +20,11 @@
 </template>
 
 <script setup lang="ts">
-import {
-  ProDialog,
-  ProTableV2,
-  ProDialogTableWrapper,
-  ProTabs,
-  ProTabPane,
-  useTable,
-  ProForm,
-  ProFormItemV2,
-  ProFormText,
-  UploadUserFile,
-  ProFormImageUpload,
-  ProFormRadio,
-  ProFormInputNumber,
-  defineColumns,
-  PreviewBtn,
-} from '@bole-core/components';
+import { ProDialog, ProTabs, ProTabPane } from '@bole-core/components';
 import _ from 'lodash';
-import * as userServices from '@/services/api/user';
-import {
-  EnumUserGender,
-  EnumUserGenderTextForPerson,
-  EnumTaskUserHireStatusText,
-  EnumTaskUserSignContractStatusText,
-  EnumTaskUserSignContractStatus,
-} from '@/constants';
-import { setOSSLink } from '@/utils';
+import StaffDetailInfoView from './StaffDetailInfoView.vue';
+import StaffResumeView from './StaffResumeView.vue';
+import SignDetailView from './SignDetailView.vue';
 
 defineOptions({
   name: 'CPersonDetailDialog',
@@ -91,13 +33,6 @@
 type Form = {
   tabType: string;
   id: string;
-  name: string;
-  identity: string;
-  contactPhoneNumber: string;
-  age: number;
-  gender: EnumUserGender;
-  identityImg: UploadUserFile[];
-  identityBackImg: UploadUserFile[];
 };
 
 const form = defineModel<Form>('form');
@@ -106,103 +41,6 @@
 const emit = defineEmits<{
   (e: 'onCancel'): void;
 }>();
-
-const column = defineColumns([
-  {
-    id: '1',
-    enCode: 'enterpriseName',
-    name: '鎵�灞炲鎴�',
-  },
-  {
-    id: '2',
-    enCode: 'applyTime',
-    name: '鎶ュ悕鏃堕棿',
-  },
-  {
-    id: '3',
-    enCode: 'hireStatus',
-    name: '褰曠敤鐘舵��',
-  },
-  {
-    id: '4',
-    enCode: 'hireTime',
-    name: '褰曠敤鏃堕棿',
-  },
-  {
-    id: '5',
-    enCode: 'userSignContractStatus',
-    name: '绛剧害鐘舵��',
-  },
-  {
-    id: '6',
-    enCode: 'enterpriseSignContractStatus',
-    name: '浼佷笟绛剧害鐘舵��',
-  },
-  {
-    id: '7',
-    enCode: 'enterpriseSignContractTime',
-    name: '浼佷笟绛剧害鏃堕棿',
-  },
-  {
-    id: '8',
-    enCode: 'contractUrl',
-    name: '鐢靛瓙鍚堝悓',
-  },
-]);
-
-watch(
-  visible,
-  (val) => {
-    console.log('val: ', val);
-    if (val) {
-      getList();
-    }
-  },
-  {
-    immediate: true,
-  }
-);
-
-const {
-  getDataSource: getList,
-  proTableProps,
-  paginationState,
-  extraParamState,
-} = useTable(
-  async ({ pageIndex, pageSize }, extraParamState) => {
-    try {
-      let params: API.GetPersonalUserInfoSignContractsQuery = {
-        pageModel: {
-          rows: pageSize,
-          page: pageIndex,
-          orderInput: extraParamState.orderInput,
-        },
-        id: form.value.id,
-      };
-      let res = await userServices.getPersonalUserInfoSignContracts(params);
-      return res;
-    } catch (error) {}
-  },
-  {
-    defaultExtraParams: {
-      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
-    },
-    columnsRenderProps: {
-      applyTime: { type: 'date' },
-      hireTime: { type: 'date' },
-      enterpriseSignContractTime: { type: 'date' },
-      hireStatus: { type: 'enum', valueEnum: EnumTaskUserHireStatusText },
-      userSignContractStatus: { type: 'enum', valueEnum: EnumTaskUserSignContractStatusText },
-      enterpriseSignContractStatus: { type: 'enum', valueEnum: EnumTaskUserSignContractStatusText },
-      // contractUrl: {
-      //   type: 'url',
-      //   showDownloadBtn: false,
-      //   formatter: (row: API.GetPersonalUserInfoSignContractsQueryResultItem) =>
-      //     setOSSLink(row.contractUrl),
-      // },
-    },
-  }
-);
 </script>
 
 <style lang="scss" scoped>

--
Gitblit v1.9.1