1

create group with UI

This commit is contained in:
tomvahl
2020-03-10 14:27:45 +01:00
parent 87c3874a28
commit 3c410b2de4
4 changed files with 20 additions and 5 deletions

View File

@ -1,6 +1,9 @@
package mops.gruppen2.controller;
import mops.gruppen2.domain.Group;
import mops.gruppen2.domain.event.AddUserEvent;
import mops.gruppen2.domain.event.CreateGroupEvent;
import mops.gruppen2.security.Account;
import mops.gruppen2.service.EventService;
import mops.gruppen2.service.GroupService;
import mops.gruppen2.service.KeyCloakService;
@ -59,10 +62,13 @@ public class Gruppen2Controller {
@RequestParam(value = "beschreibung") String beschreibung) {
//Hier muss alles in eine separate Klasse
CreateGroupEvent createGroupEvent = new CreateGroupEvent(eventService.checkGroup(), "faker", title, beschreibung);
eventService.saveEvent(createGroupEvent);
groupService.buildGroupFromEvent(createGroupEvent);
Account account = keyCloakService.createAccountFromPrincipal(token);
CreateGroupEvent createGroupEvent = new CreateGroupEvent(eventService.checkGroup(), account.getName(), title, beschreibung);
AddUserEvent addUserEvent = new AddUserEvent(eventService.checkGroup(), account.getName(),account.getGivenname(),account.getFamilyname(),account.getEmail());
eventService.saveEvent(createGroupEvent);
eventService.saveEvent(addUserEvent);
Group group = groupService.buildGroupFromEvent(createGroupEvent,addUserEvent);
return "redirect:/";
}

View File

@ -23,6 +23,13 @@ public class AddUserEvent extends Event {
this.email = email;
}
public AddUserEvent(Long group_id, String user_id, String givenname, String familyname, String email) {
super(group_id, user_id);
this.givenname = givenname;
this.familyname = familyname;
this.email = email;
}
public AddUserEvent(Long event_id, Long group_id, User user) {
super(event_id, group_id, user.getUser_id());
this.givenname = user.getGivenname();

View File

@ -7,7 +7,7 @@ import lombok.Getter;
@Getter
@AllArgsConstructor
public class Account {
private final String name;
private final String name; //user_id
private final String email;
private final String image;
private final String givenname;

View File

@ -2,6 +2,7 @@ package mops.gruppen2.service;
import mops.gruppen2.domain.Exceptions.EventException;
import mops.gruppen2.domain.Group;
import mops.gruppen2.domain.event.AddUserEvent;
import mops.gruppen2.domain.event.CreateGroupEvent;
import mops.gruppen2.domain.event.Event;
import org.springframework.stereotype.Service;
@ -31,11 +32,12 @@ public class GroupService {
return newGroup;
}
public Group buildGroupFromEvent(CreateGroupEvent createGroupEvent) {
public Group buildGroupFromEvent(CreateGroupEvent createGroupEvent, AddUserEvent addUserEvent) {
Group newGroup = new Group();
try {
newGroup.applyEvent(createGroupEvent);
newGroup.applyEvent(addUserEvent);
} catch (EventException e) {
e.printStackTrace();
}