feat: remove a skill category empty

This commit is contained in:
Julien Froidefond
2025-08-26 07:10:26 +02:00
parent e12816a9c2
commit d7fef0be9b
8 changed files with 176 additions and 4 deletions

View File

@@ -221,6 +221,41 @@ export class AdminService {
}
}
/**
* Supprime une catégorie de skills vide
*/
static async deleteSkillCategory(categoryId: string): Promise<void> {
const pool = getPool();
const client = await pool.connect();
try {
await client.query("BEGIN");
// Vérifier que la catégorie n'a pas de skills
const skillsCheck = await client.query(
"SELECT COUNT(*) FROM skills WHERE category_id = $1",
[categoryId]
);
if (parseInt(skillsCheck.rows[0].count) > 0) {
throw new Error("Impossible de supprimer une catégorie qui contient des skills");
}
// Supprimer la catégorie
await client.query(
"DELETE FROM skill_categories WHERE id = $1",
[categoryId]
);
await client.query("COMMIT");
} catch (error) {
await client.query("ROLLBACK");
throw error;
} finally {
client.release();
}
}
/**
* Récupère les données nécessaires pour la page de gestion des utilisateurs
*/