commit 52c5bfc2d9270138e689902766395c8f5564820f parent dedac1f5c5404a68bec600aa49030851e2ef13a0 Author: Antoine A <> Date: Fri, 24 Nov 2023 15:14:11 +0000 Fix conversion info API Diffstat:
4 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/bank/src/main/kotlin/tech/libeufin/bank/Config.kt b/bank/src/main/kotlin/tech/libeufin/bank/Config.kt @@ -85,7 +85,7 @@ data class BankConfig( ) @Serializable -data class ConversionInfo ( +data class ConversionRate ( val cashin_ratio: DecimalNumber, val cashin_fee: TalerAmount, val cashin_tiny_amount: TalerAmount, diff --git a/bank/src/main/kotlin/tech/libeufin/bank/ConversionApi.kt b/bank/src/main/kotlin/tech/libeufin/bank/ConversionApi.kt @@ -44,7 +44,7 @@ fun Routing.conversionApi(db: Database, ctx: BankConfig) = conditional(ctx.allow regional_currency_specification = ctx.regionalCurrencySpec, fiat_currency = ctx.fiatCurrency!!, fiat_currency_specification = ctx.fiatCurrencySpec!!, - conversion_info = config + conversion_rate = config ) ) } @@ -100,7 +100,7 @@ fun Routing.conversionApi(db: Database, ctx: BankConfig) = conditional(ctx.allow } authAdmin(db, TokenScope.readwrite) { post("/conversion-info/conversion-rate") { - val req = call.receive<ConversionInfo>() + val req = call.receive<ConversionRate>() db.conversion.updateConfig(req); call.respond(HttpStatusCode.NoContent) } diff --git a/bank/src/main/kotlin/tech/libeufin/bank/TalerMessage.kt b/bank/src/main/kotlin/tech/libeufin/bank/TalerMessage.kt @@ -231,7 +231,7 @@ data class ConversionConfig( val regional_currency_specification: CurrencySpecification, val fiat_currency: String, val fiat_currency_specification: CurrencySpecification, - val conversion_info: ConversionInfo + val conversion_rate: ConversionRate ) { val name: String = "taler-conversion-info" val version: String = "0:0:0" diff --git a/bank/src/main/kotlin/tech/libeufin/bank/db/ConversionDAO.kt b/bank/src/main/kotlin/tech/libeufin/bank/db/ConversionDAO.kt @@ -25,7 +25,7 @@ import tech.libeufin.bank.* /** Data access logic for conversion */ class ConversionDAO(private val db: Database) { /** Update in-db conversion config */ - suspend fun updateConfig(cfg: ConversionInfo) = db.serializable { + suspend fun updateConfig(cfg: ConversionRate) = db.serializable { it.transaction { conn -> var stmt = conn.prepareStatement("CALL config_set_amount(?, (?, ?)::taler_amount)") for ((name, amount) in listOf( @@ -63,7 +63,7 @@ class ConversionDAO(private val db: Database) { } /** Get in-db conversion config */ - suspend fun getConfig(regional: String, fiat: String): ConversionInfo? = db.conn { + suspend fun getConfig(regional: String, fiat: String): ConversionRate? = db.conn { it.transaction { conn -> val amount = conn.prepareStatement("SELECT (amount).val as amount_val, (amount).frac as amount_frac FROM config_get_amount(?) as amount"); val roundingMode = conn.prepareStatement("SELECT config_get_rounding_mode(?)"); @@ -76,7 +76,7 @@ class ConversionDAO(private val db: Database) { roundingMode.setString(1, name) return roundingMode.oneOrNull { RoundingMode.valueOf(it.getString(1)) } } - ConversionInfo( + ConversionRate( cashin_ratio = getRatio("cashin_ratio") ?: return@transaction null, cashin_fee = getAmount("cashin_fee", regional) ?: return@transaction null, cashin_tiny_amount = getAmount("cashin_tiny_amount", regional) ?: return@transaction null,