use crate::{KondutoClient, KondutoResult, OrderQueryResponse};

impl KondutoClient {
    /// Consulta um pedido existente
    ///
    /// # Argumentos
    ///
    /// * `order_id` - ID do pedido a ser consultado
    ///
    /// # Exemplo
    ///
    /// ```no_run
    /// use konduto::KondutoClient;
    ///
    /// #[tokio::main]
    /// async fn main() -> Result<(), Box<dyn std::error::Error>> {
    ///     use konduto::OrderId;
    /// let client = KondutoClient::new()?;
    ///     
    ///     let order = client.get_order("ORDER123").await?;
    ///     println!("Status: {:?}", order.status);
    ///     
    ///     Ok(())
    /// }
    /// ```
    pub async fn get_order(&self, order_id: &str) -> KondutoResult<OrderQueryResponse> {
        let endpoint = format!("/orders/{}", order_id);
        self.get(&endpoint).await
    }
}
