45 lines
1.3 KiB
Python
45 lines
1.3 KiB
Python
|
|
from django.http import JsonResponse
|
|
from rest_framework.decorators import action, api_view, schema
|
|
from django.views.decorators.csrf import csrf_exempt
|
|
from ..models import Paradero, ParaderoImagen
|
|
from logging import error
|
|
|
|
|
|
@csrf_exempt
|
|
@action(detail=False, methods=['get'])
|
|
@api_view(['GET'])
|
|
# @schema(schemas.AuthSchema())
|
|
def paraderos(request):
|
|
google_api_key = 'AIzaSyDnFO9w_SsodjBuY5tOK8-kQJns_l5klQ4'
|
|
zoom = 17
|
|
center = {'lat': -36.8077884, 'lng': -73.0775401}
|
|
marks = []
|
|
|
|
paraderos = Paradero.objects.all()
|
|
for p in paraderos:
|
|
marks.append({
|
|
'position': {
|
|
'lat': convertir_a_formato(p.stop_lat),
|
|
'lng': convertir_a_formato(p.stop_lon)
|
|
},
|
|
'title': 'Paradero #' + str(p.id_paradero),
|
|
'location': p.stop_name
|
|
})
|
|
|
|
# marks.append({'lat': -36.811416, 'lng': -73.049571, 'title': 'Paradero 2'})
|
|
# marks.append({'lat': -36.814507, 'lng': -73.047618, 'title': 'Paradero 3'})
|
|
|
|
return JsonResponse({
|
|
'google_api_key': google_api_key,
|
|
'zoom': zoom,
|
|
'center': center,
|
|
'marks': marks
|
|
})
|
|
|
|
|
|
def convertir_a_formato(numero):
|
|
divisor = 100000000.0
|
|
resultado = numero / divisor
|
|
resultado_formateado = "{:.8f}".format(resultado)
|
|
return float(resultado_formateado) |