feat: implement express route handlers for movements, articles, and suppliers data retrieval

This commit is contained in:
Michael committed 2026-04-24 10:49:53 +02:00
1 parent 204fd97d7d
commit 6f2b98864e
3 files changed
+12 -11

No files matched your search

+6 -6
View File
@@ -269,13 +269,13 @@ router.get('/:id/dernier-fournisseur', async (req, res) => {
const result = await pool.query(` const result = await pool.query(`
SELECT DISTINCT ON (m.Site) SELECT DISTINCT ON (m.Site)
m.Site, m.Site,
m.DatMvt AS date_derniere_entree, m.DatMvt AS date_derniere_entree,
m.CODEFOU AS codefou, m.CODEFOU AS codefou,
fa.RAISONSOCIALE AS nom_fournisseur, fi.nom AS nom_fournisseur,
m.QteMvt AS qte_entree, m.QteMvt AS qte_entree,
m.Prmp AS prmp m.Prmp AS prmp
FROM MvtArt m FROM MvtArt m
LEFT JOIN FOUADR1 fa ON fa.CODE = m.CODEFOU AND fa.SIT_CODE = '000' LEFT JOIN fouident fi ON fi.code = m.CODEFOU
WHERE m.ArtNoId = $1 WHERE m.ArtNoId = $1
AND m.GenreMvt = 1 AND m.GenreMvt = 1
AND m.CODEFOU IS NOT NULL AND m.CODEFOU IS NOT NULL
+2 -1
View File
@@ -11,7 +11,7 @@ router.get('/', async (req, res) => {
const result = await pool.query(` const result = await pool.query(`
SELECT SELECT
f.CODE AS CODEFOU, f.CODE AS CODEFOU,
MAX(fa.RAISONSOCIALE) AS NOM, MAX(fi.nom) AS NOM,
MAX(fa.ADRLIGNE1) AS ADRESSE, MAX(fa.ADRLIGNE1) AS ADRESSE,
MAX(fa.TELEPHONE) AS TELEPHONE, MAX(fa.TELEPHONE) AS TELEPHONE,
MAX(fa.EMAIL) AS EMAIL, MAX(fa.EMAIL) AS EMAIL,
@@ -21,6 +21,7 @@ router.get('/', async (req, res) => {
SUM(CASE WHEN f.SUSPENDU IS NULL THEN 1 ELSE 0 END) AS NB_ACTIFS, SUM(CASE WHEN f.SUSPENDU IS NULL THEN 1 ELSE 0 END) AS NB_ACTIFS,
SUM(CASE WHEN f.SUSPENDU IS NOT NULL THEN 1 ELSE 0 END) AS NB_SUSPENDUS SUM(CASE WHEN f.SUSPENDU IS NOT NULL THEN 1 ELSE 0 END) AS NB_SUSPENDUS
FROM ARTFOU1 f FROM ARTFOU1 f
LEFT JOIN fouident fi ON fi.code = f.CODE
LEFT JOIN FOUADR1 fa ON fa.CODE = f.CODE AND fa.SIT_CODE = '000' LEFT JOIN FOUADR1 fa ON fa.CODE = f.CODE AND fa.SIT_CODE = '000'
WHERE f.CODE LIKE $1 WHERE f.CODE LIKE $1
GROUP BY f.CODE GROUP BY f.CODE
+4 -4
View File
@@ -62,15 +62,15 @@ router.get('/articles', async (req, res) => {
ORDER BY e.DatMvt DESC LIMIT 1 ORDER BY e.DatMvt DESC LIMIT 1
) ELSE m.CODEFOU END AS codefou_reel, ) ELSE m.CODEFOU END AS codefou_reel,
CASE WHEN m.GenreMvt = 3 THEN ( CASE WHEN m.GenreMvt = 3 THEN (
SELECT fa.RAISONSOCIALE FROM MvtArt e SELECT fi.nom FROM MvtArt e
LEFT JOIN FOUADR1 fa ON fa.CODE = e.CODEFOU AND fa.SIT_CODE = '000' LEFT JOIN fouident fi ON fi.code = e.CODEFOU
WHERE e.ArtNoId = m.ArtNoId AND e.Site = m.Site WHERE e.ArtNoId = m.ArtNoId AND e.Site = m.Site
AND e.GenreMvt = 1 AND e.CODEFOU IS NOT NULL AND e.CODEFOU != '' AND e.GenreMvt = 1 AND e.CODEFOU IS NOT NULL AND e.CODEFOU != ''
AND e.DatMvt <= m.DatMvt AND e.DatMvt <= m.DatMvt
ORDER BY e.DatMvt DESC LIMIT 1 ORDER BY e.DatMvt DESC LIMIT 1
) ELSE ( ) ELSE (
SELECT fa2.RAISONSOCIALE FROM FOUADR1 fa2 SELECT fi2.nom FROM fouident fi2
WHERE fa2.CODE = m.CODEFOU AND fa2.SIT_CODE = '000' WHERE fi2.code = m.CODEFOU
) END AS nom_fournisseur_reel ) END AS nom_fournisseur_reel
FROM MvtArt m FROM MvtArt m
JOIN ARTICLES a ON a.NO_ID = m.ArtNoId JOIN ARTICLES a ON a.NO_ID = m.ArtNoId