Bugfixes new person

master
Markus Kreth 7 years ago
parent 4c7248314c
commit e7fb7de079
  1. 3
      src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/dao/PersonDaoImpl.java
  2. 4
      src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/data/Person.java
  3. 11
      src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/ContactGrid.java
  4. 1
      src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/PersonEditDetails.java

@ -27,9 +27,10 @@ public class PersonDaoImpl extends AbstractDaoImpl<Person> implements PersonDao
}
@Override
@Transactional
public void save(Person obj) {
checkSubEntities(obj);
super.save(obj);
checkSubEntities(obj);
}
public void checkSubEntities(Person obj) {

@ -2,6 +2,7 @@ package de.kreth.vaadin.clubhelper.vaadinclubhelper.data;
import java.io.Serializable;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.List;
@ -168,6 +169,9 @@ public class Person extends BaseEntity implements Serializable {
public void add(Contact contact) {
contact.setPerson(this);
if (contacts == null) {
contacts = new ArrayList<>();
}
contacts.add(contact);
}

@ -1,6 +1,8 @@
package de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
import com.google.i18n.phonenumbers.NumberParseException;
@ -57,7 +59,14 @@ public class ContactGrid extends AbstractDataGrid<Contact> {
@Override
protected Collection<? extends Contact> readValues(Person person) {
return person.getContacts().stream().filter(e -> e.getDeleted() == null).collect(Collectors.toList());
if (person == null) {
return Collections.emptyList();
}
List<Contact> contacts = person.getContacts();
if (contacts == null) {
return Collections.emptyList();
}
return contacts.stream().filter(e -> e.getDeleted() == null).collect(Collectors.toList());
}
@Override

@ -191,6 +191,7 @@ public class PersonEditDetails extends HorizontalLayout {
adressLayout.setPerson(person);
if (person != null) {
binder.validate();
okButton.setEnabled(true);
} else {
okButton.setEnabled(false);

Loading…
Cancel
Save