chore: update
This commit is contained in:
@@ -876,7 +876,7 @@ func (d *Database) CalculateAndAddPointsForCommandTx(tx *sql.Tx, commandID int,
|
||||
|
||||
type ItemPoints struct {
|
||||
Category string
|
||||
Quantite int
|
||||
Quantite float64
|
||||
Prix float64
|
||||
}
|
||||
|
||||
@@ -894,8 +894,11 @@ func (d *Database) CalculateAndAddPointsForCommandTx(tx *sql.Tx, commandID int,
|
||||
items = append(items, item)
|
||||
|
||||
// Cumuler par catégorie
|
||||
if item.Category == "zipette" {
|
||||
categoryLower := strings.ToLower(item.Category)
|
||||
if categoryLower == "zipette&co" || categoryLower == "zipette_co" {
|
||||
totalPrixZipette += item.Prix
|
||||
} else if categoryLower == "gros&semi" || categoryLower == "gros_semi" {
|
||||
// gros&semi → 0 points, on ne cumule pas
|
||||
} else {
|
||||
// weed_hash ou autres catégories
|
||||
totalPrixWeedHash += item.Prix
|
||||
@@ -915,10 +918,31 @@ func (d *Database) CalculateAndAddPointsForCommandTx(tx *sql.Tx, commandID int,
|
||||
log.Printf("📊 [CalcPointsTx] %d items - weed_hash: %.2f€, zipette: %.2f€",
|
||||
len(items), totalPrixWeedHash, totalPrixZipette)
|
||||
|
||||
// ✅ ÉTAPE 2: Calculer les points par catégorie
|
||||
// Règle: 1 point par tranche de 10€
|
||||
pointsWeedHash := int(totalPrixWeedHash / 10.0)
|
||||
pointsZipette := int(totalPrixZipette / 10.0)
|
||||
// ✅ ÉTAPE 2: Calculer les points par catégorie avec le bon barème
|
||||
pointsWeedHash := 0
|
||||
switch {
|
||||
case totalPrixWeedHash >= 30 && totalPrixWeedHash <= 50:
|
||||
pointsWeedHash = 1
|
||||
case totalPrixWeedHash >= 60 && totalPrixWeedHash <= 150:
|
||||
pointsWeedHash = 2
|
||||
case totalPrixWeedHash >= 160 && totalPrixWeedHash <= 300:
|
||||
pointsWeedHash = 3
|
||||
case totalPrixWeedHash >= 310 && totalPrixWeedHash <= 400:
|
||||
pointsWeedHash = 5
|
||||
case totalPrixWeedHash >= 400:
|
||||
pointsWeedHash = 10
|
||||
}
|
||||
|
||||
pointsZipette := 0
|
||||
switch {
|
||||
case totalPrixZipette >= 30 && totalPrixZipette <= 100:
|
||||
pointsZipette = 1
|
||||
case totalPrixZipette >= 110 && totalPrixZipette <= 200:
|
||||
pointsZipette = 2
|
||||
case totalPrixZipette >= 210:
|
||||
pointsZipette = 3
|
||||
}
|
||||
|
||||
totalPoints := pointsWeedHash + pointsZipette
|
||||
|
||||
log.Printf("💰 [CalcPointsTx] Points calculés - weed_hash: %d, zipette: %d, total: %d",
|
||||
|
||||
Reference in New Issue
Block a user