示例#1
0
文件: evento.py 项目: ybenitezf/agis
def seleccionar_evento(ano_academico_id=None,
                unidad_organica_id=None,
                tipo='1',
                estado=True):
    """Muestra GRID para seleccionar un evento"""
    request = current.request
    T = current.T
    db = current.db
    evento_model.definir_tabla()  # definir los modelos si no se ha hecho ya
    query = (db.evento.id > 0)
    if ano_academico_id:
        # Si se nos da un año académico concreto entonces mostrar solo los
        # eventos de ese año académico.
        query &= (db.ano_academico_id == ano_academico_id)
    else:
        # Si solo tenemos la unidad organica buscar todos los eventos que se
        # desarrolan en la misma.
        assert unidad_organica_id != None
        tmp = db(
            db.ano_academico.unidad_organica_id == unidad_organica_id
            ).select(db.ano_academico.id)
        annos = [i['id'] for i in tmp]
        query &= db.evento.ano_academico_id.belongs(annos)
    query &= (db.evento.tipo == tipo)
    query &= (db.evento.estado == estado)
    m = tools.selector(query,
        [db.evento.nombre], 'evento_id')
    co = CAT()
    heading = DIV(T("Seleccionar evento"), _class="panel-heading")
    body = DIV(m, _class="panel-body")
    co.append(DIV(heading, body, _class="panel panel-default"))
    return co
示例#2
0
def seleccionar_regimen(unidad_organica_id):
    db = current.db
    T = current.T
    model.definir_tabla()
    q = (db.regimen_unidad_organica.id > 0)
    q &= (db.regimen_unidad_organica.unidad_organica_id == unidad_organica_id)
    grid = tools.selector(q,
        [db.regimen_unidad_organica.regimen_id], 'regimen_unidad_organica_id')
    co = CAT()
    header = DIV(T("Seleccionar año académico"), _class="panel-heading")
    body = DIV(grid, _class="panel-body")
    co.append(DIV(header, body, _class="panel panel-default"))
    return co
示例#3
0
def seleccionar(context):
    # TODO: move this to modules.gui.departamento and
    # TODO: reimplement it
    assert isinstance(context, Storage)
    request = current.request
    response = current.response
    T = current.T
    db = current.db
    context.asunto = T('Seleccione Departamento')
    query = ((db.departamento.id > 0) & 
        (db.departamento.unidad_organica_id == context.unidad_organica.id))
    context.manejo = tools.selector(query,
        [db.departamento.nombre, db.departamento.unidad_organica_id],
        'departamento_id')
    response.title = context.unidad_organica.nombre
    response.subtitle = T('Departamentos')
    return context
示例#4
0
def seleccionar(context):
    """Genera un GRID para la selección de un plan de una carrera

    En context debe estar la carrera de la cual se selecionará un plan
    """
    assert isinstance(context, Storage)
    request = current.request
    response = current.response
    T = current.T
    db = current.db
    context.asunto = T('Seleccione el plan acádemico')
    query = (db.plan_curricular.id > 0)
    query &= (db.plan_curricular.carrera_id == context.carrera_uo.id)
    context.manejo = tools.selector(query,
        [db.plan_curricular.nombre, db.plan_curricular.estado],
        'plan_curricular_id')
    return context
示例#5
0
def seleccionar(context):
    """GRID de selección de asignaturas, context debe contener
    el plan académico al que pertenece la asignatura
    """
    assert isinstance(context, Storage)
    request = current.request
    response = current.response
    T = current.T
    db = current.db
    context.asunto = T('Seleccione la asignatura')
    query = (db.asignatura_plan.id > 0)
    query &= (db.asignatura_plan.plan_curricular_id == context.plan_curricular.id)
    query &= (db.asignatura_plan.asignatura_id == db.asignatura.id)
    context.manejo = tools.selector(query,
        [db.asignatura_plan.asignatura_id],
        'asignatura_plan_id')
    return context
示例#6
0
def seleccionar_carrera(unidad_organica_id=None):
    """Genera un GRID para la selección de una carrera"""
    request = current.request
    response = current.response
    T = current.T
    db = current.db
    # context.asunto = T('Seleccione la carrera')
    query = (db.carrera_uo.id > 0)
    if unidad_organica_id:
        query &= (db.carrera_uo.unidad_organica_id == unidad_organica_id)
    query &= (db.carrera_uo.carrera_escuela_id == db.carrera_escuela.id)
    query &= (db.carrera_escuela.descripcion_id == db.descripcion_carrera.id)
    c = tools.selector(query,
        [db.carrera_uo.id, db.descripcion_carrera.nombre],
        'carrera_uo_id', tabla='carrera_uo')
    # response.title = context.unidad_organica.nombre + ' - ' + T('Carreras')
    # response.subtitle = T('Carreras')
    return c
示例#7
0
def seleccionar_asignatura(plan_id=None, no_esta_en=[]):
    """GRID de selección de asignaturas en algún plan"""
    request = current.request
    db = current.db
    model.definir_tabla()
    query = (db.asignatura_plan.id > 0)
    if plan_id:
        query &= (db.asignatura_plan.plan_curricular_id == plan_id)
    else:
        if request.vars.plan_curricular_id:
            plan_id = int(request.vars.plan_curricular_id)
            query &= (db.asignatura_plan.plan_curricular_id == plan_id)
    query &= (db.asignatura_plan.asignatura_id == db.asignatura.id)
    if no_esta_en:
        query &= (~db.asignatura_plan.asignatura_id.belongs(no_esta_en))
    return tools.selector(query,
        [db.asignatura_plan.asignatura_id],
        'asignatura_plan_id')
示例#8
0
def seleccionar(context):
    """Genera un GRID para la selección de una carrera

    En context debe estar la unidad orgánica donde se selecciona
    la carrera.
    """
    assert isinstance(context, Storage)
    request = current.request
    response = current.response
    T = current.T
    db = current.db
    context.asunto = T('Seleccione la carrera')
    query = (db.carrera_uo.id > 0)
    query &= (db.carrera_uo.unidad_organica_id == context.unidad_organica.id)
    query &= (db.carrera_uo.descripcion_id == db.descripcion_carrera.id)
    context.manejo = tools.selector(query,
        [db.carrera_uo.id, db.descripcion_carrera.nombre],
        'carrera_uo_id', tabla='carrera_uo')
    response.title = context.unidad_organica.nombre + ' - ' + T('Carreras')
    response.subtitle = T('Carreras')
    return context
示例#9
0
def seleccionar(context):
    """
    Retorna un grid por medio del cual se puede seleccionar una unidad organica
    el valor del ID seleccionado quedará en:

        request.vars.unidad_organica_id

    el grid para la selección se puede obtener por medio de:

        context.manejo
    """
    assert isinstance(context, Storage)
    request = current.request
    response = current.response
    T = current.T
    db = current.db
    if db(conjunto()).count() > 1:
        # Si hay más de una UO
        context.asunto = T('Seleccione una Unidad Orgánica')
        context.manejo = tools.selector(conjunto(),
                                            [db.unidad_organica.codigo,
                                            db.unidad_organica.nombre],
                                            'unidad_organica_id',
                                            )
        response.title = escuela.obtener_escuela().nombre
        response.subtitle = T('Unidades Orgánicas')
        return context
    else:
        # seleccionar la primera y redirecionar a la vista que nos llamo
        if request.vars.keywords:
            request.vars.keywords = ''
        if request.vars.order:
            request.vars.order = ''
        parametros = request.vars
        parametros.unidad_organica_id = (escuela.obtener_sede_central()).id
        redirect(URL(c=request.controller, f=request.function,
                     vars=parametros))
示例#10
0
def seleccionar_profesor(departamento = None):
    db = current.db
    query = model.obtener_profesores(dpto=departamento)
    return tools.selector(query,
        [db.profesor.grado, db.persona.nombre_completo],
        'profesor_id', tabla='profesor')