source: sapic/organizaciones/models.py @ bda38aa

erwinexplicacion_situacionalgestion_usuariostaller_django
Last change on this file since bda38aa was 49db2df, checked in by lhernandez <lhernandez@…>, 7 años ago

Añadidos las fonts

  • Propiedad mode establecida a 100644
File size: 12.1 KB
Línea 
1# -*- coding: utf-8 -*-
2"""!
3    Models que construye el modelo de datos de las organizaciones sociales
4
5    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
6    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
7    @date 25-07-2017
8    @versi 1.0.0
9"""
10
11from django.db import models
12
13from utils.models import (
14    Parroquia, TipoOrganizacion, TipoDocumento
15)
16
17
18
19class OrganizacionSocial(models.Model):
20    """!
21        Clase que contiene el modelo de datos de las organizaciones sociales
22
23        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
24        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
25        @date 25-07-2017
26        @version 1.0.0
27    """
28    fk_tipo_organizacion = models.ForeignKey(TipoOrganizacion)
29    codigo = models.CharField(max_length=16)
30    rif = models.CharField(max_length=12, unique=True)
31    situr = models.CharField(max_length=17)
32    nombre = models.CharField(max_length=256)
33    email = models.EmailField(max_length=128)
34    fecha_conformacion = models.DateField(auto_now=False)
35    sector = models.TextField(blank=True)
36    localidad = models.ForeignKey(Parroquia)
37    activa = models.BooleanField(default=True)
38
39    class Meta:
40        """!
41            Clase que construye los meta datos del modelo
42
43            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
44            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
45            @date 25-07-2017
46            @version 1.0.0
47        """
48        ordering = ('codigo',)
49        verbose_name = 'Organizacion Social'
50        verbose_name_plural = 'Organizaciones Sociales'
51
52    def __str__(self):
53        """!
54            Fucncion que muestra la informacion de las organizaciones sociales
55            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
56            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
57            @date 25-07-2017
58            @param self <b>{object}</b> Objeto que instancia la clase
59            @return Devuelve los datos de la organizacion social
60        """
61        return self.codigo
62
63
64class MovimientoSocial(models.Model):
65    """!
66        Clase que contiene el modelo de datos de los Movimientos Sociales
67
68        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
69        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
70        @date 25-07-2017
71        @version 1.0.0
72    """
73    nombre = models.CharField(max_length=256, unique=True)
74    descripcion = models.TextField(blank=True)
75    activo = models.BooleanField(default=True)
76
77    class Meta:
78        """!
79            Clase que construye los meta datos del modelo
80
81            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
82            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
83            @date 25-07-2017
84            @version 1.0.0
85        """
86        ordering = ('nombre',)
87        verbose_name = 'Movimiento Social'
88        verbose_name_plural = 'Movimientos Sociales'
89
90    def __str__(self):
91        """!
92            Fucncion que muestra la informacion sobre los Movimientos Sociales
93            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
94            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
95            @date 25-07-2017
96            @param self <b>{object}</b> Objeto que instancia la clase
97            @return Devuelve los datos de el Movimiento Social
98        """
99        return self.nombre
100
101
102class ComunaConsejoComunal(models.Model):
103    """!
104        Clase que contiene el modelo de datos de los Consejos Comunales Relacionados a las Comunas
105
106        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
107        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
108        @date 25-07-2017
109        @version 1.0.0
110    """
111    fk_comuna = models.ForeignKey(OrganizacionSocial, related_name='comuna')
112    fk_consejo_comunal = models.OneToOneField(OrganizacionSocial, related_name='consejo_comunal')
113
114    class Meta:
115        """!
116            Clase que construye los meta datos del modelo
117
118            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
119            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
120            @date 25-07-2017
121            @version 1.0.0
122        """
123        ordering = ('fk_comuna',)
124        verbose_name = 'Consejo Comunal asociado a Comuna'
125        verbose_name_plural = 'Consejos Comunales asociados a las Comunas'
126        unique_together = (("fk_comuna", "fk_consejo_comunal"),)
127
128    def __str__(self):
129        """!
130            Fucncion que muestra la informacion sobre los Consejos Comunales asociados a las Comunas
131            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
132            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
133            @date 25-07-2017
134            @param self <b>{object}</b> Objeto que instancia la clase
135            @return Devuelve los datos de el Consejo Comunal asociado a Comuna
136        """
137        return self.pk
138
139
140class ComunaOrgSociproductiva(models.Model):
141    """!
142        Clase que contiene el modelo de datos de las organizaciones Socioproductivas Relacionadas a las comunas
143
144        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
145        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
146        @date 25-07-2017
147        @version 1.0.0
148    """
149    fk_comuna = models.ForeignKey(OrganizacionSocial, related_name='comunas')
150    fk_ospc = models.OneToOneField(OrganizacionSocial, related_name='opsc')
151
152    class Meta:
153        """!
154            Clase que construye los meta datos del modelo
155
156            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
157            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
158            @date 25-07-2017
159            @version 1.0.0
160        """
161        ordering = ('fk_comuna',)
162        verbose_name = 'Organizacion Socioproductiva relacionada a la comuna'
163        verbose_name_plural = 'Organizaciones Socioproductivas relacionadas a las comunas'
164        unique_together = (("fk_comuna", "fk_ospc"),)
165
166    def __str__(self):
167        """!
168            Fucncion que muestra la informacion sobre las Organizaciones Socioproductivas Relacionadas a las Comunas
169            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
170            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
171            @date 25-07-2017
172            @param self <b>{object}</b> Objeto que instancia la clase
173            @return Devuelve los datos de la  Organizacion Socioproductiva relacionada a la comuna
174        """
175        return self.pk
176
177
178class ComunaMovimientoSocial(models.Model):
179    """!
180        Clase que contiene el modelo de datos de los Movimientos Sociales Relacionados a las Comunas
181
182        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
183        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
184        @date 25-07-2017
185        @version 1.0.0
186    """
187    fk_comuna = models.ForeignKey(OrganizacionSocial,  related_name='comunas_mov')
188    fk_mov_social = models.ForeignKey(MovimientoSocial)
189
190    class Meta:
191        """!
192            Clase que construye los meta datos del modelo
193
194            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
195            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
196            @date 25-07-2017
197            @version 1.0.0
198        """
199        ordering = ('fk_comuna',)
200        verbose_name = 'Movimiento Social Relacionado a la Comuna'
201        verbose_name_plural = 'Movimientos Sociales Relacionados a las Comunas'
202        unique_together = (("fk_comuna", "fk_mov_social"),)
203
204    def __str__(self):
205        """!
206            Fucncion que muestra la informacion sobre los Movimientos Sociales Relacionados a las Comunas
207            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
208            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
209            @date 25-07-2017
210            @param self <b>{object}</b> Objeto que instancia la clase
211            @return Devuelve los datos del Movimiento Social Relacionado a la Comuna
212        """
213        return self.pk
214
215
216class Vocero(models.Model):
217    """!
218        Clase que contiene el modelo de datos de los Voceros
219
220        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
221        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
222        @date 25-07-2017
223        @version 1.0.0
224    """
225    fk_tipo_documento = models.ForeignKey(TipoDocumento)
226    nombres = models.CharField(max_length=120)
227    apellidos = models.CharField(max_length=120)
228    documento_identidad = models.PositiveIntegerField(unique=True)
229    sector = models.TextField(blank=True, null=True)
230    casa_edificio_calle = models.TextField(blank=True, null=True)
231    localidad = models.ForeignKey(Parroquia, null=True)
232    activo = models.BooleanField(default=True)
233
234    class Meta:
235        """!
236            Clase que construye los meta datos del modelo
237
238            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
239            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
240            @date 25-07-2017
241            @version 1.0.0
242        """
243        ordering = ('documento_identidad',)
244        verbose_name = 'Vocero'
245        verbose_name_plural = 'Voceros'
246
247    def __str__(self):
248        """!
249            Fucncion que muestra la informacion sobre los Voceros
250            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
251            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
252            @date 25-07-2017
253            @param self <b>{object}</b> Objeto que instancia la clase
254            @return Devuelve los datos del Vocero
255        """
256        return self.documento_identidad
257
258
259class VoceroOrganizacionSocial(models.Model):
260    """!
261        Clase que contiene el modelo de datos de los Voceros asociados a las organizacione sociales
262
263        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
264        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
265        @date 25-07-2017
266        @version 1.0.0
267    """
268    fk_org_social = models.ForeignKey(OrganizacionSocial)
269    fk_vocero = models.ForeignKey(Vocero)
270
271    class Meta:
272        """!
273            Clase que construye los meta datos del modelo
274
275            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
276            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
277            @date 25-07-2017
278            @version 1.0.0
279        """
280        ordering = ('fk_vocero',)
281        verbose_name = 'Vocero asociado a la Organizacion Social'
282        verbose_name_plural = 'Voceros asociados a las Organizaciones Sociales'
283        unique_together = (("fk_org_social", "fk_vocero"),)
284
285    def __str__(self):
286        """!
287            Fucncion que muestra la informacion sobre los Voceros asociados a las organizacione sociales
288            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
289            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
290            @date 25-07-2017
291            @param self <b>{object}</b> Objeto que instancia la clase
292            @return Devuelve los datos del Vocero asociado a la Organizacion Social
293        """
294        return self.fk_vocero
Nota: Vea TracBrowser para ayuda de uso del navegador del repositorio.