/branches/v3/impl/src/web/user/questionarios/topnavQuestionarioReportList.jsp |
---|
File deleted |
\ No newline at end of file |
/branches/v3/impl/src/web/user/questionarios/reports/adminReport.jsp |
---|
New file |
0,0 → 1,154 |
<%@ page import="jomm.dao.impl.AbstractDao" %> |
<%@ page import="jomm.utils.MessageResources" %> |
<%@ page import="pt.estgp.estgweb.domain.JobServiceTaskImpl" %> |
<%@ page import="pt.estgp.estgweb.domain.QuestionarioReportFileGroupImpl" %> |
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %> |
<%@ page import="pt.estgp.estgweb.web.form.configuration.SchedulleTasksForm" %> |
<%@ 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" %> |
<%-- |
Created by IntelliJ IDEA. |
User: jorgemachado |
Date: 29/12/16 |
Time: 11:47 |
To change this template use File | Settings | File Templates. |
--%> |
<%@ page contentType="text/html;charset=UTF-8" language="java" %> |
<% |
String id = request.getParameter("questionarioReportFileGroup.id"); |
AbstractDao.getCurrentSession().beginTransaction(); |
QuestionarioReportFileGroupImpl group = (QuestionarioReportFileGroupImpl) DaoFactory.getQuestionarioReportFileGroupDaoImpl().load(Long.parseLong(id)); |
request.setAttribute("group",group); |
JobServiceTaskImpl job = group.getReportGenerationTaskId() > 0 ? |
(JobServiceTaskImpl) DaoFactory.getJobServiceTaskDaoImpl().load(group.getReportGenerationTaskId()) : |
null; |
request.setAttribute("Job", job); |
%> |
<div class="panel panel-default" id="reportParameterInputsApp" ng-app="reportParameterInputsApp" ng-controller="reportParameterInputsAppController"> |
<div class="panel-heading"> |
Administração do Report ${group.id} |
</div> |
<div class="panel-body"> |
<html:form styleClass="form-horizontal" action="/user/questionariosReportsPae"> |
<div class="web-messages"></div><!--For Widgets Use--> |
<html:errors/> |
<jomm:messages/> |
<jsp:useBean id="QuestionarioReportGroupForm" type="pt.estgp.estgweb.web.form.questionarios.QuestionarioReportGroupForm" scope="request"/> |
<% |
QuestionarioReportGroupForm.setQuestionarioReportFileGroup(group); |
%> |
<html:hidden property="questionarioReportFileGroup.id"/> |
<html:hidden property="parametersArrayObtainedFromWidget" value="{{ inputsJson }}"/> |
<html:hidden property="questionarioReportFileGroup.reportProcessorClass"/> |
<input type="hidden" name="dispatch" value="save"/> |
<div class="form-group"> |
<label class="col-md-2 control-label">Titulo do Grupo de Relatórios</label> |
<div class="col-md-10"> |
<html:text styleClass="form-control" property="questionarioReportFileGroup.title"/> |
</div> |
</div> |
<div class="form-group"> |
<label class="col-md-2 control-label">Tipo</label> |
<div class="col-md-10"> |
<label class="bg-info" style="padding:2px"><bean:message key="${group.reportProcessorClass}"/></label> |
</div> |
</div> |
<div class="form-group"> |
<label class="col-md-2 control-label">Parametros de Serviço</label> |
<div class="col-md-6"> |
<div class="list-group"> |
<div class="list-group-item" ng-repeat="i in inputsJson"> |
<div class="list-group-item"><label class="bg-info"/>{{ i.name }}</label>: {{ i.value }}</div> |
</div> |
</div> |
</div> |
<script> |
//DECLARACAO DA APLICACAO LOCAL EM ANGULAR |
var reportParameterInputsApp = angular.module('reportParameterInputsApp', []); |
GLOBAL_BacoAngularAppDependencies.push('reportParameterInputsApp'); |
reportParameterInputsApp.controller('reportParameterInputsAppController', function($scope) { |
$scope.inputsJson = <%=group.getInputsJson()%>;//apenas para a vista |
}); |
function reloadInputs() |
{ |
widgetCallWithParameters("reloadInputs", |
{ "questionarioReportFileGroup.id" : ${group.id} }, |
$("#reportParameterInputsApp form")[0], //tem d ser com [0] para obter o JavaScript Object original e nao o prototype do JQUERY |
// apenas para uso do div web-messages |
function(response) |
{ |
angular.element($("#reportParameterInputsApp")).scope().inputsJson = response.jsonInputs; |
angular.element($("#reportParameterInputsApp")).scope().$apply(); |
} |
); |
} |
</script> |
<div class="col-md-4"> |
<a class="btn btn-default" href="#" |
data-callback-target-function="reloadInputs" |
data-href="<%=request.getContextPath()%>${group.reportGeneratorInstance.widgetAdminInterface}?questionarioReportFileGroup.id=${group.id}" data-title="Administração de Parametros de Serviço" data-toggle="modal" data-target="#modalAjaxRequest"> |
<span class="glyphicon glyphicon-wrench"> </span> Parametros |
</a> |
</div> |
<div class="col-sm-12"> |
<% |
if(job != null) |
{ |
SchedulleTasksForm schedulleTasksForm = new SchedulleTasksForm(); |
schedulleTasksForm.setJobServiceTask(job); |
schedulleTasksForm.setId(job.getId()); |
request.setAttribute("SchedulleTasksForm",schedulleTasksForm); |
if(job.getStatusEnum() == JobServiceTaskImpl.JobStatus.FAILED || |
job.getStatusEnum() == JobServiceTaskImpl.JobStatus.UNKNOWN_ERROR || |
job.getStatusEnum() == JobServiceTaskImpl.JobStatus.FINISHED_ERRORS ) |
{ |
%> |
<div class="alert alert-danger"><%=MessageResources.getInstance(request).getMessage("job.status."+job.getStatus())%>, Consulte o Log</div> |
<% |
} |
%> |
<div class="task-log task-log-xs" data-href="<%=request.getContextPath()%>/user/startAdminQuestionariosReportsGroup.do?questionarioReportFileGroup.id=${group.id}"> |
<jsp:include page="/admin/configuration/taskLog.jsp"/> |
</div> |
<% |
} |
else |
{ |
%> |
<div class="alert alert-danger">O sistema não conseguiu encontrar a tarefa de atribuição nas tarefas agendadas, por favor verifique em todos os logs de tarefas <html:link action="/user/configurationJobTasks">Aqui</html:link> </div> |
<% |
} |
%> |
</div> |
</div> |
<button type="button" class="btn btn-warning" onclick="set(form,'runJobGenerate'),form.submit();">Gerar Relatórios</button> |
</html:form> |
</div> |
</div> |
<% |
AbstractDao.getCurrentSession().getTransaction().commit(); |
%> |
/branches/v3/impl/src/web/user/questionarios/reports/newReport.jsp |
---|
25,7 → 25,7 |
</script> |
<html:form styleClass="form-horizontal" action="/user/questionariosReportsPae" enctype="multipart/form-data" onsubmit="updateIntroHtml()"> |
<input type="hidden" name="dispatch" value="saveReportGroup"> |
<jsp:useBean id="QuestionarioReportForm" type="pt.estgp.estgweb.web.form.questionarios.QuestionarioReportForm" scope="request"/> |
<jsp:useBean id="QuestionarioReportGroupForm" type="pt.estgp.estgweb.web.form.questionarios.QuestionarioReportGroupForm" scope="request"/> |
<div class="panel panel-default"> |
47,7 → 47,7 |
<html:select styleId="reportFileGroupClass" styleClass="form-control" property="reportFileGroupClass"> |
<option value="">Escolha um Tipo de Relatório</option> |
<option value="pt.estgp.estgweb.domain.QuestionarioReportFileGroupCursosAnoImpl">Relatórios de Curso Publicos</option> |
<option value="pt.estgp.estgweb.domain.QuestionarioReportFileGroupDocentesAno">Relatórios de Docentes</option> |
<option value="pt.estgp.estgweb.domain.QuestionarioReportFileGroupDocentesAnoImpl">Relatórios de Docentes</option> |
</html:select> |
</div> |
</div> |
/branches/v3/impl/src/web/user/questionarios/reports/reportsList.jsp |
---|
52,28 → 52,28 |
List<QuestionarioReportFileGroup> questionariosFileGroups = DaoFactory.getQuestionarioReportFileGroupDaoImpl().findAll(); |
//As transacoes tem de estar fechadas para se chamar a tag initClearances |
for(QuestionarioReportFileGroup q: questionariosFileGroups) |
for(QuestionarioReportFileGroup reportFileGroup: questionariosFileGroups) |
{ |
request.setAttribute("q",q); |
request.setAttribute("reportFileGroup",reportFileGroup); |
%> |
<tr> |
<td>${q.id}</td> |
<td>${q.title}</td> |
<td>${reportFileGroup.id}</td> |
<td>${reportFileGroup.title}</td> |
<td> |
<div class="list-group"> |
<logic:iterate id="input" name="q" property="inputs" type="pt.estgp.estgweb.domain.utils.InputDrivenInput"> |
<logic:iterate id="input" name="reportFileGroup" property="inputs" type="pt.estgp.estgweb.domain.utils.InputDrivenInput"> |
<div class="list-group-item">${input.inputName}: ${input.inputValue}</div> |
</logic:iterate> |
</div> |
</td> |
<td> |
<html:link styleClass="btn btn-default" action="/user/adminQuestionario?questionario.id=${q.id}">Admin</html:link> |
<html:link styleClass="btn btn-default" action="/user/startAdminQuestionariosReportsGroup?questionarioReportFileGroup.id=${reportFileGroup.id}">Admin</html:link> |
</td> |
<td><%=pt.estgp.estgweb.web.utils.DatesUtils.getStringFromDate(q.getUpdateDate())%></td> |
<td><%=pt.estgp.estgweb.web.utils.DatesUtils.getStringFromDate(reportFileGroup.getUpdateDate())%></td> |
<td> |
<button class="btn btn-danger" data-href="<%=request.getContextPath()%>/user/deleteQuestionario.do?questionario.id=${q.id}" data-message="Tem a certeza que deseja eliminar o questionário ${q.id}?" data-toggle="modal" data-target="#confirm-ModalGeneric"> |
<button class="btn btn-danger" data-href="<%=request.getContextPath()%>/user/deleteQuestionario.do?questionario.id=${reportFileGroup.id}" data-message="Tem a certeza que deseja eliminar o questionário ${reportFileGroup.id}?" data-toggle="modal" data-target="#confirm-ModalGeneric"> |
<span class="glyphicon glyphicon-remove small"> </span> |
</button> |
</td> |
/branches/v3/impl/src/web/user/questionarios/reports/widgets/adminAlunosType.jsp |
---|
New file |
0,0 → 1,147 |
<%@ page import="jomm.dao.impl.AbstractDao" %> |
<%@ page import="pt.estgp.estgweb.domain.QuestionarioReportFileGroupAnoImpl" %> |
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %> |
<%@ page import="pt.estgp.estgweb.utils.DatesUtils" %> |
<%@ page import="java.util.List" %> |
<%@ page contentType="text/html;charset=UTF-8" language="java" %> |
<%@ 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" %> |
<% |
String id = request.getParameter("questionarioReportFileGroup.id"); |
AbstractDao.getCurrentSession().beginTransaction(); |
QuestionarioReportFileGroupAnoImpl group = (QuestionarioReportFileGroupAnoImpl) DaoFactory.getQuestionarioReportFileGroupDaoImpl().load(Long.parseLong(id)); |
request.setAttribute("group",group); |
%> |
<div class="panel panel-default"> |
<div class="panel-heading"> |
Parametros especificos de relatórios de alunos ${group.id} |
</div> |
<div class="panel-body"> |
<html:form styleClass="form-horizontal" action="/user/questionariosReportsAdminAlunosWidget"> |
<jsp:useBean id="ReportAdminAlunosWidgetForm" type="pt.estgp.estgweb.web.form.questionarios.widgets.ReportAdminAlunosWidgetForm" scope="request"/> |
<% |
ReportAdminAlunosWidgetForm.setAno(group.getImportYear()); |
ReportAdminAlunosWidgetForm.setAnuais(group.hasAnuais()); |
ReportAdminAlunosWidgetForm.setSemestre1(group.hasSemestre1()); |
ReportAdminAlunosWidgetForm.setSemestre2(group.hasSemestre2()); |
ReportAdminAlunosWidgetForm.setTrimestre1(group.hasTrimestre1()); |
ReportAdminAlunosWidgetForm.setTrimestre2(group.hasTrimestre2()); |
ReportAdminAlunosWidgetForm.setTrimestre3(group.hasTrimestre3()); |
ReportAdminAlunosWidgetForm.setTrimestre4(group.hasTrimestre4()); |
ReportAdminAlunosWidgetForm.setLicenciaturas(group.hasLicenciaturas()); |
ReportAdminAlunosWidgetForm.setMestrados(group.hasMestrados()); |
ReportAdminAlunosWidgetForm.setTesps(group.hasTesps()); |
ReportAdminAlunosWidgetForm.setCets(group.hasCets()); |
%> |
<html:hidden property="questionarioReportGroupId" value="${group.id}"/> |
<div class="web-messages"></div> |
<div class="form-group"> |
<label class="col-md-2 control-label">Ano lectivo ao qual se aplica</label> |
<div class="col-md-10"> |
<% |
List<String> years = DatesUtils.getImportYears(10); |
request.setAttribute("years",years); |
%> |
<html:select property="ano" styleClass="form-control"> |
<logic:iterate id="year" name="years"> |
<html:option value="${year}">${year}</html:option> |
</logic:iterate> |
</html:select> |
</div> |
</div> |
<div class="form-group"> |
<label class="col-md-2 control-label">Tipos de Cursos</label> |
<div class="col-md-10"> |
<div class="list-group"> |
<div class="list-group-item"><html:checkbox property="licenciaturas"/> Licenciaturas</div> |
<div class="list-group-item"><html:checkbox property="mestrados"/> Mestrados</div> |
<div class="list-group-item"><html:checkbox property="tesps"/> CTesP</div> |
<div class="list-group-item"><html:checkbox property="cets"/> CET</div> |
</div> |
</div> |
</div> |
<div class="form-group"> |
<script> |
$(".semestre1Check").attr("data-toogle","toggle"); |
$('.semestre1Check').bootstrapToggle({ |
on: 'Sim', |
off: 'Não' |
}); |
$(".semestre2Check").attr("data-toogle","toggle"); |
$('.semestre2Check').bootstrapToggle({ |
on: 'Sim', |
off: 'Não' |
}); |
$('.semestre1All').bootstrapToggle({ |
on: 'Sim', |
off: 'Não' |
}); |
$('.semestre2All').bootstrapToggle({ |
on: 'Sim', |
off: 'Não' |
}); |
function selectAll(classType,source) |
{ |
$("." + classType).each( |
function() |
{ |
if($(source).prop("checked")) |
$(this).bootstrapToggle('on'); |
else |
$(this).bootstrapToggle('off'); |
}); |
} |
</script> |
<label class="col-md-2 control-label">Periodos</label> |
<div class="col-md-5"> |
<div class="list-group"> |
<div class="list-group-item list-group-item-heading"><input class="semestre1All" type="checkbox" onchange="selectAll('semestre1Check',this)"> Final 1º Semestre</div> |
<div class="list-group-item"><html:checkbox styleClass="semestre1Check" property="semestre1"/> 1º Semestre</div> |
<div class="list-group-item"><html:checkbox styleClass="semestre1Check" property="trimestre1"/> 1º Trimestre</div> |
<div class="list-group-item"><html:checkbox styleClass="semestre1Check" property="trimestre2"/> 2º Trimestre</div> |
</div> |
</div> |
<div class="col-md-5"> |
<div class="list-group"> |
<div class="list-group-item list-group-item-heading"><input class="semestre2All" type="checkbox" onchange="selectAll('semestre2Check',this)"> Final 2º Semestre</div> |
<div class="list-group-item"><html:checkbox styleClass="semestre2Check" property="anuais"/> Anuais</div> |
<div class="list-group-item"><html:checkbox styleClass="semestre2Check" property="semestre2"/> 2º Semestre</div> |
<div class="list-group-item"><html:checkbox styleClass="semestre2Check" property="trimestre3"/> 3º Trimestre</div> |
<div class="list-group-item"><html:checkbox styleClass="semestre2Check" property="trimestre4"/> 4º Trimestre</div> |
</div> |
</div> |
</div> |
<div class="web-messages"></div> |
<button class="btn btn-success pull-right" type="button" onclick="saveAlunosParameters(form)">Salvar</button> |
<script> |
function saveAlunosParameters(form) |
{ |
widgetSimpleCall("save",form,function() |
{ |
<% |
String callbackTargetFunction = request.getParameter("callback-target-function"); |
%> |
window['<%=callbackTargetFunction%>'](); |
$('#modalAjaxRequest').modal('hide'); |
}); |
} |
</script> |
</html:form> |
</div> |
</div> |
/branches/v3/impl/src/web/user/questionarios/reports/topnavQuestionarioReportAdmin.jsp |
---|
New file |
0,0 → 1,12 |
<%@page contentType="text/html"%> |
<%@page pageEncoding="UTF-8"%> |
<%@page import="jomm.web.utils.NavPlaceServer"%> |
<%@ page import="jomm.web.utils.TopNav" %> |
<% |
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request); |
topNav.addNavPlace("/user/homePae.do", "intranet.separator.home.back"); |
topNav.addNavPlace("/user/listQuestionariosReports.do", "surveys.reports"); |
topNav.addNavPlace(null, "surveys.reports.admin"); |
%> |
<jsp:include page="/layout/topnav.jsp"/> |
/branches/v3/impl/src/web/user/questionarios/reports/topnavQuestionarioReportList.jsp |
---|
New file |
0,0 → 1,11 |
<%@page contentType="text/html"%> |
<%@page pageEncoding="UTF-8"%> |
<%@page import="jomm.web.utils.NavPlaceServer"%> |
<%@ page import="jomm.web.utils.TopNav" %> |
<% |
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request); |
topNav.addNavPlace("/user/homePae.do", "intranet.separator.home.back"); |
topNav.addNavPlace(null, "surveys.reports"); |
%> |
<jsp:include page="/layout/topnav.jsp"/> |