From 48d6f7d26764552014a8d09f67f73b2923815989 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 2 Dec 2019 10:19:10 +0100 Subject: [PATCH] =?UTF-8?q?poprawki=20w=20dodawaniu=20u=C5=BCytkownik?= =?UTF-8?q?=C3=B3w?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../usos/AuthorizationService.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/BackEnd/src/main/java/studycave/studycaverestservice/usos/AuthorizationService.java b/BackEnd/src/main/java/studycave/studycaverestservice/usos/AuthorizationService.java index 21907be..e32e919 100644 --- a/BackEnd/src/main/java/studycave/studycaverestservice/usos/AuthorizationService.java +++ b/BackEnd/src/main/java/studycave/studycaverestservice/usos/AuthorizationService.java @@ -208,10 +208,22 @@ public class AuthorizationService { JSONArray participants = course.getJSONArray("user_groups").getJSONObject(0).getJSONArray("participants"); for (int j = 0 ; j < participants.length() ; j++){ String id = participants.getJSONObject(j).getString("id"); - Optional user = userRepository.findByUsosUserUsosId(id); - if (user.isPresent()) - if (!studyGroupMemberRepository.findByUserUsosUserUsosIdAndGroupUsosGroupId(id, groupId).isPresent()) - studyGroup.getMembers().add(new StudyGroupMember(studyGroup, user.get(), false)); + Optional userCheck = userRepository.findByUsosUserUsosId(id); + User user = null; + if (userCheck.isPresent()) + user = userCheck.get(); + else { + user = new User(); + String generatedPassword = PasswordGenerator.generatePassword(16, ALPHA_CAPS + ALPHA + NUMERIC); + UsosUser usosUser = new UsosUser(id, bCryptPasswordEncoder.encode(generatedPassword)); + user.setUsosUser(usosUser); + user.setName(participants.getJSONObject(j).getString("first_name")); + user.setSurname(participants.getJSONObject(j).getString("last_name")); + user.setUsername(id); + user = userRepository.save(user); + } + if (!studyGroupMemberRepository.findByUserUsosUserUsosIdAndGroupUsosGroupId(id, groupId).isPresent()) + studyGroup.getMembers().add(new StudyGroupMember(studyGroup, user, false)); } groupRepository.save(studyGroup); }