Ajout d'un champ charge_reel dans palier
[OpenERP/cmmi.git] / mo.py
diff --git a/mo.py b/mo.py
index 261222e..76799ad 100644 (file)
--- a/mo.py
+++ b/mo.py
@@ -11,10 +11,13 @@ MOA = Maîtrise d'ouvrage (ceux qui demandent et contrôlent)
 from openerp.osv import osv, fields
 
 
-class Role_MO(osv.Model):
+# ================================= ROLE MO ================================= #
+class RoleMO(osv.Model):
     """Role MO: différents types de MOE et MOA"""
 
-    _name = "projet.role_mo"
+    _name = "cmmi.mo.role"
+
+    _description = "Rattachement des MOs et des roles."
 
     _statuts = [("actif", "Actif"), ("inactif", "Inactif")]
 
@@ -25,74 +28,72 @@ class Role_MO(osv.Model):
         "code": fields.char(string="Code", size=8, required=True),
         "description": fields.text(string="Description"),
         "statut": fields.selection(_statuts, string="Statut"),
-        "type_mo": fields.selection(_types_mo, string="Type de MO", required=True),
-        "structures": fields.one2many("projet.structure",
-                                   "role_mo_id",
-                                   string="MOs"),
-        "mo_ids": fields.one2many("projet.mo",
-                                   "role_mo_id",
-                                   string="MOs"),
+        "type_mo": fields.selection(_types_mo,
+                                    string="Type de MO",
+                                    required=True),
+        "mo_ids": fields.one2many("cmmi.mo", #TODO: à vérifier si pas de bugs
+                                  "role_mo_id",
+                                  string="MOs"),
     }
 
 
-class mo(osv.Model):
-    _name = "projet.mo"
+# ==================================== MO =================================== #
+class Mo(osv.Model):
+    _name = "cmmi.mo"
+
+    _description = "Table de reference des MOs."
 
-    _choses = [("primaire", "Primaire"),
-               ("secondaire", "Secondaire"),
-               ("generique", "Générique")]
+    _rangs = [("primaire", "Primaire"),
+              ("secondaire", "Secondaire"),
+              ("generique", "Générique")]
 
     _columns = {
         "name": fields.char(string="Title"),
         "description": fields.text(string="Description"),
-        "chose": fields.selection(_choses, string="Chose", required=True),
-        "role_mo_id": fields.many2one("projet.role_mo", string="Role"),
-        "charges": fields.one2many("projet.charge",
-                                   "mo_id",
-                                   string="Charges"),
+        "rang": fields.selection(_rangs, string="Rang", required=True),
+        "role_mo_id": fields.many2one("cmmi.mo.role", string="Role"),
+#        "charges": fields.one2many("cmmi.evolution.charge", # TODO: Faire l'association teammember MO plutôt que MO.
+#                                   "mo_id",
+#                                   string="Charges"),
     }
 
     _defaults = {
-        "chose": "generique"}
+        "rang": "primaire"}
 
 
-class moe(osv.Model):
-    _name = "projet.moe"
-    _inherit = "projet.mo"
 
-    _columns = {
-        "projets": fields.one2many("projet.projet",
-                                     "moe_id",
-                                     string="Projets"),
-    }
+# =================================== MOE =================================== #
+class Moe(osv.Model):
+    _name = "cmmi.mo.moe"
 
+    _description = "Table de referencement des MOEs."
 
-class moa(osv.Model):
-    _name= "projet.moa"
-    _inherit = "projet.mo"
+    _inherit = "cmmi.mo"
 
     _columns = {
-        "projets": fields.one2many("projet.projet",
-                                     "moa_id",
-                                     string="Projets"),
+        "role_mo_id": fields.many2one("cmmi.mo.role",
+                                      string="Role",
+                                      domain=[("type_mo", "=", "MOE")]),
+        "projets": fields.one2many("cmmi.projet",
+                                   "moe_id",
+                                   string="Projets"),
     }
 
 
-class Structure(osv.Model):
 
-    _name = "projet.structure"
+# =================================== MOA =================================== #
+class Moa(osv.Model):
+    _name = "cmmi.mo.moa"
 
-    _statuts = [("actif", "Actif"), ("inactif", "Inactif")]
+    _description = "Table de referencement des MOAs."
+
+    _inherit = "cmmi.mo"
 
     _columns = {
-        "name": fields.char(string="Title", size=64, required=True),
-        "code": fields.char(string="Code", size=8, required=True),
-        "description": fields.text(string="Description"),
-        "parent_id": fields.many2one("projet.structure", string="Parent_id"),
-        "statut": fields.selection(_statuts, string="Statut"),
-        "role_mo_id":fields.many2one("projet.role_mo", string="Role MO"),
-        "projets": fields.many2many("projet.projet",
-                                    "projet_projet_structure_rel",
-                                    "structures",
-                                    string="Projets"),
+        "role_mo_id": fields.many2one("cmmi.mo.role",
+                                      string="Role",
+                                      domain=[("type_mo", "=", "MOA")]),
+        "projets": fields.one2many("cmmi.projet",
+                                   "moa_id",
+                                   string="Projets"),
     }