se corrige informacion publica de paradero
parent
06483aa811
commit
e374025ead
|
@ -24,11 +24,16 @@ class ApiMiddleware:
|
|||
|
||||
match = resolve(request.path)
|
||||
logging.error(match)
|
||||
|
||||
# se omite esta regla al mostrar imagen de paradero
|
||||
if match.url_name == 'paradero_imagen-detail' and request.method == 'GET':
|
||||
response = self.get_response(request)
|
||||
return response
|
||||
|
||||
# se omite esta regla al mostrar informacion publica de paradero
|
||||
if match.url_name == 'paradero-info-public' and request.method == 'GET':
|
||||
response = self.get_response(request)
|
||||
return response
|
||||
|
||||
if not request.headers.get('Authorization'):
|
||||
return HttpResponse('Debe indicar el token de autorización', status = 400)
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
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, rol, rolaplicacion
|
||||
from api.views import usuario, auth, aplicacion, tipo, persona, comuna, region, rol, rolaplicacion
|
||||
from api.views import mapa, linea, letrero_lur, operador
|
||||
from api.views import paradero_imagen, linea_paradero
|
||||
from api.views import paradero, paradero_imagen, linea_paradero
|
||||
from api.views import dispositivo
|
||||
from api.views import rol_linea
|
||||
from api.views import upload
|
||||
|
@ -35,6 +35,5 @@ urlpatterns = [
|
|||
path('auth/', auth.jwt_login, name='auth'),
|
||||
path('mapas/paraderos/', mapa.paraderos, name='mapa-paraderos'),
|
||||
path('mapas/rutas/', mapa.rutas, name='mapa-rutas'),
|
||||
path('paraderos/info-public/<int:pk>/', paradero.info_public, name='paradero-infopublic'),
|
||||
path('upload/zip/', upload.upload_zip, name='upload_zip'),
|
||||
]
|
||||
|
|
|
@ -2,7 +2,7 @@ from django.http import JsonResponse
|
|||
from rest_framework import viewsets
|
||||
from rest_framework.decorators import action
|
||||
from api.serializers import ParaderoSerializer
|
||||
from api.models import Paradero
|
||||
from api.models import Paradero, Dispositivo
|
||||
import logging
|
||||
|
||||
class ParaderoViewSet(viewsets.ModelViewSet):
|
||||
|
@ -26,17 +26,24 @@ class ParaderoViewSet(viewsets.ModelViewSet):
|
|||
|
||||
return JsonResponse({ 'count': queryset.count() })
|
||||
|
||||
@action(detail=False, methods=['get'], url_path='info-public/(?P<pk>\S+)')
|
||||
def info_public(self, request, pk=None):
|
||||
if hasattr(request.META,'HTTP_REFERER'):
|
||||
referer = request.META['HTTP_REFERER']
|
||||
else:
|
||||
protocol = request.scheme
|
||||
host = request.META['HTTP_HOST']
|
||||
port = request.META['SERVER_PORT']
|
||||
referer = f'{protocol}://{host}'
|
||||
|
||||
def info_public(request, pk):
|
||||
record = Dispositivo.objects \
|
||||
.filter(id_tipo_dispositivo__descripcion='CODIGO QR', id_paradero=pk) \
|
||||
.first()
|
||||
|
||||
if hasattr(request.META,'HTTP_REFERER'):
|
||||
referer = request.META['HTTP_REFERER']
|
||||
else:
|
||||
protocol = request.scheme
|
||||
host = request.META['HTTP_HOST']
|
||||
port = request.META['SERVER_PORT']
|
||||
referer = f'{protocol}://{host}:{port}'
|
||||
url = None
|
||||
if record != None:
|
||||
url = f'https://transporte-paradero.hz.kursor.cl/rutaParadero/?id={record.id_dispositivo}'
|
||||
|
||||
return JsonResponse({
|
||||
'url_public': f'{referer}/public/infoStop?codigoParadero={pk}'
|
||||
})
|
||||
|
||||
# url = f'{referer}/public/infoStop?codigoParadero={pk}'
|
||||
return JsonResponse({ 'url_public': url })
|
Loading…
Reference in New Issue