From 929c3b21ad7b2b0767919b32a12b36a846553b91 Mon Sep 17 00:00:00 2001
From: Juliana <juliana@le-filament.com>
Date: Tue, 24 Jan 2023 18:13:48 +0100
Subject: [PATCH] [ADD]Add prices default op + PRM + price conf

---
 models/acc_counter.py                  | 9 +++++++++
 models/acc_operation.py                | 3 ++-
 views/acc_counter_views.xml            | 2 ++
 views/acc_operation_views.xml          | 2 ++
 wizard/acc_price_conf_wizard.py        | 3 ++-
 wizard/acc_price_conf_wizard_views.xml | 2 +-
 6 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/models/acc_counter.py b/models/acc_counter.py
index 514cf60..810395b 100644
--- a/models/acc_counter.py
+++ b/models/acc_counter.py
@@ -41,6 +41,8 @@ class AccCounter(models.Model):
     is_account_surplus_activate = fields.Boolean(
         "Facturation du surplus automatisée", default=True
     )
+    sale_price = fields.Float("Prix de vente par défaut", digits="Sale Price")
+    price_accise = fields.Float("Tarif ACCISE par défaut", digits="Sale Price")
 
     # ------------------------------------------------------
     # SQL Constraints
@@ -73,6 +75,13 @@ class AccCounter(models.Model):
     # ------------------------------------------------------
     # CRUD methods (ORM overrides)
     # ------------------------------------------------------
+    @api.model_create_multi
+    def create(self, vals_list):
+        res = super(AccCounter, self).create(vals_list)
+        if res.acc_operation_id and res.is_delivery:
+            res.sale_price = res.acc_operation_id.sale_price
+            res.price_accise = res.acc_operation_id.price_accise
+        return res
 
     # ------------------------------------------------------
     # Actions
diff --git a/models/acc_operation.py b/models/acc_operation.py
index d0a8c07..9bd1e6a 100644
--- a/models/acc_operation.py
+++ b/models/acc_operation.py
@@ -60,7 +60,8 @@ class AccOperation(models.Model):
         string="Nombre de factures Surplus",
         compute="_compute_acc_account_surplus_count",
     )
-
+    sale_price = fields.Float("Prix de vente par défaut", digits="Sale Price")
+    price_accise = fields.Float("Tarif ACCISE par défaut", digits="Sale Price")
     # ------------------------------------------------------
     # SQL Constraints
     # ------------------------------------------------------
diff --git a/views/acc_counter_views.xml b/views/acc_counter_views.xml
index 93c2959..a93ac90 100644
--- a/views/acc_counter_views.xml
+++ b/views/acc_counter_views.xml
@@ -69,6 +69,8 @@
                                         name="is_account_auto_activate"
                                         widget="boolean_toggle"
                                     />
+                                    <field name="sale_price"/>
+                                    <field name="price_accise"/>
                                 </group>
                                 <group>
                                     <field
diff --git a/views/acc_operation_views.xml b/views/acc_operation_views.xml
index 725eba6..e120dc7 100644
--- a/views/acc_operation_views.xml
+++ b/views/acc_operation_views.xml
@@ -61,6 +61,8 @@
                     <group>
                         <group>
                             <field name="is_account_active" widget="boolean_toggle" />
+                            <field name="sale_price"/>
+                            <field name="price_accise"/>
                         </group>
                         <group>
                             <field name="is_surplus_active" widget="boolean_toggle" />
diff --git a/wizard/acc_price_conf_wizard.py b/wizard/acc_price_conf_wizard.py
index 020e081..1bb1c35 100644
--- a/wizard/acc_price_conf_wizard.py
+++ b/wizard/acc_price_conf_wizard.py
@@ -59,7 +59,8 @@ class AccPriceConfWizard(models.TransientModel):
                         "acc_delivery_id": rec.id,
                         "acc_injection_id": inj.id,
                         "acc_operation_id": self.env.context.get("active_id"),
-                        "type": type
+                        "type": type,
+                        "price": rec.sale_price if type == "sale" else rec.price_accise
                     },
                 )
                 for rec in recs
diff --git a/wizard/acc_price_conf_wizard_views.xml b/wizard/acc_price_conf_wizard_views.xml
index 127b014..9f7ee28 100644
--- a/wizard/acc_price_conf_wizard_views.xml
+++ b/wizard/acc_price_conf_wizard_views.xml
@@ -10,7 +10,7 @@
                 <group>
                     <group>
                         <field name="start_date" />
-                        <field name="type" />
+                        <field name="type" invisible="1"/>
                     </group>
                 </group>
                 <field
-- 
GitLab