feat: change list modele function functioné

This commit is contained in:
Martin Eyben 2024-12-03 11:57:05 +00:00
parent 30707747dc
commit 5a0b1f1a0f
3 changed files with 58 additions and 62 deletions

View File

@ -14,16 +14,12 @@ $$
LANGUAGE SQL; LANGUAGE SQL;
; ;
-- Liste des modèles faisables à partir d'un membre -- Liste des modèles faisables à partir d'un membre
CREATE OR REPLACE FUNCTION modeles_faisables_membre(int) RETURNS TABLE( CREATE OR REPLACE FUNCTION modeles_faisables_membre(int) RETURNS TABLE(
id_modele int , id_modele int
nom_modele VARCHAR(255) ,
url_notice_modele VARCHAR(2048) ,
id_membre int , id_modele_etendu int
) AS ) AS
$$ $$
SELECT * SELECT id_modele
FROM modeles FROM modeles
WHERE id_modele not IN WHERE id_modele not IN
( (

View File

@ -14,7 +14,7 @@ type DBModel = {
async function getPiecesFromModel(id_model: number): Promise<Array<Pair<Piece, number>>> { async function getPiecesFromModel(id_model: number): Promise<Array<Pair<Piece, number>>> {
const client = new_client(); const client = new_client();
const res = await client.query(`SELECT * FROM necessiter WHERE id_modele = $1;`, [ id_model ]); const res = await client.query(`SELECT * FROM necessiter WHERE id_modele = $1;`, [id_model]);
const arr: Array<Pair<Piece, number>> = new Array(); const arr: Array<Pair<Piece, number>> = new Array();
for (let i = 0; i < res.rows.length; ++i) { for (let i = 0; i < res.rows.length; ++i) {
const piece: Either<Piece, string> = await getPiece(res.rows[i]['id_piece']); const piece: Either<Piece, string> = await getPiece(res.rows[i]['id_piece']);
@ -76,7 +76,7 @@ const getAllBuildableModels = async (id_member: number) => {
const client = new_client(); const client = new_client();
const res = await client.query( const res = await client.query(
"SELECT modeles_faisables_membre($1)", "SELECT * FROM modeles WHERE id_modele in (SELECT id_modele FROM modeles_faisables_membre($1))",
[id_member] [id_member]
); );