feat(aihr): persist interview results and candidate material review
面试记录落 aihr_interview_result(GET /records 查询),候选人补充资料 走 OSS + aihr_candidate_material,管理端 AI 面试页可审核通过/驳回; 案例整理服务增强;两张新表纳入 reset 脚本。
This commit is contained in:
@@ -59,17 +59,31 @@ export type InterviewFinishResponse = {
|
||||
value: number | string;
|
||||
note: string;
|
||||
}>;
|
||||
records: Array<{
|
||||
time: string;
|
||||
candidate: string;
|
||||
position: string;
|
||||
score: number;
|
||||
result: string;
|
||||
summary: string;
|
||||
}>;
|
||||
records: InterviewRecord[];
|
||||
source: string;
|
||||
};
|
||||
|
||||
export type InterviewRecord = {
|
||||
time: string;
|
||||
candidate: string;
|
||||
position: string;
|
||||
score: number;
|
||||
result: string;
|
||||
summary: string;
|
||||
};
|
||||
|
||||
export type CandidateMaterialReview = {
|
||||
id: number | string;
|
||||
candidateId: string;
|
||||
candidateName: string;
|
||||
ossId: number | string;
|
||||
fileName: string;
|
||||
materialType: string;
|
||||
fileSize: number;
|
||||
status: string;
|
||||
time: string;
|
||||
};
|
||||
|
||||
export function startInterview(data: InterviewStartRequest): Promise<ApiResult<InterviewStartResponse>> {
|
||||
return request({
|
||||
url: '/api/recruit/interview/start',
|
||||
@@ -96,3 +110,28 @@ export function finishInterview(data: InterviewFinishRequest): Promise<ApiResult
|
||||
headers: { repeatSubmit: false }
|
||||
});
|
||||
}
|
||||
|
||||
export function listInterviewRecords(limit = 20): Promise<ApiResult<InterviewRecord[]>> {
|
||||
return request({
|
||||
url: '/api/recruit/interview/records',
|
||||
method: 'get',
|
||||
params: { limit }
|
||||
});
|
||||
}
|
||||
|
||||
export function listCandidateMaterialsForReview(status = ''): Promise<ApiResult<CandidateMaterialReview[]>> {
|
||||
return request({
|
||||
url: '/api/aihr/hr/candidate/materials',
|
||||
method: 'get',
|
||||
params: { status }
|
||||
});
|
||||
}
|
||||
|
||||
export function reviewCandidateMaterial(id: number | string, status: string): Promise<ApiResult<CandidateMaterialReview>> {
|
||||
return request({
|
||||
url: `/api/aihr/hr/candidate/materials/${id}/review`,
|
||||
method: 'post',
|
||||
data: { status },
|
||||
headers: { repeatSubmit: false }
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user