Rev 1434 | Rev 1474 | 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() + |
||
1471 | jmachado | 14 | " JOIN t.unidadeAfeta ua " + |
15 | " where ua.usar = true and t.docenteAfeto.id = " + UserSession.getUser().getId() + " and " + |
||
1406 | jmachado | 16 | " (t.unidadeAfeta.cursoAfeto.questionario.state = :s1 OR t.unidadeAfeta.cursoAfeto.questionario.state = :s2)" |
17 | ); |
||
18 | q.setString("s1","PROCESSING_WITH_ANSWERS"); |
||
19 | q.setString("s2","PROCESSING"); |
||
20 | List<QuestionarioPedagogicoTipologiaRequisitada> tipologiaRequisitadas = q.list(); |
||
21 | |||
22 | if(tipologiaRequisitadas.size() == 0) |
||
23 | { |
||
24 | %> |
||
25 | |||
1408 | jmachado | 26 | <div class="col-md-12 col-sm-12 col-xs-12"> |
1406 | jmachado | 27 | <div class="alert alert-success">Olá ${UserSession.shortName} não existem quaisquer questionários ativos nos quais esteja a ser avaliado.</div> |
28 | <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> |
||
29 | </div> |
||
30 | |||
31 | <% |
||
32 | } |
||
33 | else if(tipologiaRequisitadas.size() > 0) |
||
34 | { |
||
35 | %> |
||
36 | |||
1408 | jmachado | 37 | <div class="col-md-12 col-sm-12 col-xs-12"> |
1406 | jmachado | 38 | <div class="panel panel-info"> |
39 | <div class="panel-heading">Olá ${UserSession.shortName}. Existem questinários onde está a ser avaliado <span class="glyphicon glyphicon-alert"/></div> |
||
40 | <div class="panel-body"> |
||
41 | <div class="list-group"> |
||
42 | <% |
||
43 | HashMap<Questionario,List<QuestionarioPedagogicoTipologiaRequisitada>> tipologiasOrdenadas = new HashMap<Questionario, List<QuestionarioPedagogicoTipologiaRequisitada>>(); |
||
44 | for(QuestionarioPedagogicoTipologiaRequisitada tipologiaRequisitada: tipologiaRequisitadas) |
||
45 | { |
||
46 | List<QuestionarioPedagogicoTipologiaRequisitada> tipologias = tipologiasOrdenadas.get(tipologiaRequisitada.getUnidadeAfeta().getCursoAfeto().getQuestionario()); |
||
47 | if(tipologias == null) |
||
48 | { |
||
49 | tipologias = new ArrayList<QuestionarioPedagogicoTipologiaRequisitada>(); |
||
50 | tipologiasOrdenadas.put(tipologiaRequisitada.getUnidadeAfeta().getCursoAfeto().getQuestionario(),tipologias); |
||
51 | } |
||
52 | tipologias.add(tipologiaRequisitada); |
||
53 | } |
||
54 | for(Questionario questionario: tipologiasOrdenadas.keySet()) |
||
55 | { |
||
56 | %> |
||
1434 | jmachado | 57 | <h2 class="well">Questionário: <%=questionario.getDescription()%></h2> |
1406 | jmachado | 58 | <% |
59 | HashMap<QuestionarioPedagogicoCursoAfeto,Boolean> cursosAfetoHashMap = new HashMap<QuestionarioPedagogicoCursoAfeto, Boolean>(); |
||
60 | for(QuestionarioPedagogicoTipologiaRequisitada tipologiaRequisitada: tipologiasOrdenadas.get(questionario)) |
||
61 | { |
||
62 | cursosAfetoHashMap.put(tipologiaRequisitada.getUnidadeAfeta().getCursoAfeto(),true); |
||
63 | } |
||
64 | |||
65 | for(QuestionarioPedagogicoCursoAfeto cursoAfeto: cursosAfetoHashMap.keySet()) |
||
66 | { |
||
67 | %> |
||
1434 | jmachado | 68 | |
69 | <div class="well well-sm"><%=cursoAfeto.getNome()%></div> |
||
70 | |||
1406 | jmachado | 71 | <div class="list-group"> |
1407 | jmachado | 72 | <%--<div class="list-group-item list-group-item-heading clearfix"> |
1406 | jmachado | 73 | 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 | 74 | </div>--%> |
1406 | jmachado | 75 | <% |
76 | for(QuestionarioPedagogicoTipologiaRequisitada tipologiaRequisitada: tipologiasOrdenadas.get(questionario)) |
||
77 | { |
||
78 | if(tipologiaRequisitada.getUnidadeAfeta().getCursoAfeto() == cursoAfeto) |
||
79 | { |
||
80 | %> |
||
81 | |||
82 | |||
1407 | jmachado | 83 | |
84 | |||
85 | |||
86 | |||
1471 | jmachado | 87 | |
1407 | jmachado | 88 | <% |
89 | Query qRespondidos = AbstractDao.getCurrentSession().createQuery("" + |
||
90 | "select count(distinct r.id) from t in class " + QuestionarioPedagogicoTipologiaRequisitada.class.getName() + " " + |
||
91 | " join t.alunosRequisitados a " + |
||
92 | " join a.respostaRequisitada rR " + |
||
93 | " join rR.resposta r " + |
||
94 | " where t.id = :id group by t " |
||
95 | ); |
||
96 | qRespondidos.setLong("id",tipologiaRequisitada.getId()); |
||
97 | //List e = qRespondidos.list(); |
||
98 | Object respondidos = qRespondidos.uniqueResult(); |
||
99 | |||
1471 | jmachado | 100 | if(tipologiaRequisitada.getAlunosRequisitados().size() > 0) |
101 | { |
||
1407 | jmachado | 102 | %> |
1471 | jmachado | 103 | <div class="list-group-item clearfix" > |
104 | <label class="label label-pill <%=respondidos == null ? "label-warning" : "label-success"%>" style="font-size: 1em"><%=respondidos == null ? 0 : ((Long)respondidos)%></label> |
||
105 | respondidos de |
||
106 | <label class="label label-pill label-info" style="font-size: 1em"><%=tipologiaRequisitada.getAlunosRequisitados().size()%></label> |
||
1434 | jmachado | 107 | |
1471 | jmachado | 108 | <span style="margin-left: 10px" class="glyphicon glyphicon-arrow-right"> </span> |
1434 | jmachado | 109 | |
1471 | jmachado | 110 | <label class="bg-info " style="padding: 2px"><%=tipologiaRequisitada.getUnidadeAfeta().getNome()%></label> |
111 | |||
112 | (<%=tipologiaRequisitada.getUnidadeAfeta().getCodigoUnidade()%>) |
||
113 | <label class="bg-primary " style="padding: 2px"><%=tipologiaRequisitada.getCdTurma()%></label> |
||
114 | <label class="badge badge-info"><%=tipologiaRequisitada.getDsTipologia()%></label> |
||
115 | </div> |
||
1406 | jmachado | 116 | <% |
1471 | jmachado | 117 | } |
1406 | jmachado | 118 | } |
119 | } |
||
120 | %> |
||
121 | </div> |
||
122 | <% |
||
123 | } |
||
124 | } |
||
125 | %> |
||
126 | </div> |
||
127 | </div> |
||
128 | </div> |
||
129 | </div> |
||
130 | |||
131 | <% |
||
132 | } |
||
133 | AbstractDao.getCurrentSession().getTransaction().commit(); |
||
134 | %> |