use uuid::Uuid; use crate::error::IssueResult; use crate::features::IssueService; use super::{ CreateMilestoneOption, ListMilestoneQuery, MilestonePage, MilestoneView, UpdateMilestoneOption, }; use super::usecase; impl IssueService { pub async fn create_milestone( &self, actor: Uuid, channel_id: Uuid, input: CreateMilestoneOption, ) -> IssueResult { usecase::create_milestone(self, actor, channel_id, input).await } pub async fn get_milestone( &self, actor: Uuid, channel_id: Uuid, milestone_id: Uuid, ) -> IssueResult { usecase::get_milestone(self, actor, channel_id, milestone_id).await } pub async fn list_milestones( &self, actor: Uuid, channel_id: Uuid, q: ListMilestoneQuery, ) -> IssueResult { usecase::list_milestones(self, actor, channel_id, q).await } pub async fn update_milestone( &self, actor: Uuid, channel_id: Uuid, milestone_id: Uuid, input: UpdateMilestoneOption, ) -> IssueResult { usecase::update_milestone(self, actor, channel_id, milestone_id, input).await } pub async fn delete_milestone( &self, actor: Uuid, channel_id: Uuid, milestone_id: Uuid, ) -> IssueResult<()> { usecase::delete_milestone(self, actor, channel_id, milestone_id).await } }