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

Last change on this file since 1635 was 1635, checked in by roux, 11 years ago

Parlementaire inutile dans indexation question vu que la question commenc etoujours par son nom

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