Added option to pass nullable Date to Datum and Uhrzeit

This commit is contained in:
dankl 2019-10-12 21:40:45 +02:00 committed by dankito
parent 07721719dc
commit 2b744ddd09
3 changed files with 20 additions and 11 deletions

View File

@ -2,6 +2,8 @@ package net.dankito.fints.messages.datenelemente.abgeleiteteformate
import net.dankito.fints.messages.Existenzstatus import net.dankito.fints.messages.Existenzstatus
import net.dankito.fints.messages.datenelemente.basisformate.NumerischesDatenelement 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) { open class Datum(date: Int, existenzstatus: Existenzstatus) : NumerischesDatenelement(date, 8, existenzstatus) {
companion object { 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)
} }

View File

@ -2,6 +2,8 @@ package net.dankito.fints.messages.datenelemente.abgeleiteteformate
import net.dankito.fints.messages.Existenzstatus import net.dankito.fints.messages.Existenzstatus
import net.dankito.fints.messages.datenelemente.basisformate.ZiffernDatenelement 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) { open class Uhrzeit(time: Int, existenzstatus: Existenzstatus) : ZiffernDatenelement(time, 6, existenzstatus) {
companion object { 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)
} }

View File

@ -2,25 +2,18 @@ package net.dankito.fints.util
import net.dankito.fints.messages.datenelemente.abgeleiteteformate.Datum import net.dankito.fints.messages.datenelemente.abgeleiteteformate.Datum
import net.dankito.fints.messages.datenelemente.abgeleiteteformate.Uhrzeit import net.dankito.fints.messages.datenelemente.abgeleiteteformate.Uhrzeit
import java.text.SimpleDateFormat
import java.util.* import java.util.*
open class FinTsUtils { open class FinTsUtils {
companion object {
val HbciDateFormat = SimpleDateFormat(Datum.HbciDateFormat)
val HbciTimeFormat = SimpleDateFormat(Uhrzeit.HbciTimeFormat)
}
open fun formatDateToday(): String { open fun formatDateToday(): String {
return formatDate(Date()) return formatDate(Date())
} }
open fun formatDate(date: Date): String { open fun formatDate(date: Date): String {
return HbciDateFormat.format(date) return Datum.HbciDateFormat.format(date)
} }
open fun formatDateTodayAsInt(): Int { open fun formatDateTodayAsInt(): Int {
@ -37,7 +30,7 @@ open class FinTsUtils {
} }
open fun formatTime(time: Date): String { open fun formatTime(time: Date): String {
return HbciTimeFormat.format(time) return Uhrzeit.HbciTimeFormat.format(time)
} }
open fun formatTimeNowAsInt(): Int { open fun formatTimeNowAsInt(): Int {