SUPPORT-9484: Fix
This commit is contained in:
parent
11d9eb2afd
commit
302a0798a3
2 changed files with 20 additions and 19 deletions
|
|
@ -1,8 +1,9 @@
|
|||
package ru.micord.ervu.journal.mapper;
|
||||
|
||||
import java.time.OffsetDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.ZoneOffset;
|
||||
import java.time.ZonedDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
|
||||
import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.public_.tables.records.InteractionLogRecord;
|
||||
import ru.micord.ervu.journal.JournalDto;
|
||||
|
|
@ -16,11 +17,9 @@ public class JournalDtoMapper {
|
|||
public static JournalDto mapToJournalDto(JournalFileInfo journalFileInfo,
|
||||
JournalFileInfo.JournalFileDetails journalFileDetails) {
|
||||
SenderInfo senderInfo = journalFileInfo.getSenderInfo();
|
||||
OffsetDateTime utcZoned = journalFileDetails.getDepartureDateTime()
|
||||
.atOffset(ZoneOffset.of(journalFileDetails.getTimeZone()));
|
||||
return new JournalDto()
|
||||
.setFileId(journalFileDetails.getFileId())
|
||||
.setDepartureDateTime(utcZoned.toString())
|
||||
.setDepartureDateTime(parseDateTime(journalFileDetails.getDepartureDateTime(), journalFileDetails.getTimeZone()))
|
||||
.setFileName(journalFileDetails.getFileName())
|
||||
.setFilePatternCode(journalFileDetails.getFilePatternCode())
|
||||
.setSenderFio(convertToFio(senderInfo.getFirstName(), senderInfo.getMiddleName(),
|
||||
|
|
@ -34,15 +33,9 @@ public class JournalDtoMapper {
|
|||
}
|
||||
|
||||
public static JournalDto mapToJournalDto(InteractionLogRecord record) {
|
||||
OffsetDateTime utcZoned;
|
||||
if (record.getOffset() != null) {
|
||||
utcZoned = record.getSentDate().toInstant().atOffset(ZoneOffset.of(record.getOffset()));
|
||||
}
|
||||
else {
|
||||
utcZoned = record.getSentDate().toInstant().atOffset(ZoneOffset.UTC);
|
||||
}
|
||||
return new JournalDto()
|
||||
.setDepartureDateTime(utcZoned.toString())
|
||||
.setDepartureDateTime(
|
||||
parseDateTime(record.getSentDate().toLocalDateTime(), record.getOffset()))
|
||||
.setFileName(record.getFileName())
|
||||
.setFilePatternCode(Integer.valueOf(record.getForm()))
|
||||
.setSenderFio(record.getSender())
|
||||
|
|
@ -52,4 +45,15 @@ public class JournalDtoMapper {
|
|||
.setRowsError(0)
|
||||
.setFileId(record.getFileId());
|
||||
}
|
||||
|
||||
private static String parseDateTime(LocalDateTime dateTime, String timeZone) {
|
||||
if (timeZone == null) {
|
||||
timeZone = "+00:00";
|
||||
}
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm:ss");
|
||||
ZonedDateTime utcZoned = dateTime.atZone(ZoneOffset.UTC);
|
||||
ZoneOffset offset = ZoneOffset.of(timeZone);
|
||||
ZonedDateTime zonedDateTime = utcZoned.withZoneSameInstant(offset);
|
||||
return zonedDateTime.format(formatter) + " (" + timeZone + ")";
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1094,10 +1094,7 @@
|
|||
<entry>
|
||||
<key>valueFormatter</key>
|
||||
<value>
|
||||
<implRef type="TS">
|
||||
<className>ZoneDateTimeFormatter</className>
|
||||
<packageName>ervu.component.grid.formatter</packageName>
|
||||
</implRef>
|
||||
<implRef/>
|
||||
</value>
|
||||
</entry>
|
||||
</properties>
|
||||
|
|
@ -1147,7 +1144,7 @@
|
|||
<entry>
|
||||
<key>type</key>
|
||||
<value>
|
||||
<simple>"java.time.OffsetDateTime"</simple>
|
||||
<simple>"java.time.ZonedDateTime"</simple>
|
||||
</value>
|
||||
</entry>
|
||||
</complex>
|
||||
|
|
@ -1174,13 +1171,13 @@
|
|||
<entry>
|
||||
<key>width</key>
|
||||
<value>
|
||||
<simple>140</simple>
|
||||
<simple>300</simple>
|
||||
</value>
|
||||
</entry>
|
||||
<entry>
|
||||
<key>widthFixed</key>
|
||||
<value>
|
||||
<simple>null</simple>
|
||||
<simple>true</simple>
|
||||
</value>
|
||||
</entry>
|
||||
</properties>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue