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.Criteria" %>
<%@ page import="org.hibernate.criterion.Order" %>
<%@ page import="org.hibernate.criterion.Projections" %>
<%@ page import="pt.estgp.estgweb.domain.Course" %>
<%@ page import="pt.estgp.estgweb.domain.CourseUnit" %>
<%@ page import="pt.estgp.estgweb.domain.TeacherImpl" %>
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %>
<%@ page import="static org.hibernate.criterion.Restrictions.eq" %>
<%@ page import="java.util.List" %>
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/tlds/struts-tiles.tld" prefix="tiles" %>
<%@ taglib uri="/WEB-INF/tlds/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<jsp:useBean id="UserSession" type="pt.estgp.estgweb.domain.UserSessionImpl" scope="request"/>
<%
Long courseId = Long.parseLong(request.getParameter("courseId"));
String importYear = request.getParameter("importYear");
AbstractDao.getCurrentSession().beginTransaction();
TeacherImpl tImpl = (TeacherImpl) DaoFactory.getTeacherDaoImpl().get(UserSession.getUser().getId());
Course courseImpl = DaoFactory.getCourseDaoImpl().get(courseId);
request.setAttribute("course",courseImpl);
%>
<div class="panel panel-default">
<div class="panel-heading"><span class="glyphicon glyphicon-wrench"></span> ${course.code} - <bean:message key="course.${course.degree}"/> - ${course.name}</div>
<div class="panel-body">
<h2>DTP</h2>
<table class="tablesorter tablesorterfiltered">
<thead>
<tr>
<th>Cod.</th>
<th class="filter-name filter-select">Sem.</th>
<th>Nome</th>
<th>Sums</th>
<th>Sums Pre</th>
<th>Sums Falt</th>
<th>Plan</th>
<th class="filter-name filter-select">Ficha</th>
<th>Aval.Enu</th>
<th>Aval.Paut</th>
<th class="filter-name filter-select">Relat.</th>
<th class="filter-name filter-select">Pedag.</th>
<th class="filter-name filter-select">Detalhes</th>
</tr>
</thead>
<tbody>
<%
Criteria c = AbstractDao.getCurrentSession().createCriteria(CourseUnit.class)
.setProjection(Projections.distinct(Projections.property("id")))
.createAlias("course", "c")
.add(eq("importYear", importYear))
.add(eq("c.id", courseId));
c.addOrder(Order.asc("name"));
List<Long> courseUnits = c.list();
for(Long unit: courseUnits)
{
Long unitId = unit;
CourseUnit cu = DaoFactory.getCourseUnitDaoImpl().load(unitId);
request.setAttribute("cu",cu);
%>
<tr>
<td>${cu.code}</td>
<td>${cu.semestre}</td>
<td><html:link target="_blank" action="/user/startLoadCourseUnitFromHome?id=${cu.id}"> ${cu.name}</html:link></td>
<td>${cu.statdtpSumaries}</td>
<td>${cu.statdtpSumariesPrelancados}</td>
<td>${cu.statdtpSumariesMissing}</td>
<td>${cu.statdtpPlaneamentoFiles}</td>
<td><bean:message key="yes.no.${cu.statdtpFichaCurricularValid}"/></td>
<td>${cu.statdtpAvaliacaoEnunciadosFiles}</td>
<td>${cu.statdtpAvaliacaoPautasFiles}</td>
<td>${cu.statdtpEvaluationReportState}</td>
<td>${cu.statdtpInqueritoPedagogicoFiles}</td>
<td><button class="btn btn-default" data-href="<%=request.getContextPath()%>/user/courseunits/statsAjax.jsp?courseUnitId=${cu.id}" data-title="Estatisticas da Unidade ${cu.name} (${cu.code})" data-toggle="modal" data-target="#modalAjaxRequest"><span class="glyphicon glyphicon-zoom-in"/></button> </td>
</tr>
<%
}
%>
</tbody>
</table>
<h2>Tabela de Aproveitamento baseada nos Relatorios de Unidades</h2>
<table class="tablesorter tablesorterfiltered">
<thead>
<tr>
<th>Cod.</th>
<th class="filter-name filter-select">Sem.</th>
<th>Nome</th>
<td> Estado </td>
<td> Insc. </td>
<td> s/elem </td>
<td> aprov. freq. </td>
<td> aprov. norm. </td>
<td> aprov. recu. </td>
<td> aprov. espe. </td>
<td> aprov. total </td>
<td> 10-13 </td>
<td> 14-16 </td>
<td> 17-20 </td>
</tr>
</thead>
<tbody>
<%
for(Long unit: courseUnits)
{
Long unitId = unit;
CourseUnit cu = DaoFactory.getCourseUnitDaoImpl().load(unitId);
request.setAttribute("cu",cu);
%>
<tr>
<%
if(cu.getCourseUnitEvaluation() != null)
{
String estado;
if(cu.getCourseUnitEvaluation().isClosed())
{
estado = "COMPLETO";
}else if(cu.getCourseUnitEvaluation().isTeacherComplete())
{
estado = "ENTREGUE";
}else
{
estado = "NÃO TERMINADO";
}
%>
<td> ${cu.code} </td>
<td> ${cu.semestre} </td>
<%--<td><html:link target="_blank" action="/user/startLoadCourseUnitFromHome?id=${cu.id}"> ${cu.name}</html:link></td>--%>
<td><a href="#cu${cu.id}"> ${cu.name}</a></td>
<td> <%=estado%> </td>
<td> ${cu.courseUnitEvaluation.numAlunosInscritos} </td>
<td> ${cu.courseUnitEvaluation.numAlunosSemElementosAvaliacao} </td>
<td> ${cu.courseUnitEvaluation.numAlunosAprovFrequencia} </td>
<td> ${cu.courseUnitEvaluation.numAlunosAprovNormal} </td>
<td> ${cu.courseUnitEvaluation.numAlunosAprovRecurso} </td>
<td> ${cu.courseUnitEvaluation.numAlunosAprovEspecial} </td>
<td> ${cu.courseUnitEvaluation.numAlunosAprovTotal} </td>
<td> ${cu.courseUnitEvaluation.numAlunosAprov1013} </td>
<td> ${cu.courseUnitEvaluation.numAlunosAprov1416} </td>
<td> ${cu.courseUnitEvaluation.numAlunosAprov1720} </td>
<%
}
else
{
%>
<td> ${cu.code} </td>
<td> ${cu.semestre} </td>
<td> ${cu.name} </td>
<td class="danger" colspan="11">INEXISTENTE</td>
<%
}
%>
</tr>
<%
}
%>
</tbody>
</table>
<h2>Relatórios das Unidades</h2>
<%
for(Long unit: courseUnits)
{
Long unitId = unit;
CourseUnit cu = DaoFactory.getCourseUnitDaoImpl().load(unitId);
request.setAttribute("cu",cu);
%>
<a name="cu${cu.id}"> </a>
<div class="panel panel-info">
<div class="panel-heading">${cu.name} (${cu.semestre})</div>
<div class="panel-body">
<%
if(cu.getCourseUnitEvaluation() != null)
{
String estado;
if(cu.getCourseUnitEvaluation().isClosed())
{
estado = "COMPLETO";
}
else if(cu.getCourseUnitEvaluation().isTeacherComplete())
{
estado = "ENTREGUE";
}
else
{
estado = "NÃO TERMINADO";
}
%>
<p>Estado: <%=estado%></p>
<h4>Apreciação dos resultados quantitativos obtidos pelos estudantes</h4>
<pre>
${cu.courseUnitEvaluation.qualApreciacaoQuantitivos}
</pre>
<h4>Apreciação do funcionamento da UC
(Condições de funcionamento da UC; problemas detetados; identificação de práticas pedagógicas de mérito ou deficientes; etc.) </h4>
<pre>
${cu.courseUnitEvaluation.qualApreciacaoUC}
</pre>
<h4>Apreciação do cumprimento do programa da UC
(Adequação das metodologias de ensino/aprendizagem utilizadas; competências efetivamente adquiridas e cumprimento dos conteúdos planificados) </h4>
<pre>
${cu.courseUnitEvaluation.qualApreciacaoCumprimentoPrograma}
</pre>
<h4>Conclusões
(Pontos fortes e fracos; sugestões de melhoria e respetivo plano de ação para a sua concretização) </h4>
<pre>
${cu.courseUnitEvaluation.qualConclusoes}
</pre>
<%
}
else
{
%>
<p>Estado: INEXISTENTE</p>
<%
}
%>
</div>
</div>
<%
}
%>
</div>
</div>
<%
AbstractDao.getCurrentSession().getTransaction().commit();
%>
Generated by GNU Enscript 1.6.5.2.