修改评分标准 回滚点

This commit is contained in:
zk
2026-07-13 21:40:52 +08:00
parent 9e01a5aeac
commit 0a413be803
6 changed files with 165 additions and 12 deletions
@@ -22,4 +22,7 @@ public class JobMatchScoreDto {
/** 经历得分(0-100,百分制) */
private Integer experienceScore;
/** 方向适配得分(0-100,百分制,基于AI推荐岗位方向+行业方向与岗位的匹配) */
private Integer fitScore;
}
@@ -148,12 +148,12 @@ public class JobService {
dto.setStatus(vo.getStatus());
Map<String, Integer> scoreMap = matchScoreMap.get(vo.getId());
if (scoreMap != null) {
JobMatchScoreDto matchScore = new JobMatchScoreDto(scoreMap.get("educationScore"), scoreMap.get("skillScore"), scoreMap.get("experienceScore"));
JobMatchScoreDto matchScore = new JobMatchScoreDto(scoreMap.get("educationScore"), scoreMap.get("skillScore"), scoreMap.get("experienceScore"), scoreMap.get("fitScore"));
dto.setMatchScore(scoreMap.get("totalScore"));
dto.setMatchDetail(matchScore);
} else {
dto.setMatchScore(0);
dto.setMatchDetail(new JobMatchScoreDto(0, 0, 0));
dto.setMatchDetail(new JobMatchScoreDto(0, 0, 0, 0));
}
return dto;
}).collect(Collectors.toList());
@@ -252,6 +252,8 @@ public class JobService {
item.setMinExperience(job.getMinExperience());
item.setRequiredMajorIds(job.getRequiredMajorIds());
item.setMajorSensitivity(job.getMajorSensitivity());
item.setCategoryId(job.getCategoryId());
item.setCompanyIndustryId(company.getIndustryId());
jobList.add(item);
Map<Long, Map<String, Integer>> matchScoreMap = jobMatchService.batchCalculateMatchScore(jobList, userId);
Map<String, Integer> scoreMap = matchScoreMap.get(jobId);
@@ -317,10 +319,10 @@ public class JobService {
dto.setIsFavorite(count > 0);
if (scoreMap != null) {
dto.setMatchScore(scoreMap.get("totalScore"));
dto.setMatchDetail(new JobMatchScoreDto(scoreMap.get("educationScore"), scoreMap.get("skillScore"), scoreMap.get("experienceScore")));
dto.setMatchDetail(new JobMatchScoreDto(scoreMap.get("educationScore"), scoreMap.get("skillScore"), scoreMap.get("experienceScore"), scoreMap.get("fitScore")));
} else {
dto.setMatchScore(0);
dto.setMatchDetail(new JobMatchScoreDto(0, 0, 0));
dto.setMatchDetail(new JobMatchScoreDto(0, 0, 0, 0));
}
return dto;
}