feat: Refactor charging engine modules with dead_code annotations and error handling improvements

- Add AsyncCommands import and dead_code attributes to get_balance/add_credit/start/stop/uptime/rating plan methods
- Remove validate_imsi/validate_session_id calls from get_subscriber_account/record_usage_event
- Update logging in get_subscriber_account and simplify record_usage_event log message
- Remove usage event expiration logic from record_usage_event
- Reorder engine methods and add dead_code attributes
This commit is contained in:
nutcas3
2026-04-25 02:10:24 +03:00
parent 99943c769e
commit 8b86e55226
10 changed files with 91 additions and 150 deletions
+6 -10
View File
@@ -1,49 +1,45 @@
use serde::{Deserialize, Serialize};
#[derive(Clone)]
#[allow(dead_code)]
pub struct AppState {
pub charging_engine: std::sync::Arc<crate::charging::ChargingEngine>,
}
#[allow(dead_code)]
#[derive(Deserialize)]
pub struct CreditCheckRequest {
pub bytes_requested: u64,
}
#[allow(dead_code)]
#[derive(Serialize)]
pub struct CreditCheckResponse {
pub allowed: bool,
pub remaining_bytes: i64,
}
#[allow(dead_code)]
#[derive(Deserialize)]
pub struct DeductRequest {
pub bytes_used: u64,
}
#[allow(dead_code)]
#[derive(Deserialize)]
pub struct AddCreditRequest {
pub bytes_to_add: u64,
}
#[allow(dead_code)]
#[derive(Serialize)]
pub struct BalanceResponse {
pub ip: String,
pub balance_bytes: i64,
}
#[allow(dead_code)]
#[derive(Serialize)]
pub struct HealthResponse {
pub status: String,
pub timestamp: chrono::DateTime<chrono::Utc>,
}
impl Default for HealthResponse {
fn default() -> Self {
Self {
status: "OK".to_string(),
timestamp: chrono::Utc::now(),
}
}
}