diff --git a/models/sale_order.py b/models/sale_order.py
index bf51ace..0605e28 100644
--- a/models/sale_order.py
+++ b/models/sale_order.py
@@ -44,6 +44,7 @@ class SaleOrderLine(models.Model):
vals['parent_id'] = parent and parent.id
vals['user_ids'] = template.assignees.ids
vals['tag_ids'] = template.tags.ids
+ vals['planned_hours'] = template.planned_hours
return vals
tmpl = self.product_id.task_template_id
diff --git a/models/task_template.py b/models/task_template.py
index 128edbd..f95b3c7 100644
--- a/models/task_template.py
+++ b/models/task_template.py
@@ -18,6 +18,7 @@ class TaskTemplate(models.Model):
subtasks = fields.One2many("project.task.template", inverse_name="parent", string="Subtask Templates")
sequence = fields.Integer(string="Sequence")
company_id = fields.Many2one("res.company", string="Company", index=1, default=_current_company)
+ planned_hours = fields.Float("Initially Planned Hours")
def action_open_task(self):
return {
diff --git a/tests/test_task_template.py b/tests/test_task_template.py
index ec42aca..2857b6c 100644
--- a/tests/test_task_template.py
+++ b/tests/test_task_template.py
@@ -11,6 +11,7 @@ class TestTaskTemplateCommon(FSMManagerUserTransactionCase):
@classmethod
def setUpClass(cls):
super().setUpClass()
+ cls.PLANNED_HOURS = 6
hours_uom = cls.env['uom.uom'].search([('name', '=', 'Hour')]) or False
# Test product to use with the various tests
cls.task1 = cls.env['project.task.template'].create({
@@ -45,6 +46,7 @@ class TestTaskTemplateCommon(FSMManagerUserTransactionCase):
# Set up a task template tree with 2 children and 1 grandchild
cls.parent_task = cls.env['project.task.template'].create({
'name': 'Parent Template',
+ 'planned_hours': cls.PLANNED_HOURS,
})
cls.child_task_1 = cls.env['project.task.template'].create({
'name': 'Child Template 1',
diff --git a/tests/test_task_template_sale_order.py b/tests/test_task_template_sale_order.py
index c19a892..176c222 100644
--- a/tests/test_task_template_sale_order.py
+++ b/tests/test_task_template_sale_order.py
@@ -67,6 +67,7 @@ class TestTaskTemplateSalesOrder(TestTaskTemplateCommon):
self.assertTrue(task2)
self.assertTrue(self.task1.name in task1.name)
self.assertTrue(self.task1.name in task2.name)
+ self.assertTrue(self.task1.planned_hours == task1.planned_hours)
def test_order_confirmation_tree_template(self):
def assert_structure(sol):
diff --git a/views/task_template_views.xml b/views/task_template_views.xml
index 2ced6c2..bbdaed1 100644
--- a/views/task_template_views.xml
+++ b/views/task_template_views.xml
@@ -19,6 +19,7 @@
+
@@ -57,6 +58,7 @@
+
@@ -71,6 +73,7 @@
+