Skip to main content

alibi_sqlx/store/entities/
team.rs

1use crate::SqlxModel;
2use alibi_core::types::Team;
3use chrono::{DateTime, Utc};
4
5#[derive(Clone, Debug, PartialEq, Eq, sqlx::FromRow, SqlxModel)]
6#[auth(table = "team")]
7pub struct Model {
8    pub id: String,
9    pub name: String,
10    #[sqlx(rename = "organizationId")]
11    pub organization_id: String,
12    #[sqlx(rename = "memberCount")]
13    pub member_count: i64,
14    #[sqlx(rename = "createdAt")]
15    pub created_at: DateTime<Utc>,
16    #[sqlx(rename = "updatedAt")]
17    pub updated_at: Option<DateTime<Utc>>,
18}
19
20impl From<Model> for Team {
21    fn from(model: Model) -> Self {
22        Self {
23            id: model.id,
24            name: model.name,
25            organization_id: model.organization_id,
26            member_count: model.member_count,
27            created_at: model.created_at,
28            updated_at: model.updated_at,
29        }
30    }
31}