imdg execution fond/depo/currency microseconds fix

This commit is contained in:
ialbert 2024-06-07 17:03:36 +03:00
parent 5a19686e82
commit 2d9a49e990
4 changed files with 28 additions and 18 deletions

View file

@ -1,5 +1,8 @@
package ru.spcex.clearing.imdg.businessobject; package ru.spcex.clearing.imdg.businessobject;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.execution.ExecutionCurrency; import ru.clearing.classes.statics.data.execution.ExecutionCurrency;
@ -7,10 +10,6 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateMapStore; import ru.spcex.clearing.imdg.base.TemplateMapStore;
import ru.spcex.platform.utils.time.TimeUtil; import ru.spcex.platform.utils.time.TimeUtil;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
@Component @Component
public class ExecutionCurrencyMapStore extends TemplateMapStore<ExecutionCurrency> { public class ExecutionCurrencyMapStore extends TemplateMapStore<ExecutionCurrency> {
@ -78,7 +77,7 @@ public class ExecutionCurrencyMapStore extends TemplateMapStore<ExecutionCurrenc
TimeUtil.toDateFromInstant(object.getCreated()), TimeUtil.toDateFromInstant(object.getCreated()),
TimeUtil.toDateFromInstant(object.getUpdated()), TimeUtil.toDateFromInstant(object.getUpdated()),
object.getExchangeExecutionId(), object.getExchangeExecutionId(),
TimeUtil.toDateFromInstant(object.getExchangeExecutionTime()), TimeUtil.toTimestampFromInstant(object.getExchangeExecutionTime()),
TimeUtil.toDateFromInstant(object.getExchangeExecutionMicroseconds()), TimeUtil.toDateFromInstant(object.getExchangeExecutionMicroseconds()),
TimeUtil.toDateFromLocalDate(object.getTradingDate()), TimeUtil.toDateFromLocalDate(object.getTradingDate()),
TimeUtil.toDateFromLocalDate(object.getSettlementDate()), TimeUtil.toDateFromLocalDate(object.getSettlementDate()),

View file

@ -1,5 +1,8 @@
package ru.spcex.clearing.imdg.businessobject; package ru.spcex.clearing.imdg.businessobject;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.execution.ExecutionDeposit; import ru.clearing.classes.statics.data.execution.ExecutionDeposit;
@ -7,10 +10,6 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateMapStore; import ru.spcex.clearing.imdg.base.TemplateMapStore;
import ru.spcex.platform.utils.time.TimeUtil; import ru.spcex.platform.utils.time.TimeUtil;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
@Component @Component
public class ExecutionDepositMapStore extends TemplateMapStore<ExecutionDeposit> { public class ExecutionDepositMapStore extends TemplateMapStore<ExecutionDeposit> {
public ExecutionDepositMapStore(JdbcTemplate jdbcTemplate) { public ExecutionDepositMapStore(JdbcTemplate jdbcTemplate) {
@ -96,7 +95,7 @@ public class ExecutionDepositMapStore extends TemplateMapStore<ExecutionDeposit>
TimeUtil.toDateFromInstant(object.getCreated()), TimeUtil.toDateFromInstant(object.getCreated()),
TimeUtil.toDateFromInstant(object.getUpdated()), TimeUtil.toDateFromInstant(object.getUpdated()),
object.getExchangeExecutionId(), object.getExchangeExecutionId(),
TimeUtil.toDateFromInstant(object.getExchangeExecutionTime()), TimeUtil.toTimestampFromInstant(object.getExchangeExecutionTime()),
TimeUtil.toDateFromLocalDate(object.getTradingDate()), TimeUtil.toDateFromLocalDate(object.getTradingDate()),
object.getTradingClearingRegistryId(), object.getTradingClearingRegistryId(),
object.getPartyTradingClearingRegistry(), object.getPartyTradingClearingRegistry(),

View file

@ -1,15 +1,14 @@
package ru.spcex.clearing.imdg.businessobject; package ru.spcex.clearing.imdg.businessobject;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.clearing.classes.statics.data.execution.ExecutionFond;
import ru.spcex.clearing.imdg.base.TemplateMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.execution.ExecutionFond;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
@Component @Component
public class ExecutionFondMapStore extends TemplateMapStore<ExecutionFond> { public class ExecutionFondMapStore extends TemplateMapStore<ExecutionFond> {
@ -103,7 +102,7 @@ public class ExecutionFondMapStore extends TemplateMapStore<ExecutionFond> {
object.getSettlementAmount(), object.getSettlementAmount(),
object.getLots(), object.getLots(),
object.getQuantity(), object.getQuantity(),
TimeUtil.toDateFromInstant(object.getExchangeExecutionTime()), TimeUtil.toTimestampFromInstant(object.getExchangeExecutionTime()),
object.getDuration(), object.getDuration(),
object.getTradingClearingRegistryId(), object.getTradingClearingRegistryId(),
object.getPartyTradingClearingRegistry(), object.getPartyTradingClearingRegistry(),

View file

@ -1,6 +1,7 @@
package ru.spcex.platform.utils.time; package ru.spcex.platform.utils.time;
import java.sql.Time; import java.sql.Time;
import java.sql.Timestamp;
import java.time.Instant; import java.time.Instant;
import java.time.LocalDate; import java.time.LocalDate;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@ -37,6 +38,18 @@ public class TimeUtil {
return Date.from(instant); return Date.from(instant);
} }
public static Timestamp toTimestampFromInstant(Instant instant) {
if (instant == null) return null;
return java.sql.Timestamp.from(instant);
}
public static Instant instPlusMicros(Instant i, Long ms) {
if (ms == null) return i;
if (i == null) return null;
return i.plus(ms, ChronoUnit.MICROS);
}
public static Date toDateFromLocalDateTime(LocalDateTime localDateTime) { public static Date toDateFromLocalDateTime(LocalDateTime localDateTime) {
return localDateTime != null ? Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant()) : null; return localDateTime != null ? Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant()) : null;
} }