From c11814e2062e9db6dd661ab980005f8a21449793 Mon Sep 17 00:00:00 2001 From: rajesh Date: Thu, 13 Mar 2025 12:30:18 +0530 Subject: [PATCH] Updated code --- .../config/LocalTimeAttributeConverter.java | 18 ++++++++++++++++++ .../tendermanagement/dao/ProtocolDao.java | 3 ++- .../entities/ProtocolEntity.java | 2 ++ 3 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 src/main/java/net/gepafin/tendermanagement/config/LocalTimeAttributeConverter.java 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")