refactor: Replace interface{} with any and optimize slice operations

- Replace map[string]interface{} with map[string]any in UpdateCarrierMetrics
- Replace interface{} with any for GeneratedAt field in PricingEffectiveness struct
- Replace loop-based empty string checks with slices.Contains in ValidateConditions
- Replace range loop index initialization with range-only syntax in calculateAPIPerformance
- Add slices import for standard library slice utilities
This commit is contained in:
nutcas3
2026-05-02 17:57:20 +03:00
parent 5fddd48994
commit ef4e8a05cd
4 changed files with 8 additions and 11 deletions
@@ -109,7 +109,7 @@ func (r *GormCarrierRepository) SaveCarrier(ctx context.Context, carrier *smdp.C
// UpdateCarrierMetrics updates carrier metrics
func (r *GormCarrierRepository) UpdateCarrierMetrics(ctx context.Context, id string, metrics *smdp.CarrierMetrics) error {
// Persist metrics alongside the carrier record
updates := map[string]interface{}{
updates := map[string]any{
"updated_at": time.Now(),
}
@@ -227,7 +227,7 @@ type PricingEffectiveness struct {
TotalSavings float64 `json:"total_savings"`
RulesByType map[string]int `json:"rules_by_type"`
ConversionImprovement float64 `json:"conversion_improvement"`
GeneratedAt interface{} `json:"generated_at"`
GeneratedAt any `json:"generated_at"`
}
type RatePlanPricingAnalytics struct {
@@ -4,6 +4,7 @@ import (
"context"
"errors"
"fmt"
"slices"
"github.com/nutcas3/telecom-platform/apps/carrier-connector/internal/pricing"
)
@@ -121,17 +122,13 @@ func (v *PricingValidator) ValidateConditions(ctx context.Context, conditions pr
}
// Validate geography
for _, geo := range conditions.Geography {
if geo == "" {
return errors.New("geography cannot be empty")
}
if slices.Contains(conditions.Geography, "") {
return errors.New("geography cannot be empty")
}
// Validate customer type
for _, ct := range conditions.CustomerType {
if ct == "" {
return errors.New("customer type cannot be empty")
}
if slices.Contains(conditions.CustomerType, "") {
return errors.New("customer type cannot be empty")
}
// Validate volume range
@@ -95,7 +95,7 @@ func (s *TenantServiceImpl) calculateAPIPerformance(requests []*tenant.APIReques
copy(sortedResponseTimes, responseTimes)
// Sort response times
for i := 0; i < len(sortedResponseTimes); i++ {
for i := range sortedResponseTimes {
for j := 0; j < len(sortedResponseTimes)-1-i; j++ {
if sortedResponseTimes[j] > sortedResponseTimes[j+1] {
sortedResponseTimes[j], sortedResponseTimes[j+1] = sortedResponseTimes[j+1], sortedResponseTimes[j]