Add 'accepted' field to TeamMember
This commit is contained in:
parent
4beace1bb0
commit
bd5d84abcd
@ -747,6 +747,50 @@
|
||||
"nullable": []
|
||||
}
|
||||
},
|
||||
"3831c1b321e47690f1f54597506a0d43362eda9540c56acb19c06532bba50b01": {
|
||||
"query": "\n SELECT id, user_id, role, permissions, accepted\n FROM team_members\n WHERE team_id = $1\n ",
|
||||
"describe": {
|
||||
"columns": [
|
||||
{
|
||||
"ordinal": 0,
|
||||
"name": "id",
|
||||
"type_info": "Int8"
|
||||
},
|
||||
{
|
||||
"ordinal": 1,
|
||||
"name": "user_id",
|
||||
"type_info": "Int8"
|
||||
},
|
||||
{
|
||||
"ordinal": 2,
|
||||
"name": "role",
|
||||
"type_info": "Varchar"
|
||||
},
|
||||
{
|
||||
"ordinal": 3,
|
||||
"name": "permissions",
|
||||
"type_info": "Int8"
|
||||
},
|
||||
{
|
||||
"ordinal": 4,
|
||||
"name": "accepted",
|
||||
"type_info": "Bool"
|
||||
}
|
||||
],
|
||||
"parameters": {
|
||||
"Left": [
|
||||
"Int8"
|
||||
]
|
||||
},
|
||||
"nullable": [
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false
|
||||
]
|
||||
}
|
||||
},
|
||||
"389088b3ccff3a3c970aba3deef8831cca140b74ffc74e43a1162a9021428820": {
|
||||
"query": "\n SELECT f.id id, f.version_id version_id, f.filename filename, v.version_number version_number, v.mod_id mod_id FROM hashes h\n INNER JOIN files f ON h.file_id = f.id\n INNER JOIN versions v ON v.id = f.version_id\n WHERE h.algorithm = $2 AND h.hash = $1\n ",
|
||||
"describe": {
|
||||
@ -2122,50 +2166,6 @@
|
||||
]
|
||||
}
|
||||
},
|
||||
"9f93c94dd5d4fe4fad9c3021099a84b8e0c8cd2f0c9458063453f2416010657c": {
|
||||
"query": "\n SELECT id, user_id, role, permissions, accepted\n FROM team_members\n WHERE (team_id = $1 AND accepted = TRUE)\n ",
|
||||
"describe": {
|
||||
"columns": [
|
||||
{
|
||||
"ordinal": 0,
|
||||
"name": "id",
|
||||
"type_info": "Int8"
|
||||
},
|
||||
{
|
||||
"ordinal": 1,
|
||||
"name": "user_id",
|
||||
"type_info": "Int8"
|
||||
},
|
||||
{
|
||||
"ordinal": 2,
|
||||
"name": "role",
|
||||
"type_info": "Varchar"
|
||||
},
|
||||
{
|
||||
"ordinal": 3,
|
||||
"name": "permissions",
|
||||
"type_info": "Int8"
|
||||
},
|
||||
{
|
||||
"ordinal": 4,
|
||||
"name": "accepted",
|
||||
"type_info": "Bool"
|
||||
}
|
||||
],
|
||||
"parameters": {
|
||||
"Left": [
|
||||
"Int8"
|
||||
]
|
||||
},
|
||||
"nullable": [
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false
|
||||
]
|
||||
}
|
||||
},
|
||||
"a28188c4840d0f3449379b3bba6b3c4af9483e01f50fd56785317398a59881ca": {
|
||||
"query": "\n SELECT files.id, files.url, files.filename, files.is_primary FROM files\n WHERE files.version_id = $1\n ",
|
||||
"describe": {
|
||||
|
||||
@ -93,7 +93,7 @@ impl TeamMember {
|
||||
"
|
||||
SELECT id, user_id, role, permissions, accepted
|
||||
FROM team_members
|
||||
WHERE (team_id = $1 AND accepted = TRUE)
|
||||
WHERE team_id = $1
|
||||
",
|
||||
id as TeamId,
|
||||
)
|
||||
|
||||
@ -51,4 +51,6 @@ pub struct TeamMember {
|
||||
pub role: String,
|
||||
/// A bitset containing the user's permissions in this team
|
||||
pub permissions: Option<Permissions>,
|
||||
/// Whether the user has joined the team or is just invited to it
|
||||
pub accepted: bool,
|
||||
}
|
||||
|
||||
@ -30,6 +30,7 @@ pub async fn team_members_get(
|
||||
user_id: data.user_id.into(),
|
||||
role: data.role,
|
||||
permissions: Some(data.permissions),
|
||||
accepted: data.accepted,
|
||||
})
|
||||
.collect();
|
||||
|
||||
@ -37,14 +38,20 @@ pub async fn team_members_get(
|
||||
}
|
||||
}
|
||||
|
||||
let team_members: Vec<crate::models::teams::TeamMember> = members_data
|
||||
.into_iter()
|
||||
.map(|data| crate::models::teams::TeamMember {
|
||||
user_id: data.user_id.into(),
|
||||
role: data.role,
|
||||
permissions: None,
|
||||
})
|
||||
.collect();
|
||||
let mut team_members: Vec<crate::models::teams::TeamMember> = Vec::new();
|
||||
|
||||
for team_member in members_data {
|
||||
if team_member.accepted {
|
||||
team_members.push(
|
||||
crate::models::teams::TeamMember {
|
||||
user_id: team_member.user_id.into(),
|
||||
role: team_member.role,
|
||||
permissions: None,
|
||||
accepted: team_member.accepted
|
||||
}
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
Ok(HttpResponse::Ok().json(team_members))
|
||||
}
|
||||
|
||||
@ -182,6 +182,7 @@ pub async fn teams(
|
||||
} else {
|
||||
None
|
||||
},
|
||||
accepted: data.accepted
|
||||
})
|
||||
.collect();
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user