Ejemplo n.º 1
0
def find_by_comentario_email(email):
    try:
        lista = list()
        index = 0
        usuarioDB = UsuarioDatabase('iweb.db')
        usuarioDB.sql_connection()
        resp = usuarioDB.sql_find_email(email)
        id_usuario = resp[0][0]
        comentarioDB = ComentarioDatabase('iweb.db')
        comentarioDB.sql_connection()
        response = comentarioDB.sql_get_by_id_usuario(id_usuario)
        while len(response) != 0 and index < len(response):
            comentario = {
                'idComentario': response[index][0],
                'fechaCreacion': response[index][1],
                'contenido': response[index][2],
                'latitud': response[index][3],
                'longitud': response[index][4],
                'idUsuario': response[index][5],
                'tipoDato': response[index][6]
            }
            lista.append(comentario)
            index += 1
    except ValueError as exc:
        mensaje = exc.args[0][0]
        codigo = int(exc.args[0][1])
        response = {codigo: mensaje}
        return Response(json.dumps(response),
                        mimetype='application/json',
                        status=codigo)
    finally:
        comentarioDB.sql_close()
    return Response(json.dumps(lista), mimetype='application/json', status=200)
Ejemplo n.º 2
0
def find_by_user_from_to(id_from, id_to):
    try:
        lista = list()
        index = 0
        usuarioDB = UsuarioDatabase('iweb.db')
        usuarioDB.sql_connection()
        response = usuarioDB.sql_find_between(id_from, id_to)
        while index < len(response):
            usuario = {
                'idUsuario': response[index][0],
                'nombre': response[index][1],
                'email': response[index][2],
                'rol': response[index][3],
                'photo': (response[index][4]).hex()
            }
            lista.append(usuario)
            index += 1
    except ValueError as exc:
        mensaje = exc.args[0][0]
        codigo = int(exc.args[0][1])
        response = {codigo: mensaje}
        return Response(json.dumps(response),
                        mimetype='application/json',
                        status=codigo)
    finally:
        usuarioDB.sql_close()
    return Response(json.dumps(lista), mimetype='application/json', status=200)
Ejemplo n.º 3
0
def update_photo():
    #print('Peticion de cambio de foto = ' + str(request.json))
    if not request.json or not 'photo' in request.json or not 'idUsuario' in request.json:
        return Response(json.dumps(
            {400: str('Bad request: ' + str(request.json))}),
                        mimetype='application/json',
                        status=400)
    try:

        usuarioDB = UsuarioDatabase('iweb.db')
        usuarioDB.sql_connection()
        id = request.json['idUsuario']
        photo = request.json['photo']
        inicio = photo.index(',')
        foto = photo[inicio + 1:len(photo)]
        #print(foto)
        usuarioDB.sql_update_photo_from_blob(base64.b64encode(foto), id)
        response = usuarioDB.sql_find(id)
        usuario = {
            'idUsuario': response[0][0],
            'nombre': response[0][1],
            'email': response[0][2],
            'rol': response[0][3],
            'photo': response[0][4].hex()
        }
    except sqlite3.IntegrityError as interr:
        mensaje = interr.args
        codigo = 400
        response = {codigo: mensaje}
        return Response(json.dumps(response),
                        mimetype='application/json',
                        status=codigo)
    except ValueError as exc:
        mensaje = exc.args[0][0]
        codigo = int(exc.args[0][1])
        response = {codigo: mensaje}
        return Response(json.dumps(response),
                        mimetype='application/json',
                        status=codigo)
    finally:
        usuarioDB.sql_close()
    return Response(json.dumps(usuario),
                    mimetype='application/json',
                    status=201)
Ejemplo n.º 4
0
def get_photo(id):
    try:
        usuarioDB = UsuarioDatabase('iweb.db')
        usuarioDB.sql_connection()
        response = usuarioDB.sql_find(id)
        photo = {'photo': response[0][4].hex()}
    except ValueError as exc:
        mensaje = exc.args[0][0]
        codigo = int(exc.args[0][1])
        response = {codigo: mensaje}
        return Response(json.dumps(response),
                        mimetype='application/json',
                        status=codigo)
    finally:
        usuarioDB.sql_close()
    return Response(json.dumps(photo), mimetype='application/json', status=200)
Ejemplo n.º 5
0
def delete_user(id):
    try:
        usuarioDB = UsuarioDatabase('iweb.db')
        usuarioDB.sql_connection()
        response = usuarioDB.sql_remove(id)
    except ValueError as exc:
        mensaje = exc.args[0][0]
        codigo = int(exc.args[0][1])
        response = {codigo: mensaje}
        return Response(json.dumps(response),
                        mimetype='application/json',
                        status=codigo)
    finally:
        usuarioDB.sql_close()
    return Response(json.dumps({'201': 'User removed'}),
                    mimetype='application/json',
                    status=201)
Ejemplo n.º 6
0
def count_user():
    try:
        usuarioDB = UsuarioDatabase('iweb.db')
        usuarioDB.sql_connection()
        response = {'total': usuarioDB.sql_count()}
    except ValueError as exc:
        mensaje = exc.args[0][0]
        codigo = int(exc.args[0][1])
        response = {codigo: mensaje}
        return Response(json.dumps(response),
                        mimetype='application/json',
                        status=codigo)
    finally:
        usuarioDB.sql_close()
    return Response(json.dumps(response),
                    mimetype='application/json',
                    status=200)
Ejemplo n.º 7
0
def find_by_user_name(name):
    try:
        usuarioDB = UsuarioDatabase('iweb.db')
        usuarioDB.sql_connection()
        response = usuarioDB.sql_find_name(name)
        usuario = {
            'idUsuario': response[0][0],
            'nombre': response[0][1],
            'email': response[0][2],
            'rol': response[0][3],
            'photo': response[0][4].hex()
        }
    except ValueError as exc:
        mensaje = exc.args[0][0]
        codigo = int(exc.args[0][1])
        response = {codigo: mensaje}
        return Response(json.dumps(response),
                        mimetype='application/json',
                        status=codigo)
    finally:
        usuarioDB.sql_close()
    return Response(json.dumps(usuario),
                    mimetype='application/json',
                    status=200)
Ejemplo n.º 8
0
from UsuarioDatabase import UsuarioDatabase
from ComentarioDatabase import ComentarioDatabase
import os
import datetime

if not os.path.isfile('./iweb.db'):
    #creación de base de datos y tabla Usuario
    usuarioDB = UsuarioDatabase('iweb.db')
    usuarioDB.sql_connection()
    usuarioDB.sql_table()
    #inserción de datos
    usuarioDB.sql_insert((0,'Anonymous','*****@*****.**','User'),0)
    usuarioDB.sql_insert((1,'Usuario de prueba','*****@*****.**','Admin'),1)
    usuarioDB.sql_insert((2,'Cristian Rafael Ávila García','*****@*****.**','Admin'),2)
    usuarioDB.sql_insert((3,'Akalay Alaeak','*****@*****.**','Admin'),3)
    usuarioDB.sql_insert((4,'Usuario Inventado','*****@*****.**','User'),4)
    #creación de tabla Comentario
    comentarioDB = ComentarioDatabase('iweb.db')
    comentarioDB.sql_connection()
    comentarioDB.sql_table()
    #inserción de comentario 'Sin comentarios'
    comentarioDB.sql_insert((0,datetime.date(2019,12,17),'Without commentaries',0.0,0.0,0,'Empty'),0)
    usuarioDB.sql_close()
    comentarioDB.sql_close()

usuarioDB = UsuarioDatabase('iweb.db')
usuarioDB.sql_connection()
#print('Last id: ' + str(usuarioDB.sql_get_last_id()))
#print('Find by name: ' + str(usuarioDB.sql_find_name("tIaN")))
#print('Find between 1 and 3: ' + str(usuarioDB.sql_find_between(1,3)))
Ejemplo n.º 9
0
def create_user():
    print('Request = ' + str(request.json))
    if not request.json or not 'email' in request.json or not 'nombre' in request.json or not 'rol' in request.json:
        return Response(json.dumps(
            {400: str('Bad request: ' + str(request.json))}),
                        mimetype='application/json',
                        status=400)
    try:
        usuarioDB = UsuarioDatabase('iweb.db')
        usuarioDB.sql_connection()
        id = usuarioDB.sql_get_last_id() + 1
        print('Ultimo id actual : ' + str(usuarioDB.sql_get_last_id()))
        print('Id nuevo: ' + str(id))
        usuarioDB.sql_insert((id, request.json['nombre'],
                              request.json['email'], request.json['rol']), id)
        response = usuarioDB.sql_find(id)
        usuario = {
            'idUsuario': response[0][0],
            'nombre': response[0][1],
            'email': response[0][2],
            'rol': response[0][3],
            'photo': response[0][4].hex()
        }
    except sqlite3.IntegrityError as interr:
        mensaje = interr.args
        codigo = 400
        response = {codigo: mensaje}
        return Response(json.dumps(response),
                        mimetype='application/json',
                        status=codigo)
    except ValueError as exc:
        mensaje = exc.args[0][0]
        codigo = int(exc.args[0][1])
        response = {codigo: mensaje}
        return Response(json.dumps(response),
                        mimetype='application/json',
                        status=codigo)
    finally:
        usuarioDB.sql_close()
    return Response(json.dumps(usuario),
                    mimetype='application/json',
                    status=201)