2023-06-22 09:36:43 +00:00
|
|
|
package utils
|
|
|
|
|
2024-11-18 07:23:41 +00:00
|
|
|
import "gitea.pena/PenaSide/customer/internal/models"
|
2023-06-22 09:36:43 +00:00
|
|
|
|
2023-09-14 10:07:28 +00:00
|
|
|
func CalculateCartPurchasesAmount(tariffs []models.Tariff) uint64 {
|
|
|
|
sum := uint64(0)
|
2023-06-22 09:36:43 +00:00
|
|
|
|
|
|
|
for _, tariff := range tariffs {
|
2023-09-14 10:07:28 +00:00
|
|
|
if tariff.Price == 0 {
|
|
|
|
privilegesSum := uint64(0)
|
|
|
|
|
|
|
|
for _, privilege := range tariff.Privileges {
|
2023-12-29 18:46:57 +00:00
|
|
|
privilegesSum += privilege.Price*privilege.Amount
|
2023-09-14 10:07:28 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
sum += privilegesSum
|
|
|
|
|
|
|
|
continue
|
|
|
|
}
|
|
|
|
|
2023-06-22 09:36:43 +00:00
|
|
|
sum += tariff.Price
|
|
|
|
}
|
|
|
|
|
|
|
|
return sum
|
|
|
|
}
|
2023-09-14 10:07:28 +00:00
|
|
|
|
|
|
|
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
|
|
|
|
}
|