Exemplo n.º 1
0
def get_booklists_rangos_db(request):
    role = getRole(request)
    if role == "Administrador Booklick":
        response = HttpResponse(content_type='text/csv')
        writer = csv.writer(response)
        writer.writerow(['Contenido Booklists', '0',
                         '1-3', '5-10', 'Mas de 10'])
        estadistica = get_estadistica_reciente(Tipo_estadistica.BOOKLIST_RANGO)
        print(estadistica)
        valores = get_valores_estadistica(estadistica.get('id'))
        print(valores)    # print(valores)
        cero = 0
        unoatres = 0
        cincoadiez = 0
        masdediez = 0
        for i in range(len(valores)):
            atributo = valores[i][0]
            if atributo == '0':
                cero = valores[i][1]
            elif atributo == '1-3':
                unoatres = valores[i][1]
            elif atributo == '5-10':
                cincoadiez = valores[i][1]
            else:
                masdediez = valores[i][1]
        writer.writerow(['Cantidad', cero, unoatres, cincoadiez, masdediez])
        fecha = 'Estadística calculada en:' + estadistica.get('fecha')
        writer.writerow([fecha])
        response['Content-Disposition'] = 'attachment; filename="contenidoxbooklist.csv"'
        return response
    else:
        # return HttpResponse("Unauthorized User")
        return render(request, 'Universidades/unuser.html')
Exemplo n.º 2
0
def get_booklists_contenidoPromedio(request):
    role = getRole(request)
    if role == "Administrador Booklick":
        booklists = get_all_booklists()
        response = HttpResponse(content_type='text/csv')

        writer = csv.writer(response)

        writer.writerow(['Promedio contenido Booklist:'])

        contador = 0
        total = 0
        num = 0

        for booklist in booklists:
            num = booklist.contenidos.all().count() + booklist.booklistsContenidos.all().count()
            total = total + num
            contador = contador + 1

        promedio = total / contador

        writer.writerow([promedio])
        #
        response['Content-Disposition'] = 'attachment; filename="booklistsPromedioContenido.csv"'
        #
        # respuesta = "La cantidad promedio de contenido en los Booklist es: " + str(promedio)

        return response

    else:
        return HttpResponse("Unauthorized User")
Exemplo n.º 3
0
def get_basesDatos_carrera(request, universidad, fechaInicio, fechaFin):
    startO = time.time()
    role = getRole(request)
    if role == "Administrador Universidad":
        consulta = 0
        calculos = 0
        write = 0
        response = HttpResponse(content_type='text/csv')

        writer = csv.writer(response)
        writer.writerow(['Universidad', universidad, " "])
        writer.writerow(['Fechas', fechaInicio + " / " + fechaFin, " "])

        writer.writerow(['Carrera', 'Proveedor', 'NumeroConsultas'])
        estadistica = get_estadistica_reciente(
            Tipo_estadistica.UNIVERSIDAD_PROVEEDORES_C)
        valores = get_valores_tipo2_estadistica(estadistica.get('id'))
        for valor in valores:
            writer.writerow(valor)
        fecha = 'Estadística calculada en:' + estadistica.get('fecha')
        writer.writerow([fecha])
        response['Content-Disposition'] = 'attachment; filename="DB_Consultadas_Por_Carrera.csv"'
        return response
    else:
        # return HttpResponse("Unauthorized User")
        return render(request, 'Universidades/unuser.html')
Exemplo n.º 4
0
def get_booklists(request):
    role = getRole(request)
    if role == "Administrador Booklick":
        booklists = get_all_booklists()
        response = HttpResponse(content_type='text/csv')

        writer = csv.writer(response)

        writer.writerow(['Carrera', 'NumBooklists'])

        arreglo = []
        frecuencua = []
        diferentes = []
        start = time.time()
        booklists = booklists.values_list(
            'titulo', 'creador', 'booklistsContenidos', 'contenidos')
        # now = time.time()
        # consulta = now-start

        # start = time.time()
        for booklist in booklists:
            carrera = ''
            for estudiante in Estudiante.objects.all():
                if estudiante.get_codigo() == booklist[1]:
                    carrera = estudiante.get_carrera()

            arreglo.append(carrera)
        diferentes = list(Counter(arreglo).keys())
        frecuencia = list(Counter(arreglo).values())

        i = 0
        lista = []
        while i < len(diferentes):
            actual = diferentes[i] + ',' + str(frecuencia[i])
            lista.append(tuple(map(str, actual.split(','))))
            i += 1
        # nuevalista=sorted(lista,key=lambda x:x[1],reverse=True)
        nuevalista = sorted(lista, key=lambda x: int(x[1]), reverse=True)
        now = time.time()
        calculos = now - start

        # print('Consulta: '+str(consulta))
        # print('Calculos: '+str(calculos))

        for tupla in nuevalista:
            writer.writerow(tupla)
        #     writer.writerow([booklist[0]+','+carrera])
        #
        response['Content-Disposition'] = 'attachment; filename="booklistsxarrera.csv"'
        #
        return response
    else:
        return HttpResponse("Unauthorized User")
Exemplo n.º 5
0
def get_booklists_contenidoPromedio_db(request):
    role = getRole(request)
    if role == "Administrador Booklick":
        response = HttpResponse(content_type='text/csv')
        writer = csv.writer(response)
        writer.writerow(['Promedio contenido Booklist:'])

        estadistica = get_estadistica_reciente(
            Tipo_estadistica.BOOKLIST_PROMEDIO)
        print(estadistica)
        valores = get_valores_estadistica(estadistica.get('id'))
        print(valores)
        promedio = valores[0][1]
        writer.writerow([promedio])
        fecha = 'Estadística calculada en:' + estadistica.get('fecha')
        writer.writerow([fecha])
        response['Content-Disposition'] = 'attachment; filename="booklistsPromedioContenido.csv"'

        return response
    else:
        # return HttpResponse("Unauthorized User")
        return render(request, 'Universidades/unuser.html')
Exemplo n.º 6
0
def get_viejo_basesDatos(request, universidad, fechaInicio, fechaFin):
    role = getRole(request)
    if role == "Administrador Universidad":
        response = HttpResponse(content_type='text/csv')

        writer = csv.writer(response)
        writer.writerow(['Universidad', universidad])
        writer.writerow(['Fechas', fechaInicio + " / " + fechaFin])
        writer.writerow(['Proveedor', 'NumeroConsultas'])

        arreglo = []
        frecuencia = []
        diferentes = []
        for consulta in get_consultas_universidad(universidad, fechaInicio, fechaFin).values_list('estudiante', 'contenido', 'fecha'):
            proveedor = ''
            for contenido in Contenido.objects.all():
                if contenido.get_Titulo() == consulta[1]:
                    proveedor = contenido.get_proveedor()
            arreglo.append(proveedor)
        diferentes = list(Counter(arreglo).keys())
        frecuencia = list(Counter(arreglo).values())

        i = 0
        lista = []
        while i < len(diferentes):
            actual = diferentes[i] + ';' + str(frecuencia[i])
            lista.append(tuple(map(str, actual.split(';'))))
            i += 1
        nuevaLista = sorted(lista, key=lambda x: int(x[1]), reverse=True)

        for tupla in nuevaLista:
            writer.writerow(tupla)

        response['Content-Disposition'] = 'attachment; filename="DB_Consultadas.csv"'

        return response
    else:
        # return HttpResponse("Unauthorized User")
        return render(request, 'Universidades/unuser.html')
Exemplo n.º 7
0
def get_booklists_carrera_db(request):
    role = getRole(request)
    if role == "Administrador Booklick":
        response = HttpResponse(content_type='text/csv')
        writer = csv.writer(response)
        writer.writerow(['Carrera', 'NumBooklists'])

        estadistica = get_estadistica_reciente(
            Tipo_estadistica.BOOKLIST_CARRERA)
        print(estadistica)
        valores = get_valores_estadistica(estadistica.get('id'))
        print(valores)
        for tupla in valores:
            writer.writerow(tupla)

        fecha = 'Estadística calculada en:' + estadistica.get('fecha')
        writer.writerow([fecha])
        response['Content-Disposition'] = 'attachment; filename="booklistsCarrera.csv"'

        return response
    else:
        # return HttpResponse("Unauthorized User")
        return render(request, 'Universidades/unuser.html')
Exemplo n.º 8
0
def get_basesDatos(request, universidad, fechaInicio, fechaFin):
    role = getRole(request)
    if role == "Administrador Universidad":
        response = HttpResponse(content_type='text/csv')

        writer = csv.writer(response)
        writer.writerow(['Universidad', universidad])
        writer.writerow(['Fechas', fechaInicio + " / " + fechaFin])
        writer.writerow(['Proveedor', 'NumeroConsultas'])

        estadistica = get_estadistica_reciente(
            Tipo_estadistica.UNIVERSIDAD_PROVEEDORES_P)
        print(estadistica)
        valores = get_valores_estadistica(estadistica.get('id'))
        print("valores", valores)
        for tupla in valores:
            writer.writerow(tupla)
        fecha = 'Estadística calculada en:' + estadistica.get('fecha')
        writer.writerow([fecha])
        response['Content-Disposition'] = 'attachment; filename="DB_Consultadas.csv"'

        return response
    else:
        return render(request, 'Universidades/unuser.html')