use of com.tomasio.projects.trainning.dto.TreinamentoSolicitadoDTO in project trainning by fernandotomasio.
the class TreinamentosSolicitadosController method initializeDemostrativo2DataMap.
public Map initializeDemostrativo2DataMap(Long planejamentoId, Long planoEnsinoId, Long userOrganizationId) {
NumberFormat nf = NumberFormat.getCurrencyInstance();
Map result = new HashMap();
Set<ItemPlanejamentoDTO> itensPlanejamento = new HashSet();
TreinamentoSolicitadoDTO[] treinamentosSolicitados = planningService.findAllTreinamentosSolicitados(planejamentoId, planoEnsinoId, null, null);
OrganizacaoDTO[] organizacoesSubordinadas = organizationalService.findAllOrganizacoesSubordinadas(userOrganizationId);
List<Long> organizacoesIds = new ArrayList<>();
organizacoesIds.add(userOrganizationId);
for (OrganizacaoDTO organizacao : organizacoesSubordinadas) {
organizacoesIds.add(organizacao.getId());
}
for (TreinamentoSolicitadoDTO solicitacao : treinamentosSolicitados) {
if (organizacoesIds.contains(solicitacao.getOrganizacao().getId())) {
ItemPlanejamentoDTO itemPlanejamento = planningService.findItemPlanejamento(solicitacao.getItemPlanejamento().getId());
itensPlanejamento.add(itemPlanejamento);
}
}
OrganizacaoDTO[] organizacoesDiretamenteSubordinadas = organizationalService.findAllOrganizacoesDiretamenteSubordinadas(userOrganizationId);
List rows = new ArrayList();
for (ItemPlanejamentoDTO itemPlanejamento : itensPlanejamento) {
long countTotalDiarias = 0;
long countTotalPassagem = 0;
List row = new ArrayList();
row.add(itemPlanejamento.getCurso().getDescricao());
row.add(itemPlanejamento.getCurso().getCodigo());
TreinamentoSolicitadoDTO solicitacaoUserOrganization = planningService.findTreinamentoSolicitado(itemPlanejamento.getId(), userOrganizationId);
if (solicitacaoUserOrganization == null) {
row.add("-");
row.add("-");
} else {
row.add("R$ " + nf.format(solicitacaoUserOrganization.getCustoDiarias()).split(" ")[1]);
row.add("R$ " + nf.format(solicitacaoUserOrganization.getCustoPassagem()).split(" ")[1]);
countTotalDiarias += solicitacaoUserOrganization.getCustoDiarias();
countTotalPassagem += solicitacaoUserOrganization.getCustoPassagem();
}
for (OrganizacaoDTO organizacao : organizacoesDiretamenteSubordinadas) {
OrganizacaoDTO[] subordinadas = organizationalService.findAllOrganizacoesSubordinadas(organizacao.getId());
long countDiarias = 0;
long countPassagem = 0;
TreinamentoSolicitadoDTO solicitacaoOrganizacao = planningService.findTreinamentoSolicitado(itemPlanejamento.getId(), organizacao.getId());
if (solicitacaoOrganizacao != null) {
countDiarias += solicitacaoOrganizacao.getCustoDiarias();
countPassagem += solicitacaoOrganizacao.getCustoPassagem();
}
for (OrganizacaoDTO subordinada : subordinadas) {
TreinamentoSolicitadoDTO solicitacaoSubordinada = planningService.findTreinamentoSolicitado(itemPlanejamento.getId(), subordinada.getId());
if (solicitacaoSubordinada != null) {
countDiarias += solicitacaoSubordinada.getCustoDiarias();
countPassagem += solicitacaoSubordinada.getCustoPassagem();
}
}
if (countDiarias == 0L) {
row.add("-");
} else {
row.add("R$ " + nf.format(countDiarias).split(" ")[1]);
countTotalDiarias += countDiarias;
}
if (countPassagem == 0L) {
row.add("-");
} else {
row.add("R$ " + nf.format(countPassagem).split(" ")[1]);
countTotalPassagem += countPassagem;
}
}
if (countTotalDiarias > 0) {
row.add("R$ " + nf.format(countTotalDiarias).split(" ")[1]);
} else {
row.add("-");
}
if (countTotalPassagem > 0) {
row.add("R$ " + nf.format(countTotalPassagem).split(" ")[1]);
} else {
row.add("-");
}
rows.add(row);
}
result.put("itensPlanejamento", rows);
List subordinadas = new ArrayList();
OrganizacaoDTO userOrganization = organizationalService.findOrganizacao(userOrganizationId);
Map userItem = new HashMap();
userItem.put("sigla", userOrganization.getSigla());
subordinadas.add(userItem);
for (OrganizacaoDTO subordinada : organizacoesDiretamenteSubordinadas) {
Map item = new HashMap();
item.put("sigla", subordinada.getSigla());
subordinadas.add(item);
}
result.put("organizacoes", subordinadas);
return result;
}
use of com.tomasio.projects.trainning.dto.TreinamentoSolicitadoDTO in project trainning by fernandotomasio.
the class TreinamentosSolicitadosController method initializeSelectableOrganizacoes.
public Map initializeSelectableOrganizacoes(ExternalContext context, Long planejamentoId) {
OrganizacaoDTO userOrganization = (OrganizacaoDTO) context.getSessionMap().get("userOrganization");
Map organizacoes = new HashMap();
Map sede = new HashMap();
sede.put("sigla", userOrganization.getSigla());
sede.put("id", userOrganization.getId());
organizacoes.put("sede", sede);
OrganizacaoDTO[] organizacoesSubordinadas = organizationalService.findAllOrganizacoesDiretamenteSubordinadas(userOrganization.getId());
List subordinadasList = new ArrayList();
for (OrganizacaoDTO subordinada : organizacoesSubordinadas) {
Map sedeSubordinada = new HashMap();
sedeSubordinada.put("sigla", subordinada.getSigla());
sedeSubordinada.put("id", subordinada.getId());
subordinadasList.add(sedeSubordinada);
}
PlanejamentoDTO planejamento = planningService.findPlanejamento(planejamentoId);
if (planejamento.getOrganizacao().getId().equals(userOrganization.getId())) {
OrganizacaoDTO[] todasSubordinadas = organizationalService.findAllOrganizacoesSubordinadas(userOrganization.getId());
List todasSubordinadasList = new ArrayList<>();
todasSubordinadasList.addAll(Arrays.asList(todasSubordinadas));
todasSubordinadasList.add(userOrganization);
Set<OrganizacaoDTO> externas = new HashSet<>();
TreinamentoSolicitadoDTO[] solicitados = planningService.findAllTreinamentosSolicitados(planejamentoId, null, null, null);
for (TreinamentoSolicitadoDTO solicitado : solicitados) {
if (todasSubordinadasList.contains(solicitado.getOrganizacao()) == false) {
externas.add(solicitado.getOrganizacao());
}
}
for (OrganizacaoDTO externa : externas) {
subordinadasList.add(externa);
}
}
organizacoes.put("subordinadas", subordinadasList);
return organizacoes;
}
use of com.tomasio.projects.trainning.dto.TreinamentoSolicitadoDTO in project trainning by fernandotomasio.
the class TreinamentosSolicitadosController method detailTreinamentoSoliciado.
@RequestMapping("/detail")
public String detailTreinamentoSoliciado(Model model, WebRequest request) {
String treinamentoSolicitadoId = request.getParameter("treinamentoSolicitadoId");
TreinamentoSolicitadoDTO treinamentoSolicitado = planningService.findTreinamentoSolicitado(Long.parseLong(treinamentoSolicitadoId));
model.addAttribute("treinamentoSolicitado", treinamentoSolicitado);
return "treinamentos_solicitados/detail";
}
use of com.tomasio.projects.trainning.dto.TreinamentoSolicitadoDTO in project trainning by fernandotomasio.
the class MigrateFromPlanejamentoToItemPlanejamento method main.
public static void main(String[] args) throws DAOException {
TreinamentoSolicitadoDAO dao = new HibernateTreinamentoSolicitadoDAO();
TurmaDAO turmaDAO = new HibernateTurmaDAO();
List<TreinamentoSolicitadoDTO> treinamentos = dao.findAll(null, null, null, null);
List<TurmaPlanejadaDTO> turmas = turmaDAO.findAllTurmasPlanejadas(1L, null, null, null);
PlanejamentoDAO planejamentoDAO = new HibernatePlanejamentoDAO();
List<Long> ids = new ArrayList<Long>();
for (TreinamentoSolicitadoDTO treinamentoSolicitadoDTO : treinamentos) {
// PlanejamentoDTO p = planejamentoDAO.find(treinamentoSolicitadoDTO.getPlanejamento().getId());
// treinamentoSolicitadoDTO.setPlanejamento(p);
dao.update(treinamentoSolicitadoDTO);
// System.out.println(treinamentoSolicitadoDTO.getPlanejamento().getExercicio());
// System.out.println(treinamentoSolicitadoDTO.getPlanejamento().getExercicio());
System.out.println("-------------------------------------------------\n\n");
// treinamentoSolicitadoDTO.setPlanejamento(null); // para não encher a coleção e provocar overflow stack
}
// List<Long> turmasIds = new ArrayList<Long>();
// for (TurmaDTO turma : turmas) {
// turmasIds.add(turma.getId());
// }
//
// for (Long id : turmasIds) {
// PlanejamentoDTO p = planejamentoDAO.find(1L);
// TurmaPlanejadaDTO turma = (TurmaPlanejadaDTO) turmaDAO.find(id);
// turma.setPlanejamento(p);
// turmaDAO.update(turma);
// System.out.println(turma.getPlanejamento().getExercicio());
//
// System.out.println(turma.getPlanejamento().getExercicio());
// }
//
}
use of com.tomasio.projects.trainning.dto.TreinamentoSolicitadoDTO in project trainning by fernandotomasio.
the class OrganizerHelper method arrangeTreinamentosConsolidados.
private List<TreinamentoSolicitadoConsolidadoDTO> arrangeTreinamentosConsolidados(Long planejamentoId, Map<String, IndicadorDTO> indicadores, Map<String, Integer> treinamentosPlanejadosMap, TreinamentoSolicitadoDTO[] treinamentosSolicitados) {
// findNextPlanejamentos(planejamentoId);
PlanejamentoDTO[] arrayPlanejamentos = null;
List<TreinamentoSolicitadoConsolidadoDTO> treinamentosConsolidados = new ArrayList<TreinamentoSolicitadoConsolidadoDTO>();
for (TreinamentoSolicitadoDTO t : treinamentosSolicitados) {
TreinamentoSolicitadoConsolidadoDTO treinamentoConsolidado = new TreinamentoSolicitadoConsolidadoDTO();
treinamentoConsolidado.setTreinamentoSolicitadoObjectId(t.getObjectId());
treinamentoConsolidado.setPlanejamentoId(t.getItemPlanejamento().getPlanejamento().getId());
treinamentoConsolidado.setCodCurso(t.getItemPlanejamento().getCurso().getCodigo());
treinamentoConsolidado.setCursoId(t.getItemPlanejamento().getCurso().getId());
treinamentoConsolidado.setDescricaoCurso(t.getItemPlanejamento().getCurso().getDescricao());
if (t.getItemPlanejamento().getCurso().getTipo() != null) {
treinamentoConsolidado.setTipoCurso(t.getItemPlanejamento().getCurso().getTipo());
}
treinamentoConsolidado.setOrganizacaoId(t.getOrganizacao().getId());
treinamentoConsolidado.setSiglaOrganizacao(t.getOrganizacao().getSigla());
treinamentoConsolidado.setNomeOrganizacao(t.getOrganizacao().getNome());
treinamentoConsolidado.setTreinamentoSolicitadoId(t.getId());
treinamentoConsolidado.setQuantidadeTreinamentoSolicitado(t.getQuantidade());
IndicadorDTO indicador = indicadores.get(t.getItemPlanejamento().getCurso().getCodigo() + "-" + t.getOrganizacao().getSigla());
if (indicador != null) {
treinamentoConsolidado.setIndicadorMinimo(indicador.getMinimo());
treinamentoConsolidado.setIndicadorIdeal(indicador.getIdeal());
treinamentoConsolidado.setIndicadorExistente(indicador.getExistente());
int gapIdeal = indicador.getIdeal() - indicador.getExistente();
if (gapIdeal < 0) {
gapIdeal = 0;
}
int gapMinimo = indicador.getMinimo() - indicador.getExistente();
if (gapMinimo < 0) {
gapMinimo = 0;
}
boolean idealAtingido = false;
boolean minimoAtingido = false;
if (gapMinimo == 0) {
minimoAtingido = true;
}
if (gapIdeal == 0) {
idealAtingido = true;
}
int status = 0;
if (minimoAtingido) {
if (idealAtingido) {
status = 2;
} else {
status = 1;
}
}
treinamentoConsolidado.setStatusIndicadores(status);
treinamentoConsolidado.setMinimoAtingido(minimoAtingido);
treinamentoConsolidado.setIdealAtingido(idealAtingido);
treinamentoConsolidado.setGapIdeal(gapIdeal);
treinamentoConsolidado.setGapMinimo(gapMinimo);
} else {
treinamentoConsolidado.setMinimoAtingido(true);
treinamentoConsolidado.setIdealAtingido(true);
treinamentoConsolidado.setGapIdeal(0);
treinamentoConsolidado.setGapMinimo(0);
treinamentoConsolidado.setStatusIndicadores(2);
}
int[] vagas = new int[5];
for (int i = 0; i < vagas.length; i++) {
PlanejamentoDTO planejamento = arrayPlanejamentos[i];
if (planejamento.getId() != null) {
String planId = String.valueOf(planejamento.getId());
String cursoId = String.valueOf(t.getItemPlanejamento().getCurso().getId());
String organizacaoId = String.valueOf(t.getOrganizacao().getId());
Integer aux = treinamentosPlanejadosMap.get(planId + cursoId + organizacaoId);
if (aux != null) {
vagas[i] = aux;
}
}
}
treinamentoConsolidado.setVagas(vagas);
int[] previsaoExistente = new int[5];
for (int i = 0; i < previsaoExistente.length; i++) {
int auxExistente = 0;
if (indicador != null) {
auxExistente = indicador.getExistente();
}
previsaoExistente[i] = auxExistente + vagas[i];
}
treinamentoConsolidado.setPrevisaoExistente(previsaoExistente);
OrganizacaoDTO organizacaoParent = null;
UnidadeDTO auxOrganizacao = null;
if (t.getOrganizacao() instanceof UnidadeDTO) {
auxOrganizacao = (UnidadeDTO) t.getOrganizacao();
}
if (auxOrganizacao != null && auxOrganizacao.getParent() != null) {
organizacaoParent = auxOrganizacao.getParent();
}
if (auxOrganizacao != null && auxOrganizacao.getParent() == null) {
organizacaoParent = auxOrganizacao;
}
if (organizacaoParent != null) {
treinamentoConsolidado.setOrganizacaoParentId(organizacaoParent.getId());
treinamentoConsolidado.setOrganizacaoParentNome(organizacaoParent.getNome());
treinamentoConsolidado.setOrganizacaoParentSigla(organizacaoParent.getSigla());
}
treinamentosConsolidados.add(treinamentoConsolidado);
}
return treinamentosConsolidados;
}
Aggregations