2
0
forked from maiora/backend-api

Compare commits

..

3 Commits

Author SHA1 Message Date
ef262fc7be Merge branch 'main' of https://git-repo.eu/maiora/backend-api-FAER 2025-04-24 12:36:54 +02:00
0e12ca7bb8 Merge pull request 'hotfix-calcolo-prezzo-netto' (#2) from hotfix-calcolo-prezzo-netto into dev
Reviewed-on: #2
2025-04-24 10:36:23 +00:00
632e646993 aggiunta calcolo del prezzo netto
il campo sconto contiene tutti gli sconti indicati in convenzione (sconto_1, sconto_2 e sconto_3)
2025-04-24 12:35:30 +02:00

View File

@ -9,6 +9,7 @@ import io.ktor.server.auth.jwt.*
import io.ktor.server.response.*
import io.ktor.server.routing.*
import kotlin.collections.ArrayList
import kotlin.math.round
fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQRicambiRepository,
@ -93,10 +94,17 @@ fun Route.disponibilitaArticoli(articoliCrossQRicambiRepository: ArticoliCrossQR
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,
articoloEcommerce.descrizione,
listArticoliCrossQRicambi[0].costruttore,
data[0].netto.toString(),
netto.toString(),
data[0].numeroPezzi > 0,
listNumPezziPerMagazzino,
dataValoreUsato?.get(0)?.valoreUsato.toString()
@ -126,3 +134,14 @@ 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)
}