manueltauber 2023-05-22 11:31:49 +02:00
commit 1d3715e7a9
2 changed files with 46 additions and 36 deletions

View File

@ -1,5 +1,7 @@
package com.nttdata.calender.changes; package com.nttdata.calender.changes;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList; import java.util.ArrayList;
import com.bmc.arsys.api.ARException; import com.bmc.arsys.api.ARException;
@ -122,22 +124,29 @@ public class ChangeRequest {
if (column.equals("D2")) { if (column.equals("D2")) {
var startFrom = filter.get(i).getCriteria()[0]; var startFrom = filter.get(i).getCriteria()[0];
var startTo = filter.get(i).getCriteria()[1]; var startTo = filter.get(i).getCriteria()[1];
if (!startFrom.isEmpty() && !startTo.isEmpty()) {
String inputFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'";
String outputFormat = "dd/MM/yyyy";
LocalDateTime dateTimeFrom = LocalDateTime.parse(startFrom, DateTimeFormatter.ofPattern(inputFormat));
LocalDateTime dateTimeTo = LocalDateTime.parse(startTo, DateTimeFormatter.ofPattern(inputFormat));
String startFromFormatted = dateTimeFrom.format(DateTimeFormatter.ofPattern(outputFormat));
String startToFormatted = dateTimeTo.format(DateTimeFormatter.ofPattern(outputFormat));
if (!startFromFormatted.isEmpty() && !startToFormatted.isEmpty()) {
var dateColumn = api.getFieldDatabaseName(query.getFormName(), query.getFieldId(column)); var dateColumn = api.getFieldDatabaseName(query.getFormName(), query.getFieldId(column));
// Same day changes need to startFrom=day and startTo=day+24h 60m 60s // Same day changes need to startFrom=day and startTo=day+24h 60m 60s
if (startFrom.equals(startTo)) { if (startFromFormatted.equals(startToFormatted)) {
startTo = "\' < (\"" + startTo + "\"" + " + (24 * (60 * 60)))"; startToFormatted = "\' < (\"" + startToFormatted + "\"" + " + (24 * (60 * 60)))";
} else } else
startTo = "\' <= \"" + startTo + "\""; startToFormatted = "\' <= \"" + startToFormatted + "\"";
qualifier += "\'" + dateColumn + "\' >= \"" + startFrom + "\" AND "; qualifier += "\'" + dateColumn + "\' >= \"" + startFromFormatted + "\" AND ";
qualifier += "\'" + dateColumn + startTo; qualifier += "\'" + dateColumn + startToFormatted;
} }
qualifier = "(" + qualifier + ")"; qualifier = "(" + qualifier + ")";
continue; } else {
}
column = api.getFieldDatabaseName(query.getFormName(), query.getFieldId(column)); column = api.getFieldDatabaseName(query.getFormName(), query.getFieldId(column));
var inner_filter = "\'" + column + "\' "; var inner_filter = "\'" + column + "\' ";
@ -165,8 +174,9 @@ public class ChangeRequest {
inner_qualifier += inner_concat; inner_qualifier += inner_concat;
} }
} }
qualifier += "(" + inner_qualifier + ")"; qualifier += "(" + inner_qualifier + ")";
}
if (i < filter.size() - 1) { if (i < filter.size() - 1) {
qualifier += " AND "; qualifier += " AND ";
} }

View File

@ -2,7 +2,7 @@
<Configuration status="info"> <Configuration status="info">
<Appenders> <Appenders>
<RollingFile name="application" <RollingFile name="application"
fileName="./backend/log/application.log" filePattern="application-%d{yyyy-MM-dd-HH-mm}-%i.log"> fileName="./backend/log/application.log" filePattern="backend/log/application-%d{yyyy-MM-dd-HH-mm}-%i.log">
<PatternLayout> <PatternLayout>
<Pattern>%d{yyyy-MM-dd-HH:mm:ss} %-5p %m%n%ex{full}</Pattern> <Pattern>%d{yyyy-MM-dd-HH:mm:ss} %-5p %m%n%ex{full}</Pattern>
</PatternLayout> </PatternLayout>
@ -11,7 +11,7 @@
</Policies> </Policies>
</RollingFile> </RollingFile>
<RollingFile name="error" <RollingFile name="error"
fileName="./backend/log/error.log" filePattern="error-%d{yyyy-MM-dd-HH-mm}-%i.log"> fileName="./backend/log/error.log" filePattern="backend/log/error-%d{yyyy-MM-dd-HH-mm}-%i.log">
<PatternLayout> <PatternLayout>
<Pattern>%d{yyyy-MM-dd-HH:mm:ss} %-5p %m%n%ex{full}</Pattern> <Pattern>%d{yyyy-MM-dd-HH:mm:ss} %-5p %m%n%ex{full}</Pattern>
</PatternLayout> </PatternLayout>
@ -20,7 +20,7 @@
</Policies> </Policies>
</RollingFile> </RollingFile>
<RollingFile name="warn" <RollingFile name="warn"
fileName="./backend/log/warn.log" filePattern="warn-%d{yyyy-MM-dd-HH-mm}-%i.log"> fileName="./backend/log/warn.log" filePattern="backend/log/warn-%d{yyyy-MM-dd-HH-mm}-%i.log">
<PatternLayout> <PatternLayout>
<Pattern>%d{yyyy-MM-dd-HH:mm:ss} %-5p %m%n</Pattern> <Pattern>%d{yyyy-MM-dd-HH:mm:ss} %-5p %m%n</Pattern>
</PatternLayout> </PatternLayout>