poprawki w dodawaniu użytkowników

This commit is contained in:
unknown 2019-12-02 10:19:10 +01:00
parent 737877b16c
commit 48d6f7d267
1 changed files with 16 additions and 4 deletions

View File

@ -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> user = userRepository.findByUsosUserUsosId(id);
if (user.isPresent())
if (!studyGroupMemberRepository.findByUserUsosUserUsosIdAndGroupUsosGroupId(id, groupId).isPresent())
studyGroup.getMembers().add(new StudyGroupMember(studyGroup, user.get(), false));
Optional<User> 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);
}