=====Table ag_adherents===== * rowid : int, index de la table * nom : nom , varchar * prenom : prénom, varchar * phone : téléphone, int() * mail : courriel, varchar * cp : code postal int(5) * town : ville ou commune, varchar =====Table ag_collectifs ===== * rowid : int; index de la table * libelle : varchar; nom affiché * commentaires : text; grand texte formatté donnant les principes généraux du collectif * fk_adh_gest : int; index de l'adhérent.e gestionnaire * date_crea : date ; * statut : enum ; 'actif' ou 'fermé' ===== Table ag_commande : commandes groupées===== * rowid : int; index de la table * libelle : varchar; nom affiché * fk_collectif : int; index du collectif propriétaire qui gère la commande * fk_adh_ref : int ; index de l'adh gestionnaire * fk_fournisseur : int ; index du fournisseur * fk_catalogue : int ; index du catalogue associé à la commande * etat : int : valeurs à définir pour 'en cours', ... 'cloturée" **(TODO int ou enum ?)** * date_debut : datetime ; date d'ouverture aux adhérents * date_fin : datetime ; date prévisionnelle de fin des transactions =====Table ag_categories : catégories des produits ===== * rowid : int ; index * fk_fournisseur :int ; pointeur vers le rowid de la table ag_fournisseurs * libelle :varchar(256) ; chaque fournisseur a sa propre classification de catégories =====Table ag_produits : les produits de tous les fournisseurs ===== * rowid : Index int(11) AUTO_INCREMENT * libelle : varchar(255) * fk_fourn : int(11) ; pointeur vers ag_fournisseur * fk_categorie : int(11) ; pointeur vers ag_categories (catégorie propre au fournisseur) =====Table ag_prod_pkg : packages (conditionnements) des produits ===== un produit peut avoir plusieurs packages * rowid Primaire int(11) AUTO_INCREMENT * fk_prod : int(11) ; produit concerné * fk_catalogue int(11) ; pointeur vers le catalogue (modification AW, anciennement fk_cmde) * ref : varchar(64) ; référence du fournisseur (M56450par exemple) * package : varchar(255) ; libellé du fournisseur (sac de 2,5 kg, ou carton de 6 boites) * qte : decimal(10,3 ; 2,5 en l’occurrence, quantité à se partager * unite : varchar(32) ; kg ou L ou boite etc =====Table ag_prix_uht : prix d'un package ===== pour un package il y a un prix par statut (catalogue, devis, facture) * rowid Primaire : int(11) AUTO_INCREMENT * fk_prod_package : Index int(11) : pointeur vers la package concerné * date_mod :date * statut :enum('catalogue', 'devis', 'facture', '') * valeur :decimal(10,3) La valeur est HT à l'unité (voir table ag_prod_pkg). Les valeurs négatives sont codées (exemple -10 = "RS" pour Senfas. Il y aura autant de codes que de fournisseurs selon la faon d’écrire ca dans les tableurs catalogues de prix. Un helper a été développé : function decode_prix($valeur) dans catalogue_helper.php