Rev 1412 | Rev 1471 | 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 | %> |
||
1434 | jmachado | 56 | <h2 class="well">Questionário: <%=questionario.getDescription()%></h2> |
1406 | jmachado | 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 | %> |
||
1434 | jmachado | 67 | |
68 | <div class="well well-sm"><%=cursoAfeto.getNome()%></div> |
||
69 | |||
1406 | jmachado | 70 | <div class="list-group"> |
1407 | jmachado | 71 | <%--<div class="list-group-item list-group-item-heading clearfix"> |
1406 | jmachado | 72 | 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 | 73 | </div>--%> |
1406 | jmachado | 74 | <% |
75 | for(QuestionarioPedagogicoTipologiaRequisitada tipologiaRequisitada: tipologiasOrdenadas.get(questionario)) |
||
76 | { |
||
77 | if(tipologiaRequisitada.getUnidadeAfeta().getCursoAfeto() == cursoAfeto) |
||
78 | { |
||
79 | %> |
||
80 | <div class="list-group-item clearfix" > |
||
81 | |||
82 | |||
1407 | jmachado | 83 | |
84 | |||
85 | |||
86 | |||
87 | <% |
||
88 | Query qRespondidos = AbstractDao.getCurrentSession().createQuery("" + |
||
89 | "select count(distinct r.id) from t in class " + QuestionarioPedagogicoTipologiaRequisitada.class.getName() + " " + |
||
90 | " join t.alunosRequisitados a " + |
||
91 | " join a.respostaRequisitada rR " + |
||
92 | " join rR.resposta r " + |
||
93 | " where t.id = :id group by t " |
||
94 | ); |
||
95 | qRespondidos.setLong("id",tipologiaRequisitada.getId()); |
||
96 | //List e = qRespondidos.list(); |
||
97 | Object respondidos = qRespondidos.uniqueResult(); |
||
98 | |||
99 | %> |
||
1412 | jmachado | 100 | <label class="label label-pill <%=respondidos == null ? "label-warning" : "label-success"%>" style="font-size: 1em"><%=respondidos == null ? 0 : ((Long)respondidos)%></label> |
1407 | jmachado | 101 | respondidos de |
102 | <label class="label label-pill label-info" style="font-size: 1em"><%=tipologiaRequisitada.getAlunosRequisitados().size()%></label> |
||
1434 | jmachado | 103 | |
104 | <span style="margin-left: 10px" class="glyphicon glyphicon-arrow-right"> </span> |
||
105 | |||
106 | <label class="bg-info " style="padding: 2px"><%=tipologiaRequisitada.getUnidadeAfeta().getNome()%></label> |
||
1406 | jmachado | 107 | (<%=tipologiaRequisitada.getUnidadeAfeta().getCodigoUnidade()%>) |
108 | <label class="badge badge-info"><%=tipologiaRequisitada.getDsTipologia()%></label> |
||
109 | </div> |
||
110 | <% |
||
111 | } |
||
112 | } |
||
113 | %> |
||
114 | </div> |
||
115 | <% |
||
116 | } |
||
117 | } |
||
118 | %> |
||
119 | </div> |
||
120 | </div> |
||
121 | </div> |
||
122 | </div> |
||
123 | |||
124 | <% |
||
125 | } |
||
126 | AbstractDao.getCurrentSession().getTransaction().commit(); |
||
127 | %> |