|
|
@@ -63,19 +63,9 @@ public class ProjectServiceImpl implements ProjectService {
|
|
|
int userId = UserService.loginUser().getId();
|
|
|
List<com.nju.edu.gitlab.vo.ProjectVO> projects;
|
|
|
try {
|
|
|
- projects = seecoderGitlabApi.getAllProjectsByUserId(userId);
|
|
|
-
|
|
|
- List<ProjectPO> missingProjects = projects.stream()
|
|
|
- .filter(x -> projectMapper.getProjectById(x.getProjectId()) == null)
|
|
|
- .map(ProjectPO::new)
|
|
|
+ projects = seecoderGitlabApi.getAllProjectsByUserId(userId)
|
|
|
+ .stream().filter(x -> projectMapper.getProjectById(x.getProjectId()) != null)
|
|
|
.collect(Collectors.toList());
|
|
|
-
|
|
|
- for (ProjectPO project : missingProjects) {
|
|
|
- seecoderGitlabApi.addWebHook(project.getId(), properties.getGitlab().getWebhookProxy(), true, false, false);
|
|
|
- log.info("同步项目, projectId={}, projectName={}", project.getId(), project.getName());
|
|
|
- projectMapper.insertProject(project);
|
|
|
- log.info("项目同步成功, projectId={}", project.getId());
|
|
|
- }
|
|
|
} catch (SeecoderGitlabException e) {
|
|
|
throw new ServiceException(HttpStatus.SC_INTERNAL_SERVER_ERROR, "获取项目列表失败", e);
|
|
|
}
|
|
|
@@ -83,7 +73,7 @@ public class ProjectServiceImpl implements ProjectService {
|
|
|
List<Integer> projectIds = projects.stream()
|
|
|
.map(com.nju.edu.gitlab.vo.ProjectVO::getProjectId)
|
|
|
.collect(Collectors.toList());
|
|
|
- return projectIds.isEmpty()
|
|
|
+ return projects.isEmpty()
|
|
|
? new ArrayList<>()
|
|
|
: projectMapper.selectByIds(projectIds).stream().map(ProjectVO::new).collect(Collectors.toList());
|
|
|
}
|