Files
appks/models/workspaces/workspace_invitations.rs
2026-06-07 11:30:56 +08:00

20 lines
582 B
Rust

use crate::models::common::Role;
use chrono::{DateTime, Utc};
use serde::{Deserialize, Serialize};
use uuid::Uuid;
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, sqlx::FromRow, utoipa::ToSchema)]
pub struct WorkspaceInvitation {
pub id: Uuid,
pub workspace_id: Uuid,
pub email: String,
pub role: Role,
pub token_hash: String,
pub invited_by: Uuid,
pub accepted_by: Option<Uuid>,
pub accepted_at: Option<DateTime<Utc>>,
pub revoked_at: Option<DateTime<Utc>>,
pub expires_at: DateTime<Utc>,
pub created_at: DateTime<Utc>,
}