forked from maiora/backend-api
Compare commits
2 Commits
d569e04cc8
...
b047fec3ac
Author | SHA1 | Date | |
---|---|---|---|
b047fec3ac | |||
8a23aafdb3 |
@ -1,18 +1,13 @@
|
|||||||
package eu.maiora.model
|
package eu.maiora.model
|
||||||
|
|
||||||
import eu.maiora.db.*
|
import eu.maiora.db.*
|
||||||
import org.jetbrains.exposed.sql.Expression
|
import eu.maiora.loadConfig
|
||||||
import org.jetbrains.exposed.sql.LongColumnType
|
import org.jetbrains.exposed.sql.LongColumnType
|
||||||
import org.jetbrains.exposed.sql.ResultRow
|
|
||||||
import org.jetbrains.exposed.sql.or
|
|
||||||
|
|
||||||
class ViewEcommercePrezSconDispRepositoryImpl : ViewEcommercePrezSconDispRepository {
|
class ViewEcommercePrezSconDispRepositoryImpl : ViewEcommercePrezSconDispRepository {
|
||||||
override suspend fun disponibilitaByIdArtIdClie(idCliente: Long, idArticolo : Long): List<ViewEcommercePrezSconDisp>? = suspendTransaction {
|
override suspend fun disponibilitaByIdArtIdClie(idCliente: Long, idArticolo : Long): List<ViewEcommercePrezSconDisp>? = suspendTransaction {
|
||||||
// Cerca le disponibilità e i prezzi dato articolo e cliente dalla table function ViewEcommercePrezSconDispTable
|
// Cerca le disponibilità e i prezzi dato articolo e cliente dalla table function ViewEcommercePrezSconDispTable
|
||||||
/*ViewEcommercePrezSconDispDAO.find { ViewEcommerceArticoliTable.codice eq codice }
|
val properties = loadConfig()
|
||||||
.toList() // Restituisce un singolo risultato o null se non trovato
|
|
||||||
.map { viewEcommerceArticoliDaoToModel(it) } // Converte il DAO in un oggetto ViewEcommerceArticoli
|
|
||||||
*/
|
|
||||||
|
|
||||||
val result = exec("SELECT * FROM dbo.Get_Prez_Scon_Disp(?, ?)", listOf(
|
val result = exec("SELECT * FROM dbo.Get_Prez_Scon_Disp(?, ?)", listOf(
|
||||||
LongColumnType() to idCliente,
|
LongColumnType() to idCliente,
|
||||||
@ -21,7 +16,7 @@ class ViewEcommercePrezSconDispRepositoryImpl : ViewEcommercePrezSconDispReposit
|
|||||||
val list = mutableListOf<ViewEcommercePrezSconDisp>()
|
val list = mutableListOf<ViewEcommercePrezSconDisp>()
|
||||||
while (rs.next()) {
|
while (rs.next()) {
|
||||||
val element : ViewEcommercePrezSconDisp
|
val element : ViewEcommercePrezSconDisp
|
||||||
if(idCliente == 10000023706){
|
if(idCliente == properties.getProperty("qricambi.id").toLong()){
|
||||||
element = ViewEcommercePrezSconDisp(
|
element = ViewEcommercePrezSconDisp(
|
||||||
id = rs.getLong("id"),
|
id = rs.getLong("id"),
|
||||||
idCliente = rs.getLong("id_cliente"),
|
idCliente = rs.getLong("id_cliente"),
|
||||||
|
@ -1,10 +1,7 @@
|
|||||||
package eu.maiora.model
|
package eu.maiora.model
|
||||||
|
|
||||||
import eu.maiora.db.*
|
import eu.maiora.db.*
|
||||||
import org.jetbrains.exposed.sql.Expression
|
|
||||||
import org.jetbrains.exposed.sql.LongColumnType
|
import org.jetbrains.exposed.sql.LongColumnType
|
||||||
import org.jetbrains.exposed.sql.ResultRow
|
|
||||||
import org.jetbrains.exposed.sql.or
|
|
||||||
|
|
||||||
class ViewEcommerceValoreUsatoRepositoryImpl : ViewEcommerceValoreUsatoRepository {
|
class ViewEcommerceValoreUsatoRepositoryImpl : ViewEcommerceValoreUsatoRepository {
|
||||||
override suspend fun getValoreByIdArtIdClie(idCliente: Long, idArticolo : Long): List<ViewEcommerceValoreUsato>? = suspendTransaction {
|
override suspend fun getValoreByIdArtIdClie(idCliente: Long, idArticolo : Long): List<ViewEcommerceValoreUsato>? = suspendTransaction {
|
||||||
@ -17,33 +14,12 @@ class ViewEcommerceValoreUsatoRepositoryImpl : ViewEcommerceValoreUsatoRepositor
|
|||||||
val list = mutableListOf<ViewEcommerceValoreUsato>()
|
val list = mutableListOf<ViewEcommerceValoreUsato>()
|
||||||
while (rs.next()) {
|
while (rs.next()) {
|
||||||
val element : ViewEcommerceValoreUsato
|
val element : ViewEcommerceValoreUsato
|
||||||
//if(idCliente == 10000023706){
|
|
||||||
element = ViewEcommerceValoreUsato(
|
element = ViewEcommerceValoreUsato(
|
||||||
id = rs.getLong("id"),
|
id = rs.getLong("id"),
|
||||||
idCliente = rs.getLong("id_cliente"),
|
idCliente = rs.getLong("id_cliente"),
|
||||||
idArticolo = rs.getLong("id_articolo"),
|
idArticolo = rs.getLong("id_articolo"),
|
||||||
valoreUsato = rs.getDouble("valore_usato")
|
valoreUsato = rs.getDouble("valore_usato")
|
||||||
)
|
)
|
||||||
//}
|
|
||||||
//else {
|
|
||||||
/*element = ViewEcommerceValoreUsato(
|
|
||||||
id = rs.getLong("id"),
|
|
||||||
idCliente = rs.getLong("id_cliente"),
|
|
||||||
idArticolo = rs.getLong("id_articolo"),
|
|
||||||
idMagazzino = rs.getLong("id_magazzino"),
|
|
||||||
magazzino = rs.getString("magazzino"),
|
|
||||||
valoreCarcassa = rs.getDouble("valore_carcassa"),
|
|
||||||
prezzo = rs.getDouble("prezzo"),
|
|
||||||
sconto = rs.getDouble("sconto"),
|
|
||||||
sconto1 = rs.getDouble("sconto_1"),
|
|
||||||
sconto2 = rs.getDouble("sconto_2"),
|
|
||||||
sconto3 = rs.getDouble("sconto_3"),
|
|
||||||
netto = rs.getDouble("netto"),
|
|
||||||
numeroPezzi = rs.getInt("numero_pezzi")
|
|
||||||
)*/
|
|
||||||
//}
|
|
||||||
|
|
||||||
|
|
||||||
list.add(element)
|
list.add(element)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package eu.maiora.routes
|
package eu.maiora.routes
|
||||||
|
|
||||||
|
import eu.maiora.loadConfig
|
||||||
import eu.maiora.model.*
|
import eu.maiora.model.*
|
||||||
import io.ktor.http.*
|
import io.ktor.http.*
|
||||||
import io.ktor.server.application.*
|
import io.ktor.server.application.*
|
||||||
@ -7,6 +8,7 @@ import io.ktor.server.auth.*
|
|||||||
import io.ktor.server.auth.jwt.*
|
import io.ktor.server.auth.jwt.*
|
||||||
import io.ktor.server.response.*
|
import io.ktor.server.response.*
|
||||||
import io.ktor.server.routing.*
|
import io.ktor.server.routing.*
|
||||||
|
import kotlin.collections.ArrayList
|
||||||
|
|
||||||
|
|
||||||
fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQRicambiRepository,
|
fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQRicambiRepository,
|
||||||
@ -27,10 +29,6 @@ fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQR
|
|||||||
return@get
|
return@get
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO verifica utente loggato: se è qricambi partner, richiesta generica,
|
|
||||||
// altrimenti richiesta puntuale
|
|
||||||
// al momento gestiamo solo richiesta generica per tutti
|
|
||||||
|
|
||||||
//ricerca del codice articolo
|
//ricerca del codice articolo
|
||||||
//- verifico che il codice esista nel sistema interno, ovvero nella tabella ARTICOLI_CROSS_QRICAMBI
|
//- verifico che il codice esista nel sistema interno, ovvero nella tabella ARTICOLI_CROSS_QRICAMBI
|
||||||
// la ricerca va effettuata prima per CODICE_ARTICOLO e poi per CODICE_CROSS
|
// la ricerca va effettuata prima per CODICE_ARTICOLO e poi per CODICE_CROSS
|
||||||
@ -38,21 +36,18 @@ fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQR
|
|||||||
//- altrimenti, recupero l'id dell'articolo dalla vista VIEW_ECOMMERCE_ARTICOLI
|
//- altrimenti, recupero l'id dell'articolo dalla vista VIEW_ECOMMERCE_ARTICOLI
|
||||||
// e tutti i dati da mostrare (vedi GET_PREZ_SCON_DISP, named query in ViewEcommercePrezSconDisp)
|
// e tutti i dati da mostrare (vedi GET_PREZ_SCON_DISP, named query in ViewEcommercePrezSconDisp)
|
||||||
|
|
||||||
if(username.equals("qricambi")){
|
val properties = loadConfig()
|
||||||
val idClienteQRicambi = 10000023706
|
|
||||||
|
if(username.equals(properties.getProperty("qricambi.username").toString())){
|
||||||
|
val idClienteQRicambi = properties.getProperty("qricambi.id").toLong()
|
||||||
val listArticoliCrossQRicambi = articoliCrossQRicambiRepository.articoloByCodArt(codiceArticolo)
|
val listArticoliCrossQRicambi = articoliCrossQRicambiRepository.articoloByCodArt(codiceArticolo)
|
||||||
if(listArticoliCrossQRicambi.isNotEmpty()){
|
if(listArticoliCrossQRicambi.isNotEmpty()){
|
||||||
//call.respond(listArticoliCrossQRicambi)
|
|
||||||
val articoloEcommerce = viewEcommerceArticoliRepository.articoloByCodice(listArticoliCrossQRicambi[0].codiceArticolo)
|
val articoloEcommerce = viewEcommerceArticoliRepository.articoloByCodice(listArticoliCrossQRicambi[0].codiceArticolo)
|
||||||
if(articoloEcommerce != null){
|
if(articoloEcommerce != null){
|
||||||
//call.respond(articoloEcommerce)
|
|
||||||
val dataValoreUsato = viewEcommerceValoreUsatoRepository.getValoreByIdArtIdClie(idClienteQRicambi, articoloEcommerce.id)
|
val dataValoreUsato = viewEcommerceValoreUsatoRepository.getValoreByIdArtIdClie(idClienteQRicambi, articoloEcommerce.id)
|
||||||
val data = viewEcommercePrezSconDispRepository.disponibilitaByIdArtIdClie(idClienteQRicambi, articoloEcommerce.id)
|
val data = viewEcommercePrezSconDispRepository.disponibilitaByIdArtIdClie(idClienteQRicambi, articoloEcommerce.id)
|
||||||
if(data != null){
|
if(data != null){
|
||||||
var listNumPezziPerMagazzino = ArrayList<NumPezziPerMagazzino>()
|
var listNumPezziPerMagazzino = ArrayList<NumPezziPerMagazzino>()
|
||||||
/*data.forEach { e ->
|
|
||||||
listNumPezziPerMagazzino.add(NumPezziPerMagazzino(e.magazzino, e.numeroPezzi.toString()))
|
|
||||||
}*/
|
|
||||||
var numPezziDisponibili = 0;
|
var numPezziDisponibili = 0;
|
||||||
data.forEach { e ->
|
data.forEach { e ->
|
||||||
numPezziDisponibili += e.numeroPezzi
|
numPezziDisponibili += e.numeroPezzi
|
||||||
@ -88,10 +83,8 @@ fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQR
|
|||||||
if(cliente != null){
|
if(cliente != null){
|
||||||
val listArticoliCrossQRicambi = articoliCrossQRicambiRepository.articoloByCodArt(codiceArticolo)
|
val listArticoliCrossQRicambi = articoliCrossQRicambiRepository.articoloByCodArt(codiceArticolo)
|
||||||
if(!listArticoliCrossQRicambi.isEmpty()){
|
if(!listArticoliCrossQRicambi.isEmpty()){
|
||||||
//call.respond(listArticoliCrossQRicambi)
|
|
||||||
val articoloEcommerce = viewEcommerceArticoliRepository.articoloByCodice(listArticoliCrossQRicambi[0].codiceArticolo)
|
val articoloEcommerce = viewEcommerceArticoliRepository.articoloByCodice(listArticoliCrossQRicambi[0].codiceArticolo)
|
||||||
if(articoloEcommerce != null){
|
if(articoloEcommerce != null){
|
||||||
//call.respond(articoloEcommerce)
|
|
||||||
val dataValoreUsato = viewEcommerceValoreUsatoRepository.getValoreByIdArtIdClie(cliente.idCliente, articoloEcommerce.id)
|
val dataValoreUsato = viewEcommerceValoreUsatoRepository.getValoreByIdArtIdClie(cliente.idCliente, articoloEcommerce.id)
|
||||||
val data = viewEcommercePrezSconDispRepository.disponibilitaByIdArtIdClie(cliente.idCliente, articoloEcommerce.id)
|
val data = viewEcommercePrezSconDispRepository.disponibilitaByIdArtIdClie(cliente.idCliente, articoloEcommerce.id)
|
||||||
if(!data.isNullOrEmpty()){
|
if(!data.isNullOrEmpty()){
|
||||||
@ -99,11 +92,6 @@ fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQR
|
|||||||
data.forEach { e ->
|
data.forEach { e ->
|
||||||
listNumPezziPerMagazzino.add(NumPezziPerMagazzino(e.magazzino, e.numeroPezzi.toString()))
|
listNumPezziPerMagazzino.add(NumPezziPerMagazzino(e.magazzino, e.numeroPezzi.toString()))
|
||||||
}
|
}
|
||||||
//var numPezziDisponibili = 0;
|
|
||||||
/*data.forEach { e ->
|
|
||||||
numPezziDisponibili += e.numeroPezzi
|
|
||||||
}*/
|
|
||||||
//listNumPezziPerMagazzino.add(NumPezziPerMagazzino("", numPezziDisponibili.toString()))
|
|
||||||
|
|
||||||
val result = DisponibilitaArticoli(articoloEcommerce.codice,
|
val result = DisponibilitaArticoli(articoloEcommerce.codice,
|
||||||
articoloEcommerce.descrizione,
|
articoloEcommerce.descrizione,
|
||||||
@ -133,16 +121,6 @@ fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQR
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Cerca la tessera per codice fiscale
|
|
||||||
//val listaMovimenti = movimentiRepository.movimentiByIdTessera(idTessera.toLong())
|
|
||||||
|
|
||||||
|
|
||||||
/*if (listaMovimenti != null) {
|
|
||||||
call.respond(listaMovimenti)
|
|
||||||
} else {
|
|
||||||
call.respondText("Movimenti non trovati", status = HttpStatusCode.NotFound)
|
|
||||||
}*/
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user