tariffs/internal/tools/validate.go
2025-01-02 01:20:08 +03:00

33 lines
744 B
Go

package tools
import (
"errors"
"gitea.pena/PenaSide/tariffs/internal/models"
)
func ValidatePrivilege(req models.CreateUpdateReq) bool {
if req.Name == "" || req.PrivilegeId == "" || req.ServiceKey == "" || req.Type == "" || req.Value == "" || req.Description == "" {
return false
}
return true
}
func ValidateTariff(tariff models.Tariff) error {
if tariff.Name == "" {
return errors.New("name is required")
}
if tariff.Price < 0 {
return errors.New("invalid price value")
}
if len(tariff.Privileges) == 0 {
return errors.New("privileges are required")
}
for _, privilege := range tariff.Privileges {
if privilege.PrivilegeID == "" {
return errors.New("privilegeID is required in privileges")
}
}
return nil
}