customer/internal/utils/payment.go
2024-05-02 18:40:09 +03:00

38 lines
1.2 KiB
Go

package utils
import (
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/errors"
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/models"
)
func ValidateGetPaymentLinkBody(request *models.GetPaymentLinkBody) errors.Error {
if request == nil {
return errors.NewWithMessage("request body is empty", errors.ErrInvalidArgs)
}
switch request.Type {
case models.PaymentTypeInstallments, models.PaymentTypeSBP, models.PaymentTypeTinkoff, models.PaymentTypeYoomoney:
return nil
case models.PaymentTypeQiwi, models.PaymentTypeSberPay, models.PaymentTypeMobile, models.PaymentTypeCash:
return validateMobilePayment(request)
case models.PaymentTypeAlfabank:
return validateLoginPayment(request)
case models.PaymentTypeBankCard:
return validateBankcardPayment(request)
default:
return errors.NewWithMessage("unknown payment type", errors.ErrInvalidArgs)
}
}
func validateMobilePayment(request *models.GetPaymentLinkBody) errors.Error {
return nil
}
func validateLoginPayment(request *models.GetPaymentLinkBody) errors.Error {
return nil
}
func validateBankcardPayment(request *models.GetPaymentLinkBody) errors.Error {
return nil
}