5 from openerp.osv import osv, fields
7 class Projet(osv.Model):
8 _name = "projet.projet"
11 "name": fields.char(string="Title", size=64, required=True),
12 "description": fields.text(string="Description"),
13 "domaines": fields.many2many("projet.domaine",
14 "projet_projet_domaine_rel",
17 "structures": fields.many2many("projet.structure",
18 "projet_projet_structure_rel",
21 "team_members": fields.many2many("projet.teammember",
22 "projet_projet_teammember_rel",
24 string="Team Members"),
25 "modules": fields.one2many("projet.module",
28 "chantiers": fields.one2many("projet.chantier",
31 "paliers": fields.one2many("projet.palier",
34 "moe_id": fields.many2one("projet.moe", string="MoEs", required=True),
35 "moa_id": fields.many2one("projet.moa", string="MoAs", required=True),
39 class Evolution(osv.Model):
40 _name = "projet.evolution"
43 "name": fields.char(string="Title", size=64, required=True),
44 "description": fields.text(string="Description"),
48 class Structure(osv.Model):
49 _name = "projet.structure"
52 "name": fields.char(string="Title", size=64, required=True),
53 "description": fields.text(string="Description"),
54 "projets": fields.many2many("projet.projet",
55 "projet_projet_structure_rel",
57 string="Projets (structure)")
61 class Module(osv.Model):
62 _name = "projet.module"
65 "name": fields.char(string="Title", size=64, required=True),
66 "description": fields.text(string="Description"),
67 "projet_id": fields.many2one("projet.projet",
68 string="Projet (module)",
73 class Domaine(osv.Model):
74 _name = "projet.domaine"
77 "name": fields.char(string="Title", size=64, required=True),
78 "description": fields.text(string="Description"),
79 "parent_id": fields.many2one("projet.domaine", string="Parent_id"),
80 "projets": fields.many2many("projet.projet",
81 "projet_projet_structure_rel",
87 class Teammember(osv.Model):
88 _name = "projet.teammember"
90 _inherit = "res.partner"
93 "projets": fields.many2many("projet.projet",
94 "projet_projet_teammember_rel",
97 "charges": fields.one2many("projet.projet",
103 #TODO trouver un nom a cette chose
104 class qqch(osv.Model):
105 _name = "projet.qqch"
108 "name": fields.char(string="Title", size=64, required=True),
109 "description": fields.text(string="Description"),
110 "date_jalon": fields.date(sring="Jalon"),
111 "date_init_deb": fields.date(sring="Date initiale début"),
112 "date_init_fin": fields.date(sring="Date initiale de fin"),
113 "date_plan_deb": fields.date(string="Date plannifiée début"),
114 "date_plan_fin": fields.date(string="Date plannifiée de fin"),
115 "date_reel_deb": fields.date(string="Data réelle début"),
116 "date_reel_fin": fields.date(string="Data réelle fin"),
120 class Chantier(osv.Model):
121 _name = "projet.chantier"
123 _inherit = "projet.qqch"
126 "projet_id": fields.many2one("projet.projet",
132 class Palier(osv.Model):
133 _name = "projet.palier"
135 _inherit = "projet.qqch"
138 "projet_id": fields.many2one("projet.projet",
144 class Charge(osv.Model):
145 _name = "projet.charge"
148 "name": fields.char(string="Title", size=64, required=True),
149 "description": fields.text(string="Description"),
150 "teammember_id": fields.many2one("projet.teammember",
151 string="Team Member",
158 _choses = [("primaire", "Primaire"), ("secondaire", "Secondaire"), ("generique", "Générique")]
161 "name": fields.char(string="Title"),
162 "description": fields.text(string="Description"),
163 "chose": fields.selection(_choses, string="Chose", required=True),
167 "chose": "generique"}
170 class moe(osv.Model):
172 _inherit = "projet.mo"
175 "projets": fields.one2many("projet.projet",
181 class moa(osv.Model):
183 _inherit = "projet.mo"
186 "projets": fields.one2many("projet.projet",