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