use of com.tomasio.projects.trainning.dto.FaseDTO in project trainning by fernandotomasio.
the class MainPlanejamentoController method listTurmasPlanejadas.
@RequestMapping("/turmas_planejadas_events")
@ResponseBody
public List listTurmasPlanejadas(WebRequest request) {
String planejamentoIdParam = request.getParameter("planejamentoId");
String localIdParam = request.getParameter("localId");
Long planejamentoId = Long.parseLong(planejamentoIdParam);
Long localId = Long.parseLong(localIdParam);
SimpleDateFormat dfDay = new SimpleDateFormat("d");
SimpleDateFormat dfMonth = new SimpleDateFormat("M");
SimpleDateFormat dfYear = new SimpleDateFormat("yyyy");
List result = new ArrayList();
TurmaPlanejadaDTO[] turmas = planningService.findAllTurmasPlanejadas(planejamentoId, null, null, null);
for (TurmaPlanejadaDTO turma : turmas) {
FaseDTO[] fases = turma.getFases();
for (FaseDTO fase : fases) {
if (fase.getLocal() != null && fase.getLocal().getId().equals(localId)) {
Map map = new HashMap();
map.put("title", turma.getCurso().getCodigo() + "-" + turma.getNumeroTurma() + " (" + fase.getDescricao() + ")");
map.put("className", "label-success");
if (fase.getDataInicio() != null) {
map.put("startDay", dfDay.format(fase.getDataInicio()));
map.put("startMonth", dfMonth.format(fase.getDataInicio()));
map.put("startYear", dfYear.format(fase.getDataInicio()));
}
if (fase.getDataTermino() != null) {
map.put("endDay", dfDay.format(fase.getDataTermino()));
map.put("endMonth", dfMonth.format(fase.getDataTermino()));
map.put("endYear", dfYear.format(fase.getDataTermino()));
}
result.add(map);
}
}
}
return result;
}
use of com.tomasio.projects.trainning.dto.FaseDTO in project trainning by fernandotomasio.
the class MainPlanejamentoController method saveTurmaPlanejada.
@RequestMapping("/save_turma")
public String saveTurmaPlanejada(Model model, @Valid TurmaPlanejadaForm turmaPlanejada, BindingResult bindingResult, WebRequest request) {
String planejamentoId = request.getParameter("planejamentoId");
SimpleDateFormat dfFull = new SimpleDateFormat("dd/MM/yyyy");
String[] descricoes = request.getParameterValues("descricao");
String[] datasInicio = request.getParameterValues("dataInicio");
String[] datasTermino = request.getParameterValues("dataTermino");
String[] locaisId = request.getParameterValues("local");
if (bindingResult.hasErrors()) {
ItemPlanejamentoDTO[] itensPlanejamento = planningService.findAllItensPlanejamentoByPlanejamentoId(Long.parseLong(planejamentoId));
model.addAttribute("itensPlanejamento", itensPlanejamento);
return "planejamento/turma_form";
}
TurmaPlanejadaDTO dto = new TurmaPlanejadaDTO();
dto.setItemPlanejamento(planningService.findItemPlanejamento(turmaPlanejada.getItemPlanejamentoId()));
dto.setId(turmaPlanejada.getId());
dto.setResponsavelId(turmaPlanejada.getResponsavelId());
dto.setCurso(planningService.findItemPlanejamento(turmaPlanejada.getItemPlanejamentoId()).getCurso());
dto.setNumeroTurma(turmaPlanejada.getNumeroTurma());
dto.setQuantidadeVagas(turmaPlanejada.getQuantidadeVagas());
FaseDTO[] fases = new FaseDTO[descricoes.length];
for (int i = 0; i < fases.length; i++) {
FaseDTO fase = new FaseDTO();
if (datasInicio[i] != null && !datasInicio[i].equals("")) {
try {
fase.setDataInicio(dfFull.parse(datasInicio[i]));
} catch (ParseException ex) {
Logger.getLogger(TurmasEfetivasController.class.getName()).log(Level.SEVERE, null, ex);
}
}
if (datasTermino[i] != null && !datasTermino[i].equals("")) {
try {
fase.setDataTermino(dfFull.parse(datasTermino[i]));
} catch (ParseException ex) {
Logger.getLogger(TurmasEfetivasController.class.getName()).log(Level.SEVERE, null, ex);
}
}
fase.setDescricao(descricoes[i]);
if (locaisId[i] != null && !locaisId[i].equals("")) {
fase.setLocal(organizationalService.findOrganizacao(Long.parseLong(locaisId[i])));
}
fases[i] = fase;
}
dto.setFases(fases);
if (turmaPlanejada.getId() > 0) {
planningService.updateTurma(dto);
} else {
Long id = planningService.createTurma(dto);
dto.setId(id);
}
dto = (TurmaPlanejadaDTO) planningService.findTurma(dto.getId());
model.addAttribute("turma", dto);
model.addAttribute("fases", dto.getFases());
model.addAttribute("organizacoes", organizationalService.findAllOrganizacoes());
return "planejamento/detail_turma";
}
use of com.tomasio.projects.trainning.dto.FaseDTO in project trainning by fernandotomasio.
the class TurmasProgramadasController method listTurmas.
public List listTurmas(TurmaPlanejadaSearchForm searchForm) {
List resultDataList = new ArrayList();
SimpleDateFormat dfDate = new SimpleDateFormat("yyyyMMdd");
TurmaPlanejadaDTO[] turmasArray = planningService.searchTurmasPlanejadas(searchForm.getPlanejamentoId(), null, null, searchForm.getResponsavelId(), searchForm.getCurso());
List<TurmaPlanejadaDTO> turmasList = new ArrayList<>();
turmasList.addAll(Arrays.asList(turmasArray));
for (Iterator<TurmaPlanejadaDTO> iterator = turmasList.iterator(); iterator.hasNext(); ) {
TurmaPlanejadaDTO t = iterator.next();
boolean mustRemove = false;
if (searchForm.getLocalId() != null) {
FaseDTO[] fases = t.getFases();
boolean flagLocal = false;
for (FaseDTO fase : fases) {
if (fase.getLocal() != null) {
if (fase.getLocal().getId().equals(searchForm.getLocalId())) {
flagLocal = true;
}
}
}
if (flagLocal == false) {
mustRemove = true;
}
}
if (searchForm.getTipo() != null && !searchForm.getTipo().equals("")) {
FaseDTO[] fases = t.getFases();
boolean flagTipo = false;
for (FaseDTO fase : fases) {
if (fase.getTipoFase() != null) {
if (fase.getTipoFase().equals(searchForm.getTipo())) {
flagTipo = true;
}
}
}
if (flagTipo == false) {
mustRemove = true;
}
}
if (mustRemove) {
iterator.remove();
}
}
Collections.sort(turmasList, new Comparator<TurmaPlanejadaDTO>() {
@Override
public int compare(TurmaPlanejadaDTO o1, TurmaPlanejadaDTO o2) {
return o1.getCurso().getCodigo().compareTo(o2.getCurso().getCodigo());
}
});
for (TurmaPlanejadaDTO turma : turmasList) {
Map item = new HashMap();
item.put("id", turma.getId());
item.put("codigo", turma.getCurso().getCodigo());
item.put("numero", turma.getNumeroTurma());
item.put("local", turma.getLocal());
item.put("dataInicio", turma.getDataInicioFormatted());
item.put("dataInicioHidden", dfDate.format(turma.getDataInicio()));
item.put("dataTermino", turma.getDataTerminoFormatted());
item.put("dataTerminoHidden", dfDate.format(turma.getDataTermino()));
item.put("responsavel", organizationalService.findOrganizacao(turma.getResponsavelId()).getSigla());
item.put("tipo", turma.getTipoTurma());
item.put("custoDiarias", turma.getCustoEstimadoDiarias());
item.put("custoAjudaCusto", turma.getCustoEstimadoAjudaCusto());
item.put("custoPassagem", turma.getCustoEstimadoPassagem());
resultDataList.add(item);
}
return resultDataList;
}
use of com.tomasio.projects.trainning.dto.FaseDTO in project trainning by fernandotomasio.
the class TurmasProgramadasController method initializeTurmaPlanejadaForm.
public TurmaPlanejadaForm initializeTurmaPlanejadaForm(Long turmaId, ExternalContext context) {
OrganizacaoDTO userOrganization = (OrganizacaoDTO) context.getSessionMap().get("userOrganization");
TurmaPlanejadaForm form = new TurmaPlanejadaForm();
if (turmaId != null) {
TurmaPlanejadaDTO turma = (TurmaPlanejadaDTO) planningService.findTurma(turmaId);
form.setId(turma.getId());
form.setCursoId(turma.getCurso().getId());
form.setItemPlanejamentoId(turma.getItemPlanejamento().getId());
form.setNumeroTurma(turma.getNumeroTurma());
form.setQuantidadeVagas(turma.getQuantidadeVagas());
form.setResponsavelId(turma.getResponsavelId());
FaseDTO[] fases = turma.getFases();
for (FaseDTO fase : fases) {
FaseForm faseForm = new FaseForm();
faseForm.setDataInicio(fase.getDataInicio());
faseForm.setDataTermino(fase.getDataTermino());
faseForm.setDescricao(fase.getDescricao());
faseForm.setLocalId(fase.getLocal().getId());
faseForm.setLocalSigla(fase.getLocal().getSigla());
faseForm.setTipo(fase.getTipoFase());
form.getFases().add(faseForm);
}
form.setEstimadoAjudaCusto(turma.getCustoEstimadoAjudaCusto());
form.setEstimadoDiarias(turma.getCustoEstimadoDiarias());
form.setEstimadoPassagem(turma.getCustoEstimadoPassagem());
} else {
form.setResponsavelId(userOrganization.getId());
}
return form;
}
use of com.tomasio.projects.trainning.dto.FaseDTO in project trainning by fernandotomasio.
the class AtividadesEnsinoServiceSimpleImpl method calculateCustoPrevistoAlunos.
@Override
@Transactional(readOnly = true)
public Map<String, BigDecimal> calculateCustoPrevistoAlunos(TurmaEfetivaDTO[] turmas) {
Map<String, BigDecimal> result = new HashMap();
DistribuicaoDAO distribuicaoDAO = factory.getDistribuicaoDAO();
String parameterDiaria = ConfigHelper.getValue("custos.diaria");
String parameterPassagem = ConfigHelper.getValue("custos.passagem");
BigDecimal diaria = new BigDecimal(parameterDiaria);
BigDecimal passagem = new BigDecimal(parameterPassagem);
OrganizacaoDAO organizacaoDAO = factory.getOrganizacaoDAO();
BigDecimal transportePrevisto = new BigDecimal(0.00);
BigDecimal diariasPrevisto = new BigDecimal(0.00);
try {
for (TurmaEfetivaDTO turma : turmas) {
List<Distribuicao> vagas = distribuicaoDAO.findAll(turma.getId());
FaseDTO[] fases = turma.getFases();
for (FaseDTO fase : fases) {
if ("PRESENCIAL".equals(fase.getTipoFase())) {
int intervalo = 0;
if (fase.getDataInicio() != null && fase.getDataTermino() != null) {
DateTime dataInicio = new DateTime(fase.getDataInicio().getTime());
DateTime dataTermino = new DateTime(fase.getDataTermino().getTime());
Days d = Days.daysBetween(dataInicio, dataTermino);
intervalo = d.getDays() + 2;
}
if (intervalo <= 0) {
continue;
}
if (intervalo > 50) {
intervalo = 50;
}
for (Distribuicao vaga : vagas) {
if (vaga.isReserva()) {
continue;
}
Organizacao organizacaoAluno = organizacaoDAO.find(vaga.getOrganizacao().getId());
if (organizacaoAluno.createDTO() instanceof ExternoDTO) {
continue;
}
Organizacao organizacaoLocal = organizacaoDAO.find(fase.getLocal().getId());
if (!organizacaoAluno.getCidade().getId().equals(organizacaoLocal.getCidade().getId())) {
diariasPrevisto = diariasPrevisto.add(diaria.multiply(new BigDecimal(intervalo)).multiply(new BigDecimal(vaga.getQuantidadeVagas())));
transportePrevisto = transportePrevisto.add(passagem.multiply(new BigDecimal(vaga.getQuantidadeVagas())));
}
}
}
}
}
} catch (DAOException ex) {
Logger.getLogger(AtividadesEnsinoServiceSimpleImpl.class.getName()).log(Level.SEVERE, null, ex);
}
result.put("transporte", transportePrevisto);
result.put("diarias", diariasPrevisto);
result.put("total", diariasPrevisto.add(transportePrevisto));
return result;
}
Aggregations