source: sapic/explicacion_situacional/modelsEncuestas/modelsConsultas.py

Last change on this file was 72e62e0, checked in by ltroconis <ltroconis@…>, 6 años ago

Actualización de README.rst, actualización de requerimientos.txt, agregadas validaciones en registro de usuarios

  • Propiedad mode establecida a 100644
File size: 8.3 KB
Línea 
1from __future__ import unicode_literals
2"""
3Sistema Automatizado de Planificación Integral Comunal SAPIC
4
5Copyleft (@) 2017 CENDITEL nodo Mérida - Copyleft (@) 2017 CENDITEL nodo Mérida - https://planificacion.cenditel.gob.ve/trac/wiki/WikiStart#a5.-SistemaAutomatizadodePlanificaciónIntegralComunalSAPIC
6"""
7## @package explicacion_situacional.modelsEncuestas.modelsConsultas
8#
9# Modelos correspondientes a la aplicación consulta
10# @author Rodrigo Boet (rboet at cenditel.gob.ve)
11# @author <a href='http://www.cenditel.gob.ve'>Centro Nacional de Desarrollo e Investigación en Tecnologías Libres
12# (CENDITEL) nodo Mérida - Venezuela</a>
13# @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
14# @version 1.0
15
16
17from django.db import models
18from django.contrib.auth.models import User
19
20
21class Caracterizacion(models.Model):
22    """!
23    Clase que gestiona los datos de la Caracterización situacional
24
25    @author Ing. Leonel Paolo Hernandez Macchiarulo (lhernandez at cenditel.gob.ve)
26    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
27    @date 18-09-2017
28    @version 1.0.0
29    """
30    caracterizacion = models.CharField(unique=True, max_length=128,
31                                 verbose_name='Caracterización')
32    descripcion = models.TextField()
33
34    class Meta:
35        """!
36            Clase que construye los meta datos del modelo
37
38            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
39            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
40            @date 18-07-2017
41            @version 1.0.0
42        """
43        ordering = ('caracterizacion',)
44        verbose_name = 'Caracterización'
45        verbose_name_plural = 'Características'
46
47    def __str__(self):
48        """!
49            Funcion que muestra la informacion de las Características de la explicacion situacional
50            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
51            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
52            @date 18-07-2017
53            @param self <b>{object}</b> Objeto que instancia la clase
54            @return Devuelve los datos de la asignacion de la Características de una explicacion situacional
55        """
56        return self.caracterizacion
57
58
59class Consulta(models.Model):
60    """!
61    Clase que gestiona los datos de la consulta
62
63    @author Rodrigo Boet (rboet at cenditel.gob.ve)
64    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
65    @date 15-02-2017
66    @version 1.0.0
67    """
68    #Agregado Caracterización by Leonel Hernandez
69    fk_caracterizacion = models.ForeignKey(Caracterizacion)
70
71    ## Nombre de la consulta
72    nombre_consulta = models.CharField(max_length=128, unique=True)
73
74    ## Estado de la consulta
75    activa = models.BooleanField(default=True)
76
77    ## Relación con el user
78    user = models.ForeignKey(User)
79
80    class Meta:
81        """!
82            Clase que construye los meta datos del modelo
83
84            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
85            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
86            @date 18-07-2017
87            @version 1.0.0
88        """
89        ordering = ('nombre_consulta',)
90        verbose_name = 'Consulta'
91        verbose_name_plural = 'Consultas'
92
93    def __str__(self):
94        """!
95            Funcion que muestra la informacion de las Consultas de la explicacion situacional
96            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
97            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
98            @date 18-07-2017
99            @param self <b>{object}</b> Objeto que instancia la clase
100            @return Devuelve los datos de la asignacion de la Consulta de una explicacion situacional
101        """
102        return self.nombre_consulta
103
104
105class TipoPregunta(models.Model):
106    """!
107    Clase que gestiona los tipos de preguntas
108
109    @author Rodrigo Boet (rboet at cenditel.gob.ve)
110    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
111    @date 15-02-2017
112    @version 1.0.0
113    """
114    ## Nombre de la consulta
115    tipo = models.CharField(max_length=30)
116
117    class Meta:
118        """!
119            Clase que construye los meta datos del modelo
120
121            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
122            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
123            @date 13-07-2017
124            @version 1.0.0
125        """
126        ordering = ('tipo',)
127        verbose_name = 'Tipo Pregunta'
128        verbose_name_plural = 'Tipos de Preguntas'
129
130    def __str__(self):
131        """!
132            Funcion que muestra la informacion de los tipos de preguntas
133            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
134            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
135            @date 13-07-2017
136            @param self <b>{object}</b> Objeto que instancia la clase
137            @return Devuelve los datos del tipo de pregunta
138        """
139        return self.tipo
140
141
142class Pregunta(models.Model):
143    """!
144    Clase que gestiona los datos de la pregunta
145
146    @author Rodrigo Boet (rboet at cenditel.gob.ve)
147    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
148    @date 15-02-2017
149    @version 1.0.0
150    """
151    ## Texto de la pregunta
152    texto_pregunta = models.TextField()
153
154    ## Relación con el tipo de pregunta
155    tipo_pregunta = models.ForeignKey(TipoPregunta)
156
157    ## Relación con la consulta
158    consulta = models.ForeignKey(Consulta)
159
160    class Meta:
161        """!
162            Clase que construye los meta datos del modelo
163
164            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
165            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
166            @date 18-07-2017
167            @version 1.0.0
168        """
169        ordering = ('consulta',)
170        verbose_name = 'pregunta'
171        verbose_name_plural = 'Preguntas'
172
173    def __str__(self):
174        """!
175            Funcion que muestra la informacion de las Preguntas de la explicacion situacional
176            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
177            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
178            @date 18-07-2017
179            @param self <b>{object}</b> Objeto que instancia la clase
180            @return Devuelve los datos de la asignacion de la Pregunta de una explicacion situacional
181        """
182        return self.texto_pregunta
183
184class Opcion(models.Model):
185    """!
186    Clase que gestiona las opciones de las preguntas
187
188    @author Rodrigo Boet (rboet at cenditel.gob.ve)
189    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
190    @date 15-02-2017
191    @version 1.0.0
192    """
193    ## Texto de la opción
194    texto_opcion = models.TextField()
195
196    ## Relación con la pregunta
197    pregunta = models.ForeignKey(Pregunta)
198
199    class Meta:
200        """!
201            Clase que construye los meta datos del modelo
202
203            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
204            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
205            @date 18-07-2017
206            @version 1.0.0
207        """
208        ordering = ('pregunta',)
209        verbose_name = 'Opcion'
210        verbose_name_plural = 'Opciones'
211
212    def __str__(self):
213        """!
214            Funcion que muestra la informacion de las Opciones a la pregunta
215            @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
216            @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
217            @date 18-07-2017
218            @param self <b>{object}</b> Objeto que instancia la clase
219            @return Devuelve los datos la opcion a la pregunta
220        """
221        return self.texto_opcion
Nota: Vea TracBrowser para ayuda de uso del navegador del repositorio.