diff --git a/src/main/java/net/gepafin/tendermanagement/config/LocalTimeAttributeConverter.java b/src/main/java/net/gepafin/tendermanagement/config/LocalTimeAttributeConverter.java new file mode 100644 index 00000000..549bc72b --- /dev/null +++ b/src/main/java/net/gepafin/tendermanagement/config/LocalTimeAttributeConverter.java @@ -0,0 +1,18 @@ +package net.gepafin.tendermanagement.config; +import jakarta.persistence.AttributeConverter; +import jakarta.persistence.Converter; +import java.sql.Time; +import java.time.LocalTime; + +@Converter(autoApply = true) +public class LocalTimeAttributeConverter implements AttributeConverter { + @Override + public Time convertToDatabaseColumn(LocalTime localTime) { + return (localTime == null ? null : Time.valueOf(localTime)); + } + + @Override + public LocalTime convertToEntityAttribute(Time sqlTime) { + return (sqlTime == null ? null : sqlTime.toLocalTime()); + } +} diff --git a/src/main/java/net/gepafin/tendermanagement/dao/ProtocolDao.java b/src/main/java/net/gepafin/tendermanagement/dao/ProtocolDao.java index 4601ef8c..b70bc588 100644 --- a/src/main/java/net/gepafin/tendermanagement/dao/ProtocolDao.java +++ b/src/main/java/net/gepafin/tendermanagement/dao/ProtocolDao.java @@ -49,7 +49,8 @@ public class ProtocolDao { LocalDateTime utcDateTime = DateTimeUtil.DateServerToUTC(LocalDateTime.now()); protocolEntity.setYear(utcDateTime.getYear()); protocolEntity.setProtocolNumber(protocolNumber); - protocolEntity.setTime(LocalTime.now()); + LocalTime time = utcDateTime.toLocalTime().withNano(0); + protocolEntity.setTime(time); protocolEntity.setApplicationId(applicationEntity.getId()); protocolEntity.setHubId(hubId); if(Boolean.TRUE.equals(isForApplication)){ diff --git a/src/main/java/net/gepafin/tendermanagement/entities/ProtocolEntity.java b/src/main/java/net/gepafin/tendermanagement/entities/ProtocolEntity.java index 47dc5065..69303b41 100644 --- a/src/main/java/net/gepafin/tendermanagement/entities/ProtocolEntity.java +++ b/src/main/java/net/gepafin/tendermanagement/entities/ProtocolEntity.java @@ -2,6 +2,7 @@ package net.gepafin.tendermanagement.entities; import jakarta.persistence.*; import lombok.Data; +import net.gepafin.tendermanagement.config.LocalTimeAttributeConverter; import java.time.LocalTime; @@ -20,6 +21,7 @@ public class ProtocolEntity extends BaseEntity { private Long call; @Column(name = "TIME", nullable = false) + @Convert(converter = LocalTimeAttributeConverter.class) private LocalTime time; @Column(name="APPLICATION_ID")