omni_orchestrator/schemas/v1/models/
provider.rs1use serde::{Deserialize, Serialize};
2use chrono::{DateTime, NaiveDateTime, Utc};
3use super::region::Region;
4use serde_json::Value;
5use sqlx::Row;
6
7#[derive(Debug, sqlx::FromRow, Serialize)]
8pub struct Provider {
9 pub id: i64,
10 pub name: String,
11 pub display_name: String,
12 pub provider_type: String, pub status: String, pub created_at: DateTime<Utc>,
15 pub updated_at: DateTime<Utc>,
16}
17
18#[derive(Debug, sqlx::FromRow, Serialize)]
19pub struct ProviderAuditLog {
20 pub id: i64,
21 pub provider_id: i64,
22 pub action: String,
23 pub details: Option<String>,
24 pub created_at: DateTime<Utc>,
25 pub updated_at: DateTime<Utc>,
26}
27
28#[derive(sqlx::FromRow, Debug, Serialize)]
32pub struct ProviderRegion {
33 #[sqlx(flatten)]
34 region: Region,
35 provider_name: String,
36 binding_status: String,
37}