forked from TDTP/admin_transporte_backend
se corrige informacion publica de paradero
parent
06483aa811
commit
e374025ead
|
@ -24,11 +24,16 @@ class ApiMiddleware:
|
||||||
|
|
||||||
match = resolve(request.path)
|
match = resolve(request.path)
|
||||||
logging.error(match)
|
logging.error(match)
|
||||||
|
|
||||||
# se omite esta regla al mostrar imagen de paradero
|
# se omite esta regla al mostrar imagen de paradero
|
||||||
if match.url_name == 'paradero_imagen-detail' and request.method == 'GET':
|
if match.url_name == 'paradero_imagen-detail' and request.method == 'GET':
|
||||||
response = self.get_response(request)
|
response = self.get_response(request)
|
||||||
return response
|
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'):
|
if not request.headers.get('Authorization'):
|
||||||
return HttpResponse('Debe indicar el token de autorización', status = 400)
|
return HttpResponse('Debe indicar el token de autorización', status = 400)
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
from django.urls import path, include
|
from django.urls import path, include
|
||||||
from rest_framework import routers
|
from rest_framework import routers
|
||||||
# from api import views
|
# 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 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 dispositivo
|
||||||
from api.views import rol_linea
|
from api.views import rol_linea
|
||||||
from api.views import upload
|
from api.views import upload
|
||||||
|
@ -35,6 +35,5 @@ urlpatterns = [
|
||||||
path('auth/', auth.jwt_login, name='auth'),
|
path('auth/', auth.jwt_login, name='auth'),
|
||||||
path('mapas/paraderos/', mapa.paraderos, name='mapa-paraderos'),
|
path('mapas/paraderos/', mapa.paraderos, name='mapa-paraderos'),
|
||||||
path('mapas/rutas/', mapa.rutas, name='mapa-rutas'),
|
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'),
|
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 import viewsets
|
||||||
from rest_framework.decorators import action
|
from rest_framework.decorators import action
|
||||||
from api.serializers import ParaderoSerializer
|
from api.serializers import ParaderoSerializer
|
||||||
from api.models import Paradero
|
from api.models import Paradero, Dispositivo
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
class ParaderoViewSet(viewsets.ModelViewSet):
|
class ParaderoViewSet(viewsets.ModelViewSet):
|
||||||
|
@ -26,17 +26,24 @@ class ParaderoViewSet(viewsets.ModelViewSet):
|
||||||
|
|
||||||
return JsonResponse({ 'count': queryset.count() })
|
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'):
|
url = None
|
||||||
referer = request.META['HTTP_REFERER']
|
if record != None:
|
||||||
else:
|
url = f'https://transporte-paradero.hz.kursor.cl/rutaParadero/?id={record.id_dispositivo}'
|
||||||
protocol = request.scheme
|
|
||||||
host = request.META['HTTP_HOST']
|
|
||||||
port = request.META['SERVER_PORT']
|
|
||||||
referer = f'{protocol}://{host}:{port}'
|
|
||||||
|
|
||||||
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