forked from TDTP/admin_transporte_backend
Merge branch 'develop/Ronald' of https://gitlab.com/m3f_usm/admin_transporte/backend
commit
5e33b1b069
|
@ -79,11 +79,13 @@ BEGIN
|
|||
) INTO inicio_vigencia;*/
|
||||
|
||||
SELECT MIN(start_date) INTO inicio_vigencia FROM z_calendar;
|
||||
|
||||
update gtfs_archivo
|
||||
set valid_from= inicio_vigencia
|
||||
where trim(upper(status))='PROCESANDO' ;
|
||||
|
||||
IF CURRENT_DATE < inicio_vigencia THEN
|
||||
update gtfs_archivo
|
||||
set status = 'PENDIENTE' , valid_from= inicio_vigencia
|
||||
set status = 'PENDIENTE'
|
||||
where trim(upper(status))='PROCESANDO' ;
|
||||
v_error:= '9 EL ARCHIVO AUN NO ESTA VIGENTE POR FECHA';
|
||||
END IF;
|
||||
|
|
|
@ -13,7 +13,7 @@ class Command(BaseCommand):
|
|||
help = 'Procesa los archivos gtfs en formato comprimido (zip)'
|
||||
|
||||
def handle(self, *args, **options):
|
||||
# Lógica de tu comando aquí
|
||||
|
||||
folder = config('GTFS_UPLOADS','/tmp')
|
||||
|
||||
redes = RedTransporte.objects.filter(vigente=True)
|
||||
|
|
|
@ -425,7 +425,8 @@ class GtfsArchivo(models.Model):
|
|||
archivo = models.CharField(max_length=200, blank=True, null=True)
|
||||
ruta_archivo = models.CharField(max_length=200, blank=True, null=True)
|
||||
valid_from = models.DateField(blank=True, null=True)
|
||||
created = models.DateTimeField(blank=True, null=True)
|
||||
#created = models.DateTimeField(blank=True, null=True)
|
||||
created = models.DateTimeField(auto_now_add=True)
|
||||
usuario = models.CharField(max_length=100, blank=True, null=True)
|
||||
vigente = models.BooleanField(blank=True, null=True)
|
||||
status = models.CharField(max_length=100, blank=True, null=True)
|
||||
|
|
|
@ -41,5 +41,6 @@ urlpatterns = [
|
|||
path('auth/nueva-contrasena/', auth.nueva_contrasena, name='auth_contrasena'),
|
||||
path('mapas/paraderos/', mapa.paraderos, name='mapa-paraderos'),
|
||||
path('mapas/rutas/', mapa.rutas, name='mapa-rutas'),
|
||||
path('mapas/coordenadas/', mapa.coordenadas, name='mapa-coordenadas'),
|
||||
path('upload/zip/', upload.upload_zip, name='upload_zip'),
|
||||
]
|
||||
|
|
|
@ -2,19 +2,24 @@
|
|||
from rest_framework import viewsets
|
||||
from rest_framework.decorators import action
|
||||
from django_filters.rest_framework import DjangoFilterBackend
|
||||
from rest_framework.filters import OrderingFilter
|
||||
from django.core.files.storage import FileSystemStorage
|
||||
from django.http import FileResponse, HttpResponse
|
||||
from api import models , serializers
|
||||
from decouple import config
|
||||
|
||||
|
||||
|
||||
import os
|
||||
import logging
|
||||
|
||||
class GtfsArchivoViewSet(viewsets.ModelViewSet):
|
||||
queryset = models.GtfsArchivo.objects.all()
|
||||
serializer_class = serializers.GtfsArchivoSerializer
|
||||
filter_backends = [DjangoFilterBackend]
|
||||
filter_backends = [DjangoFilterBackend, OrderingFilter]
|
||||
filterset_fields = ['id_gtfs', 'id_red', 'archivo','valid_from','created','usuario','vigente','status']
|
||||
|
||||
ordering_fields = ['id_gtfs', 'id_red', 'archivo', 'valid_from', 'created', 'usuario', 'vigente', 'status']
|
||||
ordering = ['id_gtfs']
|
||||
|
||||
def create(self, request, *args, **kwargs):
|
||||
fs = FileSystemStorage(location = config('GTFS_UPLOADS','/tmp'))
|
||||
|
|
|
@ -6,10 +6,12 @@ from django.views.decorators.csrf import csrf_exempt
|
|||
from api.models import Paradero
|
||||
from api.models import GtfsShape, GtfsTrips
|
||||
from logging import error
|
||||
from decouple import config
|
||||
|
||||
google_api_key = 'AIzaSyDnFO9w_SsodjBuY5tOK8-kQJns_l5klQ4'
|
||||
center = {'lat': -36.8077884, 'lng': -73.0775401}
|
||||
|
||||
|
||||
@csrf_exempt
|
||||
@action(detail=False, methods=['get'])
|
||||
@api_view(['GET'])
|
||||
|
@ -87,3 +89,18 @@ def rutas(request):
|
|||
'google_api_key': google_api_key,
|
||||
'positions': list(resultados)
|
||||
})
|
||||
|
||||
|
||||
@action(detail=False, methods=['get'])
|
||||
@api_view(['GET'])
|
||||
|
||||
def coordenadas(request):
|
||||
# Obtener las coordenadas iniciales desde las variables de entorno
|
||||
initial_lat = config('COORDINI_LAT', default=-36.8270)
|
||||
initial_lng = config('COORDINI_LNG', default=-73.0503)
|
||||
|
||||
# Enviar las coordenadas iniciales como parte de la respuesta
|
||||
return JsonResponse({
|
||||
'initialLat': initial_lat,
|
||||
'initialLng': initial_lng,
|
||||
})
|
|
@ -8,6 +8,7 @@ from django.db.models import Max
|
|||
from django.db import transaction
|
||||
from api import models, serializers
|
||||
import logging
|
||||
from decouple import config
|
||||
|
||||
class OperadorViewSet(viewsets.ModelViewSet):
|
||||
# queryset = models.Operador.objects.all()
|
||||
|
@ -64,13 +65,11 @@ class OperadorViewSet(viewsets.ModelViewSet):
|
|||
|
||||
|
||||
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)
|
||||
app_default_operador_str = config('APP_DEFAULT_OPERADOR')
|
||||
app_default_operador = [int(x) for x in app_default_operador_str.split(',')]
|
||||
|
||||
for id_aplicacion in app_default_operador:
|
||||
aplicacion = models.Aplicacion.objects.get(id_aplicacion=id_aplicacion)
|
||||
rolApp = models.RolAplicacion(
|
||||
id_rol=rol,
|
||||
id_aplicacion=aplicacion
|
||||
|
@ -84,9 +83,6 @@ class OperadorViewSet(viewsets.ModelViewSet):
|
|||
rol_operador.save()
|
||||
newRecord =False
|
||||
|
||||
|
||||
|
||||
|
||||
return Response({
|
||||
'id_operador': operador.id_operador,
|
||||
'nombre_operador': operador.nombre_operador,
|
||||
|
|
Loading…
Reference in New Issue