diff --git a/build.gradle.kts b/build.gradle.kts index 674d0a0..d212ba0 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -65,7 +65,7 @@ dependencies { ktor { fatJar { - archiveFileName.set("fat.jar") + archiveFileName.set("${rootProject.name}-${rootProject.version}.jar") } docker { diff --git a/src/main/kotlin/es/wokis/data/datasource/invoice/InvoiceLocalDataSource.kt b/src/main/kotlin/es/wokis/data/datasource/invoice/InvoiceLocalDataSource.kt index 90757eb..797bf4b 100644 --- a/src/main/kotlin/es/wokis/data/datasource/invoice/InvoiceLocalDataSource.kt +++ b/src/main/kotlin/es/wokis/data/datasource/invoice/InvoiceLocalDataSource.kt @@ -5,7 +5,10 @@ import es.wokis.data.bo.invoice.InvoiceBO import es.wokis.data.dbo.invoice.InvoiceDBO import es.wokis.data.mapper.invoice.toBO import es.wokis.data.mapper.invoice.toDBO +import org.bson.types.ObjectId +import org.litote.kmongo.Id import org.litote.kmongo.eq +import org.litote.kmongo.id.toId import org.litote.kmongo.updateOne import java.util.regex.Pattern @@ -13,7 +16,7 @@ interface InvoiceLocalDataSource { suspend fun getInvoicesOfUser(id: String): List suspend fun addInvoices(id: String, invoices: List): Boolean suspend fun updateInvoices(id: String, invoices: List): Boolean - suspend fun deleteInvoices(id: String, invoices: List): Boolean + suspend fun deleteInvoices(id: String, invoicesIds: List): Boolean } class InvoiceLocalDataSourceImpl(private val invoiceCollection: MongoCollection) : InvoiceLocalDataSource { @@ -45,9 +48,10 @@ class InvoiceLocalDataSourceImpl(private val invoiceCollection: MongoCollection< false } - override suspend fun deleteInvoices(id: String, invoices: List): Boolean = try { - invoices.toDBO().map { - invoiceCollection.deleteOne(InvoiceDBO::id eq it.id).wasAcknowledged() + override suspend fun deleteInvoices(id: String, invoicesIds: List): Boolean = try { + invoicesIds.map { + val bsonId: Id = ObjectId(it).toId() + invoiceCollection.deleteOne(InvoiceDBO::id eq bsonId).wasAcknowledged() }.all { it } } catch (e: Throwable) { diff --git a/src/main/kotlin/es/wokis/data/dbo/user/UserDBO.kt b/src/main/kotlin/es/wokis/data/dbo/user/UserDBO.kt index 59dabec..d69adba 100644 --- a/src/main/kotlin/es/wokis/data/dbo/user/UserDBO.kt +++ b/src/main/kotlin/es/wokis/data/dbo/user/UserDBO.kt @@ -1,6 +1,7 @@ package es.wokis.data.dbo.user import es.wokis.data.constants.ServerConstants +import es.wokis.data.constants.ServerConstants.DEFAULT_LANG import org.bson.codecs.pojo.annotations.BsonId import org.litote.kmongo.Id @@ -10,7 +11,7 @@ data class UserDBO( val username: String, val email: String, val password: String, - val lang: String, + val lang: String = DEFAULT_LANG, val image: String = ServerConstants.EMPTY_TEXT, val devices: List = emptyList() ) \ No newline at end of file diff --git a/src/main/kotlin/es/wokis/data/repository/invoices/InvoiceRepository.kt b/src/main/kotlin/es/wokis/data/repository/invoices/InvoiceRepository.kt index 9a952c6..a7900d6 100644 --- a/src/main/kotlin/es/wokis/data/repository/invoices/InvoiceRepository.kt +++ b/src/main/kotlin/es/wokis/data/repository/invoices/InvoiceRepository.kt @@ -7,7 +7,7 @@ interface InvoiceRepository { suspend fun getInvoicesOfUser(id: String): List suspend fun addInvoices(id: String, invoices: List): Boolean suspend fun updateInvoices(id: String, invoices: List): Boolean - suspend fun deleteInvoices(id: String, invoices: List): Boolean + suspend fun deleteInvoices(id: String, invoicesIds: List): Boolean } class InvoiceRepositoryImpl(private val invoiceLocalDataSource: InvoiceLocalDataSource) : InvoiceRepository { @@ -20,6 +20,6 @@ class InvoiceRepositoryImpl(private val invoiceLocalDataSource: InvoiceLocalData override suspend fun updateInvoices(id: String, invoices: List): Boolean = invoiceLocalDataSource.updateInvoices(id, invoices) - override suspend fun deleteInvoices(id: String, invoices: List): Boolean = - invoiceLocalDataSource.deleteInvoices(id, invoices) + override suspend fun deleteInvoices(id: String, invoicesIds: List): Boolean = + invoiceLocalDataSource.deleteInvoices(id, invoicesIds) } \ No newline at end of file diff --git a/src/main/kotlin/es/wokis/routing/InvoicesRouting.kt b/src/main/kotlin/es/wokis/routing/InvoicesRouting.kt index ce51bfc..2d362dc 100644 --- a/src/main/kotlin/es/wokis/routing/InvoicesRouting.kt +++ b/src/main/kotlin/es/wokis/routing/InvoicesRouting.kt @@ -45,9 +45,9 @@ fun Routing.setUpInvoicesRouting() { delete("/invoices") { val user = call.user - val invoices = call.receive>() + val invoicesIds = call.receive>() user?.id?.let { - val userInvoices = invoiceRepository.deleteInvoices(it, invoices.toBO()) + val userInvoices = invoiceRepository.deleteInvoices(it, invoicesIds) call.respond(HttpStatusCode.OK, userInvoices) } ?: call.respond(HttpStatusCode.Unauthorized) } diff --git a/src/main/resources/application.conf b/src/main/resources/application.conf index 8ac2e4d..0dd8e1b 100644 --- a/src/main/resources/application.conf +++ b/src/main/resources/application.conf @@ -13,7 +13,7 @@ ktor { #jwt config jwt { - domain = "https://finance.projectalpha.es/" + domain = "https://finance.wokis.es/" audience = "wokis" realm = "projectfinance wokis" }