feat: Enhance Outdoor Fair and Public Job Fair features

- Added QR code functionality for companies signing up for outdoor fairs.
- Implemented job management for outdoor fairs, including job listing and editing.
- Updated Public Job Fair detail view to reflect new data structure.
- Refactored EditModal to support dynamic lists for host, co-organizer, and organizing units.
- Introduced cross-domain city selection for job fairs.
- Enhanced API services for managing cross-domain jobs and cities.
- Improved data handling for outdoor fair items, including review status and QR code content.
- Updated type definitions to accommodate new fields and structures.
This commit is contained in:
2026-06-27 22:45:16 +08:00
parent 7b9e8426de
commit 9c8bfb617b
16 changed files with 1613 additions and 758 deletions

View File

@@ -3,6 +3,49 @@ import { downLoadXlsx } from '@/utils/downloadfile';
const BASE_URL = '/api/cms/publicJobFair';
/** 跨域招聘会岗位列表项 */
export interface CrossDomainJobItem {
jobId: number;
jobTitle: string;
minSalary?: number;
maxSalary?: number;
education?: string;
experience?: string;
vacancies?: number;
postingDate?: string;
companyId?: number;
companyName?: string;
industry?: string;
scale?: string;
jobFairId?: string;
jobFairTitle?: string;
crossDomainCities?: string;
}
/** 跨域岗位查询参数 */
export interface CrossDomainJobParams {
/** 逗号分隔的城市名称 */
cityNames?: string;
current?: number;
pageSize?: number;
}
/** 跨域岗位列表响应 */
export interface CrossDomainJobResult {
code: number;
msg?: string;
total: number;
rows: CrossDomainJobItem[];
}
/** 查询跨域招聘会下的岗位(可按联盟城市过滤) */
export async function getCrossDomainJobs(params?: CrossDomainJobParams) {
return request<CrossDomainJobResult>(`${BASE_URL}/cross-domain-jobs`, {
method: 'GET',
params,
});
}
/** 查询招聘会列表 */
export async function getPublicJobFairList(params?: API.PublicJobFair.ListParams) {
return request<API.PublicJobFair.ListResult>(`${BASE_URL}/list`, {