Subversion Repositories bacoAlunos

Compare Revisions

Ignore whitespace Rev 1336 → Rev 1337

/branches/v3/impl/src/java/pt/estgp/estgweb/Globals.java
430,4 → 430,9
 
 
public final static int CERTIFICATES_EXPIRTATION_IN_DAYS = ConfigProperties.getIntProperty("certificates.expire.in.days");
 
 
public static final String BACO_TIPOLOGIA_SIMPLES_VIRTUAL_CODE = ConfigProperties.getProperty("baco.tipologia.simples");
public static final String BACO_TIPOLOGIA_SIMPLES_DS = ConfigProperties.getProperty("netpa.tipo.aula." + BACO_TIPOLOGIA_SIMPLES_VIRTUAL_CODE);
 
}
/branches/v3/impl/src/java/pt/estgp/estgweb/services/questionarios/pedagogico/UpdateCoursesAndUnitsJobService.java
602,4 → 602,35
}
}
}
 
 
/**
* SERVIÇO
* @param questionarioId
* @param cursosAfetos
* @param session
* @param questionarioCleared
* @throws IOException
* @throws TransformationException
* @throws NotAuthorizedException
*/
public void updateTipologiasPedagogico(long questionarioId, List<QuestionarioPedagogicoCursoAfeto> cursosAfetos, UserSession session,QuestionarioImpl questionarioCleared) throws IOException, TransformationException, NotAuthorizedException {
 
if(!questionarioCleared.isClear((UserSessionImpl) session,QuestionarioImpl.QuestionarioClearancesOperation.QUESTIONARIO_CHANGE_TIPOLOGIES.name()))
{
throw new NotAuthorizedException("Nao tem autorização para alterar as tipologias");
}
for(QuestionarioPedagogicoCursoAfeto cursoAfeto: cursosAfetos)
{
QuestionarioPedagogicoCursoAfeto cuAfetoPersistent = DaoFactory.getQuestionarioPedagogicoCursoAfetoDaoImpl().load(cursoAfeto.getId());
if(cuAfetoPersistent.getQuestionario().getId() == questionarioId)
{
cuAfetoPersistent.setUsarTipologias(cursoAfeto.isUsarTipologias());
}
else
logger.warn("Curso pedido no serviço não faz parte do questionario requisitado: " + cursoAfeto.getId() + " " + cursoAfeto.getQuestionario().getId() + " != " + questionarioId);
 
}
 
}
}
/branches/v3/impl/src/java/pt/estgp/estgweb/domain/CourseUnitImpl.java
13,9 → 13,7
 
import java.io.IOException;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import java.util.*;
 
/**
* Created by IntelliJ IDEA.
848,6 → 846,7
{
return serializeMergedList(obtainMergeTipologias());
}
 
public ArrayList<Tipologia> obtainMergeTipologias()
{
ArrayList<Tipologia> merge = new ArrayList<Tipologia>();
913,6 → 912,83
}
 
 
public ArrayList<Tipologia> obtainTipologiasSimples(CourseUnit courseUnit)
{
ArrayList<Tipologia> merge = new ArrayList<Tipologia>();
 
Map<String,Map<String,Tipologia>> docenteTurmas = new HashMap<String,Map<String,Tipologia>>();
 
fullfillTipologiasSimples(getTipologiasSumarios(), docenteTurmas);
fullfillTipologiasSimples(getTipologiasExtraAdicionadas(), docenteTurmas);
fullfillTipologiasSimples(getTipologiasHorarioReferencia(), docenteTurmas);
fullfillTipologiasSimples(getTipologiasMarcadas(), docenteTurmas);
fullfillTipologiasSimples(getTipologiasUsadas(), docenteTurmas);
 
 
if(docenteTurmas.size() == 0)
{
//NAO Há sumários vamos associar todos os docentes a todas as turmas
if(courseUnit.getTurmas() != null && courseUnit.getTeachers() != null)
{
for(CourseUnitTurma turma: courseUnit.getTurmas())
{
for(Teacher t : courseUnit.getTeachers())
{
Tipologia simples = new Tipologia();
simples.setMarkWarning(true);
simples.setCdDocente(""+t.getSigesCode());
simples.setCdTurma(turma.getTurma());
simples.setCdTipologia(Globals.BACO_TIPOLOGIA_SIMPLES_VIRTUAL_CODE);
simples.setDsTipologia(Globals.BACO_TIPOLOGIA_SIMPLES_DS);
merge.add(simples);
}
}
}
}
else
{
for(Map.Entry<String,Map<String,Tipologia>> docentes: docenteTurmas.entrySet())
{
for(Tipologia tipologia: docentes.getValue().values())
{
merge.add(tipologia);
}
}
}
return merge;
}
 
private void fullfillTipologiasSimples(ArrayList<Tipologia> tipologias, Map<String, Map<String, Tipologia>> docenteTurmas) {
if(tipologias != null)
for(Tipologia tipo: tipologias)
{
Map<String,Tipologia> turmasDocente = docenteTurmas.get(tipo.getCdDocente());
if(turmasDocente == null)
turmasDocente = new HashMap<String,Tipologia>();
docenteTurmas.put(tipo.getCdDocente(),turmasDocente);
Tipologia simples = turmasDocente.get(tipo.getCdTurma());
if(simples==null)
{
simples = new Tipologia();
simples.setCdDocente(tipo.getCdDocente());
simples.setCdTurma(tipo.getCdTurma());
simples.setCdTipologia(Globals.BACO_TIPOLOGIA_SIMPLES_VIRTUAL_CODE);
simples.setDsTipologia(Globals.BACO_TIPOLOGIA_SIMPLES_DS);
if(tipo.getOcorrencias() > 0)
{
simples.setOcorrencias(tipo.getOcorrencias());
}
turmasDocente.put(tipo.getCdTurma(),simples);
}
if(tipo.getOcorrencias() > 0)
{
simples.setOcorrencias(simples.getOcorrencias()+tipo.getOcorrencias());
}
 
}
}
 
 
}
 
 
/branches/v3/impl/src/java/pt/estgp/estgweb/web/form/questionarios/QuestionarioForm.java
5,9 → 5,13
import org.apache.struts.action.ActionMapping;
import pt.estgp.estgweb.domain.DomainObjectFactory;
import pt.estgp.estgweb.domain.QuestionarioImpl;
import pt.estgp.estgweb.domain.QuestionarioPedagogicoCursoAfeto;
import pt.estgp.estgweb.domain.QuestionarioPedagogicoCursoAfetoImpl;
import pt.estgp.estgweb.utils.DynamicArrayList;
import pt.estgp.estgweb.web.form.ApplicationForm;
 
import javax.servlet.http.HttpServletRequest;
import java.util.List;
 
 
/**
45,6 → 49,17
this.showQuestionarioForm = showQuestionarioForm;
}
 
public List<QuestionarioPedagogicoCursoAfeto> cursosAfetos = new DynamicArrayList<QuestionarioPedagogicoCursoAfeto>(QuestionarioPedagogicoCursoAfetoImpl.class);
 
public List<QuestionarioPedagogicoCursoAfeto> getCursosAfetos()
{
return cursosAfetos;
}
 
public void setCursosAfetos(List<QuestionarioPedagogicoCursoAfeto> cursosAfetos) {
this.cursosAfetos = cursosAfetos;
}
 
public QuestionarioForm()
{
 
/branches/v3/impl/src/java/pt/estgp/estgweb/web/controllers/questionarios/QuestionarioCourseSelectionController.java
69,12 → 69,29
for(ILogMessage log: logMessages.getLogMessages())
{
if(log.getType() == LogMessageTypeEnum.ERROR || log.getType() == LogMessageTypeEnum.WARNING || log.getType() == LogMessageTypeEnum.FATAL)
addError(request,log.getMsg());
addErrorAssString(request,log.getMsg());
else
addMessage(request,log.getMsg());
addMessageAsString(request,log.getMsg());
}
return mapping.findForward("coursesSelection");
return mapping.findForward("admin");
}
 
public ActionForward updateTipologias(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Throwable
{
QuestionarioForm frm = (QuestionarioForm) form;
 
IServiceManager sm = ServiceManager.getInstance();
String[] names = {"questionarioId","cursosAfetos"};
Object[] args = {frm.getQuestionario().getId(),frm.getCursosAfetos()};
 
sm.execute(RequestUtils.getRequester(request, response),"QuestionarioUpdateTipologiasPedagogico",args,names);
 
addMessage(request,"questionario.tipologias.update.success");
return mapping.findForward("coursesCheck");
}
 
}
/branches/v3/impl/src/java/pt/estgp/estgweb/web/controllers/ApplicationDispatchController.java
1,24 → 1,13
package pt.estgp.estgweb.web.controllers;
 
import jomm.utils.MessageResources;
import org.apache.log4j.Logger;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.actions.DispatchAction;
import org.apache.struts.action.*;
import org.apache.log4j.Logger;
import pt.estgp.estgweb.web.controllers.announcements.AnnouncementsController;
import pt.estgp.estgweb.web.form.announcements.AnnouncementsForm;
import pt.estgp.estgweb.web.UserSessionProxy;
import pt.estgp.estgweb.web.utils.RequestUtils;
import pt.estgp.estgweb.domain.UserSessionImpl;
 
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import java.io.IOException;
import java.io.Serializable;
import java.util.List;
import java.util.ArrayList;
 
import jomm.utils.MessageResources;
 
/**
* @author Jorge Machado
* @date 26/Fev/2008
54,6 → 43,13
saveMessages(request,actionMessages);
}
 
public void addMessageAsString(HttpServletRequest request, String message)
{
ActionMessages actionMessages = getMessages(request);
actionMessages.add(ActionMessages.GLOBAL_MESSAGE,new StringMessage(message));
saveMessages(request,actionMessages);
}
 
public void addMessage(HttpServletRequest request, String message, String arg0)
{
ActionMessages actionMessages = getMessages(request);
139,6 → 135,13
saveErrors(request,actionMessages);
}
 
public void addErrorAssString(HttpServletRequest request, String message)
{
ActionMessages actionMessages = getErrors(request);
actionMessages.add(ActionMessages.GLOBAL_MESSAGE,new StringMessage(message));
saveErrors(request,actionMessages);
}
 
public void addError(HttpServletRequest request, String message, String arg0)
{
ActionMessages actionMessages = getErrors(request);
213,5 → 216,24
saveErrors(request,actionMessages);
}
 
public static class StringMessage extends ActionMessage
{
String message;
public StringMessage(String message)
{
super(message);
this.message = message;
}
 
@Override
public boolean isResource() {
return false;
}
 
@Override
public String toString() {
return message;
}
}
 
}