Exemple #1
0
def limpiarArticulos(listA, listE, listAE, listRC, listRP):
    if listA != None:
        for acept in listA:
            articulo = getArticuloPorId(acept.pk)
            if articulo != None:
                articulo.aceptado = False
                articulo.save()
    if listE != None:
        for acept in listE:
            articulo = getArticuloPorId(acept.pk)
            if articulo != None:
                articulo.empatado = False
                articulo.save()
    if listAE != None:
        for acept in listAE:
            articulo = getArticuloPorId(acept.pk)
            if articulo != None:
                articulo.aceptadoEspecial = False
                articulo.save()
    if listRC != None:
        for acept in listRC:
            articulo = getArticuloPorId(acept.pk)
            if articulo != None:
                articulo.rechazadoFaltaCupo = False
                articulo.save()
    if listRP != None:
        for acept in listRP:
            articulo = getArticuloPorId(acept.pk)
            if articulo != None:
                articulo.rechazadoPorPromedio = False
                articulo.save()
Exemple #2
0
def limpiarArticulos(listA, listE, listAE, listRC, listRP):
    if listA != None:
        for acept in listA:
            articulo = getArticuloPorId(acept.pk)
            if articulo != None:
                articulo.aceptado = False
                articulo.save()
    if listE != None:
         for acept in listE:
            articulo = getArticuloPorId(acept.pk)
            if articulo != None:
                articulo.empatado = False
                articulo.save()
    if listAE != None:
         for acept in listAE:
            articulo = getArticuloPorId(acept.pk)
            if articulo != None:
                articulo.aceptadoEspecial = False
                articulo.save()
    if listRC != None:  
         for acept in listRC:
            articulo = getArticuloPorId(acept.pk)
            if articulo != None:
                articulo.rechazadoFaltaCupo = False
                articulo.save()
    if listRP != None:  
         for acept in listRP:
            articulo = getArticuloPorId(acept.pk)
            if articulo != None:
                articulo.rechazadoPorPromedio = False
                articulo.save()                       
Exemple #3
0
def agregarEspecial(request, articulo_id):
    listaAceptados = getArticulosAceptadosYEspeciales()
    listaEmpatados = getArticulosEmpatados()
    maxarticulos = getDatosConferencia()
    if listaAceptados == None:
        listaAceptados = []
        
    if maxarticulos > len(listaAceptados):
        articulo = getArticuloPorId(articulo_id)
        if articulo != None:
            articulo.aceptadoEspecial = True
            articulo.rechazadoPorPromedio = False
            articulo.rechazadoFaltaCupo = False
            articulo.empatado = False
            articulo.save()
        listaAceptados = getArticulosAceptadosYEspeciales()
        maxarticulos = getDatosConferencia()
        cantidad = maxarticulos - len(listaAceptados)
        return render(request, 'Conferencia/especiales.html', {'listaArticulos':getArticulosNoEspeciales(), 'listaEspeciales':getArticulosAceptadosEspecial(), 'cantidad':cantidad})
    maxarticulos = getDatosConferencia()
    if listaAceptados != None:
        cantidad = maxarticulos - len(listaAceptados)
    else:
        cantidad = maxarticulos
    return render(request, 'Conferencia/especiales.html', 
                  {'listaArticulos':getArticulosNoEspeciales(), 'listaEspeciales':articulosEspeciales, 'cantidad':cantidad, 
                   'error_message' : "Ya no se pueden aceptar mas articulos."})
Exemple #4
0
def agregarAceptado(request, articulo_id):
    listaAceptados = getArticulosAceptadosYEspeciales()
    listaEmpatados = getArticulosEmpatados()
    maxarticulos = getDatosConferencia()
    if listaAceptados == None:
        listaAceptados = []

    if maxarticulos > len(listaAceptados):
        articulo = getArticuloPorId(articulo_id)
        if articulo != None:
            articulo.empatado = False
            articulo.rechazadoFaltaCupo = False
            articulo.aceptado = True
            articulo.save()
        listaAceptados = getArticulosAceptadosYEspeciales()
        listaEmpatados = getArticulosEmpatados()
        maxarticulos = getDatosConferencia()
        cantidad = maxarticulos - len(listaAceptados)
        return render(
            request, 'Conferencia/desempatar.html', {
                'listaAceptados': listaAceptados,
                'listaEmpatados': listaEmpatados,
                'articulosRestantes': cantidad
            })
    maxarticulos = getDatosConferencia()
    cantidad = maxarticulos - len(listaAceptados)
    return render(
        request, 'Conferencia/desempatar.html', {
            'listaAceptados': listaAceptados,
            'listaEmpatados': listaEmpatados,
            'articulosRestantes': cantidad,
            'error_message': "Ya no se puede aceptar mas articulos."
        })
Exemple #5
0
def generarAceptados(aceptables):
    # Se verifica si el maximo de articulos es mayor que la longitud de la lista de aceptables
    # si esto pasa entonces la lista de aceptables pasa a ser la lista de aceptados, sino se busca
    # cual es la nueva lista de aceptados
    maxarticulos = getDatosConferencia()
    especiales = getArticulosAceptadosEspecial()
    if especiales != None:
        maxarticulos = maxarticulos - len(especiales)
    if maxarticulos >= len(aceptables):
        for art in aceptables:
            articulo = getArticuloPorId(art.pk)
            if articulo != None:
                articulo.aceptado = True
                articulo.save()
        return aceptables
    else:
        if maxarticulos > 0:
            aceptados = []
            i = 0
            while i < maxarticulos:
                aceptados.append(aceptables[i])
                aceptables[i].aceptado = True
                aceptables[i].save()
                i += 1
            # ultimo es el articulo con promedio de menor valor en la lista de aceptados
            ultimo = aceptados[maxarticulos - 1]
            evalUltimo = ultimo.evaluacion
            #Se establecen los rechazados por cupo
            porCupo = Evaluacion.objects.filter(
                promedio__gte=3, promedio__lte=evalUltimo.promedio)
            if porCupo != None:
                for ev in porCupo:
                    if ev.arbitros.all().count() >= 2:
                        articulo = ev.articulo
                        articulo.rechazadoFaltaCupo = True
                        articulo.save()
            # se cuenta cuantas veces aparece el promedio en la lista de aceptados
            numvecesaccept = calcular_ocurrencia(evalUltimo.promedio,
                                                 aceptados)
            # se cuenta cuantas veces aparece el promedio en la lista de aceptables
            numvecesaceptables = calcular_ocurrencia(evalUltimo.promedio,
                                                     aceptables)
            # si el numero de veces de aceptados es distinto del numero de veces de aceptables
            # se procede a eliminar todos los valores que fueron admitidos en la lista de aceptados

            if numvecesaccept != numvecesaceptables:
                promedioEmpatado = evalUltimo.promedio
                aceptados.remove(ultimo)
                ultimo.aceptado = False
                ultimo.save()
                for articulo in aceptados:
                    if (articulo.evaluacion.promedio == promedioEmpatado):
                        aceptados.remove(articulo)
                        articulo.aceptado = False
                        articulo.save()
        else:
            return []
    return aceptados
Exemple #6
0
def generarAceptados(aceptables):
    # Se verifica si el maximo de articulos es mayor que la longitud de la lista de aceptables
    # si esto pasa entonces la lista de aceptables pasa a ser la lista de aceptados, sino se busca
    # cual es la nueva lista de aceptados
    maxarticulos = getDatosConferencia()
    especiales = getArticulosAceptadosEspecial()
    if especiales != None:
        maxarticulos = maxarticulos - len(especiales)
    if maxarticulos>=len(aceptables):
        for art in aceptables:
            articulo = getArticuloPorId(art.pk)
            if articulo != None:
                articulo.aceptado = True
                articulo.save()
        return aceptables
    else:
        if maxarticulos > 0:
            aceptados=[]
            i=0
            while i<maxarticulos:
                aceptados.append(aceptables[i])
                aceptables[i].aceptado = True
                aceptables[i].save()
                i+=1
            # ultimo es el articulo con promedio de menor valor en la lista de aceptados
            ultimo=aceptados[maxarticulos-1]
            evalUltimo = ultimo.evaluacion
            #Se establecen los rechazados por cupo
            porCupo = Evaluacion.objects.filter(promedio__gte = 3, promedio__lte = evalUltimo.promedio)
            if porCupo != None:
                for ev in porCupo:
                    if ev.arbitros.all().count() >= 2:
                        articulo = ev.articulo
                        articulo.rechazadoFaltaCupo = True
                        articulo.save()
            # se cuenta cuantas veces aparece el promedio en la lista de aceptados
            numvecesaccept=calcular_ocurrencia(evalUltimo.promedio, aceptados)
            # se cuenta cuantas veces aparece el promedio en la lista de aceptables
            numvecesaceptables=calcular_ocurrencia(evalUltimo.promedio, aceptables)
            # si el numero de veces de aceptados es distinto del numero de veces de aceptables
            # se procede a eliminar todos los valores que fueron admitidos en la lista de aceptados
            
            if numvecesaccept!=numvecesaceptables:
                promedioEmpatado = evalUltimo.promedio
                aceptados.remove(ultimo)
                ultimo.aceptado = False
                ultimo.save()
                for articulo in aceptados:
                    if(articulo.evaluacion.promedio == promedioEmpatado):
                        aceptados.remove(articulo)
                        articulo.aceptado = False
                        articulo.save()
        else:
            return []
    return aceptados
Exemple #7
0
def get_empatados(aceptados, aceptables):
        empatados=[]+aceptables
        for element in aceptados:
            empatados.remove(element)
        for emp in empatados:
            articulo = getArticuloPorId(emp.pk)
            if articulo != None:
                articulo.empatado = True
                articulo.rechazadoFaltaCupo = True
                articulo.save()
        return empatados
Exemple #8
0
def get_empatados(aceptados, aceptables):
    empatados = [] + aceptables
    for element in aceptados:
        empatados.remove(element)
    for emp in empatados:
        articulo = getArticuloPorId(emp.pk)
        if articulo != None:
            articulo.empatado = True
            articulo.rechazadoFaltaCupo = True
            articulo.save()
    return empatados
Exemple #9
0
def agregarAceptado(request, articulo_id):
    listaAceptados = getArticulosAceptadosYEspeciales()
    listaEmpatados = getArticulosEmpatados()
    maxarticulos = getDatosConferencia()
    if listaAceptados == None:
        listaAceptados = []
        
    if maxarticulos > len(listaAceptados):
        articulo = getArticuloPorId(articulo_id)
        if articulo != None:
            articulo.empatado = False
            articulo.rechazadoFaltaCupo = False
            articulo.aceptado = True
            articulo.save()
        listaAceptados = getArticulosAceptadosYEspeciales()
        listaEmpatados = getArticulosEmpatados()
        maxarticulos = getDatosConferencia()
        cantidad = maxarticulos - len(listaAceptados)
        return render(request, 'Conferencia/desempatar.html', {'listaAceptados':listaAceptados, 'listaEmpatados':listaEmpatados, 'articulosRestantes':cantidad})
    maxarticulos = getDatosConferencia()
    cantidad = maxarticulos - len(listaAceptados)
    return render(request, 'Conferencia/desempatar.html', 
                  {'listaAceptados':listaAceptados, 'listaEmpatados':listaEmpatados, 'articulosRestantes':cantidad, 
                   'error_message' : "Ya no se puede aceptar mas articulos."})
Exemple #10
0
def agregarEspecial(request, articulo_id):
    listaAceptados = getArticulosAceptadosYEspeciales()
    listaEmpatados = getArticulosEmpatados()
    maxarticulos = getDatosConferencia()
    if listaAceptados == None:
        listaAceptados = []

    if maxarticulos > len(listaAceptados):
        articulo = getArticuloPorId(articulo_id)
        if articulo != None:
            articulo.aceptadoEspecial = True
            articulo.rechazadoPorPromedio = False
            articulo.rechazadoFaltaCupo = False
            articulo.empatado = False
            articulo.save()
        listaAceptados = getArticulosAceptadosYEspeciales()
        maxarticulos = getDatosConferencia()
        cantidad = maxarticulos - len(listaAceptados)
        return render(
            request, 'Conferencia/especiales.html', {
                'listaArticulos': getArticulosNoEspeciales(),
                'listaEspeciales': getArticulosAceptadosEspecial(),
                'cantidad': cantidad
            })
    maxarticulos = getDatosConferencia()
    if listaAceptados != None:
        cantidad = maxarticulos - len(listaAceptados)
    else:
        cantidad = maxarticulos
    return render(
        request, 'Conferencia/especiales.html', {
            'listaArticulos': getArticulosNoEspeciales(),
            'listaEspeciales': articulosEspeciales,
            'cantidad': cantidad,
            'error_message': "Ya no se pueden aceptar mas articulos."
        })