mirror of
https://github.com/Ladebeze66/odoo_toolkit.git
synced 2025-12-13 10:46:52 +01:00
J6-6
This commit is contained in:
parent
9bd43e24b1
commit
ff33ca68a0
Binary file not shown.
Binary file not shown.
156
exported_tickets/ticket_5276_raw.json
Normal file
156
exported_tickets/ticket_5276_raw.json
Normal file
@ -0,0 +1,156 @@
|
||||
{
|
||||
"id": 5276,
|
||||
"active": true,
|
||||
"name": "Mention provisoire toujours présente après validation de la FTP",
|
||||
"description": "<p>Sur https://poullard.brg-lab.com/ </p><p>Carriere : POULLARD/GRANUDEM</p><p>Matériaux : 12/20 Gravillon, 4/16 Gravillon<br></p><p>La FTP \"Fiche technique\" est validée mais à l'impression, la mention \"Provisoire\" s'affiche toujours</p><p>Dévalider / revalider la FTP ne résout pas le problème.</p><p>Si on crée une nouvelle FTP sur ce matériau, le problème est également présent.</p><p><br></p><p>Rq : le problème inverse se produit sur demo.brg-lab.com : que la FTP soit validé ou non, la mention provisoire n'apparait jamais.<br></p>",
|
||||
"sequence": 0,
|
||||
"stage_id": [
|
||||
8,
|
||||
"Clôturé"
|
||||
],
|
||||
"kanban_state": "normal",
|
||||
"create_date": "2022-07-07 08:27:13",
|
||||
"write_date": "2024-10-03 13:10:50",
|
||||
"date_start": "2022-07-07 08:27:16",
|
||||
"date_end": false,
|
||||
"date_assign": "2022-07-20 07:37:05",
|
||||
"date_deadline": false,
|
||||
"date_last_stage_update": "2022-07-21 07:48:43",
|
||||
"project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"notes": false,
|
||||
"planned_hours": 0.0,
|
||||
"user_id": [
|
||||
8,
|
||||
"Quentin FAIVRE"
|
||||
],
|
||||
"partner_id": [
|
||||
9338,
|
||||
"SAS POULLARD / GRANUDEM DEVELOPPEMENT, Aline POULLARD"
|
||||
],
|
||||
"company_id": [
|
||||
1,
|
||||
"CBAO S.A.R.L."
|
||||
],
|
||||
"color": 0,
|
||||
"displayed_image_id": false,
|
||||
"parent_id": false,
|
||||
"child_ids": [],
|
||||
"email_from": "Aline <poullard@poullard.fr>",
|
||||
"email_cc": "",
|
||||
"working_hours_open": 63.0,
|
||||
"working_hours_close": 0.0,
|
||||
"working_days_open": 2.625,
|
||||
"working_days_close": 0.0,
|
||||
"website_message_ids": [
|
||||
120328,
|
||||
120282,
|
||||
120178
|
||||
],
|
||||
"remaining_hours": 0.0,
|
||||
"effective_hours": 0.0,
|
||||
"total_hours_spent": 0.0,
|
||||
"progress": 0.0,
|
||||
"subtask_effective_hours": 0.0,
|
||||
"timesheet_ids": [],
|
||||
"priority": "3",
|
||||
"code": "T5294",
|
||||
"milestone_id": false,
|
||||
"sale_line_id": false,
|
||||
"sale_order_id": false,
|
||||
"billable_type": "no",
|
||||
"activity_ids": [],
|
||||
"message_follower_ids": [
|
||||
43991,
|
||||
44032,
|
||||
44045,
|
||||
44046
|
||||
],
|
||||
"message_ids": [
|
||||
121063,
|
||||
120857,
|
||||
120856,
|
||||
120328,
|
||||
120283,
|
||||
120282,
|
||||
120256,
|
||||
120183,
|
||||
120178,
|
||||
120177
|
||||
],
|
||||
"message_main_attachment_id": false,
|
||||
"failed_message_ids": [],
|
||||
"rating_ids": [],
|
||||
"rating_last_value": 0.0,
|
||||
"access_token": "c0f46dde-7cf3-4888-9d22-d1178e0fc040",
|
||||
"create_uid": [
|
||||
1,
|
||||
"OdooBot"
|
||||
],
|
||||
"write_uid": [
|
||||
1,
|
||||
"OdooBot"
|
||||
],
|
||||
"x_CBAO_windows_maj_ID": false,
|
||||
"x_CBAO_version_signalement": false,
|
||||
"x_CBAO_version_correction": false,
|
||||
"x_CBAO_DateCorrection": false,
|
||||
"x_CBAO_Scoring_Facilite": 0,
|
||||
"x_CBAO_Scoring_Importance": 4,
|
||||
"x_CBAO_Scoring_Urgence": 3,
|
||||
"x_CBAO_Scoring_Incidence": 2,
|
||||
"x_CBAO_Scoring_Resultat": 9,
|
||||
"x_CBAO_InformationsSup": false,
|
||||
"kanban_state_label": "En cours",
|
||||
"subtask_planned_hours": 0.0,
|
||||
"manager_id": [
|
||||
8,
|
||||
"Quentin FAIVRE"
|
||||
],
|
||||
"user_email": "quentin@cbao.fr",
|
||||
"attachment_ids": [],
|
||||
"legend_blocked": "Bloqué",
|
||||
"legend_done": "Prêt pour la prochaine étape",
|
||||
"legend_normal": "En cours",
|
||||
"subtask_project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"subtask_count": 0,
|
||||
"analytic_account_active": true,
|
||||
"allow_timesheets": true,
|
||||
"use_milestones": false,
|
||||
"show_time_control": "start",
|
||||
"is_project_map_empty": true,
|
||||
"activity_state": false,
|
||||
"activity_user_id": false,
|
||||
"activity_type_id": false,
|
||||
"activity_date_deadline": false,
|
||||
"activity_summary": false,
|
||||
"message_is_follower": false,
|
||||
"message_unread": false,
|
||||
"message_unread_counter": 0,
|
||||
"message_needaction": false,
|
||||
"message_needaction_counter": 0,
|
||||
"message_has_error": false,
|
||||
"message_has_error_counter": 0,
|
||||
"message_attachment_count": 0,
|
||||
"rating_last_feedback": false,
|
||||
"rating_last_image": false,
|
||||
"rating_count": 0,
|
||||
"access_url": "/my/task/5276",
|
||||
"access_warning": "",
|
||||
"display_name": "[T5294] Mention provisoire toujours présente après validation de la FTP",
|
||||
"__last_update": "2024-10-03 13:10:50",
|
||||
"stage_id_value": "Clôturé",
|
||||
"project_id_value": "Tickets",
|
||||
"user_id_value": "Quentin FAIVRE",
|
||||
"partner_id_value": "SAS POULLARD / GRANUDEM DEVELOPPEMENT, Aline POULLARD",
|
||||
"manager_id_value": "Quentin FAIVRE",
|
||||
"company_id_value": "CBAO S.A.R.L.",
|
||||
"subtask_project_id_value": "Tickets",
|
||||
"create_uid_value": "OdooBot",
|
||||
"write_uid_value": "OdooBot"
|
||||
}
|
||||
155
exported_tickets/ticket_6420_raw.json
Normal file
155
exported_tickets/ticket_6420_raw.json
Normal file
File diff suppressed because one or more lines are too long
171
exported_tickets/ticket_7600_raw.json
Normal file
171
exported_tickets/ticket_7600_raw.json
Normal file
File diff suppressed because one or more lines are too long
147
exported_tickets/ticket_7908_raw.json
Normal file
147
exported_tickets/ticket_7908_raw.json
Normal file
File diff suppressed because one or more lines are too long
149
exported_tickets/ticket_8749_raw.json
Normal file
149
exported_tickets/ticket_8749_raw.json
Normal file
@ -0,0 +1,149 @@
|
||||
{
|
||||
"id": 8749,
|
||||
"active": true,
|
||||
"name": "Problème dosage de formule sur les centrales à grave",
|
||||
"description": "<h1><span style=\"font-weight: normal;\"><font style=\"font-size: 14px;\">Sur la définition de formule sur les centrales à grave, il y a des problème pour le dosage : </font></span></h1><h1><span style=\"font-weight: normal;\"><font style=\"font-size: 14px;\"> </font></span><span style=\"font-weight: normal;\"><font style=\"font-size: 14px;\">- Il y a une inversion entre le dosage en ppc et le dosage en %</font> <font style=\"font-size: 14px;\">(Le ppc ne tient compte que des granulats et le % du total des composants)</font><b><br></b></span></h1><h1><span style=\"font-weight: normal;\"><font style=\"font-size: 14px;\">- On ne peut pas mettre de dosage à 100%</font></span><br></h1><h1><span style=\"font-weight: normal;\"><font style=\"font-size: 14px;\">Voir PJ</font></span><br></h1><h1><br></h1><h1><br></h1><h1>Point particulier :</h1><ul><li><b>Le cas est bloquant</b></li></ul><h1>Description du problème :</h1><p>dans la création de grave (centrale à grave), il est impossible de mettre 100 % sur un matériau. J'ai uniquement 1 granulat et le liant.\nPar ailleurs il y a inversion entre ppc et %. Le ppc ne tient compte que des granulats et le % du total des composants.</p>",
|
||||
"sequence": 0,
|
||||
"stage_id": [
|
||||
5,
|
||||
"En attente de résolution"
|
||||
],
|
||||
"kanban_state": "normal",
|
||||
"create_date": "2024-02-29 07:53:46",
|
||||
"write_date": "2024-10-03 13:10:50",
|
||||
"date_start": "2024-02-29 07:53:46",
|
||||
"date_end": false,
|
||||
"date_assign": "2024-03-04 08:35:27",
|
||||
"date_deadline": false,
|
||||
"date_last_stage_update": "2024-02-29 08:05:15",
|
||||
"project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"notes": false,
|
||||
"planned_hours": 0.0,
|
||||
"user_id": false,
|
||||
"partner_id": [
|
||||
8696,
|
||||
"EUROCONTROLE (GROUPE GOREZ), Audray DOMANGE"
|
||||
],
|
||||
"company_id": [
|
||||
1,
|
||||
"CBAO S.A.R.L."
|
||||
],
|
||||
"color": 0,
|
||||
"displayed_image_id": false,
|
||||
"parent_id": false,
|
||||
"child_ids": [],
|
||||
"email_from": "a.domange@ecqualite.fr",
|
||||
"email_cc": "",
|
||||
"working_hours_open": 14.0,
|
||||
"working_hours_close": 0.0,
|
||||
"working_days_open": 0.5833333333333334,
|
||||
"working_days_close": 0.0,
|
||||
"website_message_ids": [
|
||||
174313,
|
||||
174308
|
||||
],
|
||||
"remaining_hours": 0.0,
|
||||
"effective_hours": 0.0,
|
||||
"total_hours_spent": 0.0,
|
||||
"progress": 0.0,
|
||||
"subtask_effective_hours": 0.0,
|
||||
"timesheet_ids": [],
|
||||
"priority": "3",
|
||||
"code": "T8770",
|
||||
"milestone_id": false,
|
||||
"sale_line_id": false,
|
||||
"sale_order_id": false,
|
||||
"billable_type": "no",
|
||||
"activity_ids": [],
|
||||
"message_follower_ids": [
|
||||
69885,
|
||||
70033,
|
||||
70351,
|
||||
70352
|
||||
],
|
||||
"message_ids": [
|
||||
174313,
|
||||
174309,
|
||||
174308,
|
||||
173745,
|
||||
173492,
|
||||
173484
|
||||
],
|
||||
"message_main_attachment_id": false,
|
||||
"failed_message_ids": [],
|
||||
"rating_ids": [],
|
||||
"rating_last_value": 0.0,
|
||||
"access_token": "b4f9eab2-4bfd-4f80-82fe-848743e9d87d",
|
||||
"create_uid": [
|
||||
28,
|
||||
"Support Robot"
|
||||
],
|
||||
"write_uid": [
|
||||
1,
|
||||
"OdooBot"
|
||||
],
|
||||
"x_CBAO_windows_maj_ID": "",
|
||||
"x_CBAO_version_signalement": "20240208",
|
||||
"x_CBAO_version_correction": "",
|
||||
"x_CBAO_DateCorrection": false,
|
||||
"x_CBAO_Scoring_Facilite": 0,
|
||||
"x_CBAO_Scoring_Importance": 3,
|
||||
"x_CBAO_Scoring_Urgence": 3,
|
||||
"x_CBAO_Scoring_Incidence": 3,
|
||||
"x_CBAO_Scoring_Resultat": 9,
|
||||
"x_CBAO_InformationsSup": false,
|
||||
"kanban_state_label": "En cours",
|
||||
"subtask_planned_hours": 0.0,
|
||||
"manager_id": [
|
||||
8,
|
||||
"Quentin FAIVRE"
|
||||
],
|
||||
"user_email": false,
|
||||
"attachment_ids": [
|
||||
122020
|
||||
],
|
||||
"legend_blocked": "Bloquéé",
|
||||
"legend_done": "Planifiée",
|
||||
"legend_normal": "En cours",
|
||||
"subtask_project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"subtask_count": 0,
|
||||
"analytic_account_active": true,
|
||||
"allow_timesheets": true,
|
||||
"use_milestones": false,
|
||||
"show_time_control": "start",
|
||||
"is_project_map_empty": true,
|
||||
"activity_state": false,
|
||||
"activity_user_id": false,
|
||||
"activity_type_id": false,
|
||||
"activity_date_deadline": false,
|
||||
"activity_summary": false,
|
||||
"message_is_follower": false,
|
||||
"message_unread": false,
|
||||
"message_unread_counter": 0,
|
||||
"message_needaction": false,
|
||||
"message_needaction_counter": 0,
|
||||
"message_has_error": false,
|
||||
"message_has_error_counter": 0,
|
||||
"message_attachment_count": 1,
|
||||
"rating_last_feedback": false,
|
||||
"rating_last_image": false,
|
||||
"rating_count": 0,
|
||||
"access_url": "/my/task/8749",
|
||||
"access_warning": "",
|
||||
"display_name": "[T8770] Problème dosage de formule sur les centrales à grave",
|
||||
"__last_update": "2024-10-03 13:10:50",
|
||||
"stage_id_value": "En attente de résolution",
|
||||
"project_id_value": "Tickets",
|
||||
"partner_id_value": "EUROCONTROLE (GROUPE GOREZ), Audray DOMANGE",
|
||||
"manager_id_value": "Quentin FAIVRE",
|
||||
"company_id_value": "CBAO S.A.R.L.",
|
||||
"subtask_project_id_value": "Tickets",
|
||||
"create_uid_value": "Support Robot",
|
||||
"write_uid_value": "OdooBot"
|
||||
}
|
||||
167
exported_tickets/ticket_8926_raw.json
Normal file
167
exported_tickets/ticket_8926_raw.json
Normal file
@ -0,0 +1,167 @@
|
||||
{
|
||||
"id": 8926,
|
||||
"active": true,
|
||||
"name": "Ajout de l'essai VBS NF EN 17542-3",
|
||||
"description": "<h1><span style=\"font-weight: normal;\"><font style=\"font-size: 14px;\">La norme NF P 94-068 du VBS est annulée, elle est remplacée par la norme NF EN 17542-3</font></span></h1><h1><span style=\"font-weight: normal;\"><font style=\"font-size: 14px;\">Il faudrait ajouter cet essai.</font></span></h1><h1><span style=\"font-weight: normal;\"><font style=\"font-size: 14px;\">Voir les extraits de la norme en PJ</font><br></span></h1><h1><br></h1><h1>Point particulier :</h1><ul><li>Échantillons :sols ou granulat</li><li>Essais :Valeur au bleu d'un sol</li><li>Une norme :NF EN 17542-3</li><li><b>Le cas est bloquant</b></li></ul><h1>Description du problème :</h1><p>Bonjour,\nLa norme NF P 94-068 du VBS est annulée, elle est remplacée par la norme NF EN 17542-3.\nMerci d'intégrer cette norme au logiciel.\ncordialement.\n</p>",
|
||||
"sequence": 0,
|
||||
"stage_id": [
|
||||
8,
|
||||
"Clôturé"
|
||||
],
|
||||
"kanban_state": "normal",
|
||||
"create_date": "2024-03-19 13:03:27",
|
||||
"write_date": "2024-10-23 13:32:16",
|
||||
"date_start": "2024-03-19 13:03:27",
|
||||
"date_end": false,
|
||||
"date_assign": "2024-09-25 09:25:09",
|
||||
"date_deadline": false,
|
||||
"date_last_stage_update": "2024-10-23 13:32:16",
|
||||
"project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"notes": false,
|
||||
"planned_hours": 0.0,
|
||||
"user_id": [
|
||||
22,
|
||||
"Fabien LAFAY"
|
||||
],
|
||||
"partner_id": [
|
||||
4427,
|
||||
"EGIS SA, Olivier DENK"
|
||||
],
|
||||
"company_id": [
|
||||
1,
|
||||
"CBAO S.A.R.L."
|
||||
],
|
||||
"color": 0,
|
||||
"displayed_image_id": false,
|
||||
"parent_id": false,
|
||||
"child_ids": [],
|
||||
"email_from": "Olivier.DENK@egis-group.com",
|
||||
"email_cc": "",
|
||||
"working_hours_open": 949.4191666666667,
|
||||
"working_hours_close": 0.0,
|
||||
"working_days_open": 39.559131944444445,
|
||||
"working_days_close": 0.0,
|
||||
"website_message_ids": [
|
||||
176471,
|
||||
176409,
|
||||
176387
|
||||
],
|
||||
"remaining_hours": 0.0,
|
||||
"effective_hours": 0.0,
|
||||
"total_hours_spent": 0.0,
|
||||
"progress": 0.0,
|
||||
"subtask_effective_hours": 0.0,
|
||||
"timesheet_ids": [],
|
||||
"priority": "3",
|
||||
"code": "T8947",
|
||||
"milestone_id": false,
|
||||
"sale_line_id": false,
|
||||
"sale_order_id": false,
|
||||
"billable_type": "no",
|
||||
"activity_ids": [],
|
||||
"message_follower_ids": [
|
||||
70965,
|
||||
71354,
|
||||
71355,
|
||||
71404
|
||||
],
|
||||
"message_ids": [
|
||||
207407,
|
||||
202060,
|
||||
202056,
|
||||
187839,
|
||||
182031,
|
||||
176472,
|
||||
176471,
|
||||
176450,
|
||||
176409,
|
||||
176390,
|
||||
176389,
|
||||
176388,
|
||||
176387,
|
||||
176154,
|
||||
175551,
|
||||
175549,
|
||||
175548
|
||||
],
|
||||
"message_main_attachment_id": [
|
||||
123804,
|
||||
"image001.png"
|
||||
],
|
||||
"failed_message_ids": [],
|
||||
"rating_ids": [],
|
||||
"rating_last_value": 0.0,
|
||||
"access_token": "4f8dadf9-0e32-413b-92b5-973a3ece31d7",
|
||||
"create_uid": [
|
||||
28,
|
||||
"Support Robot"
|
||||
],
|
||||
"write_uid": [
|
||||
22,
|
||||
"Fabien LAFAY"
|
||||
],
|
||||
"x_CBAO_windows_maj_ID": "",
|
||||
"x_CBAO_version_signalement": "20240308",
|
||||
"x_CBAO_version_correction": "",
|
||||
"x_CBAO_DateCorrection": "2024-10-23",
|
||||
"x_CBAO_Scoring_Facilite": 0,
|
||||
"x_CBAO_Scoring_Importance": 4,
|
||||
"x_CBAO_Scoring_Urgence": 2,
|
||||
"x_CBAO_Scoring_Incidence": 3,
|
||||
"x_CBAO_Scoring_Resultat": 9,
|
||||
"x_CBAO_InformationsSup": false,
|
||||
"kanban_state_label": "En cours",
|
||||
"subtask_planned_hours": 0.0,
|
||||
"manager_id": [
|
||||
8,
|
||||
"Quentin FAIVRE"
|
||||
],
|
||||
"user_email": "fabien@mail.cbao.fr",
|
||||
"attachment_ids": [],
|
||||
"legend_blocked": "Bloqué",
|
||||
"legend_done": "Prêt pour la prochaine étape",
|
||||
"legend_normal": "En cours",
|
||||
"subtask_project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"subtask_count": 0,
|
||||
"analytic_account_active": true,
|
||||
"allow_timesheets": true,
|
||||
"use_milestones": false,
|
||||
"show_time_control": "start",
|
||||
"is_project_map_empty": true,
|
||||
"activity_state": false,
|
||||
"activity_user_id": false,
|
||||
"activity_type_id": false,
|
||||
"activity_date_deadline": false,
|
||||
"activity_summary": false,
|
||||
"message_is_follower": false,
|
||||
"message_unread": false,
|
||||
"message_unread_counter": 0,
|
||||
"message_needaction": false,
|
||||
"message_needaction_counter": 0,
|
||||
"message_has_error": false,
|
||||
"message_has_error_counter": 0,
|
||||
"message_attachment_count": 4,
|
||||
"rating_last_feedback": false,
|
||||
"rating_last_image": false,
|
||||
"rating_count": 0,
|
||||
"access_url": "/my/task/8926",
|
||||
"access_warning": "",
|
||||
"display_name": "[T8947] Ajout de l'essai VBS NF EN 17542-3",
|
||||
"__last_update": "2024-10-23 13:32:16",
|
||||
"stage_id_value": "Clôturé",
|
||||
"project_id_value": "Tickets",
|
||||
"user_id_value": "Fabien LAFAY",
|
||||
"partner_id_value": "EGIS SA, Olivier DENK",
|
||||
"manager_id_value": "Quentin FAIVRE",
|
||||
"company_id_value": "CBAO S.A.R.L.",
|
||||
"subtask_project_id_value": "Tickets",
|
||||
"message_main_attachment_id_value": "image001.png",
|
||||
"create_uid_value": "Support Robot",
|
||||
"write_uid_value": "Fabien LAFAY"
|
||||
}
|
||||
173
exported_tickets/ticket_9105_raw.json
Normal file
173
exported_tickets/ticket_9105_raw.json
Normal file
@ -0,0 +1,173 @@
|
||||
{
|
||||
"id": 9105,
|
||||
"active": true,
|
||||
"name": "Mise à jour NCE",
|
||||
"description": "<h1><span style=\"font-weight: normal;\"><font style=\"font-size: 14px;\">Même ticket que T9858 - Mise à jour NCE<br></font><font style=\"font-size: 14px;\">Mise à jour du NCE pour prendre en compte le tableau A.2 de la norme sur la vérification des écarts moyens</font></span><br></h1><h1>Point particulier :</h1><ul><li><b>Le cas est bloquant</b></li></ul><h1>Description du problème :</h1><p>Bonjour, \nnous ne comprenons pas le résultat du NCE en cours (voir impression écran). \nLe NCE actuel affiche \"?\", et on nous donne une note en A, or, la valeur de la moyenne sur le tamis de 0,063 est compris entre -1 et -2, donc on devrait avoir une note de B. \nJe suis disponible par mail ce jour pour échange. \nBien cordialement,</p>",
|
||||
"sequence": 0,
|
||||
"stage_id": [
|
||||
5,
|
||||
"En attente de résolution"
|
||||
],
|
||||
"kanban_state": "normal",
|
||||
"create_date": "2024-04-17 07:12:30",
|
||||
"write_date": "2024-10-03 13:10:50",
|
||||
"date_start": "2024-06-04 14:17:48",
|
||||
"date_end": false,
|
||||
"date_assign": "2024-06-04 14:17:49",
|
||||
"date_deadline": false,
|
||||
"date_last_stage_update": "2024-09-09 07:58:33",
|
||||
"project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"notes": false,
|
||||
"planned_hours": 0.0,
|
||||
"user_id": false,
|
||||
"partner_id": [
|
||||
31313,
|
||||
"LABORATOIRE DES ESTUAIRES, LABORATOIRE DES ESTUAIRES"
|
||||
],
|
||||
"company_id": [
|
||||
1,
|
||||
"CBAO S.A.R.L."
|
||||
],
|
||||
"color": 0,
|
||||
"displayed_image_id": false,
|
||||
"parent_id": false,
|
||||
"child_ids": [],
|
||||
"email_from": "alexandra.varlet@henryfreres.fr",
|
||||
"email_cc": false,
|
||||
"working_hours_open": 241.29694444444445,
|
||||
"working_hours_close": 0.0,
|
||||
"working_days_open": 10.054039351851852,
|
||||
"working_days_close": 0.0,
|
||||
"website_message_ids": [
|
||||
187231,
|
||||
181807,
|
||||
181621,
|
||||
179595,
|
||||
179580,
|
||||
179561
|
||||
],
|
||||
"remaining_hours": 0.0,
|
||||
"effective_hours": 0.0,
|
||||
"total_hours_spent": 0.0,
|
||||
"progress": 0.0,
|
||||
"subtask_effective_hours": 0.0,
|
||||
"timesheet_ids": [],
|
||||
"priority": "3",
|
||||
"code": "T9126",
|
||||
"milestone_id": false,
|
||||
"sale_line_id": false,
|
||||
"sale_order_id": false,
|
||||
"billable_type": "no",
|
||||
"activity_ids": [],
|
||||
"message_follower_ids": [
|
||||
72311,
|
||||
72312,
|
||||
72345,
|
||||
72346,
|
||||
80261
|
||||
],
|
||||
"message_ids": [
|
||||
200686,
|
||||
187232,
|
||||
187231,
|
||||
187230,
|
||||
184509,
|
||||
181809,
|
||||
181808,
|
||||
181807,
|
||||
181623,
|
||||
181621,
|
||||
181040,
|
||||
179596,
|
||||
179595,
|
||||
179581,
|
||||
179580,
|
||||
179564,
|
||||
179563,
|
||||
179562,
|
||||
179561,
|
||||
179494,
|
||||
179488
|
||||
],
|
||||
"message_main_attachment_id": [
|
||||
125067,
|
||||
"Sans titre.png"
|
||||
],
|
||||
"failed_message_ids": [],
|
||||
"rating_ids": [],
|
||||
"rating_last_value": 0.0,
|
||||
"access_token": "33f67766-d2c7-4c52-bd3f-2d6cbdacf005",
|
||||
"create_uid": [
|
||||
28,
|
||||
"Support Robot"
|
||||
],
|
||||
"write_uid": [
|
||||
1,
|
||||
"OdooBot"
|
||||
],
|
||||
"x_CBAO_windows_maj_ID": "",
|
||||
"x_CBAO_version_signalement": "20240322",
|
||||
"x_CBAO_version_correction": "",
|
||||
"x_CBAO_DateCorrection": false,
|
||||
"x_CBAO_Scoring_Facilite": 0,
|
||||
"x_CBAO_Scoring_Importance": 3,
|
||||
"x_CBAO_Scoring_Urgence": 1,
|
||||
"x_CBAO_Scoring_Incidence": 2,
|
||||
"x_CBAO_Scoring_Resultat": 6,
|
||||
"x_CBAO_InformationsSup": false,
|
||||
"kanban_state_label": "En cours",
|
||||
"subtask_planned_hours": 0.0,
|
||||
"manager_id": [
|
||||
8,
|
||||
"Quentin FAIVRE"
|
||||
],
|
||||
"user_email": false,
|
||||
"attachment_ids": [
|
||||
125005
|
||||
],
|
||||
"legend_blocked": "Bloquéé",
|
||||
"legend_done": "Planifiée",
|
||||
"legend_normal": "En cours",
|
||||
"subtask_project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"subtask_count": 0,
|
||||
"analytic_account_active": true,
|
||||
"allow_timesheets": true,
|
||||
"use_milestones": false,
|
||||
"show_time_control": "start",
|
||||
"is_project_map_empty": true,
|
||||
"activity_state": false,
|
||||
"activity_user_id": false,
|
||||
"activity_type_id": false,
|
||||
"activity_date_deadline": false,
|
||||
"activity_summary": false,
|
||||
"message_is_follower": false,
|
||||
"message_unread": false,
|
||||
"message_unread_counter": 0,
|
||||
"message_needaction": false,
|
||||
"message_needaction_counter": 0,
|
||||
"message_has_error": false,
|
||||
"message_has_error_counter": 0,
|
||||
"message_attachment_count": 6,
|
||||
"rating_last_feedback": false,
|
||||
"rating_last_image": false,
|
||||
"rating_count": 0,
|
||||
"access_url": "/my/task/9105",
|
||||
"access_warning": "",
|
||||
"display_name": "[T9126] Mise à jour NCE",
|
||||
"__last_update": "2024-10-03 13:10:50",
|
||||
"stage_id_value": "En attente de résolution",
|
||||
"project_id_value": "Tickets",
|
||||
"partner_id_value": "LABORATOIRE DES ESTUAIRES, LABORATOIRE DES ESTUAIRES",
|
||||
"manager_id_value": "Quentin FAIVRE",
|
||||
"company_id_value": "CBAO S.A.R.L.",
|
||||
"subtask_project_id_value": "Tickets",
|
||||
"message_main_attachment_id_value": "Sans titre.png",
|
||||
"create_uid_value": "Support Robot",
|
||||
"write_uid_value": "OdooBot"
|
||||
}
|
||||
153
exported_tickets/ticket_9531_raw.json
Normal file
153
exported_tickets/ticket_9531_raw.json
Normal file
File diff suppressed because one or more lines are too long
152
exported_tickets/ticket_9659_raw.json
Normal file
152
exported_tickets/ticket_9659_raw.json
Normal file
@ -0,0 +1,152 @@
|
||||
{
|
||||
"id": 9659,
|
||||
"active": true,
|
||||
"name": "Valeurs non enregistrée sur l'essai Densité et teneur en eau - Compactage Proctor",
|
||||
"description": "<h1><span style=\"font-weight: normal;\"><font style=\"font-size: 14px;\">Sur l'essai Densité et teneur en eau - Compactage Proctor (Optimum non corrigé) - NF EN 13286-2 (10-2010), les valeurs ne sont pas enregistrées.</font></span></h1><h1><span style=\"font-weight: normal;\"><font style=\"font-size: 14px;\">Elles ne sont plus présentes quand on ferme et réouvre l'essai</font></span><br></h1><h1>Point particulier :</h1><ul><li><b>Le cas est bloquant</b></li></ul><h1>Description du problème :</h1><p>Bonjour après avoir renseigné les différents pavés concernant mon essais(capture d'écran 1) ,j'ai enregistré celui-ci .\nEn fermant l'essai puis en revenant vers celui-ci ,apparait un message d'erreur (capture d'écran 2) et lorsque la page d'essai s'ouvre les données ont été effacées (capture d'écran 3 ). </p>",
|
||||
"sequence": 0,
|
||||
"stage_id": [
|
||||
8,
|
||||
"Clôturé"
|
||||
],
|
||||
"kanban_state": "normal",
|
||||
"create_date": "2024-07-11 15:54:18",
|
||||
"write_date": "2024-10-03 13:10:50",
|
||||
"date_start": "2024-07-11 15:54:18",
|
||||
"date_end": false,
|
||||
"date_assign": "2024-07-15 13:41:38",
|
||||
"date_deadline": false,
|
||||
"date_last_stage_update": "2024-09-13 08:54:36",
|
||||
"project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"notes": false,
|
||||
"planned_hours": 0.0,
|
||||
"user_id": [
|
||||
22,
|
||||
"Fabien LAFAY"
|
||||
],
|
||||
"partner_id": [
|
||||
28515,
|
||||
"COLLECTIVITE TERRITORIALE DE MARTINIQUE, Alain-Michel JEAN-BAPTISTE"
|
||||
],
|
||||
"company_id": [
|
||||
1,
|
||||
"CBAO S.A.R.L."
|
||||
],
|
||||
"color": 0,
|
||||
"displayed_image_id": false,
|
||||
"parent_id": false,
|
||||
"child_ids": [],
|
||||
"email_from": "alain-michel.jean-baptiste@collectivitedemartinique.mq",
|
||||
"email_cc": "patrick.lefroy@collectivitedemartinique.mq",
|
||||
"working_hours_open": 12.094878848333334,
|
||||
"working_hours_close": 0.0,
|
||||
"working_days_open": 0.5039532853472223,
|
||||
"working_days_close": 0.0,
|
||||
"website_message_ids": [
|
||||
193288
|
||||
],
|
||||
"remaining_hours": 0.0,
|
||||
"effective_hours": 0.0,
|
||||
"total_hours_spent": 0.0,
|
||||
"progress": 0.0,
|
||||
"subtask_effective_hours": 0.0,
|
||||
"timesheet_ids": [],
|
||||
"priority": "3",
|
||||
"code": "T9680",
|
||||
"milestone_id": false,
|
||||
"sale_line_id": false,
|
||||
"sale_order_id": false,
|
||||
"billable_type": "no",
|
||||
"activity_ids": [],
|
||||
"message_follower_ids": [
|
||||
77551,
|
||||
77574,
|
||||
77575
|
||||
],
|
||||
"message_ids": [
|
||||
201117,
|
||||
193373,
|
||||
193372,
|
||||
193289,
|
||||
193288,
|
||||
193240,
|
||||
193234
|
||||
],
|
||||
"message_main_attachment_id": false,
|
||||
"failed_message_ids": [],
|
||||
"rating_ids": [],
|
||||
"rating_last_value": 0.0,
|
||||
"access_token": "8b866944-4d0e-47cc-aacc-4eaa4c7a515d",
|
||||
"create_uid": [
|
||||
28,
|
||||
"Support Robot"
|
||||
],
|
||||
"write_uid": [
|
||||
1,
|
||||
"OdooBot"
|
||||
],
|
||||
"x_CBAO_windows_maj_ID": "",
|
||||
"x_CBAO_version_signalement": "20240624",
|
||||
"x_CBAO_version_correction": "",
|
||||
"x_CBAO_DateCorrection": "2024-09-13",
|
||||
"x_CBAO_Scoring_Facilite": 3,
|
||||
"x_CBAO_Scoring_Importance": 4,
|
||||
"x_CBAO_Scoring_Urgence": 3,
|
||||
"x_CBAO_Scoring_Incidence": 3,
|
||||
"x_CBAO_Scoring_Resultat": 13,
|
||||
"x_CBAO_InformationsSup": false,
|
||||
"kanban_state_label": "En cours",
|
||||
"subtask_planned_hours": 0.0,
|
||||
"manager_id": [
|
||||
8,
|
||||
"Quentin FAIVRE"
|
||||
],
|
||||
"user_email": "fabien@mail.cbao.fr",
|
||||
"attachment_ids": [
|
||||
129260
|
||||
],
|
||||
"legend_blocked": "Bloqué",
|
||||
"legend_done": "Prêt pour la prochaine étape",
|
||||
"legend_normal": "En cours",
|
||||
"subtask_project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"subtask_count": 0,
|
||||
"analytic_account_active": true,
|
||||
"allow_timesheets": true,
|
||||
"use_milestones": false,
|
||||
"show_time_control": "start",
|
||||
"is_project_map_empty": true,
|
||||
"activity_state": false,
|
||||
"activity_user_id": false,
|
||||
"activity_type_id": false,
|
||||
"activity_date_deadline": false,
|
||||
"activity_summary": false,
|
||||
"message_is_follower": false,
|
||||
"message_unread": false,
|
||||
"message_unread_counter": 0,
|
||||
"message_needaction": false,
|
||||
"message_needaction_counter": 0,
|
||||
"message_has_error": false,
|
||||
"message_has_error_counter": 0,
|
||||
"message_attachment_count": 1,
|
||||
"rating_last_feedback": false,
|
||||
"rating_last_image": false,
|
||||
"rating_count": 0,
|
||||
"access_url": "/my/task/9659",
|
||||
"access_warning": "",
|
||||
"display_name": "[T9680] Valeurs non enregistrée sur l'essai Densité et teneur en eau - Compactage Proctor",
|
||||
"__last_update": "2024-10-03 13:10:50",
|
||||
"stage_id_value": "Clôturé",
|
||||
"project_id_value": "Tickets",
|
||||
"user_id_value": "Fabien LAFAY",
|
||||
"partner_id_value": "COLLECTIVITE TERRITORIALE DE MARTINIQUE, Alain-Michel JEAN-BAPTISTE",
|
||||
"manager_id_value": "Quentin FAIVRE",
|
||||
"company_id_value": "CBAO S.A.R.L.",
|
||||
"subtask_project_id_value": "Tickets",
|
||||
"create_uid_value": "Support Robot",
|
||||
"write_uid_value": "OdooBot"
|
||||
}
|
||||
145
exported_tickets/ticket_9849_raw.json
Normal file
145
exported_tickets/ticket_9849_raw.json
Normal file
@ -0,0 +1,145 @@
|
||||
{
|
||||
"id": 9849,
|
||||
"active": true,
|
||||
"name": "Sauvegarde des tamis pour les matériaux autre que granulat",
|
||||
"description": "<h1><span style='color: rgb(76, 76, 76); font-family: \"Lucida Grande\", Helvetica, Verdana, Arial, sans-serif; font-size: 13px; font-weight: 400; text-align: justify;'>La sauvegarde des tamis utilisée fonctionne uniquement pour les matériaux de type granulat. Il faudrait que cela fonctionne également pour les autres matériaux de carrière (pierre naturelle, sol)</span><br></h1><h1><br></h1><h1>Point particulier :</h1><ul><li>Essais :2024-G-0408</li><li><b>Le cas est bloquant</b></li></ul><h1>Description du problème :</h1><p>Bonjour , \nJe n'arrive pas à sauvegarder une colonne de tamis après modification et après duplicata , afin de crée un nouveau numéro d’échantillon avec les mêmes tamis ( même projet) ! \nLe l'logiciel me propose toujours une colonne de tamis par défaut !\nMerci de faire le nécessaire!\nCordialement \n</p>",
|
||||
"sequence": 0,
|
||||
"stage_id": [
|
||||
5,
|
||||
"En attente de résolution"
|
||||
],
|
||||
"kanban_state": "normal",
|
||||
"create_date": "2024-09-03 07:45:24",
|
||||
"write_date": "2025-03-17 10:14:08",
|
||||
"date_start": "2024-09-03 07:45:24",
|
||||
"date_end": false,
|
||||
"date_assign": false,
|
||||
"date_deadline": false,
|
||||
"date_last_stage_update": "2024-09-03 07:55:07",
|
||||
"project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"notes": false,
|
||||
"planned_hours": 0.0,
|
||||
"user_id": false,
|
||||
"partner_id": [
|
||||
29752,
|
||||
"EGIS SA, Noureddine BAALI"
|
||||
],
|
||||
"company_id": [
|
||||
1,
|
||||
"CBAO S.A.R.L."
|
||||
],
|
||||
"color": 0,
|
||||
"displayed_image_id": false,
|
||||
"parent_id": false,
|
||||
"child_ids": [],
|
||||
"email_from": "noureddine.baali@egis-group.com",
|
||||
"email_cc": "",
|
||||
"working_hours_open": 0.0,
|
||||
"working_hours_close": 0.0,
|
||||
"working_days_open": 0.0,
|
||||
"working_days_close": 0.0,
|
||||
"website_message_ids": [
|
||||
200350
|
||||
],
|
||||
"remaining_hours": 0.0,
|
||||
"effective_hours": 0.0,
|
||||
"total_hours_spent": 0.0,
|
||||
"progress": 0.0,
|
||||
"subtask_effective_hours": 0.0,
|
||||
"timesheet_ids": [],
|
||||
"priority": "3",
|
||||
"code": "T09870",
|
||||
"milestone_id": false,
|
||||
"sale_line_id": false,
|
||||
"sale_order_id": false,
|
||||
"billable_type": "no",
|
||||
"activity_ids": [],
|
||||
"message_follower_ids": [
|
||||
80045,
|
||||
80046,
|
||||
80081,
|
||||
80082,
|
||||
80083
|
||||
],
|
||||
"message_ids": [
|
||||
200351,
|
||||
200350,
|
||||
200299,
|
||||
200293
|
||||
],
|
||||
"message_main_attachment_id": false,
|
||||
"failed_message_ids": [],
|
||||
"rating_ids": [],
|
||||
"rating_last_value": 0.0,
|
||||
"access_token": "2bc75cda-90c5-4e37-93d3-f474c01ea615",
|
||||
"create_uid": [
|
||||
28,
|
||||
"Support Robot"
|
||||
],
|
||||
"write_uid": [
|
||||
22,
|
||||
"Fabien LAFAY"
|
||||
],
|
||||
"x_CBAO_windows_maj_ID": "",
|
||||
"x_CBAO_version_signalement": "20240624",
|
||||
"x_CBAO_version_correction": "",
|
||||
"x_CBAO_DateCorrection": false,
|
||||
"x_CBAO_Scoring_Facilite": 0,
|
||||
"x_CBAO_Scoring_Importance": 2,
|
||||
"x_CBAO_Scoring_Urgence": 1,
|
||||
"x_CBAO_Scoring_Incidence": 3,
|
||||
"x_CBAO_Scoring_Resultat": 6,
|
||||
"x_CBAO_InformationsSup": false,
|
||||
"kanban_state_label": "En cours",
|
||||
"subtask_planned_hours": 0.0,
|
||||
"manager_id": [
|
||||
8,
|
||||
"Quentin FAIVRE"
|
||||
],
|
||||
"user_email": false,
|
||||
"attachment_ids": [],
|
||||
"legend_blocked": "Bloquéé",
|
||||
"legend_done": "Planifiée",
|
||||
"legend_normal": "En cours",
|
||||
"subtask_project_id": [
|
||||
4,
|
||||
"Tickets"
|
||||
],
|
||||
"subtask_count": 0,
|
||||
"analytic_account_active": true,
|
||||
"allow_timesheets": true,
|
||||
"use_milestones": false,
|
||||
"show_time_control": "start",
|
||||
"is_project_map_empty": true,
|
||||
"activity_state": false,
|
||||
"activity_user_id": false,
|
||||
"activity_type_id": false,
|
||||
"activity_date_deadline": false,
|
||||
"activity_summary": false,
|
||||
"message_is_follower": false,
|
||||
"message_unread": false,
|
||||
"message_unread_counter": 0,
|
||||
"message_needaction": false,
|
||||
"message_needaction_counter": 0,
|
||||
"message_has_error": false,
|
||||
"message_has_error_counter": 0,
|
||||
"message_attachment_count": 0,
|
||||
"rating_last_feedback": false,
|
||||
"rating_last_image": false,
|
||||
"rating_count": 0,
|
||||
"access_url": "/my/task/9849",
|
||||
"access_warning": "",
|
||||
"display_name": "[T09870] Sauvegarde des tamis pour les matériaux autre que granulat",
|
||||
"__last_update": "2025-03-17 10:14:08",
|
||||
"stage_id_value": "En attente de résolution",
|
||||
"project_id_value": "Tickets",
|
||||
"partner_id_value": "EGIS SA, Noureddine BAALI",
|
||||
"manager_id_value": "Quentin FAIVRE",
|
||||
"company_id_value": "CBAO S.A.R.L.",
|
||||
"subtask_project_id_value": "Tickets",
|
||||
"create_uid_value": "Support Robot",
|
||||
"write_uid_value": "Fabien LAFAY"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@ -64,19 +64,54 @@ def handle_project_tickets_by_stage():
|
||||
print("Aucun projet disponible. Impossible de continuer.")
|
||||
return
|
||||
|
||||
# Afficher les projets disponibles pour aider l'utilisateur
|
||||
print("\nProjets disponibles:")
|
||||
for proj_id, proj_name in projects.items():
|
||||
print(f"- ID: {proj_id} - Nom: {proj_name}")
|
||||
|
||||
# Demander à l'utilisateur de choisir un projet
|
||||
project_id_input = input("\nEntrez l'ID du projet (ou 'q' pour quitter): ")
|
||||
project_id_input = input("\nEntrez l'ID du projet (ou 'q' pour quitter, 0 pour tous): ")
|
||||
if project_id_input.lower() == 'q':
|
||||
return
|
||||
|
||||
try:
|
||||
project_id = int(project_id_input)
|
||||
if project_id not in projects.keys():
|
||||
print_error(f"Aucun projet trouvé avec l'ID: {project_id}")
|
||||
project_id = None
|
||||
if project_id_input != '0':
|
||||
try:
|
||||
project_id = int(project_id_input)
|
||||
if project_id not in projects.keys():
|
||||
print_error(f"Aucun projet trouvé avec l'ID: {project_id}")
|
||||
return
|
||||
except ValueError:
|
||||
print("L'ID du projet doit être un nombre entier.")
|
||||
return
|
||||
except ValueError:
|
||||
print("L'ID du projet doit être un nombre entier.")
|
||||
return
|
||||
|
||||
#Exportet les tickets du projet
|
||||
ticket_manager.export_tickets_by_project_and_stage(project_id)
|
||||
# Demander à l'utilisateur s'il souhaite filtrer par étape également
|
||||
filter_by_stage = input("\nSouhaitez-vous filtrer par étape aussi? (o/n): ").lower() == 'o'
|
||||
|
||||
stage_id = None
|
||||
if filter_by_stage:
|
||||
# Récupérer et afficher les étapes disponibles
|
||||
stages = ticket_manager._safe_execute('project.task.type', 'search_read', [], ['id', 'name'])
|
||||
if stages:
|
||||
print("\nÉtapes disponibles:")
|
||||
for stage in stages:
|
||||
print(f"- ID: {stage['id']} - Nom: {stage['name']}")
|
||||
|
||||
stage_id_input = input("\nEntrez l'ID de l'étape (ou 'q' pour quitter, 0 pour toutes): ")
|
||||
if stage_id_input.lower() == 'q':
|
||||
return
|
||||
|
||||
if stage_id_input != '0':
|
||||
try:
|
||||
stage_id = int(stage_id_input)
|
||||
# Vérifier que l'étape existe
|
||||
stage_exists = any(stage['id'] == stage_id for stage in stages)
|
||||
if not stage_exists:
|
||||
print_error(f"Aucune étape trouvée avec l'ID: {stage_id}")
|
||||
return
|
||||
except ValueError:
|
||||
print("L'ID de l'étape doit être un nombre entier.")
|
||||
return
|
||||
|
||||
# Exporter les tickets selon les filtres choisis
|
||||
ticket_manager.export_tickets_by_project_and_stage(project_id, stage_id)
|
||||
@ -9,7 +9,7 @@ from menu_handlers import (
|
||||
def display_main_menu():
|
||||
"""Affiche le menu principal de l'application"""
|
||||
print("\n==== GESTIONNAIRE DE TICKETS ODOO ====")
|
||||
print("1. Exporter les tickets d'un project_id par étape")
|
||||
print("1. Exporter les tickets par projet et/ou étape")
|
||||
print("2. Rechercher un ticket par ID")
|
||||
print("3. Rechercher un ticket par Code")
|
||||
print("4. Afficher la liste des modèles disponibles")
|
||||
@ -36,4 +36,4 @@ def run_menu():
|
||||
print("Au revoir!")
|
||||
break
|
||||
else:
|
||||
print("Option invalide. Veuillez choisir entre 1 et 4.")
|
||||
print("Option invalide. Veuillez choisir entre 1 et 6.")
|
||||
@ -138,19 +138,41 @@ class TicketManager:
|
||||
return {}
|
||||
return {proj['id']: proj['name'] for proj in projects}
|
||||
|
||||
def export_tickets_by_project_and_stage(self, project_id):
|
||||
""" Exporte les tickets d'un projet classés par étape """
|
||||
|
||||
def export_tickets_by_project_and_stage(self, project_id=None, stage_id=None):
|
||||
"""
|
||||
Exporte les tickets selon des critères de projet et d'étape
|
||||
|
||||
Args:
|
||||
project_id: ID du projet à filtrer (optionnel)
|
||||
stage_id: ID de l'étape à filtrer (optionnel)
|
||||
"""
|
||||
# Vérifier la connexion Odoo
|
||||
if not self._ensure_connection():
|
||||
print_error("Connexion Odoo indisponible.")
|
||||
return
|
||||
|
||||
# Récupérer les tickets du projet
|
||||
domain = [('project_id', '=', project_id)]
|
||||
# Construire le domaine de recherche en fonction des paramètres
|
||||
domain = []
|
||||
if project_id:
|
||||
domain.append(('project_id', '=', project_id))
|
||||
if stage_id:
|
||||
domain.append(('stage_id', '=', stage_id))
|
||||
|
||||
# Récupérer les IDs des tickets correspondant aux critères
|
||||
ticket_ids = self._safe_execute(self.model_name, 'search', domain, 0, 10)
|
||||
if not ticket_ids:
|
||||
print_error(f"Aucun ticket trouvé pour le projet {project_id}.")
|
||||
filters = []
|
||||
if project_id:
|
||||
project_name = self._safe_execute('project.project', 'read', [project_id], ['name'])
|
||||
project_name = project_name[0]['name'] if project_name else str(project_id)
|
||||
filters.append(f"projet '{project_name}'")
|
||||
if stage_id:
|
||||
stage_name = self._safe_execute('project.task.type', 'read', [stage_id], ['name'])
|
||||
stage_name = stage_name[0]['name'] if stage_name else str(stage_id)
|
||||
filters.append(f"étape '{stage_name}'")
|
||||
|
||||
filter_text = " et ".join(filters) if filters else "critères spécifiés"
|
||||
print_error(f"Aucun ticket trouvé pour les {filter_text}.")
|
||||
return
|
||||
|
||||
# Lire les détails des tickets
|
||||
@ -160,23 +182,49 @@ class TicketManager:
|
||||
if ticket:
|
||||
tickets.append(ticket)
|
||||
|
||||
#trier les tickets par étape
|
||||
tickets_by_stage = {}
|
||||
# Organiser les tickets par projet puis par étape
|
||||
tickets_by_project_stage = {}
|
||||
|
||||
for ticket in tickets:
|
||||
# Extraire les informations du projet
|
||||
champs_relationnels = ticket.get("Champs Relationnels", {})
|
||||
project_data = champs_relationnels.get("project_id", [0, "Sans projet"])
|
||||
project_id = project_data[0] if isinstance(project_data, list) and len(project_data) > 0 else 0
|
||||
project_name = project_data[1] if isinstance(project_data, list) and len(project_data) > 1 else "Sans projet"
|
||||
|
||||
# Extraire les informations de l'étape
|
||||
stage_data = champs_relationnels.get("stage_id", [0, "Non classé"])
|
||||
stage_id = stage_data[0] if isinstance(stage_data, list) and len(stage_data) > 0 else 0
|
||||
stage_name = stage_data[1] if isinstance(stage_data, list) and len(stage_data) > 1 else "Non classé"
|
||||
|
||||
key = f"{stage_id}_{stage_name}"
|
||||
tickets_by_stage.setdefault(key, []).append(ticket)
|
||||
# Clés pour l'organisation des dossiers
|
||||
project_key = f"{project_id}_{project_name}"
|
||||
stage_key = f"{stage_id}_{stage_name}"
|
||||
|
||||
# Sauvegarde des fichiers
|
||||
project_dir = ensure_export_directory(f"project_{project_id}")
|
||||
for stage_key, stage_tickets in tickets_by_stage.items():
|
||||
stage_dir = os.path.join(project_dir, stage_key)
|
||||
os.makedirs(stage_dir, exist_ok=True)
|
||||
save_json(os.path.join(stage_dir, "all_tickets.json"), stage_tickets)
|
||||
# Organiser la structure de données
|
||||
if project_key not in tickets_by_project_stage:
|
||||
tickets_by_project_stage[project_key] = {}
|
||||
|
||||
print(f"Exportation terminée. Les fichiers sont enregistrés dans : {project_dir}/")
|
||||
if stage_key not in tickets_by_project_stage[project_key]:
|
||||
tickets_by_project_stage[project_key][stage_key] = []
|
||||
|
||||
tickets_by_project_stage[project_key][stage_key].append(ticket)
|
||||
|
||||
# Création des répertoires et sauvegarde des fichiers
|
||||
export_base_dir = os.path.join(EXPORT_DIR, "tickets_export")
|
||||
os.makedirs(export_base_dir, exist_ok=True)
|
||||
|
||||
for project_key, stages in tickets_by_project_stage.items():
|
||||
project_dir = os.path.join(export_base_dir, project_key)
|
||||
os.makedirs(project_dir, exist_ok=True)
|
||||
|
||||
for stage_key, stage_tickets in stages.items():
|
||||
stage_dir = os.path.join(project_dir, stage_key)
|
||||
os.makedirs(stage_dir, exist_ok=True)
|
||||
|
||||
# Sauvegarder les tickets avec notre fonction existante
|
||||
self.save_raw_ticket_data(stage_tickets, os.path.join(stage_dir, "tickets.json"))
|
||||
print(f"Sauvegarde de {len(stage_tickets)} tickets pour le projet '{project_key}', étape '{stage_key}'")
|
||||
|
||||
print(f"Exportation terminée. Les fichiers sont enregistrés dans : {export_base_dir}/")
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user