简历筛选功能开发
Some checks failed
Node CI / build (14.x, macOS-latest) (push) Has been cancelled
Node CI / build (14.x, ubuntu-latest) (push) Has been cancelled
Node CI / build (14.x, windows-latest) (push) Has been cancelled
Node CI / build (16.x, macOS-latest) (push) Has been cancelled
Node CI / build (16.x, ubuntu-latest) (push) Has been cancelled
Node CI / build (16.x, windows-latest) (push) Has been cancelled
coverage CI / build (push) Has been cancelled
Node pnpm CI / build (16.x, macOS-latest) (push) Has been cancelled
Node pnpm CI / build (16.x, ubuntu-latest) (push) Has been cancelled
Node pnpm CI / build (16.x, windows-latest) (push) Has been cancelled

This commit is contained in:
francis-fh
2026-07-22 18:26:51 +08:00
parent 86e70a38d0
commit cd92dd4628
6 changed files with 214 additions and 18 deletions

View File

@@ -2,7 +2,7 @@ import React, { Fragment, useEffect, useRef, useState } from 'react';
import { FormattedMessage, useAccess, useParams } from '@umijs/max';
import { Button, FormInstance, message, Tag } from 'antd';
import { ActionType, ProColumns, ProTable } from '@ant-design/pro-components';
import { FormOutlined, PlusOutlined, AlignLeftOutlined, SendOutlined } from '@ant-design/icons';
import { FormOutlined, PlusOutlined, AlignLeftOutlined, SendOutlined, FilterOutlined } from '@ant-design/icons';
import { getDictValueEnum } from '@/services/system/dict';
import DictTag from '@/components/DictTag';
import { exportCmsAppUserExport } from '@/services/mobileusers/list';
@@ -16,6 +16,7 @@ import Detail from './detail';
import Hire from './hire';
import ResumeView from './resumeView';
import InterviewInvite from '../ResumeRecommend/InterviewInvite';
import ResumeFilter from './resumeFilter';
const handleExport = async (values: API.MobileUser.ListParams) => {
@@ -53,6 +54,7 @@ function ManagementList() {
const [matchingDegree, setMatchingDegree] = useState<any>(null);
const [resumeVisible, setResumeVisible] = useState<boolean>(false);
const [inviteVisible, setInviteVisible] = useState<boolean>(false);
const [filterVisible, setFilterVisible] = useState<boolean>(false);
const [hireAdd, setHireAdd] = useState<any>(null);
const [mode, setMode] = useState<'view' | 'edit' | 'create'>('create');
const params = useParams();
@@ -250,6 +252,21 @@ function ManagementList() {
>
</Button>
</div>,
<div key="second-row" style={{display: 'flex', justifyContent: 'center'}}>
<Button
type="link"
size="small"
key="resume-filter"
icon={<FilterOutlined/>}
hidden={!access.hasPerms('cms:jobApply:filterQzz')}
onClick={() => {
setCurrentRow(record);
setFilterVisible(true);
}}
>
</Button>
</div>
],
},
@@ -353,6 +370,18 @@ function ManagementList() {
}
}}
/>
<ResumeFilter
open={filterVisible}
applyId={currentRow?.applyId}
userName={currentRow?.name}
onClose={(needRefresh) => {
setFilterVisible(false);
setCurrentRow(undefined);
if (needRefresh) {
actionRef.current?.reload();
}
}}
/>
</div>
</Fragment>
);