use crate::models::server_item_order; use crate::repositories::{AnyResult, RepositoryContext}; use sea_orm::{ColumnTrait, EntityTrait, QueryFilter, QueryOrder}; use std::sync::Arc; use uuid::Uuid; #[derive(Clone, Debug)] pub struct ServerItemOrderRepository { pub context: Arc, } impl ServerItemOrderRepository { /// Récupère la liste ordonnée pour un serveur (racine ou spécifique à une catégorie) pub async fn get_by_server(&self, server_id: Uuid) -> AnyResult> { Ok(server_item_order::Entity::find() .filter(server_item_order::Column::ServerId.eq(server_id)) .order_by_asc(server_item_order::Column::ParentCategoryId) .order_by_asc(server_item_order::Column::OrderKey) .all(&self.context.db) .await?) } }