mirror of
https://github.com/andwati/telecom-platform.git
synced 2026-10-24 13:42:15 +00:00
feat: Add charging routes and handler integration to API server
- Add chargingH field to serverDeps struct - Add ChargingEngineClient initialization in buildDeps - Add NewChargingHandler with chargingEngineClient dependency - Add registerChargingRoutes function with /charging group - Add POST /charging/credit/:ip/check endpoint - Add GET /charging/credit/:ip/balance endpoint - Add POST /charging/credit/:ip/add endpoint - Add POST /charging/credit/:ip/deduct endpoint - Call registerChargingRoutes in
This commit is contained in:
@@ -26,6 +26,7 @@ type serverDeps struct {
|
||||
configH *handlers.ConfigHandler
|
||||
chaosH *handlers.ChaosHandler
|
||||
billingH *handlers.BillingHandler
|
||||
chargingH *handlers.ChargingHandler
|
||||
}
|
||||
|
||||
// buildDeps constructs all downstream services and handlers.
|
||||
@@ -46,6 +47,9 @@ func buildDeps(db *database.Database, cfg *config.Config) *serverDeps {
|
||||
deploymentSvc := services.NewDeploymentService(db)
|
||||
promSvc := monitoring.NewPrometheusService()
|
||||
|
||||
// Initialize charging engine client
|
||||
chargingEngineClient := services.NewChargingEngineClient(&cfg.ChargingEngine)
|
||||
|
||||
k8sSvc, k8sErr := services.NewKubernetesService()
|
||||
if k8sErr != nil {
|
||||
log.Printf("Kubernetes integration disabled: %v", k8sErr)
|
||||
@@ -63,6 +67,7 @@ func buildDeps(db *database.Database, cfg *config.Config) *serverDeps {
|
||||
configH: handlers.NewConfigHandler(configStoreSvc),
|
||||
chaosH: handlers.NewChaosHandler(chaosSvc),
|
||||
billingH: handlers.NewBillingHandler(invoiceSvc, db.DB),
|
||||
chargingH: handlers.NewChargingHandler(chargingEngineClient),
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user