Se agrega rol.py rolesaplicaciones.py

develop/Rodrigo/Backend
Rodrigo_R 2023-08-30 00:06:40 -04:00
parent 10b5741e6d
commit a3ff7c16a6
6 changed files with 42 additions and 4 deletions

View File

@ -244,9 +244,12 @@ create table if not exists ROL_APLICACION (
ID_APLICACION INT4 not null,
ID_ROL INT4 not null,
SOLO_VISUALIZAR BOOL null,
constraint PK_ROL_APLICACION primary key (ID_APLICACION, ID_ROL)
ID_ROL_APP SERIAL4 not null,
CONSTRAINT rol_aplicacion_pk PRIMARY KEY (ID_ROL_APP)
);
CREATE UNIQUE INDEX rol_aplicacion_id_aplicacion_idx ON ROL_APLICACION USING btree (ID_APLICACION, ID_ROL);
/*==============================================================*/
/* Table: TIPO_DISPOSITIVO */
/*==============================================================*/

View File

@ -263,7 +263,8 @@ class Rol(models.Model):
class RolAplicacion(models.Model):
id_aplicacion = models.OneToOneField(Aplicacion, models.DO_NOTHING, db_column='id_aplicacion', primary_key=True) # The composite primary key (id_aplicacion, id_rol) found, that is not supported. The first column is selected.
id_rol_app = models.AutoField(primary_key=True)
id_aplicacion = models.ForeignKey(Aplicacion, models.DO_NOTHING, db_column='id_aplicacion') # The composite primary key (id_aplicacion, id_rol) found, that is not supported. The first column is selected.
id_rol = models.ForeignKey(Rol, models.DO_NOTHING, db_column='id_rol')
solo_visualizar = models.BooleanField(blank=True, null=True)

View File

@ -87,4 +87,14 @@ class UsuarioSerializer(serializers.ModelSerializer):
class AuthSerializer(serializers.Serializer):
username = serializers.CharField(required=True)
password = serializers.CharField(required=True, style={'input_type':'password'})
password = serializers.CharField(required=True, style={'input_type':'password'})
class RolSerializer(serializers.ModelSerializer):
class Meta:
model = models.Rol
fields = '__all__'
class RolAplicacionSerializer(serializers.ModelSerializer):
class Meta:
model = models.RolAplicacion
fields = '__all__'

View File

@ -1,7 +1,7 @@
from django.urls import path, include
from rest_framework import routers
# from api import views
from api.views import usuario, auth, aplicacion, tipo, persona, comuna, region, paradero
from api.views import usuario, auth, aplicacion, tipo, persona, comuna, region, paradero, rol, rolaplicacion
from api.views import mapa, linea, operador
router = routers.DefaultRouter()
@ -18,6 +18,8 @@ router.register('regiones', region.RegionViewSet)
router.register('paraderos', paradero.ParaderoViewSet)
router.register('lineas', linea.LineaViewSet)
router.register('operadores', operador.OperadorViewSet)
router.register('roles', rol.RolViewSet)
router.register('rolyaplicacion', rolaplicacion.RolAplicacionViewSet, basename='rol_aplicacion')
urlpatterns = [
path('', include(router.urls)),

View File

@ -0,0 +1,6 @@
from rest_framework import viewsets
from .. import models, serializers
class RolViewSet(viewsets.ModelViewSet):
queryset = models.Rol.objects.all()
serializer_class = serializers.RolSerializer

View File

@ -0,0 +1,16 @@
from rest_framework import viewsets
from .. import models, serializers
import logging
class RolAplicacionViewSet(viewsets.ModelViewSet):
serializer_class = serializers.RolAplicacionSerializer
def get_queryset(self):
id_rol = self.request.query_params.get('id_rol') # Obtener el valor del parámetro id_rol desde la solicitud
if id_rol is not None:
return models.RolAplicacion.objects.filter(id_rol=id_rol)
return models.RolAplicacion.objects.all()