Skip to content
This repository was archived by the owner on May 5, 2021. It is now read-only.

Commit ec86e76

Browse files
1 parent ad77d10 commit ec86e76

4 files changed

Lines changed: 15 additions & 6 deletions

File tree

sormas-api/src/main/java/de/symeda/sormas/api/utils/InfoProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public static synchronized InfoProvider get() {
4949
* @return
5050
*/
5151
public String getMinimumRequiredVersion() {
52-
return "1.52.0";
52+
return "1.52.1";
5353
}
5454

5555
/**

sormas-ui/src/main/java/de/symeda/sormas/ui/contact/ContactController.java

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,10 +53,12 @@
5353
import de.symeda.sormas.api.caze.CaseDataDto;
5454
import de.symeda.sormas.api.caze.CaseIndexDto;
5555
import de.symeda.sormas.api.caze.CaseReferenceDto;
56+
import de.symeda.sormas.api.contact.ContactClassification;
5657
import de.symeda.sormas.api.contact.ContactCriteria;
5758
import de.symeda.sormas.api.contact.ContactDto;
5859
import de.symeda.sormas.api.contact.ContactIndexDto;
5960
import de.symeda.sormas.api.contact.ContactRelation;
61+
import de.symeda.sormas.api.contact.ContactStatus;
6062
import de.symeda.sormas.api.contact.FollowUpStatus;
6163
import de.symeda.sormas.api.contact.SimilarContactDto;
6264
import de.symeda.sormas.api.event.EventParticipantDto;
@@ -249,10 +251,15 @@ public CommitDiscardWrapperComponent<ContactCreateForm> getContactCreateComponen
249251
if (asSourceContact && alternativeCallback != null && casePerson != null) {
250252
selectOrCreateContact(dto, casePerson, I18nProperties.getString(Strings.infoSelectOrCreateContact), selectedContactUuid -> {
251253
if (selectedContactUuid != null) {
252-
if (!selectedContactUuid.equals(dto.getUuid())) {
253-
dto.setResultingCase(caze.toReference());
254-
FacadeProvider.getContactFacade().saveContact(dto);
255-
}
254+
ContactDto selectedContact = FacadeProvider.getContactFacade().getContactByUuid(selectedContactUuid);
255+
selectedContact.setResultingCase(caze.toReference());
256+
selectedContact.setResultingCaseUser(UserProvider.getCurrent().getUserReference());
257+
selectedContact.setContactStatus(ContactStatus.CONVERTED);
258+
selectedContact.setContactClassification(ContactClassification.CONFIRMED);
259+
FacadeProvider.getContactFacade().saveContact(selectedContact);
260+
261+
// Avoid asking the user to discard unsaved changes
262+
createComponent.discard();
256263
alternativeCallback.run();
257264
}
258265
});

sormas-ui/src/main/java/de/symeda/sormas/ui/contact/ContactCreateForm.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -300,6 +300,8 @@ protected void addFields() {
300300
PersonDto.PHONE,
301301
PersonDto.EMAIL_ADDRESS);
302302

303+
setRequired(false, PersonDto.SEX);
304+
303305
TextField personNameField = addCustomField(PERSON_NAME_LOC, String.class, TextField.class);
304306
personNameField.setCaption(I18nProperties.getPrefixCaption(ContactDto.I18N_PREFIX, ContactDto.PERSON));
305307
personNameField.setValue(getValue().getPerson().getCaption());

sormas-ui/src/main/java/de/symeda/sormas/ui/exposure/ExposuresField.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ private void addGeneratedColumns(Table table) {
157157
table.addGeneratedColumn(COLUMN_SOURCE_CASE_NAME, (Table.ColumnGenerator) (source, itemId, columnId) -> {
158158
ExposureDto exposure = (ExposureDto) itemId;
159159
return !isPseudonymized
160-
? DataHelper.toStringNullable(exposure.getContactToCase().getCaseName())
160+
? DataHelper.toStringNullable(exposure.getContactToCase() != null ? exposure.getContactToCase().getCaseName() : "")
161161
: I18nProperties.getCaption(Captions.inaccessibleValue);
162162
});
163163
}

0 commit comments

Comments
 (0)