1

fixed double csv import

Co-Authored-By: xxnitram <xxnitram@users.noreply.github.com>
Co-Authored-By: andibuls <andibuls@users.noreply.github.com>
This commit is contained in:
Lukas Ettel
2020-03-20 14:49:03 +01:00
parent 33a5f9053b
commit cb9750efc6
2 changed files with 14 additions and 2 deletions

View File

@ -32,6 +32,7 @@ import java.io.CharConversionException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Logger;
@Controller
@SessionScope
@ -43,6 +44,7 @@ public class Gruppen2Controller {
private final UserService userService;
private final ControllerService controllerService;
private final InviteLinkRepositoryService inviteLinkRepositoryService;
private final Logger logger;
@Autowired
Gruppen2Config gruppen2Config;
@ -52,6 +54,7 @@ public class Gruppen2Controller {
this.userService = userService;
this.controllerService = controllerService;
this.inviteLinkRepositoryService = inviteLinkRepositoryService;
logger = Logger.getLogger("Gruppen2ControllerLogger");
}
/**
@ -98,6 +101,7 @@ public class Gruppen2Controller {
try {
userList = CsvService.read(file.getInputStream());
} catch (UnrecognizedPropertyException | CharConversionException ex) {
logger.warning("File konnte nicht gelesen werden");
throw new WrongFileException(file.getOriginalFilename());
}
}

View File

@ -20,6 +20,7 @@ import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.logging.Logger;
import static mops.gruppen2.domain.Role.ADMIN;
@ -30,11 +31,13 @@ public class ControllerService {
private final EventService eventService;
private final UserService userService;
private final InviteLinkRepositoryService inviteLinkRepositoryService;
private final Logger logger;
public ControllerService(EventService eventService, UserService userService, InviteLinkRepositoryService inviteLinkRepositoryService) {
this.eventService = eventService;
this.userService = userService;
this.inviteLinkRepositoryService = inviteLinkRepositoryService;
this.logger = Logger.getLogger("controllerServiceLogger");
}
/**
@ -105,8 +108,13 @@ public class ControllerService {
public void addUserList(List<User> users, Long groupId) {
for (User user : users) {
AddUserEvent addUserEvent = new AddUserEvent(groupId, user.getId(), user.getGivenname(), user.getFamilyname(), user.getEmail());
eventService.saveEvent(addUserEvent);
Group group = userService.getGroupById(groupId);
if (group.getMembers().contains(user)) {
logger.info("Benutzer " + user.getId() + " ist bereits in Gruppe");
} else {
AddUserEvent addUserEvent = new AddUserEvent(groupId, user.getId(), user.getGivenname(), user.getFamilyname(), user.getEmail());
eventService.saveEvent(addUserEvent);
}
}
}