添加 根据岗位来源地址查询岗位信息
This commit is contained in:
@@ -169,4 +169,19 @@ public class JobController {
|
|||||||
Long userId = UserSecurityTool.getUserId();
|
Long userId = UserSecurityTool.getUserId();
|
||||||
return jobService.recommendJobs(param, userId);
|
return jobService.recommendJobs(param, userId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据岗位来源地址查询岗位信息
|
||||||
|
* <p>通过岗位的原始链接(如招聘网站URL)查询对应的岗位信息</p>
|
||||||
|
*/
|
||||||
|
@GetMapping("/findByUrl")
|
||||||
|
public JobDto findJobBySourceUrl(@RequestParam String sourceUrl) {
|
||||||
|
Long userId = 0L;
|
||||||
|
try {
|
||||||
|
userId = UserSecurityTool.getUserId();
|
||||||
|
} catch (Exception e) {
|
||||||
|
// 接口允许不登录,不处理
|
||||||
|
}
|
||||||
|
return jobService.findJobBySourceUrl(sourceUrl, userId);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -719,4 +719,27 @@ public class JobService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据岗位来源地址查询岗位信息
|
||||||
|
* <p>1. 通过 sourceUrl 查询岗位ID</p>
|
||||||
|
* <p>2. 复用 listJobs 查询岗位详情</p>
|
||||||
|
*/
|
||||||
|
public JobDto findJobBySourceUrl(String sourceUrl, Long userId) {
|
||||||
|
// 1. 通过 sourceUrl 查询岗位
|
||||||
|
Job job = jobMapper.selectOne(new LambdaQueryWrapper<Job>().eq(Job::getSourceUrl, sourceUrl).select(Job::getId).last("LIMIT 1"));
|
||||||
|
if (job == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2. 复用 listJobs 查询
|
||||||
|
JobQueryParam queryParam = new JobQueryParam();
|
||||||
|
queryParam.setPageNum(1);
|
||||||
|
queryParam.setPageSize(1);
|
||||||
|
queryParam.setJobIds(Collections.singletonList(job.getId()));
|
||||||
|
queryParam.setStatusFilter(Arrays.asList(0, 1, 2));
|
||||||
|
|
||||||
|
PageResult<JobDto> result = listJobs(queryParam, userId);
|
||||||
|
return result.getList().isEmpty() ? null : result.getList().get(0);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user