source: cpc/trunk/project/config/doctrine/schema.yml @ 1432

Last change on this file since 1432 was 1432, checked in by teymour, 11 years ago

Introduction des filters dans l'alerte pour pouvoir faire les liens depuis la recherche

File size: 13.7 KB
Line 
1options:
2    type: MyISAM
3    collate: utf8_unicode_ci
4    charset: utf8
5
6
7Personnalite:
8  actAs:
9    Timestampable:
10    Sluggable:
11      fields: [nom]
12      unique: true
13  columns:
14    nom: string(255)
15    nom_de_famille: string(255)
16    sexe:
17      type: enum
18      values: ['H', 'F']
19  inheritance:
20    extends: ObjectCommentable
21    type: concrete
22
23Parlementaire:
24  actAs:
25    Solrable:
26      title: [nom, long_statut]
27      extra_weight: 1.5
28      description: [villes]
29      moretags: [Organismes, profession, nom_circo]
30  columns:
31    nom_circo: string(255)
32    num_circo: integer
33    site_web: string(255)
34    debut_mandat: date
35    fin_mandat: date
36    place_hemicycle: integer
37    url_an: string(255)
38    profession: string(255)
39    autoflip: boolean
40    id_an:
41      type: integer
42      unique: true
43    type:
44      type: enum
45      values: ['depute', 'senateur']
46    groupe_acronyme: string(8)
47    adresses: string
48    autres_mandats: string
49    mails: string
50    top: string
51    villes: string
52  inheritance:
53    extends: Personnalite
54    type: concrete
55  relations:
56    Organismes:
57      class: Organisme
58      refClass: ParlementaireOrganisme
59      foreignAlias: Parlementaires
60  indexes:
61    uniq_url:
62      fields: [url_an]
63      type: unique
64
65ParlementairePhoto:
66  columns:
67    slug: string(255)
68    photo: text
69       
70
71Organisme:
72  actAs:
73    Timestampable:
74    Sluggable:
75      fields: [nom]
76      unique: true
77    Solrable:
78      title: [titre]
79      extra_weight: 1.1
80      moretags: [type]
81      index_if: is_to_index
82  columns:
83    nom:
84      type: string(255)
85      unique: true
86#      notnull: true
87    type:
88      type: enum
89      values: ['parlementaire', 'groupe', 'extra']
90
91ParlementaireOrganisme:
92  columns:
93    fonction: string(512)
94    importance: integer
95    debut_fonction: date
96    organisme_id:
97      type: integer
98      primary: true
99    parlementaire_id:
100      type: integer
101      primary: true
102  relations:
103    Parlementaire:
104      foreignAlias: ParlementaireOrganismes
105    Organisme:
106      foreignAlias: ParlementaireOrganismes
107
108Seance:
109  actAs:
110    Timestampable:
111  columns:
112    date: date
113    numero_semaine: integer
114    annee: integer
115    type:
116      type: enum
117      values: ['commission', 'hemicycle']
118    moment: string(30)
119    organisme_id: integer
120    tagged: boolean
121    session: string(10)
122  inheritance:
123    extends: ObjectCommentable
124    type: concrete
125  relations:
126    Organisme:
127      foreignAlias: Seances
128  indexes:
129    uniq_index:
130      fields: [organisme_id, date, moment]
131      type: unique
132    index_session:
133      fields: [session]
134    index_semaine:
135      fields: [annee, numero_semaine]
136    index_annee:
137      fields: [annee]
138
139Presence:
140  actAs:
141    Timestampable:
142  columns:
143    parlementaire_id: integer
144    seance_id: integer
145    nb_preuves: integer
146    date: date
147  relations:
148    Parlementaire:
149      foreignAlias: Presences
150    Seance:
151      foreignAlias: Presences
152
153PreuvePresence:
154  actAs:
155    Timestampable:
156  columns:
157    presence_id: integer
158    type:
159      type: enum
160      values: ['jo', 'intervention', 'compte-rendu', 'autre']
161    source: string(200)
162  relations:
163    Presence:
164      foreignAlias: Preuves
165
166Section:
167  actAs:
168    Timestampable: ~
169    Taggable: ~
170    Solrable:
171      title: [titre_complet]
172      extra_weight: 1.3
173      index_if: is_parent
174      date: max_date
175  columns:
176    md5:
177      type: string(36)
178      unique: true
179    titre: string(256)
180    titre_complet: string(512)
181    section_id: integer
182    min_date: string(15)
183    max_date: date
184    timestamp: integer
185    nb_interventions: integer
186    url_an: string(255)
187  inheritance:
188    extends: ObjectCommentable
189    type: concrete
190  relations:
191    Section:
192      foreignAlias: SubSections
193
194Intervention:
195  actAs:
196    Timestampable: ~
197    Taggable: ~
198    Solrable:
199      description: [Parlementaire, Personnalite, intervention]
200      moretags: [Parlementaire, Personnalite, type]
201      devaluate_if_wordcount_under: 200
202      date: date
203  columns:
204#    id:
205#      type: string(36)
206#      primary: true
207    nb_mots: integer
208    md5:
209      type: string(36)
210      unique: true
211    intervention:
212      type: string
213    timestamp: integer
214    source: string(128)
215    seance_id: integer
216    section_id: integer
217    type:
218      type: enum
219      values: ['commission', 'question', 'loi']
220    date: date
221    personnalite_id: integer
222    parlementaire_id: integer
223    fonction: string(512)
224  relations:
225    Section:
226      foreignAlias: Interventions
227    Seance:
228      foreignAlias: Interventions
229    Personnalite:
230      class: Personnalite
231      foreignAlias: Interventions
232    Parlementaire:
233      class: Parlementaire
234      foreignAlias: Interventions
235  inheritance:
236    extends: ObjectCommentable
237    type: concrete
238  indexes:
239    date_intervention:
240      fields: [date]
241    ft_intervention:
242      fields: [intervention]
243      type: fulltext
244
245Amendement:
246  actAs:
247    Timestampable: ~
248    Taggable: ~
249    Solrable:
250      title: [titre]
251      description: [expose, texte, signataires]
252      moretags: [Parlementaires, sort]
253      date: date
254  columns:
255    source:
256      type: string(255)
257    legislature: integer
258    texteloi_id: string(16)
259    numero: string(8)
260    rectif: integer
261    sujet: string(100)
262    sort:
263      type: enum
264      values: ['Indéfini', 'Adopté', 'Irrecevable', 'Rejeté', 'Retiré', 'Tombe', 'Non soutenu', 'Retiré avant séance', 'Rectifié', 'Favorable']
265    date: date
266    signataires: string
267    texte:
268      type: string
269    expose:
270      type: string
271    content_md5: string(36)
272  relations:
273    Parlementaires:
274      class: Parlementaire
275      refClass: ParlementaireAmendement
276      foreignAlias: Amendements
277    Texteloi:
278      foreignAlias: Texteloi
279  inheritance:
280    extends: ObjectCommentable
281    type: concrete
282  indexes:
283    ft_amendements:
284      fields: [sujet, texte, expose]
285      type: fulltext
286    uniq_loi_num:
287      fields: [legislature, texteloi_id, numero, rectif]
288      type: unique
289
290QuestionEcrite:
291  actAs:
292    Timestampable: ~
293    Taggable: ~
294    Solrable:
295      description: [Parlementaire, question, ministere, reponse, themes]
296      moretags: [Parlementaire, ministere, motif_retrait, numero, themes]
297      date: last_date
298  columns:
299    source:
300      type: string(255)
301      unique: true
302    legislature: integer
303    numero: integer
304    date: date
305    date_cloture: date
306    ministere: string
307    themes: string
308    question:
309      type: string
310    reponse:
311      type: string
312    motif_retrait:
313      type: string
314    content_md5: string(36)
315    parlementaire_id: integer
316  inheritance:
317    extends: ObjectCommentable
318    type: concrete
319  relations:
320    Parlementaire:
321      class: Parlementaire
322      foreignAlias: QuestionEcrites
323  indexes:
324    uniq_num:
325      fields: [legislature, numero]
326      type: unique
327
328ParlementaireAmendement:
329  actAs:
330    Timestampable:
331  columns:
332    parlementaire_id: integer
333    amendement_id: string(36)
334    numero_signataire: integer
335  relations:
336    Parlementaire:
337      foreignAlias: ParlementaireAmendements
338    Amendement:
339      foreignAlias: ParlementaireAmendements
340
341Citoyen:
342  actAs:
343    Timestampable: ~
344    Sluggable:
345      fields: [login]
346      unique: true
347    Solrable:
348      title: [login]
349      extra_weight: 1.1
350      description: [activite]
351      moretags: [activite]
352      index_if: is_active
353  columns:
354    login:
355      type: string(128)
356      unique: true
357    password:
358      type: string(40)
359    email:
360      type: string(255)
361      unique: true
362      notnull: true
363    activite: string(255)
364    url_site: string(255)
365    employe_an:
366      type: boolean
367      default: 0
368    travail_pour: integer
369    naissance: date
370    sexe:
371      type: enum
372      values: [null, 'H', 'F']
373    nom_circo: string(255)
374    num_circo: integer
375    photo: blob
376    activation_id: string(32)
377    is_active:
378      type: boolean
379      default: 0
380    role:
381      type: enum
382      values: ['membre', 'moderateur', 'admin']
383      default: membre
384    last_login: timestamp
385    parametres: string
386  indexes:
387    is_active:
388      fields: [is_active]
389    role:
390      fields: [role]
391
392VariableGlobale:
393  actAs:
394    Timestampable:
395  columns:
396    champ: string(32)
397    value: blob
398
399Commentaire:
400  actAs:
401    Timestampable:
402    Solrable:
403      description: [Citoyen, commentaire]
404      moretags: [Citoyen, object_type, object_id, Parlementaires]
405      date: created_at
406      index_if: is_public
407  columns:
408    citoyen_id: integer
409    commentaire: string
410    is_public: boolean
411    ip_address: string(512)
412    rate: integer
413    object_type: string(64)
414    object_id: string(16)
415    lien: string(128)
416    presentation: string(512)
417  relations:
418    Citoyen:
419      foreignAlias: Commentaires
420  inheritance:
421    extends: ObjectRated
422    type: concrete
423  indexes:
424    commentable:
425      fields: [object_type, object_id]
426
427CommentaireObject:
428 columns:
429   object_type: string(64)
430   object_id: integer
431   commentaire_id: integer
432 relations:
433   Commentaire:
434     foreignAlias: Objects
435 indexes:
436   unique:
437     fields: [object_type, object_id, commentaire_id]
438     type: unique
439
440ObjectRated:
441  columns:
442    rate: integer
443
444ObjectCommentable:
445  columns:
446    nb_commentaires: integer
447
448Rate:
449  actAs:
450    Timestampable:
451  columns:
452    object_type: string(50)
453    object_id: integer
454    rate: integer
455    citoyen_id: integer
456  relations:
457    Citoyen:
458      foreignAlias: Rates
459    Object:
460      foreignAlias: Rates
461  indexes:
462    unique:
463      fields: [object_type, object_id, citoyen_id]
464      type: unique
465
466Article:
467  actAs:
468    Timestampable:
469    Versionable:
470    Sluggable:
471      fields: [titre]
472  columns:
473    titre: string(254)
474    corps: string
475    user_corps: string
476    categorie: string(128)
477    citoyen_id: integer
478    article_id: integer
479    link: string(255)
480    status:
481      type: enum
482      values: ['public', 'brouillon', 'offline']
483      default: 'brouillon'
484    object_id: integer
485  inheritance:
486    extends: ObjectRated
487    type: concrete
488  inheritance:
489    extends: ObjectCommentable
490    type: concrete
491  relations:
492    Citoyen:
493      foreignAlias: Articles
494    Article:
495      foreignAlias: SousArticles
496  indexes:
497    icategories:
498      fields: [categorie]
499    iobject:
500      fields: [categorie, object_id]
501      unique: true
502    ititre:
503      fields: [categorie, titre(200)]
504    ititrecitoyen:
505      fields: [categorie, titre(200), citoyen_id]
506    iarticle:
507      fields: [article_id]
508
509ArticleLoi:
510  actAs:
511    Sluggable:
512      fields: [titre]
513      unique: false
514  columns:
515    texteloi_id: string(16)
516    titre: string(16)
517    ordre: integer
518    precedent: string(16)
519    suivant: string(16)
520    expose:
521      type: string
522    titre_loi_id: integer
523  relations:
524    TitreLoi:
525      class: TitreLoi
526      foreignAlias: Articles
527    Texteloi:
528      foreignAlias: Texteloi
529  inheritance:
530    extends: ObjectCommentable
531    type: concrete
532  indexes:
533    iloititre:
534      fields: [texteloi_id, titre]
535      type: unique
536    iloiarticle:
537      fields: [texteloi_id, ordre]
538
539Alinea:
540  actAs:
541    Timestampable:
542  columns:
543    texteloi_id: string(16)
544    article_loi_id: integer
545    numero: integer
546    texte:
547      type: string
548    ref_loi: string(255)
549  relations:
550    Article:
551      class: ArticleLoi
552      foreignAlias: Alineas
553    Texteloi:
554      foreignAlias: Texteloi
555  inheritance:
556    extends: ObjectCommentable
557    type: concrete
558  indexes:
559    iarticleloinumero:
560      fields: [texteloi_id, article_loi_id, numero]
561      type: unique
562
563TitreLoi:
564  actAs:
565    Timestampable:
566  columns:
567    texteloi_id: string(16)
568    chapitre: string(8)
569    section: string(8)
570    titre: string(512)
571    expose:
572      type: string
573    parlementaire_id: integer
574    date: date
575    source:
576      type: string(128)
577      unique: true
578    nb_articles: integer
579    titre_loi_id: integer
580  inheritance:
581    extends: ObjectCommentable
582    type: concrete
583  relations:
584    Parlementaire:
585      class: Parlementaire
586      foreignAlias: Propositions
587    TitreLoi:
588      foreignAlias: SousSections
589    Texteloi:
590      foreignAlias: Texteloi
591
592Texteloi:
593  actAs:
594    Timestampable: ~
595    Taggable: ~
596    Solrable:
597      title: [titre]
598      description: [contenu, annexe, signataires]
599      moretags: [categorie, type, Organisme, Parlementaires]
600      date: date
601  columns:
602    id:
603      type: string(16)
604      unique: true
605    legislature: integer
606    numero: integer
607    annexe: string(12)
608    type:
609      type: enum
610      values: ['Proposition de loi', 'Proposition de résolution', 'Projet de loi', 'Texte de la commission', 'Lettre', 'Rapport', "Rapport d'information", 'Avis']
611    type_details: string(512)
612    categorie: string(128)
613    url_an: string(255)
614    titre: string(512)
615    date: date
616    source:
617      type: string(128)
618      unique: true
619    organisme_id: integer
620    signataires: string
621    contenu: string
622  relations:
623    Parlementaires:
624      class: Parlementaire
625      refClass: ParlementaireTexteloi
626      foreignAlias: Textelois
627    Organisme:
628      foreignAlias: Textelois
629  inheritance:
630    extends: ObjectCommentable
631    type: concrete
632  indexes:
633    index_url:
634      fields: [url_an]
635    index_alpha:
636      fields: [numero, annexe]
637      type: unique
638    index_type:
639      fields: [type(30), type_details(200)]
640    index_date:
641      fields: [date]
642
643ParlementaireTexteloi:
644  actAs:
645    Timestampable:
646  columns:
647    parlementaire_id: integer
648    texteloi_id: string(16)
649    importance: integer
650    fonction: string(255)
651  relations:
652    Parlementaire:
653      foreignAlias: ParlementaireTextelois
654    Texteloi:
655      foreignAlias: ParlementaireTextelois
656
657Alerte:
658  actAs:
659    Timestampable:
660  columns:
661    email: string(128)
662    query: string
663    filter: string
664    titre: string
665    confirmed: boolean
666    no_human_query: boolean
667    period:
668      type: enum
669      values: ['HOUR', 'DAY', 'WEEK', 'MONTH']
670    next_mail: datetime
671    last_mail: datetime
672    citoyen_id: integer
673    verif: string(128)
674  relations:
675    Citoyen:
676      class: Citoyen
677      foreignAlias: Alertes
678   
Note: See TracBrowser for help on using the repository browser.