mirror of
https://github.com/Ladebeze66/odoo_toolkit.git
synced 2025-12-16 01:47:50 +01:00
J5-7
This commit is contained in:
parent
a9924020ef
commit
c0aa4cfa42
Binary file not shown.
Binary file not shown.
@ -1,3 +0,0 @@
|
|||||||
[
|
|
||||||
10908
|
|
||||||
]
|
|
||||||
@ -11,7 +11,7 @@ def display_main_menu():
|
|||||||
print("2. Rechercher un ticket par ID")
|
print("2. Rechercher un ticket par ID")
|
||||||
print("3. Rechercher un ticket par Code")
|
print("3. Rechercher un ticket par Code")
|
||||||
print("4. Quitter")
|
print("4. Quitter")
|
||||||
return input("\nChoisissez une option (1-5): ")
|
return input("\nChoisissez une option (1-4): ")
|
||||||
|
|
||||||
|
|
||||||
def run_menu():
|
def run_menu():
|
||||||
|
|||||||
@ -70,16 +70,20 @@ class TicketManager:
|
|||||||
|
|
||||||
def get_ticket_by_id(self, ticket_id):
|
def get_ticket_by_id(self, ticket_id):
|
||||||
"""Récupère les détails d'un ticket par son ID et exclut dynamiquement les champs invalides"""
|
"""Récupère les détails d'un ticket par son ID et exclut dynamiquement les champs invalides"""
|
||||||
fields_to_read = self.get_model_fields(self.model_name) # Récupère tous les champs disponibles
|
fields_to_read = self.get_model_fields(self.model_name) # Récupère tous les champs
|
||||||
excluded_fields = set() # Liste des champs à exclure
|
excluded_fields = set() # Liste des champs à exclure
|
||||||
|
|
||||||
while True:
|
while True:
|
||||||
try:
|
try:
|
||||||
# Mise à jour de fields_to_read en supprimant les champs exclus
|
# Mise à jour de fields_to_read en supprimant les champs invalides
|
||||||
fields_to_read = [field for field in fields_to_read if field not in excluded_fields]
|
valid_fields = [field for field in fields_to_read if field not in excluded_fields]
|
||||||
|
|
||||||
|
if not valid_fields:
|
||||||
|
print_error("Aucun champ valide disponible pour la requête.")
|
||||||
|
return None
|
||||||
|
|
||||||
# Récupérer les données du ticket avec les champs filtrés
|
# Récupérer les données du ticket avec les champs filtrés
|
||||||
ticket_data = self._safe_execute(self.model_name, 'read', [ticket_id], fields_to_read)
|
ticket_data = self._safe_execute(self.model_name, 'read', [ticket_id], valid_fields)
|
||||||
|
|
||||||
if not ticket_data:
|
if not ticket_data:
|
||||||
print_error(f"Aucun ticket trouvé avec l'ID {ticket_id}")
|
print_error(f"Aucun ticket trouvé avec l'ID {ticket_id}")
|
||||||
@ -98,12 +102,13 @@ class TicketManager:
|
|||||||
if invalid_field:
|
if invalid_field:
|
||||||
print(f"Exclusion du champ invalide : {invalid_field}")
|
print(f"Exclusion du champ invalide : {invalid_field}")
|
||||||
excluded_fields.add(invalid_field)
|
excluded_fields.add(invalid_field)
|
||||||
continue
|
|
||||||
|
# Relancer la boucle immédiatement avec le champ exclu
|
||||||
|
continue
|
||||||
else:
|
else:
|
||||||
print_error("Impossible d'identifier le champ problématique.")
|
print_error("Impossible d'identifier le champ problématique.")
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
||||||
def get_ticket_by_code(self, ticket_code):
|
def get_ticket_by_code(self, ticket_code):
|
||||||
"""Récupérer un ticket via son code"""
|
"""Récupérer un ticket via son code"""
|
||||||
domain = [('code', '=', ticket_code)]
|
domain = [('code', '=', ticket_code)]
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user