Added a method to get current members
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
use bitflags::bitflags;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[derive(Debug, Clone, Serialize)]
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub struct Name {
|
||||
pub first: String,
|
||||
pub full: String,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize)]
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub struct Member {
|
||||
pub id: String,
|
||||
pub name: Name,
|
||||
|
@@ -1,4 +1,5 @@
|
||||
use serde::Serialize;
|
||||
use sqlx::PgPool;
|
||||
|
||||
#[derive(Serialize)]
|
||||
pub struct User {
|
||||
@@ -8,6 +9,10 @@ pub struct User {
|
||||
}
|
||||
|
||||
use crate::database::model::User as DbUser;
|
||||
use crate::database::model::UserMember as DbUserMember;
|
||||
use crate::util::convert_vec;
|
||||
|
||||
use super::Member;
|
||||
impl From<DbUser> for User {
|
||||
fn from(db_user: DbUser) -> Self {
|
||||
Self {
|
||||
@@ -17,3 +22,11 @@ impl From<DbUser> for User {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl User {
|
||||
pub async fn members(&self, pool: &PgPool) -> Result<Vec<Member>, sqlx::Error> {
|
||||
let related_members = DbUserMember::get_members_from_user(pool, &self.id).await?;
|
||||
|
||||
Ok(convert_vec(related_members))
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user