use uuid::Uuid; use crate::error::UserResult; use crate::features::UserService; use super::types::{RevokeSuspensionCmd, SuspendCmd, SuspensionView}; use super::usecase; impl UserService { pub async fn suspend_user( &self, caller: Uuid, target: Uuid, cmd: SuspendCmd, ) -> UserResult { usecase::create(self, caller, target, cmd).await } pub async fn revoke_suspension( &self, caller: Uuid, suspension_id: Uuid, cmd: RevokeSuspensionCmd, ) -> UserResult<()> { usecase::revoke(self, caller, suspension_id, cmd).await } pub async fn list_user_suspensions( &self, target: Uuid, include_revoked: bool, ) -> UserResult> { usecase::list_user(self, target, include_revoked).await } pub async fn list_all_suspensions( &self, include_revoked: bool, ) -> UserResult> { usecase::list_all(self, include_revoked).await } }