Rev 1406 | Rev 1411 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<%@ page import="jomm.dao.impl.AbstractDao" %>
<%@ page import="org.hibernate.Query" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.HashMap" %>
<%@ page import="java.util.List" %>
<%@ page import="pt.estgp.estgweb.domain.*" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<jsp:useBean id="UserSession" type="pt.estgp.estgweb.domain.UserSessionImpl" scope="request"/>
<%
AbstractDao.getCurrentSession().beginTransaction();
Query q = AbstractDao.getCurrentSession().createQuery(
"select a from a in class " + QuestionarioPedagogicoAlunoRequisitado.class.getName() +
" join a.aluno u " +
" where a.respostaRequisitada.resposta is null and u.id = " + UserSession.getUser().getId() + " and " +
" (a.respostaRequisitada.questionario.state = :s1 OR a.respostaRequisitada.questionario.state = :s2)"
);
q.setString("s1","PROCESSING_WITH_ANSWERS");
q.setString("s2","PROCESSING");
List<QuestionarioPedagogicoAlunoRequisitado> alunosRequisitados = q.list();
if(alunosRequisitados.size() == 0)
{
%>
<div class="col-md-8 col-sm-12 col-xs-12">
<div class="alert alert-success">Olá ${UserSession.shortName} não existem quaisquer questionários ativos em falta da tua parte.</div>
<div class="alert alert-success">Vai consultando o sistema pois poderemos ativar algum questionário e a tua opinião é muito importante para nós. Obrigado</div>
</div>
<%
}
else if(alunosRequisitados.size() > 0)
{
%>
<div class="col-md-8 col-sm-12 col-xs-12">
<div class="panel panel-info">
<div class="panel-heading">Olá ${UserSession.shortName}. Tens questinários por responder <span class="glyphicon glyphicon-alert"/></div>
<div class="panel-body">
<div class="list-group">
<%
HashMap<Questionario,List<QuestionarioPedagogicoAlunoRequisitado>> alunosOrdenados = new HashMap<Questionario, List<QuestionarioPedagogicoAlunoRequisitado>>();
for(QuestionarioPedagogicoAlunoRequisitado alunoRequisitado: alunosRequisitados)
{
List<QuestionarioPedagogicoAlunoRequisitado> alunos = alunosOrdenados.get(alunoRequisitado.getRespostaRequisitada().getQuestionario());
if(alunos == null)
{
alunos = new ArrayList<QuestionarioPedagogicoAlunoRequisitado>();
alunosOrdenados.put(alunoRequisitado.getRespostaRequisitada().getQuestionario(),alunos);
}
alunos.add(alunoRequisitado);
}
for(Questionario questionario: alunosOrdenados.keySet())
{
%>
<h2><%=questionario.getDescription()%></h2>
<%
HashMap<QuestionarioPedagogicoCursoAfeto,Boolean> cursosAfetoHashMap = new HashMap<QuestionarioPedagogicoCursoAfeto, Boolean>();
for(QuestionarioPedagogicoAlunoRequisitado alunoRequisitado: alunosOrdenados.get(questionario))
{
cursosAfetoHashMap.put(alunoRequisitado.getTipologiaRequisitada().getUnidadeAfeta().getCursoAfeto(),true);
}
if(cursosAfetoHashMap.size() == 1)
{
%>
<div class="alert alert-info">${UserSession.shortName} tens mais que um curso, isto pode acontecer por teres unidades extra-curriculares, deves responder a todos os questionários mesmo os que não são do teu curso</div>
<%
}
for(QuestionarioPedagogicoCursoAfeto cursoAfeto: cursosAfetoHashMap.keySet())
{
%>
<h3><%=cursoAfeto.getNome()%></h3>
<div class="list-group">
<div class="list-group-item list-group-item-heading clearfix">
Unidade Curricular (Código da Unidade) <label class="label label-pill label-info" style="font-size: 1em">Professor</label> <label class="badge badge-info">Tipologia de Aula</label>
</div>
<%
for(QuestionarioPedagogicoAlunoRequisitado alunoRequisitado: alunosOrdenados.get(questionario))
{
if(alunoRequisitado.getTipologiaRequisitada().getUnidadeAfeta().getCursoAfeto() == cursoAfeto)
{
%>
<div class="list-group-item clearfix" >
<a href="<%=request.getContextPath()%>/user/startRespostaQuestionario.do?alunoRequisitadoId=<%=alunoRequisitado.getId()%>">
<%=alunoRequisitado.getTipologiaRequisitada().getUnidadeAfeta().getNome()%>
(<%=alunoRequisitado.getTipologiaRequisitada().getUnidadeAfeta().getCodigoUnidade()%>)
</a>
<label class="label label-pill label-info" style="font-size: 1em"><%=alunoRequisitado.getTipologiaRequisitada().getNomeDocente()%></label>
<label class="badge badge-info"><%=alunoRequisitado.getTipologiaRequisitada().getDsTipologia()%></label>
</div>
<%
}
}
%>
</div>
<%
}
}
%>
</div>
</div>
</div>
</div>
<%
}
AbstractDao.getCurrentSession().getTransaction().commit();
%>
Generated by GNU Enscript 1.6.5.2.