fix: gofmt formatting and update API contract test for new fields
- Fix gofmt alignment in setting_handler.go, settings.go, payment_config_service.go - Add payment_balance_recharge_multiplier and payment_recharge_fee_rate to API contract test expected JSON
This commit is contained in:
1
Antigravity-Manager
Submodule
1
Antigravity-Manager
Submodule
Submodule Antigravity-Manager added at a9d96bd549
@@ -189,7 +189,7 @@ func (h *SettingHandler) GetSettings(c *gin.Context) {
|
|||||||
PaymentEnabledTypes: paymentCfg.EnabledTypes,
|
PaymentEnabledTypes: paymentCfg.EnabledTypes,
|
||||||
PaymentBalanceDisabled: paymentCfg.BalanceDisabled,
|
PaymentBalanceDisabled: paymentCfg.BalanceDisabled,
|
||||||
PaymentBalanceRechargeMultiplier: paymentCfg.BalanceRechargeMultiplier,
|
PaymentBalanceRechargeMultiplier: paymentCfg.BalanceRechargeMultiplier,
|
||||||
PaymentRechargeFeeRate: paymentCfg.RechargeFeeRate,
|
PaymentRechargeFeeRate: paymentCfg.RechargeFeeRate,
|
||||||
PaymentLoadBalanceStrat: paymentCfg.LoadBalanceStrategy,
|
PaymentLoadBalanceStrat: paymentCfg.LoadBalanceStrategy,
|
||||||
PaymentProductNamePrefix: paymentCfg.ProductNamePrefix,
|
PaymentProductNamePrefix: paymentCfg.ProductNamePrefix,
|
||||||
PaymentProductNameSuffix: paymentCfg.ProductNameSuffix,
|
PaymentProductNameSuffix: paymentCfg.ProductNameSuffix,
|
||||||
@@ -319,21 +319,21 @@ type UpdateSettingsRequest struct {
|
|||||||
AccountQuotaNotifyEmails *[]dto.NotifyEmailEntry `json:"account_quota_notify_emails"`
|
AccountQuotaNotifyEmails *[]dto.NotifyEmailEntry `json:"account_quota_notify_emails"`
|
||||||
|
|
||||||
// Payment configuration (integrated into settings, full replace)
|
// Payment configuration (integrated into settings, full replace)
|
||||||
PaymentEnabled *bool `json:"payment_enabled"`
|
PaymentEnabled *bool `json:"payment_enabled"`
|
||||||
PaymentMinAmount *float64 `json:"payment_min_amount"`
|
PaymentMinAmount *float64 `json:"payment_min_amount"`
|
||||||
PaymentMaxAmount *float64 `json:"payment_max_amount"`
|
PaymentMaxAmount *float64 `json:"payment_max_amount"`
|
||||||
PaymentDailyLimit *float64 `json:"payment_daily_limit"`
|
PaymentDailyLimit *float64 `json:"payment_daily_limit"`
|
||||||
PaymentOrderTimeoutMin *int `json:"payment_order_timeout_minutes"`
|
PaymentOrderTimeoutMin *int `json:"payment_order_timeout_minutes"`
|
||||||
PaymentMaxPendingOrders *int `json:"payment_max_pending_orders"`
|
PaymentMaxPendingOrders *int `json:"payment_max_pending_orders"`
|
||||||
PaymentEnabledTypes []string `json:"payment_enabled_types"`
|
PaymentEnabledTypes []string `json:"payment_enabled_types"`
|
||||||
PaymentBalanceDisabled *bool `json:"payment_balance_disabled"`
|
PaymentBalanceDisabled *bool `json:"payment_balance_disabled"`
|
||||||
PaymentBalanceRechargeMultiplier *float64 `json:"payment_balance_recharge_multiplier"`
|
PaymentBalanceRechargeMultiplier *float64 `json:"payment_balance_recharge_multiplier"`
|
||||||
PaymentRechargeFeeRate *float64 `json:"payment_recharge_fee_rate"`
|
PaymentRechargeFeeRate *float64 `json:"payment_recharge_fee_rate"`
|
||||||
PaymentLoadBalanceStrat *string `json:"payment_load_balance_strategy"`
|
PaymentLoadBalanceStrat *string `json:"payment_load_balance_strategy"`
|
||||||
PaymentProductNamePrefix *string `json:"payment_product_name_prefix"`
|
PaymentProductNamePrefix *string `json:"payment_product_name_prefix"`
|
||||||
PaymentProductNameSuffix *string `json:"payment_product_name_suffix"`
|
PaymentProductNameSuffix *string `json:"payment_product_name_suffix"`
|
||||||
PaymentHelpImageURL *string `json:"payment_help_image_url"`
|
PaymentHelpImageURL *string `json:"payment_help_image_url"`
|
||||||
PaymentHelpText *string `json:"payment_help_text"`
|
PaymentHelpText *string `json:"payment_help_text"`
|
||||||
|
|
||||||
// Cancel rate limit
|
// Cancel rate limit
|
||||||
PaymentCancelRateLimitEnabled *bool `json:"payment_cancel_rate_limit_enabled"`
|
PaymentCancelRateLimitEnabled *bool `json:"payment_cancel_rate_limit_enabled"`
|
||||||
@@ -947,7 +947,7 @@ func (h *SettingHandler) UpdateSettings(c *gin.Context) {
|
|||||||
EnabledTypes: req.PaymentEnabledTypes,
|
EnabledTypes: req.PaymentEnabledTypes,
|
||||||
BalanceDisabled: req.PaymentBalanceDisabled,
|
BalanceDisabled: req.PaymentBalanceDisabled,
|
||||||
BalanceRechargeMultiplier: req.PaymentBalanceRechargeMultiplier,
|
BalanceRechargeMultiplier: req.PaymentBalanceRechargeMultiplier,
|
||||||
RechargeFeeRate: req.PaymentRechargeFeeRate,
|
RechargeFeeRate: req.PaymentRechargeFeeRate,
|
||||||
LoadBalanceStrategy: req.PaymentLoadBalanceStrat,
|
LoadBalanceStrategy: req.PaymentLoadBalanceStrat,
|
||||||
ProductNamePrefix: req.PaymentProductNamePrefix,
|
ProductNamePrefix: req.PaymentProductNamePrefix,
|
||||||
ProductNameSuffix: req.PaymentProductNameSuffix,
|
ProductNameSuffix: req.PaymentProductNameSuffix,
|
||||||
@@ -1089,7 +1089,7 @@ func (h *SettingHandler) UpdateSettings(c *gin.Context) {
|
|||||||
PaymentEnabledTypes: updatedPaymentCfg.EnabledTypes,
|
PaymentEnabledTypes: updatedPaymentCfg.EnabledTypes,
|
||||||
PaymentBalanceDisabled: updatedPaymentCfg.BalanceDisabled,
|
PaymentBalanceDisabled: updatedPaymentCfg.BalanceDisabled,
|
||||||
PaymentBalanceRechargeMultiplier: updatedPaymentCfg.BalanceRechargeMultiplier,
|
PaymentBalanceRechargeMultiplier: updatedPaymentCfg.BalanceRechargeMultiplier,
|
||||||
PaymentRechargeFeeRate: updatedPaymentCfg.RechargeFeeRate,
|
PaymentRechargeFeeRate: updatedPaymentCfg.RechargeFeeRate,
|
||||||
PaymentLoadBalanceStrat: updatedPaymentCfg.LoadBalanceStrategy,
|
PaymentLoadBalanceStrat: updatedPaymentCfg.LoadBalanceStrategy,
|
||||||
PaymentProductNamePrefix: updatedPaymentCfg.ProductNamePrefix,
|
PaymentProductNamePrefix: updatedPaymentCfg.ProductNamePrefix,
|
||||||
PaymentProductNameSuffix: updatedPaymentCfg.ProductNameSuffix,
|
PaymentProductNameSuffix: updatedPaymentCfg.ProductNameSuffix,
|
||||||
|
|||||||
@@ -128,21 +128,21 @@ type SystemSettings struct {
|
|||||||
WebSearchEmulationEnabled bool `json:"web_search_emulation_enabled"`
|
WebSearchEmulationEnabled bool `json:"web_search_emulation_enabled"`
|
||||||
|
|
||||||
// Payment configuration
|
// Payment configuration
|
||||||
PaymentEnabled bool `json:"payment_enabled"`
|
PaymentEnabled bool `json:"payment_enabled"`
|
||||||
PaymentMinAmount float64 `json:"payment_min_amount"`
|
PaymentMinAmount float64 `json:"payment_min_amount"`
|
||||||
PaymentMaxAmount float64 `json:"payment_max_amount"`
|
PaymentMaxAmount float64 `json:"payment_max_amount"`
|
||||||
PaymentDailyLimit float64 `json:"payment_daily_limit"`
|
PaymentDailyLimit float64 `json:"payment_daily_limit"`
|
||||||
PaymentOrderTimeoutMin int `json:"payment_order_timeout_minutes"`
|
PaymentOrderTimeoutMin int `json:"payment_order_timeout_minutes"`
|
||||||
PaymentMaxPendingOrders int `json:"payment_max_pending_orders"`
|
PaymentMaxPendingOrders int `json:"payment_max_pending_orders"`
|
||||||
PaymentEnabledTypes []string `json:"payment_enabled_types"`
|
PaymentEnabledTypes []string `json:"payment_enabled_types"`
|
||||||
PaymentBalanceDisabled bool `json:"payment_balance_disabled"`
|
PaymentBalanceDisabled bool `json:"payment_balance_disabled"`
|
||||||
PaymentBalanceRechargeMultiplier float64 `json:"payment_balance_recharge_multiplier"`
|
PaymentBalanceRechargeMultiplier float64 `json:"payment_balance_recharge_multiplier"`
|
||||||
PaymentRechargeFeeRate float64 `json:"payment_recharge_fee_rate"`
|
PaymentRechargeFeeRate float64 `json:"payment_recharge_fee_rate"`
|
||||||
PaymentLoadBalanceStrat string `json:"payment_load_balance_strategy"`
|
PaymentLoadBalanceStrat string `json:"payment_load_balance_strategy"`
|
||||||
PaymentProductNamePrefix string `json:"payment_product_name_prefix"`
|
PaymentProductNamePrefix string `json:"payment_product_name_prefix"`
|
||||||
PaymentProductNameSuffix string `json:"payment_product_name_suffix"`
|
PaymentProductNameSuffix string `json:"payment_product_name_suffix"`
|
||||||
PaymentHelpImageURL string `json:"payment_help_image_url"`
|
PaymentHelpImageURL string `json:"payment_help_image_url"`
|
||||||
PaymentHelpText string `json:"payment_help_text"`
|
PaymentHelpText string `json:"payment_help_text"`
|
||||||
|
|
||||||
// Cancel rate limit
|
// Cancel rate limit
|
||||||
PaymentCancelRateLimitEnabled bool `json:"payment_cancel_rate_limit_enabled"`
|
PaymentCancelRateLimitEnabled bool `json:"payment_cancel_rate_limit_enabled"`
|
||||||
|
|||||||
@@ -601,6 +601,8 @@ func TestAPIContracts(t *testing.T) {
|
|||||||
"payment_order_timeout_minutes": 0,
|
"payment_order_timeout_minutes": 0,
|
||||||
"payment_max_pending_orders": 0,
|
"payment_max_pending_orders": 0,
|
||||||
"payment_balance_disabled": false,
|
"payment_balance_disabled": false,
|
||||||
|
"payment_balance_recharge_multiplier": 0,
|
||||||
|
"payment_recharge_fee_rate": 0,
|
||||||
"payment_load_balance_strategy": "",
|
"payment_load_balance_strategy": "",
|
||||||
"payment_product_name_prefix": "",
|
"payment_product_name_prefix": "",
|
||||||
"payment_product_name_suffix": "",
|
"payment_product_name_suffix": "",
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ const (
|
|||||||
SettingLoadBalanceStrategy = "LOAD_BALANCE_STRATEGY"
|
SettingLoadBalanceStrategy = "LOAD_BALANCE_STRATEGY"
|
||||||
SettingBalancePayDisabled = "BALANCE_PAYMENT_DISABLED"
|
SettingBalancePayDisabled = "BALANCE_PAYMENT_DISABLED"
|
||||||
SettingBalanceRechargeMult = "BALANCE_RECHARGE_MULTIPLIER"
|
SettingBalanceRechargeMult = "BALANCE_RECHARGE_MULTIPLIER"
|
||||||
SettingRechargeFeeRate = "RECHARGE_FEE_RATE"
|
SettingRechargeFeeRate = "RECHARGE_FEE_RATE"
|
||||||
SettingProductNamePrefix = "PRODUCT_NAME_PREFIX"
|
SettingProductNamePrefix = "PRODUCT_NAME_PREFIX"
|
||||||
SettingProductNameSuffix = "PRODUCT_NAME_SUFFIX"
|
SettingProductNameSuffix = "PRODUCT_NAME_SUFFIX"
|
||||||
SettingHelpImageURL = "PAYMENT_HELP_IMAGE_URL"
|
SettingHelpImageURL = "PAYMENT_HELP_IMAGE_URL"
|
||||||
@@ -44,22 +44,22 @@ const (
|
|||||||
|
|
||||||
// PaymentConfig holds the payment system configuration.
|
// PaymentConfig holds the payment system configuration.
|
||||||
type PaymentConfig struct {
|
type PaymentConfig struct {
|
||||||
Enabled bool `json:"enabled"`
|
Enabled bool `json:"enabled"`
|
||||||
MinAmount float64 `json:"min_amount"`
|
MinAmount float64 `json:"min_amount"`
|
||||||
MaxAmount float64 `json:"max_amount"`
|
MaxAmount float64 `json:"max_amount"`
|
||||||
DailyLimit float64 `json:"daily_limit"`
|
DailyLimit float64 `json:"daily_limit"`
|
||||||
OrderTimeoutMin int `json:"order_timeout_minutes"`
|
OrderTimeoutMin int `json:"order_timeout_minutes"`
|
||||||
MaxPendingOrders int `json:"max_pending_orders"`
|
MaxPendingOrders int `json:"max_pending_orders"`
|
||||||
EnabledTypes []string `json:"enabled_payment_types"`
|
EnabledTypes []string `json:"enabled_payment_types"`
|
||||||
BalanceDisabled bool `json:"balance_disabled"`
|
BalanceDisabled bool `json:"balance_disabled"`
|
||||||
BalanceRechargeMultiplier float64 `json:"balance_recharge_multiplier"`
|
BalanceRechargeMultiplier float64 `json:"balance_recharge_multiplier"`
|
||||||
RechargeFeeRate float64 `json:"recharge_fee_rate"`
|
RechargeFeeRate float64 `json:"recharge_fee_rate"`
|
||||||
LoadBalanceStrategy string `json:"load_balance_strategy"`
|
LoadBalanceStrategy string `json:"load_balance_strategy"`
|
||||||
ProductNamePrefix string `json:"product_name_prefix"`
|
ProductNamePrefix string `json:"product_name_prefix"`
|
||||||
ProductNameSuffix string `json:"product_name_suffix"`
|
ProductNameSuffix string `json:"product_name_suffix"`
|
||||||
HelpImageURL string `json:"help_image_url"`
|
HelpImageURL string `json:"help_image_url"`
|
||||||
HelpText string `json:"help_text"`
|
HelpText string `json:"help_text"`
|
||||||
StripePublishableKey string `json:"stripe_publishable_key,omitempty"`
|
StripePublishableKey string `json:"stripe_publishable_key,omitempty"`
|
||||||
|
|
||||||
// Cancel rate limit settings
|
// Cancel rate limit settings
|
||||||
CancelRateLimitEnabled bool `json:"cancel_rate_limit_enabled"`
|
CancelRateLimitEnabled bool `json:"cancel_rate_limit_enabled"`
|
||||||
@@ -71,21 +71,21 @@ type PaymentConfig struct {
|
|||||||
|
|
||||||
// UpdatePaymentConfigRequest contains fields to update payment configuration.
|
// UpdatePaymentConfigRequest contains fields to update payment configuration.
|
||||||
type UpdatePaymentConfigRequest struct {
|
type UpdatePaymentConfigRequest struct {
|
||||||
Enabled *bool `json:"enabled"`
|
Enabled *bool `json:"enabled"`
|
||||||
MinAmount *float64 `json:"min_amount"`
|
MinAmount *float64 `json:"min_amount"`
|
||||||
MaxAmount *float64 `json:"max_amount"`
|
MaxAmount *float64 `json:"max_amount"`
|
||||||
DailyLimit *float64 `json:"daily_limit"`
|
DailyLimit *float64 `json:"daily_limit"`
|
||||||
OrderTimeoutMin *int `json:"order_timeout_minutes"`
|
OrderTimeoutMin *int `json:"order_timeout_minutes"`
|
||||||
MaxPendingOrders *int `json:"max_pending_orders"`
|
MaxPendingOrders *int `json:"max_pending_orders"`
|
||||||
EnabledTypes []string `json:"enabled_payment_types"`
|
EnabledTypes []string `json:"enabled_payment_types"`
|
||||||
BalanceDisabled *bool `json:"balance_disabled"`
|
BalanceDisabled *bool `json:"balance_disabled"`
|
||||||
BalanceRechargeMultiplier *float64 `json:"balance_recharge_multiplier"`
|
BalanceRechargeMultiplier *float64 `json:"balance_recharge_multiplier"`
|
||||||
RechargeFeeRate *float64 `json:"recharge_fee_rate"`
|
RechargeFeeRate *float64 `json:"recharge_fee_rate"`
|
||||||
LoadBalanceStrategy *string `json:"load_balance_strategy"`
|
LoadBalanceStrategy *string `json:"load_balance_strategy"`
|
||||||
ProductNamePrefix *string `json:"product_name_prefix"`
|
ProductNamePrefix *string `json:"product_name_prefix"`
|
||||||
ProductNameSuffix *string `json:"product_name_suffix"`
|
ProductNameSuffix *string `json:"product_name_suffix"`
|
||||||
HelpImageURL *string `json:"help_image_url"`
|
HelpImageURL *string `json:"help_image_url"`
|
||||||
HelpText *string `json:"help_text"`
|
HelpText *string `json:"help_text"`
|
||||||
|
|
||||||
// Cancel rate limit settings
|
// Cancel rate limit settings
|
||||||
CancelRateLimitEnabled *bool `json:"cancel_rate_limit_enabled"`
|
CancelRateLimitEnabled *bool `json:"cancel_rate_limit_enabled"`
|
||||||
@@ -209,20 +209,20 @@ func (s *PaymentConfigService) GetPaymentConfig(ctx context.Context) (*PaymentCo
|
|||||||
|
|
||||||
func (s *PaymentConfigService) parsePaymentConfig(vals map[string]string) *PaymentConfig {
|
func (s *PaymentConfigService) parsePaymentConfig(vals map[string]string) *PaymentConfig {
|
||||||
cfg := &PaymentConfig{
|
cfg := &PaymentConfig{
|
||||||
Enabled: vals[SettingPaymentEnabled] == "true",
|
Enabled: vals[SettingPaymentEnabled] == "true",
|
||||||
MinAmount: pcParseFloat(vals[SettingMinRechargeAmount], 1),
|
MinAmount: pcParseFloat(vals[SettingMinRechargeAmount], 1),
|
||||||
MaxAmount: pcParseFloat(vals[SettingMaxRechargeAmount], 0),
|
MaxAmount: pcParseFloat(vals[SettingMaxRechargeAmount], 0),
|
||||||
DailyLimit: pcParseFloat(vals[SettingDailyRechargeLimit], 0),
|
DailyLimit: pcParseFloat(vals[SettingDailyRechargeLimit], 0),
|
||||||
OrderTimeoutMin: pcParseInt(vals[SettingOrderTimeoutMinutes], defaultOrderTimeoutMin),
|
OrderTimeoutMin: pcParseInt(vals[SettingOrderTimeoutMinutes], defaultOrderTimeoutMin),
|
||||||
MaxPendingOrders: pcParseInt(vals[SettingMaxPendingOrders], defaultMaxPendingOrders),
|
MaxPendingOrders: pcParseInt(vals[SettingMaxPendingOrders], defaultMaxPendingOrders),
|
||||||
BalanceDisabled: vals[SettingBalancePayDisabled] == "true",
|
BalanceDisabled: vals[SettingBalancePayDisabled] == "true",
|
||||||
BalanceRechargeMultiplier: normalizeBalanceRechargeMultiplier(pcParseFloat(vals[SettingBalanceRechargeMult], defaultBalanceRechargeMultiplier)),
|
BalanceRechargeMultiplier: normalizeBalanceRechargeMultiplier(pcParseFloat(vals[SettingBalanceRechargeMult], defaultBalanceRechargeMultiplier)),
|
||||||
RechargeFeeRate: pcParseFloat(vals[SettingRechargeFeeRate], 0),
|
RechargeFeeRate: pcParseFloat(vals[SettingRechargeFeeRate], 0),
|
||||||
LoadBalanceStrategy: vals[SettingLoadBalanceStrategy],
|
LoadBalanceStrategy: vals[SettingLoadBalanceStrategy],
|
||||||
ProductNamePrefix: vals[SettingProductNamePrefix],
|
ProductNamePrefix: vals[SettingProductNamePrefix],
|
||||||
ProductNameSuffix: vals[SettingProductNameSuffix],
|
ProductNameSuffix: vals[SettingProductNameSuffix],
|
||||||
HelpImageURL: vals[SettingHelpImageURL],
|
HelpImageURL: vals[SettingHelpImageURL],
|
||||||
HelpText: vals[SettingHelpText],
|
HelpText: vals[SettingHelpText],
|
||||||
|
|
||||||
CancelRateLimitEnabled: vals[SettingCancelRateLimitOn] == "true",
|
CancelRateLimitEnabled: vals[SettingCancelRateLimitOn] == "true",
|
||||||
CancelRateLimitMax: pcParseInt(vals[SettingCancelRateLimitMax], 10),
|
CancelRateLimitMax: pcParseInt(vals[SettingCancelRateLimitMax], 10),
|
||||||
@@ -290,7 +290,7 @@ func (s *PaymentConfigService) UpdatePaymentConfig(ctx context.Context, req Upda
|
|||||||
SettingMaxPendingOrders: formatPositiveInt(req.MaxPendingOrders),
|
SettingMaxPendingOrders: formatPositiveInt(req.MaxPendingOrders),
|
||||||
SettingBalancePayDisabled: formatBoolOrEmpty(req.BalanceDisabled),
|
SettingBalancePayDisabled: formatBoolOrEmpty(req.BalanceDisabled),
|
||||||
SettingBalanceRechargeMult: formatPositiveFloat(req.BalanceRechargeMultiplier),
|
SettingBalanceRechargeMult: formatPositiveFloat(req.BalanceRechargeMultiplier),
|
||||||
SettingRechargeFeeRate: formatNonNegativeFloat(req.RechargeFeeRate),
|
SettingRechargeFeeRate: formatNonNegativeFloat(req.RechargeFeeRate),
|
||||||
SettingLoadBalanceStrategy: derefStr(req.LoadBalanceStrategy),
|
SettingLoadBalanceStrategy: derefStr(req.LoadBalanceStrategy),
|
||||||
SettingProductNamePrefix: derefStr(req.ProductNamePrefix),
|
SettingProductNamePrefix: derefStr(req.ProductNamePrefix),
|
||||||
SettingProductNameSuffix: derefStr(req.ProductNameSuffix),
|
SettingProductNameSuffix: derefStr(req.ProductNameSuffix),
|
||||||
|
|||||||
Reference in New Issue
Block a user