コード例 #1
0
ファイル: web.py プロジェクト: jaimeplier/taxi
    def post(self, request):
        serializer = EstatusSerializer(data=request.data)
        serializer.is_valid(raise_exception=True)

        id_usuario = serializer.data.get('pk')
        try:
            usuario = Chofer.objects.get(pk=id_usuario)
            if usuario.estatus:
                usuario.estatus = False
            else:
                usuario.estatus = True
            usuario.save()
        except:
            return Response({'Error': 'Objeto no encontrado'},
                            status=status.HTTP_404_NOT_FOUND)

        return Response({'result': 1}, status=status.HTTP_200_OK)
コード例 #2
0
ファイル: web.py プロジェクト: jaimeplier/taxi
    def post(self, request):
        serializer = EstatusSerializer(data=request.data)
        serializer.is_valid(raise_exception=True)

        try:
            admin_ciudad = AdministradorCiudad.objects.get(
                pk=serializer.validated_data.get('pk'))
            if admin_ciudad.estatus:
                admin_ciudad.estatus = False
            else:
                admin_ciudad.estatus = True
            admin_ciudad.save()
        except:
            return Response({'Error': 'Objeto no encontrado'},
                            status=status.HTTP_404_NOT_FOUND)

        return Response({'result': 1}, status=status.HTTP_200_OK)
コード例 #3
0
ファイル: web.py プロジェクト: jaimeplier/taxi
 def get_serializer(self):
     return EstatusSerializer()
コード例 #4
0
ファイル: web.py プロジェクト: jaimeplier/taxi
    def post(self, request):
        serializer = EstatusSerializer(data=request.data)
        serializer.is_valid(raise_exception=True)

        try:
            admin_sitio = AdministradorSitio.objects.get(
                pk=serializer.data.get('pk'))
            config_sitio = ConfigUsuariosSitio.objects.get(
                sitio=admin_sitio.sitio)
            if self.request.user.is_admin_ciudad:
                admin_ciudad = AdministradorCiudad.objects.get(
                    pk=self.request.user.pk)
                usuarios_admin_sitio = AdministradorSitio.objects.filter(
                    sitio=admin_sitio.sitio,
                    sitio__admin_ciudad=admin_ciudad).values_list('pk',
                                                                  flat=True)
                if admin_sitio.pk in usuarios_admin_sitio:
                    if admin_sitio.estatus:
                        admin_sitio.estatus = False
                    else:
                        num_usuarios_admin_sitio = AdministradorSitio.objects.filter(
                            sitio=admin_sitio.sitio, estatus=True).count()
                        if num_usuarios_admin_sitio >= config_sitio.max_administradores:
                            return Response(
                                {
                                    'Error':
                                    'Estan registrados ' +
                                    str(num_usuarios_admin_sitio) +
                                    ' usuarios activos de ' +
                                    str(config_sitio.max_administradores) +
                                    ' permitidos, no puedes activar mas.'
                                },
                                status=status.HTTP_401_UNAUTHORIZED)
                        admin_sitio.estatus = True
                    admin_sitio.save()
                else:
                    return Response(
                        {'Error': 'No puedes realizar cambios a éste usuario'},
                        status=status.HTTP_403_FORBIDDEN)
            else:
                if admin_sitio.estatus:
                    admin_sitio.estatus = False
                else:
                    num_usuarios_admin_sitio = AdministradorSitio.objects.filter(
                        sitio=admin_sitio.sitio, estatus=True).count()
                    if num_usuarios_admin_sitio >= config_sitio.max_administradores:
                        return Response(
                            {
                                'Error':
                                'Estan registrados ' +
                                str(num_usuarios_admin_sitio) +
                                ' usuarios activos de ' +
                                str(config_sitio.max_administradores) +
                                ' permitidos, no puedes activar mas.'
                            },
                            status=status.HTTP_401_UNAUTHORIZED)
                    admin_sitio.estatus = True
                admin_sitio.save()
        except:
            return Response({'Error': 'Objeto no encontrado'},
                            status=status.HTTP_404_NOT_FOUND)

        return Response({'result': 1}, status=status.HTTP_200_OK)