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 "phases": fields.one2many("projet.phase",
37 "moe_id": fields.many2one("projet.moe", string="MoEs", required=True),
38 "moa_id": fields.many2one("projet.moa", string="MoAs", required=True),
42 class Evolution(osv.Model):
43 _name = "projet.evolution"
46 "name": fields.char(string="Title", size=64, required=True),
47 "description": fields.text(string="Description"),
48 "charges": fields.one2many("projet.charge",
54 class Structure(osv.Model):
55 _name = "projet.structure"
58 "name": fields.char(string="Title", size=64, required=True),
59 "description": fields.text(string="Description"),
60 "projets": fields.many2many("projet.projet",
61 "projet_projet_structure_rel",
63 string="Projets (structure)"),
67 class Module(osv.Model):
68 _name = "projet.module"
71 "name": fields.char(string="Title", size=64, required=True),
72 "description": fields.text(string="Description"),
73 "projet_id": fields.many2one("projet.projet",
74 string="Projet (module)",
79 class Domaine(osv.Model):
80 _name = "projet.domaine"
83 "name": fields.char(string="Title", size=64, required=True),
84 "description": fields.text(string="Description"),
85 "parent_id": fields.many2one("projet.domaine", string="Parent_id"),
86 "projets": fields.many2many("projet.projet",
87 "projet_projet_structure_rel",
93 class Teammember(osv.Model):
94 _name = "projet.teammember"
96 _inherit = "res.partner"
99 "projets": fields.many2many("projet.projet",
100 "projet_projet_teammember_rel",
103 "charges": fields.one2many("projet.projet",
109 class Phase(osv.Model):
110 _name = "projet.phase"
113 "name": fields.char(string="Title", size=64, required=True),
114 "description": fields.text(string="Description"),
115 "projet_id": fields.many2one("projet.projet",
118 "charges": fields.one2many("projet.charge",
123 #TODO trouver un nom a cette chose
124 class qqch(osv.Model):
125 _name = "projet.qqch"
128 "name": fields.char(string="Title", size=64, required=True),
129 "description": fields.text(string="Description"),
130 "date_jalon": fields.date(sring="Jalon"),
131 "date_init_deb": fields.date(sring="Date initiale début"),
132 "date_init_fin": fields.date(sring="Date initiale de fin"),
133 "date_plan_deb": fields.date(string="Date plannifiée début"),
134 "date_plan_fin": fields.date(string="Date plannifiée de fin"),
135 "date_reel_deb": fields.date(string="Data réelle début"),
136 "date_reel_fin": fields.date(string="Data réelle fin"),
141 "date_init_deb_before_date_init_fin",
142 "CHECK(date_init_deb<> date_init_fin)",
143 "The date_init_deb should be previous date_init_fin",
146 "date_plan_deb_before_date_plan_fin",
147 "CHECK(date_plan_deb<> date_plan_fin)",
148 "The date_plan_deb should be previous date_plan_fin",
151 "date_reel_deb_before_date_reel_fin",
152 "CHECK(date_reel_deb<> date_reel_fin)",
153 "The date_reel_deb should be previous date_reel_fin",
158 class Chantier(osv.Model):
159 _name = "projet.chantier"
161 _inherit = "projet.qqch"
164 "projet_id": fields.many2one("projet.projet",
170 class Palier(osv.Model):
171 _name = "projet.palier"
173 _inherit = "projet.qqch"
176 "projet_id": fields.many2one("projet.projet",
182 class Charge(osv.Model):
183 _name = "projet.charge"
186 "name": fields.char(string="Title", size=64, required=True),
187 "description": fields.text(string="Description"),
188 "teammember_id": fields.many2one("projet.teammember",
189 string="Team Member",
191 "phase_id": fields.many2one("projet.phase",
194 "evolution_id": fields.many2one("projet.evolution",
202 _choses = [("primaire", "Primaire"), ("secondaire", "Secondaire"), ("generique", "Générique")]
205 "name": fields.char(string="Title"),
206 "description": fields.text(string="Description"),
207 "chose": fields.selection(_choses, string="Chose", required=True),
211 "chose": "generique"}
214 class moe(osv.Model):
216 _inherit = "projet.mo"
219 "projets": fields.one2many("projet.projet",
225 class moa(osv.Model):
227 _inherit = "projet.mo"
230 "projets": fields.one2many("projet.projet",