se agrega informacion de dispositivos del paradero
parent
04c1802b69
commit
53d81cc32d
|
@ -15,7 +15,13 @@ Content-Type: application/json
|
|||
|
||||
###
|
||||
# @name list
|
||||
GET {{server}}/dispositivos
|
||||
GET {{server}}/dispositivos?id_paradero=39530
|
||||
Authorization: Bearer {{token}}
|
||||
|
||||
|
||||
###
|
||||
# @name url_public_paradero
|
||||
GET {{server}}/paraderos/info-public/39530
|
||||
Authorization: Bearer {{token}}
|
||||
|
||||
|
||||
|
|
|
@ -10,6 +10,11 @@ class AplicacionSerializer(serializers.ModelSerializer):
|
|||
fields = '__all__'
|
||||
|
||||
class DispositivoSerializer(serializers.ModelSerializer):
|
||||
tipo_dispositivo = serializers.SerializerMethodField()
|
||||
|
||||
def get_tipo_dispositivo(self, row):
|
||||
return model_to_dict(row.id_tipo_dispositivo)
|
||||
|
||||
class Meta:
|
||||
model = models.Dispositivo
|
||||
fields = '__all__'
|
||||
|
|
|
@ -4,7 +4,7 @@ from rest_framework import routers
|
|||
from api.views import usuario, auth, aplicacion, tipo, persona, comuna, region, paradero, rol, rolaplicacion
|
||||
from api.views import mapa, linea, letrero_lur, operador
|
||||
from api.views import paradero_imagen, linea_paradero
|
||||
from api.views import dispositivo
|
||||
from api.views import dispositivo, proto
|
||||
|
||||
router = routers.DefaultRouter()
|
||||
router.register('aplicaciones', aplicacion.AplicacionViewSet)
|
||||
|
@ -30,8 +30,8 @@ router.register('rolyaplicacion', rolaplicacion.RolAplicacionViewSet, basename='
|
|||
urlpatterns = [
|
||||
path('', include(router.urls)),
|
||||
path('auth/', auth.jwt_login, name='auth'),
|
||||
# path('proto/', proto.status, name='proto_status'),
|
||||
path('mapas/paraderos/', mapa.paraderos, name='mapa-paraderos'),
|
||||
path('mapas/rutas/', mapa.rutas, name='mapa-rutas'),
|
||||
# path('paraderos/image/', paradero.image, name='paradero-image-list'),
|
||||
# path('paraderos/image/<int:id>/', paradero.image_one, name='paradero-image-one'),
|
||||
]
|
||||
path('paraderos/info-public/<int:pk>', paradero.info_public, name='paradero-infopublic'),
|
||||
]
|
||||
|
|
|
@ -3,6 +3,7 @@ from rest_framework import viewsets
|
|||
from django.http import JsonResponse
|
||||
from django.db.models import F
|
||||
from django.db import connection
|
||||
from django_filters.rest_framework import DjangoFilterBackend
|
||||
from rest_framework.decorators import action
|
||||
from .. import models, serializers
|
||||
import json
|
||||
|
@ -11,6 +12,9 @@ import logging
|
|||
class DispositivoViewSet(viewsets.ModelViewSet):
|
||||
queryset = models.Dispositivo.objects.all()
|
||||
serializer_class = serializers.DispositivoSerializer
|
||||
filter_backends = [DjangoFilterBackend]
|
||||
filterset_fields = ['id_paradero', 'id_tipo_dispositivo']
|
||||
|
||||
|
||||
@action(detail=False, methods=['post'])
|
||||
def whoami(self, request, pk=None):
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
from django.http import JsonResponse
|
||||
from rest_framework import viewsets
|
||||
from api.serializers import ParaderoSerializer
|
||||
from api.models import Paradero
|
||||
|
@ -5,4 +6,19 @@ import logging
|
|||
|
||||
class ParaderoViewSet(viewsets.ModelViewSet):
|
||||
queryset = Paradero.objects.all()
|
||||
serializer_class = ParaderoSerializer
|
||||
serializer_class = ParaderoSerializer
|
||||
|
||||
|
||||
def info_public(request, pk):
|
||||
|
||||
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}'
|
||||
|
||||
return JsonResponse({
|
||||
'url_public': f'{referer}/public/infoStop?codigoParadero={pk}'
|
||||
})
|
Loading…
Reference in New Issue