Merge remote-tracking branch 'origin/develop/Ronald'

develop/Ronald
Francisco Sandoval 2024-03-10 12:47:55 -03:00
commit 16d449ad58
3 changed files with 46 additions and 21 deletions

View File

@ -1,7 +1,6 @@
from django.db import transaction
from django.http import HttpResponse, JsonResponse
from django.contrib.auth.hashers import make_password
from rest_framework import viewsets
from rest_framework.response import Response
from rest_framework.decorators import action
@ -23,7 +22,6 @@ class ContratoViewSet(viewsets.ModelViewSet):
try:
with transaction.atomic():
input = json.loads(request.body)
persona = models.Persona.objects.filter(rut = input['rut']).first()
id_tipo_tratamiento = input.get('id_tipo_tratamiento',None)
if not id_tipo_tratamiento:

View File

@ -104,7 +104,7 @@ class LineaViewSet(viewsets.ModelViewSet):
db_host = getenv('DB_REDIS_HOST')
db_port = getenv('DB_REDIS_PORT')
r = redis.Redis(host=db_host, port=db_port, decode_responses=True)
paraderos = models.Paradero.objects \
.filter(vigente=True, lineaparadero__id_linea=pk) \
.values('id_paradero') \

View File

@ -35,30 +35,57 @@ class OperadorViewSet(viewsets.ModelViewSet):
"No se puede crear el operador: 'id_operador' no proporcionado.",
status=HTTP_400_BAD_REQUEST
)
newRecord= False;
if not models.Operador.objects.filter(id_operador=id_operador).exists():
newRecord = True
try:
with transaction.atomic():
#Se Define Operador, pero no se graba
operador = models.Operador(
id_operador = id_operador,
nombre_operador = request.data.get('nombre_operador'),
vigente = request.data.get('vigente'),
)
id_operador = id_operador,
nombre_operador = request.data.get('nombre_operador'),
vigente = request.data.get('vigente'),
)
if newRecord:
# se crea el rol para el operador
max_id = models.Rol.objects.aggregate(Max('id_rol'))['id_rol__max']
rol = models.Rol(
id_rol = max_id + 1,
nombre_rol = f'Rol {operador.nombre_operador}'
)
rol.save()
operador.id_rol = rol
#Grabamos Operador, ya que si corresponde se le asigno el id del nuevo Rol
operador.save()
if newRecord :
aplicacion = models.Aplicacion.objects.get(id_aplicacion=1)
rolApp = models.RolAplicacion(
id_rol=rol,
id_aplicacion =aplicacion
)
rolApp.save()
aplicacion = models.Aplicacion.objects.get(id_aplicacion=2)
rolApp = models.RolAplicacion(
id_rol=rol,
id_aplicacion = aplicacion
)
rolApp.save()
# se crea el rol para el operador
max_id = models.Rol.objects.aggregate(Max('id_rol'))['id_rol__max']
rol_operador = models.RolOperador(
id_rol = rol,
id_operador = operador
)
rol_operador.save()
newRecord =False
rol = models.Rol(
id_rol = max_id + 1,
nombre_rol = f'Rol {operador.nombre_operador}'
)
rol.save()
rol_operador = models.RolOperador(
id_rol = rol,
id_operador = operador
)
rol_operador.save()
return Response({
'id_operador': operador.id_operador,