Skip to content
Clone
d5939db
56 lines 1.5 KB Rust
use uuid::Uuid;
use super::types::{AddMemberCmd, MemberPage, MemberView, UpdateMemberCmd};
use super::usecase;
impl crate::service::ProjectService {
pub async fn add_member(
&self,
actor: Uuid,
space_id: Uuid,
project_id: Uuid,
cmd: AddMemberCmd,
) -> crate::error::ProjectResult<MemberView> {
usecase::add_member(self, actor, space_id, project_id, cmd).await
}
pub async fn list_members(
&self,
actor: Uuid,
space_id: Uuid,
project_id: Uuid,
) -> crate::error::ProjectResult<MemberPage> {
usecase::list_members(self, actor, space_id, project_id).await
}
pub async fn get_member(
&self,
actor: Uuid,
space_id: Uuid,
project_id: Uuid,
user_id: Uuid,
) -> crate::error::ProjectResult<MemberView> {
usecase::get_member(self, actor, space_id, project_id, user_id).await
}
pub async fn update_member(
&self,
actor: Uuid,
space_id: Uuid,
project_id: Uuid,
user_id: Uuid,
cmd: UpdateMemberCmd,
) -> crate::error::ProjectResult<MemberView> {
usecase::update_member(self, actor, space_id, project_id, user_id, cmd).await
}
pub async fn remove_member(
&self,
actor: Uuid,
space_id: Uuid,
project_id: Uuid,
user_id: Uuid,
) -> crate::error::ProjectResult<()> {
usecase::remove_member(self, actor, space_id, project_id, user_id).await
}
}