From 6d93104c45e2e0a2b9c7253477ee2520c598c546 Mon Sep 17 00:00:00 2001
From: Benjamin <Benjamin@MBP-de-Benj.(none)>
Date: Mon, 25 Sep 2017 17:19:54 +0200
Subject: [PATCH] ajout configuration nombre d'heures

---
 __init__.py                                       |  4 +++-
 models/__init__.py                                |  4 ++++
 .../lefilament_projets.py                         |  8 +++++---
 models/res_config.py                              | 15 +++++++++++++++
 views/lefilament_projets_view.xml                 | 12 ++++++++++++
 5 files changed, 39 insertions(+), 4 deletions(-)
 create mode 100644 models/__init__.py
 rename lefilament_projets.py => models/lefilament_projets.py (85%)
 create mode 100644 models/res_config.py

diff --git a/__init__.py b/__init__.py
index 5edd364..a5e7e1d 100644
--- a/__init__.py
+++ b/__init__.py
@@ -1 +1,3 @@
-from . import lefilament_projets
\ No newline at end of file
+# -*- coding: utf-8 -*-
+
+import models
\ No newline at end of file
diff --git a/models/__init__.py b/models/__init__.py
new file mode 100644
index 0000000..a2414a1
--- /dev/null
+++ b/models/__init__.py
@@ -0,0 +1,4 @@
+# -*- coding: utf-8 -*-
+
+import lefilament_projets
+import res_config
\ No newline at end of file
diff --git a/lefilament_projets.py b/models/lefilament_projets.py
similarity index 85%
rename from lefilament_projets.py
rename to models/lefilament_projets.py
index c408d7e..9248cd1 100644
--- a/lefilament_projets.py
+++ b/models/lefilament_projets.py
@@ -18,12 +18,13 @@ class FilamentProjet(models.Model):
 	lf_heures_restantes = fields.Float('Restant (h)', compute='_total_heures_restantes')
 	lf_heures_planifiees = fields.Float('Planifiées (h)', compute='_total_heures_planifiees')
 	lf_couts_annexes =  fields.Float('Coûts Annexes', compute='_couts_annexes')
-	lf_couts_estimes =  fields.Float('Coûts Estimes')
+	lf_couts_estimes =  fields.Float('Coûts Estimés')
 	lf_commentaire = fields.Text('Commentaires')
 
 	@api.one
 	def _taux_horaire(self):
-		self.lf_taux_horaire = self.lf_tarif_jour / 8
+		lf_heures_jour = self.env['project.config.settings'].search([], limit=1, order='id desc').lf_heures_jour
+		self.lf_taux_horaire = self.lf_tarif_jour / lf_heures_jour
 
 	@api.one
 	def _total_heures_passees(self):
@@ -63,8 +64,9 @@ class FilamentProjet(models.Model):
 
 	@api.one
 	def _total_heures(self):
+		lf_heures_jour = self.env['project.config.settings'].search([], limit=1, order='id desc').lf_heures_jour
 		if (self.lf_tarif_jour != 0.0):
-			self.lf_heures_projet = (self.lf_heures_budget / self.lf_tarif_jour) * 8
+			self.lf_heures_projet = (self.lf_heures_budget / self.lf_tarif_jour) * lf_heures_jour
 		else:
 			self.lf_heures_projet = 0.0
 
diff --git a/models/res_config.py b/models/res_config.py
new file mode 100644
index 0000000..e0dee6b
--- /dev/null
+++ b/models/res_config.py
@@ -0,0 +1,15 @@
+# -*- coding: utf-8 -*-
+
+from odoo import api, fields, models
+
+class ProjectLFConfiguration(models.TransientModel):
+	_name = 'project.config.settings'
+	_inherit = 'project.config.settings'
+
+	lf_heures_jour = fields.Float('Heures / Jour', help="Base de temps pour le calcul du nombre d'heures vendues par projet (7h par défaut)", default=7.0 )
+
+	@api.multi
+	def get_default_lf_heures_jour(self, field):
+		lf_heures_jour = self.env['project.config.settings'].search([], limit=1, order='id desc').lf_heures_jour
+		return { 'lf_heures_jour': lf_heures_jour if lf_heures_jour else 7.0 }
+        
\ No newline at end of file
diff --git a/views/lefilament_projets_view.xml b/views/lefilament_projets_view.xml
index f059211..23b47d4 100644
--- a/views/lefilament_projets_view.xml
+++ b/views/lefilament_projets_view.xml
@@ -118,5 +118,17 @@
                 </field>
         </record>
 
+
+        <record id="view_lf_project_config_settings" model="ir.ui.view">
+            <field name="name">project lf settings</field>
+            <field name="model">project.config.settings</field>
+            <field name="inherit_id" ref="project.view_config_settings"/>
+            <field name="arch" type="xml">
+                <xpath expr="//field[@name='module_rating_project']" position="after">
+					<field name="lf_heures_jour"  class="oe_inline oe_text_right" />
+                </xpath>
+            </field>
+        </record>
+
 	</data>
 </odoo>
-- 
GitLab