Man-days des containers = sum des man-days de ses taches
authorAlicia FLOREZ <alicflorez@gmail.com>
Fri, 22 Mar 2013 13:57:11 +0000 (14:57 +0100)
committerAlicia FLOREZ <alicflorez@gmail.com>
Fri, 22 Mar 2013 13:57:11 +0000 (14:57 +0100)
todolist.py

index 7eeb05c..8b0713e 100644 (file)
@@ -41,6 +41,12 @@ class Container(osv.Model):
         default['name'] = new_name
         return osv.Model.copy(self, cr, uid, id, default, context=context)
 
+    def _get_manday(self, cr, uid, ids, field, arg, context=None):
+        result={}
+        for container in self.browse(cr, uid, ids, context=context):
+            result[container.id] = sum([t.manday for t in container.tasks])
+        return result
+
 
     _name = "todolist.container"
 
@@ -51,7 +57,7 @@ class Container(osv.Model):
         "description": fields.text(string="Description"),
         "target": fields.date(string="Target", help="Target Date"),
         "milestone": fields.date(string="Milestone", help="Due date"),
-        "manday": fields.float(string="Man-Days", digits=(6, 2)),
+        "manday": fields.function(_get_manday, type="integer", string="Man-Days"),
         "state": fields.selection(_status, string="State", select=True),
         "tasks": fields.one2many("todolist.task", "container_id", string="Tasks"),
         "topics_id": fields.many2many("todolist.topic", "todolist_container_topic_rel", "container_id", "topic_id", string="Topics", domain=[("activated", "=","Active")]),
@@ -182,7 +188,6 @@ class Task(osv.Model):
         return osv.Model.write(self, cr, user, ids, vals, context)
 
     def create(self, cr, user, vals, context=None):
-        import pdb; pdb.set_trace()
         container_model = self.pool.get("todolist.container")
         container = container_model.read(cr, user, vals["container_id"], context=context)
         milestone = container["milestone"]