Contrat minimal ff::pg pour le module qlik

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LG2LLJuswrrTTPKJmunEVf
This commit is contained in:
Claude committed 2026-10-12 18:57:16 +00:00
1 parent 3f69b1904e
commit 559e6ed714
2 files changed
+25 -1

No files matched your search

+3 -1
View File
@@ -1,4 +1,6 @@
//! Module `ff` — à porter.
//! Module `ff` — données FF Nancy (base miroir PostgreSQL et API REST) — à porter.
pub mod pg;
use crate::rpc::Handler;
use axum::Router;
+22
View File
@@ -0,0 +1,22 @@
//! Client PostgreSQL FF Nancy (port de `src/lib/pg-ff-client.ts`) — À PORTER.
//!
//! Contrat minimal fixé d'avance (utilisé par le module `qlik`) : la structure
//! [`PgArticle`] et [`pg_get_articles_by_fournisseur`]. Le reste du fichier est
//! à porter ; garder ces deux signatures (champs ajoutables).
use serde::Serialize;
#[derive(Debug, Clone, Default, Serialize)]
pub struct PgArticle {
pub no_id: i64,
pub codein: String,
/// Code centrale = articles.artcentrale (format 10000XXXXXX) — clé jointure Qlik « Article Code ».
#[serde(rename = "codeCentrale", skip_serializing_if = "Option::is_none")]
pub code_centrale: Option<String>,
pub codefou: String,
}
/// Tous les articles d'un fournisseur (une requête). Erreur SQL propagée.
pub async fn pg_get_articles_by_fournisseur(_codefou: &str) -> anyhow::Result<Vec<PgArticle>> {
anyhow::bail!("pg_get_articles_by_fournisseur : pas encore porté")
}