Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ dependencies {

ktor {
fatJar {
archiveFileName.set("fat.jar")
archiveFileName.set("${rootProject.name}-${rootProject.version}.jar")
}

docker {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,18 @@ 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

interface InvoiceLocalDataSource {
suspend fun getInvoicesOfUser(id: String): List<InvoiceBO>
suspend fun addInvoices(id: String, invoices: List<InvoiceBO>): Boolean
suspend fun updateInvoices(id: String, invoices: List<InvoiceBO>): Boolean
suspend fun deleteInvoices(id: String, invoices: List<InvoiceBO>): Boolean
suspend fun deleteInvoices(id: String, invoicesIds: List<String>): Boolean
}

class InvoiceLocalDataSourceImpl(private val invoiceCollection: MongoCollection<InvoiceDBO>) : InvoiceLocalDataSource {
Expand Down Expand Up @@ -45,9 +48,10 @@ class InvoiceLocalDataSourceImpl(private val invoiceCollection: MongoCollection<
false
}

override suspend fun deleteInvoices(id: String, invoices: List<InvoiceBO>): Boolean = try {
invoices.toDBO().map {
invoiceCollection.deleteOne(InvoiceDBO::id eq it.id).wasAcknowledged()
override suspend fun deleteInvoices(id: String, invoicesIds: List<String>): Boolean = try {
invoicesIds.map {
val bsonId: Id<InvoiceDBO> = ObjectId(it).toId()
invoiceCollection.deleteOne(InvoiceDBO::id eq bsonId).wasAcknowledged()
}.all { it }

} catch (e: Throwable) {
Expand Down
3 changes: 2 additions & 1 deletion src/main/kotlin/es/wokis/data/dbo/user/UserDBO.kt
Original file line number Diff line number Diff line change
@@ -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

Expand All @@ -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<String> = emptyList()
)
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ interface InvoiceRepository {
suspend fun getInvoicesOfUser(id: String): List<InvoiceBO>
suspend fun addInvoices(id: String, invoices: List<InvoiceBO>): Boolean
suspend fun updateInvoices(id: String, invoices: List<InvoiceBO>): Boolean
suspend fun deleteInvoices(id: String, invoices: List<InvoiceBO>): Boolean
suspend fun deleteInvoices(id: String, invoicesIds: List<String>): Boolean
}

class InvoiceRepositoryImpl(private val invoiceLocalDataSource: InvoiceLocalDataSource) : InvoiceRepository {
Expand All @@ -20,6 +20,6 @@ class InvoiceRepositoryImpl(private val invoiceLocalDataSource: InvoiceLocalData
override suspend fun updateInvoices(id: String, invoices: List<InvoiceBO>): Boolean =
invoiceLocalDataSource.updateInvoices(id, invoices)

override suspend fun deleteInvoices(id: String, invoices: List<InvoiceBO>): Boolean =
invoiceLocalDataSource.deleteInvoices(id, invoices)
override suspend fun deleteInvoices(id: String, invoicesIds: List<String>): Boolean =
invoiceLocalDataSource.deleteInvoices(id, invoicesIds)
}
4 changes: 2 additions & 2 deletions src/main/kotlin/es/wokis/routing/InvoicesRouting.kt
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,9 @@ fun Routing.setUpInvoicesRouting() {

delete("/invoices") {
val user = call.user
val invoices = call.receive<List<InvoiceDTO>>()
val invoicesIds = call.receive<List<String>>()
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)
}
Expand Down
2 changes: 1 addition & 1 deletion src/main/resources/application.conf
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ ktor {

#jwt config
jwt {
domain = "https://finance.projectalpha.es/"
domain = "https://finance.wokis.es/"
audience = "wokis"
realm = "projectfinance wokis"
}
Expand Down