Subversion Repositories bacoAlunos

Rev

Rev 1408 | Rev 1434 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1406 jmachado 1
<%@ page import="jomm.dao.impl.AbstractDao" %>
2
<%@ page import="org.hibernate.Query" %>
3
<%@ page import="java.util.ArrayList" %>
4
<%@ page import="java.util.HashMap" %>
5
<%@ page import="java.util.List" %>
6
<%@ page import="pt.estgp.estgweb.domain.*" %>
7
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
8
<jsp:useBean id="UserSession" type="pt.estgp.estgweb.domain.UserSessionImpl" scope="request"/>
9
<%
10
    AbstractDao.getCurrentSession().beginTransaction();
11
 
12
    Query q = AbstractDao.getCurrentSession().createQuery(
13
            "select t from t in class " + QuestionarioPedagogicoTipologiaRequisitada.class.getName() +
14
                    " where t.docenteAfeto.id = " + UserSession.getUser().getId() + " and " +
15
                    " (t.unidadeAfeta.cursoAfeto.questionario.state = :s1 OR t.unidadeAfeta.cursoAfeto.questionario.state = :s2)"
16
    );
17
    q.setString("s1","PROCESSING_WITH_ANSWERS");
18
    q.setString("s2","PROCESSING");
19
    List<QuestionarioPedagogicoTipologiaRequisitada> tipologiaRequisitadas = q.list();
20
 
21
    if(tipologiaRequisitadas.size() == 0)
22
    {
23
%>
24
 
1408 jmachado 25
<div class="col-md-12 col-sm-12 col-xs-12">
1406 jmachado 26
    <div class="alert alert-success">Olá ${UserSession.shortName} não existem quaisquer questionários ativos nos quais esteja a ser avaliado.</div>
27
    <div class="alert alert-success">Vá consultando o sistema pois poderemos ativar algum questionário e poderá saber por aqui se os seus alunos estão a responder. Obrigado</div>
28
</div>
29
 
30
<%
31
}
32
else if(tipologiaRequisitadas.size() > 0)
33
{
34
%>
35
 
1408 jmachado 36
<div class="col-md-12 col-sm-12 col-xs-12">
1406 jmachado 37
    <div class="panel panel-info">
38
        <div class="panel-heading">Olá ${UserSession.shortName}. Existem questinários onde está a ser avaliado <span class="glyphicon glyphicon-alert"/></div>
39
        <div class="panel-body">
40
            <div class="list-group">
41
                <%
42
                    HashMap<Questionario,List<QuestionarioPedagogicoTipologiaRequisitada>> tipologiasOrdenadas = new HashMap<Questionario, List<QuestionarioPedagogicoTipologiaRequisitada>>();
43
                    for(QuestionarioPedagogicoTipologiaRequisitada tipologiaRequisitada: tipologiaRequisitadas)
44
                    {
45
                        List<QuestionarioPedagogicoTipologiaRequisitada> tipologias = tipologiasOrdenadas.get(tipologiaRequisitada.getUnidadeAfeta().getCursoAfeto().getQuestionario());
46
                        if(tipologias == null)
47
                        {
48
                            tipologias = new ArrayList<QuestionarioPedagogicoTipologiaRequisitada>();
49
                            tipologiasOrdenadas.put(tipologiaRequisitada.getUnidadeAfeta().getCursoAfeto().getQuestionario(),tipologias);
50
                        }
51
                        tipologias.add(tipologiaRequisitada);
52
                    }
53
                    for(Questionario questionario: tipologiasOrdenadas.keySet())
54
                    {
55
                %>
56
                <h2><%=questionario.getDescription()%></h2>
57
                <%
58
                    HashMap<QuestionarioPedagogicoCursoAfeto,Boolean> cursosAfetoHashMap = new HashMap<QuestionarioPedagogicoCursoAfeto, Boolean>();
59
                    for(QuestionarioPedagogicoTipologiaRequisitada tipologiaRequisitada: tipologiasOrdenadas.get(questionario))
60
                    {
61
                        cursosAfetoHashMap.put(tipologiaRequisitada.getUnidadeAfeta().getCursoAfeto(),true);
62
                    }
63
 
64
                    for(QuestionarioPedagogicoCursoAfeto cursoAfeto: cursosAfetoHashMap.keySet())
65
                    {
66
                %>
67
                <h3><%=cursoAfeto.getNome()%></h3>
68
                <div class="list-group">
1407 jmachado 69
                    <%--<div class="list-group-item list-group-item-heading clearfix">
1406 jmachado 70
                        Unidade Curricular (Código da Unidade) <label class="label label-pill label-success" style="font-size: 1em">Questionários Preenchidos</label> de <label class="label label-pill label-info" style="font-size: 1em">Número de Solicitados</label> <label class="badge badge-info">Tipologia de Aula</label>
1407 jmachado 71
                    </div>--%>
1406 jmachado 72
                    <%
73
                        for(QuestionarioPedagogicoTipologiaRequisitada tipologiaRequisitada: tipologiasOrdenadas.get(questionario))
74
                        {
75
                            if(tipologiaRequisitada.getUnidadeAfeta().getCursoAfeto() == cursoAfeto)
76
                            {
77
                    %>
78
                    <div class="list-group-item clearfix" >
79
 
80
 
1407 jmachado 81
 
82
 
83
 
84
 
85
                            <%
86
                                Query qRespondidos = AbstractDao.getCurrentSession().createQuery("" +
87
                                        "select count(distinct r.id) from t in class " + QuestionarioPedagogicoTipologiaRequisitada.class.getName() + " " +
88
                                        " join t.alunosRequisitados a " +
89
                                        " join a.respostaRequisitada rR " +
90
                                        " join rR.resposta r " +
91
                                        " where t.id = :id group by t "
92
                                );
93
                                qRespondidos.setLong("id",tipologiaRequisitada.getId());
94
                                //List e = qRespondidos.list();
95
                                Object respondidos = qRespondidos.uniqueResult();
96
 
97
                            %>
1412 jmachado 98
                        <label class="label label-pill <%=respondidos == null ? "label-warning" : "label-success"%>" style="font-size: 1em"><%=respondidos == null ? 0 : ((Long)respondidos)%></label>
1407 jmachado 99
                        respondidos de
100
                        <label class="label label-pill label-info" style="font-size: 1em"><%=tipologiaRequisitada.getAlunosRequisitados().size()%></label>
1406 jmachado 101
                        <%=tipologiaRequisitada.getUnidadeAfeta().getNome()%>
102
                        (<%=tipologiaRequisitada.getUnidadeAfeta().getCodigoUnidade()%>)
103
                        <label class="badge badge-info"><%=tipologiaRequisitada.getDsTipologia()%></label>
104
                    </div>
105
                    <%
106
                            }
107
                        }
108
                    %>
109
                </div>
110
                <%
111
                        }
112
                    }
113
                %>
114
            </div>
115
        </div>
116
    </div>
117
</div>
118
 
119
<%
120
    }
121
    AbstractDao.getCurrentSession().getTransaction().commit();
122
%>