diff --git a/models/enercoop_operation.py b/models/enercoop_operation.py
index 7af2c92510ec307e1bd8ca68d955ed166f949794..c1d1ca825741314d263f0893afde8784469b8459 100644
--- a/models/enercoop_operation.py
+++ b/models/enercoop_operation.py
@@ -140,6 +140,9 @@ class EnercoopOperation(models.Model):
             date_start = date_end - relativedelta(months=1)
             date_start = date_utils.start_of(date_start, scale)
             date_end = date_utils.end_of(date_start, scale)
+        elif scale == 'week':
+            date_start = date_end - relativedelta(days=6)
+            date_start = date_utils.start_of(date_start, 'day')
         else:
             date_start = date_utils.start_of(date_end, scale)
 
@@ -940,7 +943,7 @@ class EnercoopOperation(models.Model):
     # ------------------------------------------------------
     # Functions to manage route
     # ------------------------------------------------------
-    def graph_view_conso(self, scale=None, date_start=None, date_end=None, prm_id=None):
+    def graph_view_conso(self, scale=None, date_start=None, date_end=None, prm_id=None, partner_id=None):
         """
         Fonction appelée pour l'affichage des courbes consommation
         sur le portail
@@ -961,6 +964,8 @@ class EnercoopOperation(models.Model):
         # enercoop_counter_ids = self.env['enercoop.counter'].browse(prm_id) if prm_id else None
         if prm_id:
             enercoop_counter_ids = self.env['enercoop.counter'].browse(prm_id)
+        elif partner_id:
+            enercoop_counter_ids = self.env['enercoop.counter'].search([('partner_id', '=', partner_id)])
         else:
             # enercoop_counter_op_ids = self.enercoop_injection_operation_ids
             enercoop_counter_ids = self.env['enercoop.counter'].search([('enercoop_operation_ids', 'in', self.enercoop_delivery_operation_ids.ids)])
@@ -992,7 +997,7 @@ class EnercoopOperation(models.Model):
         })
         return result_graph
 
-    def graph_view_prod(self, scale=None, date_start=None, date_end=None, prm_id=None):
+    def graph_view_prod(self, scale=None, date_start=None, date_end=None, prm_id=None, partner_id=None):
         """
         Fonction appelée pour l'affichage des courbes production
         sur le portail
@@ -1012,6 +1017,8 @@ class EnercoopOperation(models.Model):
         # enercoop_counter_ids = self.env['enercoop.counter'].browse(prm_id) if prm_id else None
         if prm_id:
             enercoop_counter_ids = self.env['enercoop.counter'].browse(prm_id)
+        elif partner_id:
+            enercoop_counter_ids = self.env['enercoop.counter'].search([('partner_id', '=', partner_id)])
         else:
             # enercoop_counter_op_ids = self.enercoop_injection_operation_ids
             enercoop_counter_ids = self.env['enercoop.counter'].search([('enercoop_operation_ids', 'in', self.enercoop_injection_operation_ids.ids)])