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 }