diff --git a/fints4javaLib/src/main/kotlin/net/dankito/fints/messages/datenelemente/abgeleiteteformate/Datum.kt b/fints4javaLib/src/main/kotlin/net/dankito/fints/messages/datenelemente/abgeleiteteformate/Datum.kt index a9a4a542..6f117903 100644 --- a/fints4javaLib/src/main/kotlin/net/dankito/fints/messages/datenelemente/abgeleiteteformate/Datum.kt +++ b/fints4javaLib/src/main/kotlin/net/dankito/fints/messages/datenelemente/abgeleiteteformate/Datum.kt @@ -2,6 +2,8 @@ package net.dankito.fints.messages.datenelemente.abgeleiteteformate import net.dankito.fints.messages.Existenzstatus import net.dankito.fints.messages.datenelemente.basisformate.NumerischesDatenelement +import java.text.SimpleDateFormat +import java.util.* /** @@ -12,7 +14,13 @@ import net.dankito.fints.messages.datenelemente.basisformate.NumerischesDatenele open class Datum(date: Int, existenzstatus: Existenzstatus) : NumerischesDatenelement(date, 8, existenzstatus) { companion object { - const val HbciDateFormat = "yyyyMMdd" + const val HbciDateFormatString = "yyyyMMdd" + + val HbciDateFormat = SimpleDateFormat(HbciDateFormatString) } + + constructor(date: Date?, existenzstatus: Existenzstatus) + : this(date?.let { HbciDateFormat.format(it).toInt() } ?: 0, existenzstatus) + } \ No newline at end of file diff --git a/fints4javaLib/src/main/kotlin/net/dankito/fints/messages/datenelemente/abgeleiteteformate/Uhrzeit.kt b/fints4javaLib/src/main/kotlin/net/dankito/fints/messages/datenelemente/abgeleiteteformate/Uhrzeit.kt index bfb5940b..27ee79cc 100644 --- a/fints4javaLib/src/main/kotlin/net/dankito/fints/messages/datenelemente/abgeleiteteformate/Uhrzeit.kt +++ b/fints4javaLib/src/main/kotlin/net/dankito/fints/messages/datenelemente/abgeleiteteformate/Uhrzeit.kt @@ -2,6 +2,8 @@ package net.dankito.fints.messages.datenelemente.abgeleiteteformate import net.dankito.fints.messages.Existenzstatus import net.dankito.fints.messages.datenelemente.basisformate.ZiffernDatenelement +import java.text.SimpleDateFormat +import java.util.* /** @@ -13,7 +15,13 @@ import net.dankito.fints.messages.datenelemente.basisformate.ZiffernDatenelement open class Uhrzeit(time: Int, existenzstatus: Existenzstatus) : ZiffernDatenelement(time, 6, existenzstatus) { companion object { - const val HbciTimeFormat = "HHmmss" + const val HbciTimeFormatString = "HHmmss" + + val HbciTimeFormat = SimpleDateFormat(HbciTimeFormatString) } + + constructor(time: Date?, existenzstatus: Existenzstatus) + : this(time?.let { HbciTimeFormat.format(it).toInt() } ?: 0, existenzstatus) + } \ No newline at end of file diff --git a/fints4javaLib/src/main/kotlin/net/dankito/fints/util/FinTsUtils.kt b/fints4javaLib/src/main/kotlin/net/dankito/fints/util/FinTsUtils.kt index 6c141359..f05debcb 100644 --- a/fints4javaLib/src/main/kotlin/net/dankito/fints/util/FinTsUtils.kt +++ b/fints4javaLib/src/main/kotlin/net/dankito/fints/util/FinTsUtils.kt @@ -2,25 +2,18 @@ package net.dankito.fints.util import net.dankito.fints.messages.datenelemente.abgeleiteteformate.Datum import net.dankito.fints.messages.datenelemente.abgeleiteteformate.Uhrzeit -import java.text.SimpleDateFormat import java.util.* open class FinTsUtils { - companion object { - val HbciDateFormat = SimpleDateFormat(Datum.HbciDateFormat) - - val HbciTimeFormat = SimpleDateFormat(Uhrzeit.HbciTimeFormat) - } - open fun formatDateToday(): String { return formatDate(Date()) } open fun formatDate(date: Date): String { - return HbciDateFormat.format(date) + return Datum.HbciDateFormat.format(date) } open fun formatDateTodayAsInt(): Int { @@ -37,7 +30,7 @@ open class FinTsUtils { } open fun formatTime(time: Date): String { - return HbciTimeFormat.format(time) + return Uhrzeit.HbciTimeFormat.format(time) } open fun formatTimeNowAsInt(): Int {