2
0
forked from maiora/backend-api

hotfix-calcolo-prezzo-netto #2

Merged
f.disciascio merged 1 commits from hotfix-calcolo-prezzo-netto into dev 2025-04-24 10:36:24 +00:00

View File

@ -9,6 +9,7 @@ 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 import kotlin.collections.ArrayList
import kotlin.math.round
fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQRicambiRepository, fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQRicambiRepository,
@ -93,10 +94,17 @@ fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQR
listNumPezziPerMagazzino.add(NumPezziPerMagazzino(e.magazzino, e.numeroPezzi.toString())) listNumPezziPerMagazzino.add(NumPezziPerMagazzino(e.magazzino, e.numeroPezzi.toString()))
} }
//calcolo del netto:
//se il prezzo è valorizzato, utilizzare gli sconti, altrimenti va restituito il valore del campo netto
val netto = if(data[0].prezzo > 0)
calcolaNetto(data[0].prezzo, data[0].sconto)
else
data[0].netto
val result = DisponibilitaArticoli(articoloEcommerce.codice, val result = DisponibilitaArticoli(articoloEcommerce.codice,
articoloEcommerce.descrizione, articoloEcommerce.descrizione,
listArticoliCrossQRicambi[0].costruttore, listArticoliCrossQRicambi[0].costruttore,
data[0].netto.toString(), netto.toString(),
data[0].numeroPezzi > 0, data[0].numeroPezzi > 0,
listNumPezziPerMagazzino, listNumPezziPerMagazzino,
dataValoreUsato?.get(0)?.valoreUsato.toString() dataValoreUsato?.get(0)?.valoreUsato.toString()
@ -125,4 +133,15 @@ fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQR
} }
} }
}
/***
* calcolo del prezzo netto: utilizzare gli sconti solo se valorizzati
*/
fun calcolaNetto(prezzo : Double, sconto : Double) : Double {
var netto = prezzo
if(sconto > 0) {
netto *= (1 - sconto / 100)
}
return (round(netto * 100) / 100.0)
} }