import re import html from bs4 import BeautifulSoup def clean_html(content): """Nettoie le contenu HTML en supprimant les balises.""" if not content: return "" soup = BeautifulSoup(content, 'html.parser') return soup.get_text(separator='\n', strip=True) def filter_ticket_data(ticket_data): """Filtre les données d'un ticket pour ne garder que les informations essentielles.""" # Vérifier que ticket_data est bien une liste et extraire le premier élément if isinstance(ticket_data, list) and len(ticket_data) > 0: ticket_data = ticket_data[0] else: return {"Erreur": "Format de ticket invalide"} filtered_ticket = { "ID du Ticket": ticket_data.get("id", "ID non disponible"), "Nom": ticket_data.get("name", "Nom inconnu"), "Code": ticket_data.get("code", "N/A"), "Date Limite": ticket_data.get("date_deadline", "Non définie"), "Projet": { "ID": ticket_data.get("project_id", [None, "Projet inconnu"])[0], "Nom": ticket_data.get("project_id", [None, "Projet inconnu"])[1] }, "Étape": { "ID": ticket_data.get("stage_id", [None, "Étape inconnue"])[0], "Nom": ticket_data.get("stage_id", [None, "Étape inconnue"])[1] }, "Description": clean_html(ticket_data.get("description", "")), "Discussions": ticket_data.get("message_ids", []) } return filtered_ticket