se agrega api de comunas y regiones, al id_comuna se considera max +1
parent
95e3209d7a
commit
d3b64b5f02
|
@ -39,6 +39,16 @@ class PersonaSerializer(serializers.ModelSerializer):
|
|||
model = models.Persona
|
||||
fields = '__all__'
|
||||
|
||||
class ComunaSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = models.Comuna
|
||||
fields = '__all__'
|
||||
|
||||
class RegionSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = models.Region
|
||||
fields = '__all__'
|
||||
|
||||
class UsuarioSerializer(serializers.ModelSerializer):
|
||||
# muestro informacion de persona en un objeto aparte
|
||||
persona = serializers.SerializerMethodField()
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
from django.urls import path, include
|
||||
from rest_framework import routers
|
||||
# from api import views
|
||||
from api.views import usuario, auth, aplicacion, tipo, persona
|
||||
from api.views import usuario, auth, aplicacion, tipo, persona, comuna, region
|
||||
|
||||
router = routers.DefaultRouter()
|
||||
router.register(r'aplicaciones', aplicacion.AplicacionViewSet)
|
||||
|
@ -12,6 +12,8 @@ router.register(r'tipos/transporte', tipo.TipoTransporteViewSet)
|
|||
router.register(r'tipos/dispositivo', tipo.TipoDispositivoViewSet)
|
||||
router.register(r'tipos/paradero', tipo.TipoParaderoViewSet)
|
||||
router.register(r'tipos/vehiculo', tipo.TipoVehiculoViewSet)
|
||||
router.register(r'comunas', comuna.ComunaViewSet)
|
||||
router.register(r'regiones', region.RegionViewSet)
|
||||
|
||||
urlpatterns = [
|
||||
path('', include(router.urls)),
|
||||
|
|
|
@ -38,14 +38,12 @@ def jwt_login(request):
|
|||
if usuario['clave'] != password:
|
||||
return HttpResponse('Acceso no valido', status = 400)
|
||||
|
||||
ahora = datetime.now()
|
||||
manana = ahora + timedelta(days=1)
|
||||
manana = manana.replace(hour=0, minute=0, second=0, microsecond=0)
|
||||
# diferencia = manana - ahora
|
||||
# minutos_restantes = diferencia.total_seconds() // 60
|
||||
ahora = datetime.utcnow()
|
||||
# manana = ahora + timedelta(days=1)
|
||||
# manana = manana.replace(hour=0, minute=0, second=0, microsecond=0)
|
||||
|
||||
payload = {
|
||||
'exp': manana,
|
||||
'exp': ahora + timedelta(minutes=60),
|
||||
'login': usuario['login']
|
||||
}
|
||||
token = jwt.encode(payload, private_key, algorithm="HS256")
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
|
||||
from rest_framework import viewsets
|
||||
from .. import models, serializers
|
||||
from django.db import models as dj_models
|
||||
|
||||
class ComunaViewSet(viewsets.ModelViewSet):
|
||||
queryset = models.Comuna.objects.all()
|
||||
serializer_class = serializers.ComunaSerializer
|
||||
|
||||
def create(self, request, *args, **kwargs):
|
||||
# se indica que si no se indico el id, entonces sea el maximo + 1
|
||||
if not request.data.get('id_comuna', None):
|
||||
max_id = models.Comuna.objects.aggregate(dj_models.Max('id_comuna'))['id_comuna__max']
|
||||
new_id = max_id + 1 if max_id is not None else 1
|
||||
request.data['id_comuna'] = new_id
|
||||
|
||||
return super().create(request, *args, **kwargs)
|
|
@ -0,0 +1,7 @@
|
|||
|
||||
from rest_framework import viewsets
|
||||
from .. import models, serializers
|
||||
|
||||
class RegionViewSet(viewsets.ModelViewSet):
|
||||
queryset = models.Region.objects.all()
|
||||
serializer_class = serializers.RegionSerializer
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -4,7 +4,7 @@
|
|||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>...</title>
|
||||
<script type="module" crossorigin src="/assets/index-1eede8db.js"></script>
|
||||
<script type="module" crossorigin src="/assets/index-26045276.js"></script>
|
||||
<link rel="stylesheet" href="/assets/index-b640e145.css">
|
||||
</head>
|
||||
<body>
|
||||
|
|
Loading…
Reference in New Issue