forked from maiora/backend-api
Compare commits
No commits in common. "e91412f79873dd1b7e22ad81163120ea86b8cb8d" and "bceca0c54f4e78584fb6df622c86b17164b3d92f" have entirely different histories.
e91412f798
...
bceca0c54f
@ -47,7 +47,7 @@ fun Application.module(configFile: Properties) {
|
|||||||
|
|
||||||
fun loadConfig(): Properties {
|
fun loadConfig(): Properties {
|
||||||
val properties = Properties()
|
val properties = Properties()
|
||||||
val inputStream = FileInputStream("/home/ristocloudadm/config.properties")
|
val inputStream = FileInputStream("/home/backend_api/config.properties")
|
||||||
properties.load(inputStream)
|
properties.load(inputStream)
|
||||||
return properties
|
return properties
|
||||||
}
|
}
|
||||||
|
@ -68,14 +68,6 @@ object ComposizioniTable : IdTable<Long>("view_composizioni"){
|
|||||||
val quantita = integer("quantita")
|
val quantita = integer("quantita")
|
||||||
}
|
}
|
||||||
|
|
||||||
object RicaricheTable : IdTable<Long>("ricariche_app"){
|
|
||||||
override val id = long("id").autoIncrement("seq_ricariche_app").entityId()
|
|
||||||
val codiceTransazione = varchar("codice_transazione", 255)
|
|
||||||
val messaggio = varchar("messaggio", 255).nullable()
|
|
||||||
val idTessera = long("id_tessera")
|
|
||||||
val importo = double("importo")
|
|
||||||
}
|
|
||||||
|
|
||||||
class AccountsDAO(id: EntityID<Int>) :IntEntity(id) {
|
class AccountsDAO(id: EntityID<Int>) :IntEntity(id) {
|
||||||
companion object : IntEntityClass<AccountsDAO>(AccountsTable)
|
companion object : IntEntityClass<AccountsDAO>(AccountsTable)
|
||||||
|
|
||||||
@ -128,15 +120,6 @@ class ComposizioniDao(id: EntityID<Long>) :LongEntity(id){
|
|||||||
var quantita by ComposizioniTable.quantita
|
var quantita by ComposizioniTable.quantita
|
||||||
}
|
}
|
||||||
|
|
||||||
class RicaricheDao(id: EntityID<Long>) :LongEntity(id){
|
|
||||||
companion object : LongEntityClass<RicaricheDao>(RicaricheTable)
|
|
||||||
|
|
||||||
var codiceTransazione by RicaricheTable.codiceTransazione
|
|
||||||
var messaggio by RicaricheTable.messaggio
|
|
||||||
var idTessera by RicaricheTable.idTessera
|
|
||||||
var importo by RicaricheTable.importo
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
fun accountsDaoToModel(dao: AccountsDAO) = Accounts(
|
fun accountsDaoToModel(dao: AccountsDAO) = Accounts(
|
||||||
dao.id.value,
|
dao.id.value,
|
||||||
@ -181,7 +164,7 @@ fun movimentiDaoToModel(dao: MovimentiDao) :Movimenti{
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun composizioniDaoToModel(dao: ComposizioniDao) = Composizioni(
|
fun composizioniDaoToModel(dao: ComposizioniDao) =Composizioni(
|
||||||
dao.id.value,
|
dao.id.value,
|
||||||
dao.idVassoio,
|
dao.idVassoio,
|
||||||
dao.vassoio,
|
dao.vassoio,
|
||||||
@ -191,5 +174,8 @@ fun composizioniDaoToModel(dao: ComposizioniDao) = Composizioni(
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
suspend fun <T> suspendTransaction(block: Transaction.() -> T): T =
|
suspend fun <T> suspendTransaction(block: Transaction.() -> T): T =
|
||||||
newSuspendedTransaction(Dispatchers.IO, statement = block)
|
newSuspendedTransaction(Dispatchers.IO, statement = block)
|
@ -1,12 +0,0 @@
|
|||||||
package eu.maiora.model
|
|
||||||
|
|
||||||
import kotlinx.serialization.Serializable
|
|
||||||
|
|
||||||
@Serializable
|
|
||||||
data class Ricariche(
|
|
||||||
val id : Long? = null,
|
|
||||||
val codiceTransazione : String,
|
|
||||||
val messaggio : String? = null,
|
|
||||||
val idTessera : Long,
|
|
||||||
val importo : Double
|
|
||||||
)
|
|
@ -1,5 +0,0 @@
|
|||||||
package eu.maiora.model
|
|
||||||
|
|
||||||
interface RicaricheRepository {
|
|
||||||
suspend fun insert(ricarica : Ricariche): Ricariche
|
|
||||||
}
|
|
@ -1,26 +0,0 @@
|
|||||||
package eu.maiora.model
|
|
||||||
|
|
||||||
import eu.maiora.db.*
|
|
||||||
import org.jetbrains.exposed.sql.insert
|
|
||||||
import org.jetbrains.exposed.sql.insertAndGetId
|
|
||||||
|
|
||||||
class RicaricheRepositoryImpl : RicaricheRepository {
|
|
||||||
override suspend fun insert(ricarica : Ricariche): Ricariche = suspendTransaction {
|
|
||||||
// Inserisci una nuova ricarica
|
|
||||||
// ID non definito: viene gestito dalla sequence
|
|
||||||
val idRicaricaInserted = RicaricheTable.insertAndGetId {
|
|
||||||
it[codiceTransazione] = ricarica.codiceTransazione
|
|
||||||
it[messaggio] = ricarica.messaggio
|
|
||||||
it[idTessera] = ricarica.idTessera
|
|
||||||
it[importo] = ricarica.importo
|
|
||||||
}.value
|
|
||||||
|
|
||||||
Ricariche(
|
|
||||||
idRicaricaInserted,
|
|
||||||
ricarica.codiceTransazione,
|
|
||||||
ricarica.messaggio,
|
|
||||||
ricarica.idTessera,
|
|
||||||
ricarica.importo
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,7 +1,15 @@
|
|||||||
package eu.maiora.plugins
|
package eu.maiora.plugins
|
||||||
|
|
||||||
import eu.maiora.model.*
|
import eu.maiora.model.*
|
||||||
import eu.maiora.routes.*
|
import eu.maiora.model.AccountsRepositoryImpl
|
||||||
|
import eu.maiora.model.MovimentiRepositoryImpl
|
||||||
|
import eu.maiora.model.ParametriRepositoryImpl
|
||||||
|
import eu.maiora.model.TessereRepositoryImpl
|
||||||
|
import eu.maiora.routes.auth
|
||||||
|
import eu.maiora.routes.composizioni
|
||||||
|
import eu.maiora.routes.movimenti
|
||||||
|
import eu.maiora.routes.tessere
|
||||||
|
import eu.maiora.routes.valorePasti
|
||||||
import io.ktor.server.application.*
|
import io.ktor.server.application.*
|
||||||
import io.ktor.server.response.*
|
import io.ktor.server.response.*
|
||||||
import io.ktor.server.routing.*
|
import io.ktor.server.routing.*
|
||||||
@ -17,6 +25,5 @@ fun Application.configureRouting() {
|
|||||||
movimenti(MovimentiRepositoryImpl())
|
movimenti(MovimentiRepositoryImpl())
|
||||||
composizioni(ComposizioniRepositoryImpl())
|
composizioni(ComposizioniRepositoryImpl())
|
||||||
valorePasti(ValorePastiRepositoryImpl())
|
valorePasti(ValorePastiRepositoryImpl())
|
||||||
ricariche(RicaricheRepositoryImpl())
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,43 +0,0 @@
|
|||||||
package eu.maiora.routes
|
|
||||||
|
|
||||||
import eu.maiora.model.*
|
|
||||||
import io.ktor.http.*
|
|
||||||
import io.ktor.server.application.*
|
|
||||||
import io.ktor.server.auth.*
|
|
||||||
import io.ktor.server.request.*
|
|
||||||
import io.ktor.server.response.*
|
|
||||||
import io.ktor.server.routing.*
|
|
||||||
|
|
||||||
|
|
||||||
fun Route.ricariche(ricaricheRepository: RicaricheRepository){
|
|
||||||
route("/api/ricariche"){
|
|
||||||
authenticate("auth-jwt") {
|
|
||||||
post(){
|
|
||||||
try{
|
|
||||||
val ricaricaRequest = call.receive<Ricariche>()
|
|
||||||
|
|
||||||
//solo per il codiceTransazione (String) è necessario controllare se è vuoto
|
|
||||||
if(ricaricaRequest.codiceTransazione.isBlank()){
|
|
||||||
call.respond(
|
|
||||||
HttpStatusCode.BadRequest,
|
|
||||||
"Errore nel processare la richiesta: codiceTransazione vuoto"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Inserisci la ricarica nel database
|
|
||||||
val ricaricaInserita = ricaricheRepository.insert(ricaricaRequest)
|
|
||||||
|
|
||||||
// Rispondi con l'oggetto Ricariche, che include l'ID generato
|
|
||||||
call.respond(HttpStatusCode.Created, ricaricaInserita)
|
|
||||||
}
|
|
||||||
catch (e: Exception){
|
|
||||||
call.respond(
|
|
||||||
HttpStatusCode.BadRequest,
|
|
||||||
"Errore nel processare la richiesta: ${e.cause}"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user