From 4f3bb1f28c5f0e0c5cbcd1a8b54db3392ba2ba93 Mon Sep 17 00:00:00 2001
From: Julien Ortet <julien@le-filament.com>
Date: Mon, 4 Nov 2024 15:34:41 +0100
Subject: [PATCH] [UPD] add index on keys

---
 models/acc_repartition_counter.py | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/models/acc_repartition_counter.py b/models/acc_repartition_counter.py
index dd316bf..7a7e9db 100644
--- a/models/acc_repartition_counter.py
+++ b/models/acc_repartition_counter.py
@@ -1,4 +1,5 @@
 from odoo import api, fields, models
+from odoo.tools import index_exists
 
 
 class AccRepartitionCounter(models.Model):
@@ -8,11 +9,24 @@ class AccRepartitionCounter(models.Model):
     acc_repartition_id = fields.Many2one("acc.repartition.keys", "Clé", required=True)
     weight = fields.Float(string="Répartition en pourcentage", required=False)
     time_slot = fields.Datetime("Horodatage de la clé", required=True)
-    acc_counter_id = fields.Many2one("acc.counter", string="Compteur", required=True)
+    acc_counter_id = fields.Many2one(
+        "acc.counter", string="Compteur", required=True
+    )
     acc_operation_id = fields.Many2one(
         comodel_name="acc.operation", compute="_compute_operation_id", store=True
     )
 
+    def init(self):
+        super().init()
+        if not index_exists(self._cr, "acc_repartition_counter_index"):
+            self._cr.execute(
+                """
+                CREATE INDEX acc_repartition_counter_index
+                ON
+                    acc_repartition_counter (time_slot, acc_counter_id)
+
+                """
+            )
     # ------------------------------------------------------
     # SQL Constraints
     # ------------------------------------------------------
-- 
GitLab