示例#1
0
def formato_voluntario(datos):
    #carga la configuracion de la bd y las consultas
    queries = configparser.ConfigParser()
    queries.sections()
    queries.read(os.getcwd() + "/api/queries/formato_voluntarios.conf")
    conexion = Singelton().singelton()
    #determina las horas de servicio de un voluntario
    consulta_actividades = dict(queries["acitivades"])
    consulta_actividades["voluntario"] = datos[0]
    lista_actividades = conexion.consultar_campo(consulta_actividades)
    total_horas = 0
    for actividad in lista_actividades:
        consulta_horas = dict(queries["horas"])
        consulta_horas["id"] = actividad
        hora_actividad = conexion.consultar_campo(consulta_horas)
        total_horas += hora_actividad[0][0]
    #determina el programa del voluntario
    consulta_programa = dict(queries["programa"])
    consulta_programa["id"] = datos[4]
    programa = conexion.consultar_campo(consulta_programa)
    #formatea el voluntario
    voluntario = {
        "cedula": datos[0],
        "nombre": datos[1],
        "apellido": datos[2],
        "genero": datos[3],
        "programa": programa[0][0],
        "correo": datos[5],
        "telefono": datos[6],
        "horas": total_horas
    }
    return (voluntario)
示例#2
0
def formato_actividades(datos):
    queries = configparser.ConfigParser()
    queries.sections()
    queries.read(os.getcwd() + "/api/queries/formato_actividades.conf")
    conexion = Singelton().singelton()
    consulta_proyectos = dict(queries["proyectos"])
    consulta_proyectos["id"] = datos[1]
    consulta_lista_participantes = dict(queries["lista_participantes"])
    consulta_lista_participantes["actividad"] = datos[0]
    nombre_proyecto = conexion.consultar_campo(consulta_proyectos)
    lista_relacion = conexion.consultar_campo(consulta_lista_participantes)
    lista_relacion = organizar(lista_relacion)
    consulta_lista_participantes = dict(queries["participantes"])
    consulta_lista_participantes["lista"] = tuple(lista_relacion)
    lista_participantes = []
    if (lista_relacion == []):
        pass
    else:
        lista_participantes = conexion.consulta_con_lista(
            consulta_lista_participantes)
        lista_participantes = organizar(lista_participantes)
    salida = {
        "id": datos[0],
        "proyecto": nombre_proyecto[0][0],
        "nombre": datos[2],
        "descripcion": datos[3],
        "duracion": datos[4],
        "fecha": datos[5],
        "participantes": lista_participantes
    }
    return (salida)
示例#3
0
def formatear(config):
    if (config["lista"] == ()):
        salida = []
    else:
        conexion = Singelton().singelton()
        salida = conexion.consulta_con_lista(config)
    return salida
def datos_crear_voluntario():
    conexion = Singelton().singelton()
    datos = conexion.consultar_todo("programa")
    salida = []
    for dato in datos:
        aux = formato_programa(dato)
        salida.append(aux)
    salida = jsonify(salida)
    salida.status_code = 200
    return (salida)
示例#5
0
def consultar_proyectos_especifico(id):
    conexion = Singelton().singelton()
    consulta = {"tabla": "proyecto", "referencia": "id", "id": id}
    consulta = conexion.consultar_especifico(consulta)
    if (consulta == []):
        raise No_hay_datos()
    salida = formato_proyecto(consulta[0])
    salida = jsonify(salida)
    salida.status_code = 200
    return (salida)
示例#6
0
def consultar_todas_actividades():
    conexion = Singelton().singelton()
    actividades = conexion.consultar_todo("actividad")
    salida = []
    for actividad in actividades:
        aux = formato_actividades(actividad)
        salida.append(aux)
    salida  = jsonify(salida)
    salida.status_code = 200
    return (salida)
示例#7
0
def consultar_proyectos_todos():
    conexion = Singelton().singelton()
    datos = conexion.consultar_todo("proyecto")
    salida = []
    if (datos == []):
        raise No_hay_datos()
    for dato in datos:
        aux = formato_proyecto(dato)
        salida.append(aux)
    salida = jsonify(salida)
    salida.status_code = 200
    return (salida)
def consultar_voluntario_todos():
    conexion = Singelton().singelton()
    datos = conexion.consultar_todo("voluntario")
    salida = []
    if (datos == []):
        raise No_hay_datos()
    else:
        for dato in datos:
            voluntario = formato_voluntario(dato)
            salida.append(voluntario)
        response = jsonify(salida)
        response.status_code = 200
    return jsonify(salida)
def consultar_voluntario_especifico(cedula):
    conexion = Singelton().singelton()
    consulta = {
        "tabla": "voluntario",
        "referencia": "cedula",
        "cedula": cedula
    }
    datos = conexion.consultar_especifico(consulta)
    if (datos == []):
        raise No_hay_datos()
    else:
        salida = formato_voluntario(datos[0])
        response = jsonify(salida)
        response.status_code = 200
    return (response)
示例#10
0
def datos_para_crear_actividad():
    conexion = Singelton().singelton()
    proyectos = conexion.consultar_todo("proyecto")
    salida = {
        "proyectos":[]
    }
    for proyecto in proyectos:
        elemento = {
            "id": proyecto[0],
            "nombre":proyecto[1]
        }
        salida["proyectos"].append(elemento)
    salida = jsonify(salida)
    salida.status_code = 200 
    return salida
示例#11
0
def datos_crear_proyecto():
    conexion = Singelton().singelton()
    salida = {"ods": [], "fundaciones": [], "sedes": []}
    ods = conexion.consultar_todo("ods")
    fundaciones = conexion.consultar_todo("fundacion")
    sedes = conexion.consultar_todo("sede")
    for dato in ods:
        aux = formato_ods(dato)
        salida["ods"].append(aux)
    for fundacion in fundaciones:
        aux = formato_fundacion(fundacion)
        salida["fundaciones"].append(aux)
    for sede in sedes:
        aux = formato_sede(sede)
        salida["sedes"].append(aux)
    salida = jsonify(salida)
    salida.status_code = 200
    return (salida)
示例#12
0
class Modelo_base:
    def __init__(self, datos):
        self.conexion = Singelton().singelton()
        self.datos = datos
        self.config = {"tabla": "tabla", "campos": []}

    def insertar(self):
        salida = self.conexion.insertar(self.config, self.datos)
        return (salida)

    def eliminar(self):
        salida = self.conexion.eliminar(self.config, self.datos)
        return (salida)

    def actualizar(self):
        salida = self.conexion.actualizar(self.config, self.datos)
        return (salida)

    def info(self):
        print(self.datos, "\n", self.config)
示例#13
0
def formato_proyecto(datos):
    queries = configparser.ConfigParser()
    queries.sections()
    queries.read(os.getcwd() + "/api/queries/formato_proyectos.conf")
    conexion = Singelton().singelton()
    consulta_lista_actividades = dict(queries["lista_actividades"])
    consulta_lista_actividades["proyecto"] = datos[0]
    consulta_lista_ods = dict(queries["lista_ods"])
    consulta_lista_ods["proyecto"] = datos[0]
    consulta_lista_sedes = dict(queries["lista_sedes"])
    consulta_lista_sedes["proyecto"] = datos[0]
    consulta_lista_fundaciones = dict(queries["lista_fundaciones"])
    consulta_lista_fundaciones["proyecto"] = datos[0]
    lista_actividades = conexion.consultar_especifico(
        consulta_lista_actividades)
    lista_actividades = organizar(lista_actividades)
    lista_relacion_ods = conexion.consultar_campo(consulta_lista_ods)
    lista_relacion_ods = organizar(lista_relacion_ods)
    lista_relacion_sedes = conexion.consultar_campo(consulta_lista_sedes)
    lista_relacion_sedes = organizar(lista_relacion_sedes)
    lista_relacion_fundaciones = conexion.consultar_campo(
        consulta_lista_fundaciones)
    lista_relacion_fundaciones = organizar(lista_relacion_fundaciones)
    consulta_lista_ods = dict(queries["ods"])
    consulta_lista_ods["lista"] = tuple(lista_relacion_ods)
    consulta_lista_sedes = dict(queries["sedes"])
    consulta_lista_sedes["lista"] = tuple(lista_relacion_sedes)
    consulta_lista_fundaciones = dict(queries["fundaciones"])
    consulta_lista_fundaciones["lista"] = tuple(lista_relacion_fundaciones)
    lista_aux_sedes = formatear(consulta_lista_sedes)
    lista_sedes = []
    for sede in lista_aux_sedes:
        sede = formato_sede(sede)
        lista_sedes.append(sede)
    lista_aux_ods = formatear(consulta_lista_ods)
    lista_ods = []
    for ods in lista_aux_ods:
        ods = formato_ods(ods)
        lista_ods.append(ods)
    lista_aux_fundaciones = formatear(consulta_lista_fundaciones)
    lista_fundaciones = []
    for fundacion in lista_aux_fundaciones:
        fundacion = formato_fundacion(fundacion)
        lista_fundaciones.append(fundacion)
    lista_aux_actividades = lista_actividades
    lista_actividades = []
    for actividad in lista_aux_actividades:
        actividad = formato_actividades(actividad)
        lista_actividades.append(actividad)
    salida = {
        "id": datos[0],
        "nombre": datos[1],
        "descripcion": datos[2],
        "inicio": datos[3],
        "fin": datos[4],
        "actividades": lista_actividades,
        "ods": lista_ods,
        "sedes": lista_sedes,
        "fundaciones": lista_fundaciones
    }
    return (salida)
示例#14
0
 def __init__(self, datos):
     self.conexion = Singelton().singelton()
     self.datos = datos
     self.config = {"tabla": "tabla", "campos": []}