Files
shz-admin/src/services/jobfair/publicJobFair.ts

233 lines
6.1 KiB
TypeScript
Raw Normal View History

2026-01-11 10:00:56 +08:00
import { request } from '@umijs/max';
import { downLoadXlsx } from '@/utils/downloadfile';
const BASE_URL = '/api/cms/publicJobFair';
/** 企业报名审核请求 */
export interface PublicJobFairCompanyReviewParams {
reviewStatus: '0' | '1' | '2';
reviewRemark?: string;
}
/** 企业报名岗位表单 */
export interface PublicJobFairJobForm {
jobId?: number;
jobTitle: string;
minSalary?: number;
maxSalary?: number;
education?: string;
experience?: string;
vacancies?: number;
jobLocation?: string;
jobAddress?: string;
description?: string;
jobCategory?: string;
type?: string;
}
/** 跨域招聘会岗位列表项 */
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,
});
}
2026-01-11 10:00:56 +08:00
/** 查询招聘会列表 */
export async function getPublicJobFairList(params?: API.PublicJobFair.ListParams) {
return request<API.PublicJobFair.ListResult>(`${BASE_URL}/list`, {
method: 'GET',
params,
});
}
/** 获取招聘会详情 */
export async function getPublicJobFairDetail(jobFairId: string) {
return request<API.PublicJobFair.DetailResult>(`${BASE_URL}/${jobFairId}`, {
method: 'GET',
});
}
/** 企业报名招聘会 */
export async function signupPublicJobFair(jobFairId: string) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/${jobFairId}/company/signup`, {
method: 'POST',
});
}
/** 管理员审核企业报名 */
export async function reviewPublicJobFairCompany(
jobFairId: string,
relationId: string,
data: PublicJobFairCompanyReviewParams,
) {
return request<API.PublicJobFair.CommonResult>(
`${BASE_URL}/${jobFairId}/companies/${relationId}/review`,
{
method: 'PUT',
data,
},
);
}
2026-01-11 10:00:56 +08:00
/** 新增招聘会 */
export async function addPublicJobFair(data: API.PublicJobFair.JobFairForm) {
return request<API.PublicJobFair.CommonResult>(BASE_URL, {
method: 'POST',
data,
});
}
/** 修改招聘会 */
export async function updatePublicJobFair(data: API.PublicJobFair.JobFairForm) {
return request<API.PublicJobFair.CommonResult>(BASE_URL, {
method: 'PUT',
data,
});
}
/** 删除招聘会 */
export async function deletePublicJobFair(jobFairIds: string) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/${jobFairIds}`, {
method: 'DELETE',
});
}
/** 添加企业到招聘会 */
export async function addCompanyToJobFair(data: API.PublicJobFair.AddCompanyParams) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/company`, {
method: 'POST',
data,
});
}
/** 批量添加企业到招聘会 */
export async function batchAddCompanyToJobFair(data: API.PublicJobFair.AddCompanyParams[]) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/company/batch`, {
method: 'POST',
data,
});
}
/** 移除招聘会企业 */
export async function removeCompanyFromJobFair(id: string) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/company/${id}`, {
method: 'DELETE',
});
}
/** 添加岗位到招聘会 */
export async function addJobToJobFair(data: API.PublicJobFair.AddJobParams) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/job`, {
method: 'POST',
data,
});
}
/** 批量添加岗位到招聘会 */
export async function batchAddJobToJobFair(data: API.PublicJobFair.AddJobParams[]) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/job/batch`, {
method: 'POST',
data,
});
}
/** 移除招聘会岗位 */
export async function removeJobFromJobFair(id: string) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/job/${id}`, {
method: 'DELETE',
});
}
/** 企业新增报名岗位 */
export async function addCurrentCompanyJob(jobFairId: string, data: PublicJobFairJobForm) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/${jobFairId}/company/jobs`, {
method: 'POST',
data,
});
}
/** 企业修改报名岗位 */
export async function updateCurrentCompanyJob(
jobFairId: string,
jobId: number,
data: PublicJobFairJobForm,
) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/${jobFairId}/company/jobs/${jobId}`, {
method: 'PUT',
data,
});
}
/** 企业删除报名岗位 */
export async function removeCurrentCompanyJob(jobFairId: string, jobId: number) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/${jobFairId}/company/jobs/${jobId}`, {
method: 'DELETE',
});
}
/** 查询当前企业在招聘会中已报名的岗位 */
export async function getCurrentCompanyJobs(jobFairId: string) {
return request<API.PublicJobFair.CompanyJobsResult>(`${BASE_URL}/${jobFairId}/company/jobs`, {
method: 'GET',
});
}
2026-01-11 10:00:56 +08:00
/** 查询招聘会报名列表 */
export async function getJobFairSignups(
jobFairId: string,
params?: { userName?: string; status?: string },
) {
2026-01-11 10:00:56 +08:00
return request<API.PublicJobFair.SignupListResult>(`${BASE_URL}/signups/${jobFairId}`, {
method: 'GET',
params,
});
}
/** 查询招聘会企业及岗位 */
export async function getJobFairCompanies(jobFairId: string) {
return request<API.PublicJobFair.CommonResult>(`${BASE_URL}/companies/${jobFairId}`, {
method: 'GET',
});
}
/** 导出招聘会 */
export async function exportPublicJobFair(params?: API.PublicJobFair.ListParams) {
return downLoadXlsx(`${BASE_URL}/export`, { params }, `job_fair_${new Date().getTime()}.xlsx`);
}