customer/internal/utils/tariff.go
Pasha 34a88a3a70
Some checks failed
Lint / Lint (push) Failing after 1m2s
rename go.mod
2024-11-18 21:44:09 +00:00

36 lines
653 B
Go

package utils
import "gitea.pena/PenaSide/customer/internal/models"
func CalculateCartPurchasesAmount(tariffs []models.Tariff) uint64 {
sum := uint64(0)
for _, tariff := range tariffs {
if tariff.Price == 0 {
privilegesSum := uint64(0)
for _, privilege := range tariff.Privileges {
privilegesSum += privilege.Price*privilege.Amount
}
sum += privilegesSum
continue
}
sum += tariff.Price
}
return sum
}
func TranslateTariffsArrayToMapPair(tariffs []models.Tariff) map[string]string {
pair := make(map[string]string, len(tariffs))
for _, tariff := range tariffs {
pair[tariff.Name] = tariff.ID
}
return pair
}