source: seiven/productivo/models.py

Last change on this file was e0640af, checked in by Ing. Roldan D. Vargas G <rvargas@…>, 6 años ago

servicios para la consulta de datos a sidepro

  • Propiedad mode establecida a 100644
File size: 5.5 KB
Línea 
1"""
2Sistema Estadístico Integral de Venezuela - (SEIVEN)
3
4Copyleft (@) 2015 CENDITEL nodo Mérida - https://mpv.cenditel.gob.ve/seiven
5"""
6## @namespace productivo.models
7#
8# Contiene las clases, atributos, métodos y/o funciones a implementar para los modelos del área productiva
9# @author Ing. Roldan Vargas (rvargas at cenditel.gob.ve)
10# @author <a href='http://www.cenditel.gob.ve'>Centro Nacional de Desarrollo e Investigación en Tecnologías Libres
11# (CENDITEL) nodo Mérida - Venezuela</a>
12# @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
13from __future__ import unicode_literals
14from django.db import models
15from django.utils.encoding import python_2_unicode_compatible
16from base.models import ModelReadOnly
17
18
19@python_2_unicode_compatible
20class Estado(ModelReadOnly):
21    """!
22    Clase que contiene los Estados de un Pais
23
24    @author Ing. Roldan Vargas (rvargas at cenditel.gob.ve)
25    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
26    @date 10-05-2016
27    @version 2.0.0
28    """
29
30    ## Nombre del Estado
31    nombre = models.CharField(max_length=50)
32
33    class Meta(ModelReadOnly.Meta):
34        """!
35        Metaclase de la clase Estado del SIDEPRO
36
37        @author Ing. Roldan Vargas (rvargas at cenditel.gob.ve)
38        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
39        @date 18-09-2017
40        @version 1.0.0
41        """
42
43        ## Nombre de la tabla en la base de datos
44        db_table = "base_estado"
45
46    def __str__(self):
47        """!
48        Método que muestra la información sobre el Estado
49
50        @author Ing. Roldan Vargas (rvargas 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-09-2017
53        @param self <b>{object}</b> Objeto que instancia la clase
54        @return Devuelve los datos del Estado
55        """
56        return self.nombre
57
58@python_2_unicode_compatible
59class AnhoRegistro(ModelReadOnly):
60    """!
61    Clase que contiene los Años solicitados para el registro de datos
62
63    @author Ing. Roldan Vargas (rvargas 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 18-09-2017
66    @version 1.0.0
67    """
68
69    ## Año a registrar
70    anho = models.CharField(max_length=4, unique=True)
71
72    class Meta:
73        """!
74        Metaclase que permite establecer las propiedades de la clase AnhoRegistro
75
76        @author Ing. Roldan Vargas rvargas at cenditel.gob.ve
77        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
78        @date 18-09-2017
79        @version 1.0.0
80        """
81        db_table = "base_anhoregistro"
82
83    def __str__(self):
84        """!
85        Método que muestra la información sobre el Estado
86
87        @author Ing. Roldan Vargas (rvargas at cenditel.gob.ve)
88        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
89        @date 18-09-2017
90        @param self <b>{object}</b> Objeto que instancia la clase
91        @return Devuelve los datos del año de registro
92        """
93        return self.anho
94
95@python_2_unicode_compatible
96class TipoComunal(ModelReadOnly):
97    """!
98    Clase que contiene los tipos de organizaciones comunales
99
100    @author Eveli Ramírez (eramirez at cenditel.gob.ve)
101    @copyright <a href='​http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
102    @date 17-05-2016
103    @version 2.0
104    """
105
106    ## Tipo de Organización Comunal
107    tipo_comunal = models.CharField(max_length=45)
108
109
110@python_2_unicode_compatible
111class UnidadEconomica(ModelReadOnly):
112    """!
113    Clase que gestiona los datos para el registro de la Unidad Económica
114
115    @author Eveli Ramírez (eramirez at cenditel.gob.ve)
116    @copyright <a href='​http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
117    @date 18-09-2017
118    @version 1.0.0
119    """
120
121    ## R.I.F. de la Unidad Económica que identifica al usuario en el sistema
122    rif = models.CharField(max_length=10, unique=True)
123
124    ## Nombre Comercial de la Unidad Económica
125    nombre_ue = models.CharField(max_length=255)
126
127    ## Razón Social
128    razon_social = models.CharField(max_length=255)
129
130    ## Organización comunal
131    orga_comunal = models.BooleanField(default=False)
132
133    ## Establece la relación con el Tipo de Organización Comunal
134    tipo_comunal = models.ForeignKey(TipoComunal, null=True)
135
136    ## Casa Matriz de alguna Franquicia
137    casa_matriz_franquicia = models.BooleanField(default=False)
138
139    ## Número de Franquicias asociadas a la Unidad Económica
140    nro_franquicia = models.IntegerField()
141
142    ## Forma parte de una franquicia
143    franquiciado = models.BooleanField(default=False)
144
145    ## Código SITUR de la organización comunal
146    situr = models.CharField(max_length=45)
147
148    ## Página web de la Unidad Económica
149    pagina_web = models.CharField(max_length=255)
150
151    ## Correo electrónico de la Unidad Económica
152    correo = models.CharField(
153        max_length=75, help_text=("usuario@dominio.com")
154    )
155
156    ## Relación entre la Unidad Económica y el usuario
157    #user = models.ForeignKey(User)
158
159    ## Relaciona los datos de la Unidad Económica como cliente
160    #cliente = models.OneToOneField(Cliente, null=True, default=None)
161
162    ## Relaciona los datos de la Unidad Económica como proveedor
163    #proveedor = models.OneToOneField(Proveedor, null=True, default=None)
Nota: Vea TracBrowser para ayuda de uso del navegador del repositorio.