Add additional checks when generating world documents

This commit is contained in:
George Kalampokis 2022-01-24 11:30:03 +02:00
parent f95a704787
commit 01d32427c3
1 changed files with 12 additions and 6 deletions

View File

@ -248,7 +248,7 @@ public class WordBuilder {
if (field.getValue() != null && !field.getValue().toString().isEmpty()) {
this.indent = indent;
String format = this.formatter(field);
if(format != null){
if(format != null && !format.isEmpty()){
if(format.charAt(0) == '['){
format = format.substring(1, format.length() - 1).replaceAll(",", ", ");
}
@ -310,6 +310,9 @@ public class WordBuilder {
private String formatter(Field field) throws IOException {
String comboboxType = null;
if (field.getValue() == null) {
return null;
}
switch (field.getViewStyle().getRenderStyle()) {
case "researchers":
case "projects":
@ -383,12 +386,15 @@ public class WordBuilder {
case "datepicker":
case "datePicker":{
Instant instant;
try {
instant = Instant.parse((String) field.getValue());
} catch (DateTimeParseException ex) {
instant = Instant.from(DateTimeFormatter.ofPattern("yyyy-MM-dd").withZone(ZoneId.systemDefault()).parse((String)field.getValue()));
if (!((String)field.getValue()).isEmpty()) {
try {
instant = Instant.parse((String) field.getValue());
} catch (DateTimeParseException ex) {
instant = Instant.from(DateTimeFormatter.ofPattern("yyyy-MM-dd").withZone(ZoneId.systemDefault()).parse((String) field.getValue()));
}
return field.getValue() != null ? DateTimeFormatter.ofPattern("yyyy-MM-dd").withZone(ZoneId.systemDefault()).format(instant) : "";
}
return field.getValue() != null ? DateTimeFormatter.ofPattern("yyyy-MM-dd").withZone(ZoneId.systemDefault()).format(instant) : "";
return (String) field.getValue();
}
case "freetext":
case "textarea":