/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; |
} |
} |
} |