Search in sources :

Example 6 with TurmaPlanejadaDTO

use of com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO in project trainning by fernandotomasio.

the class HibernateTurmaDAO method searchTurmasPlanejadas.

@Override
public List<TurmaPlanejadaDTO> searchTurmasPlanejadas(Long planejamentoId, Long planoId, Long cursoId, Long responsavelId, String search) throws DAOException {
    Session session = sessionFactory.getCurrentSession();
    try {
        Criteria criteria = session.createCriteria(TurmaPlanejada.class);
        criteria.createAlias("itemPlanejamento", "item");
        criteria.createAlias("curso", "c");
        if (planejamentoId != null && planejamentoId > 0L) {
            criteria.add(Restrictions.eq("item.planejamento.id", planejamentoId));
        }
        if (cursoId != null && cursoId > 0L) {
            criteria.add(Restrictions.eq("curso.id", cursoId));
        }
        if (responsavelId != null && responsavelId > 0L) {
            criteria.add(Restrictions.eq("responsavelId", responsavelId));
        }
        if (planoId != null && planoId > 0L) {
            criteria.add(Restrictions.eq("c.plano.id", planoId));
        }
        if (search != null) {
            Disjunction or = Restrictions.disjunction();
            or.add(Restrictions.ilike("c.codigo", "%" + search + "%")).add(Restrictions.ilike("c.descricao", "%" + search + "%"));
            criteria.add(or);
        }
        @SuppressWarnings("unchecked") List<TurmaPlanejada> turmas = criteria.list();
        List<TurmaPlanejadaDTO> dto = new ArrayList<TurmaPlanejadaDTO>();
        for (TurmaPlanejada turma : turmas) {
            dto.add(turma.createDTOWithoutDependencies());
        }
        return dto;
    } catch (HibernateException e) {
        Logger.getLogger(HibernateTurmaDAO.class.getName()).log(Level.SEVERE, null, e);
        throw new DAOException(MessageHelper.getMessage("turmas.find.list.error"));
    }
}
Also used : TurmaPlanejada(com.tomasio.projects.trainning.model.TurmaPlanejada) DAOException(com.tomasio.projects.trainning.exception.DAOException) Disjunction(org.hibernate.criterion.Disjunction) HibernateException(org.hibernate.HibernateException) ArrayList(java.util.ArrayList) Criteria(org.hibernate.Criteria) Session(org.hibernate.Session) TurmaPlanejadaDTO(com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO)

Example 7 with TurmaPlanejadaDTO

use of com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO in project trainning by fernandotomasio.

the class HibernateTurmaDAO method instantiateTurma.

@SuppressWarnings("unused")
private Turma instantiateTurma(TurmaDTO dto) {
    Turma turma;
    if (dto instanceof TurmaEfetivaDTO) {
        TurmaEfetivaDTO aux = (TurmaEfetivaDTO) dto;
        turma = new TurmaEfetiva(aux);
    } else {
        TurmaPlanejadaDTO aux = (TurmaPlanejadaDTO) dto;
        turma = new TurmaPlanejada(aux);
    }
    return turma;
}
Also used : TurmaPlanejada(com.tomasio.projects.trainning.model.TurmaPlanejada) TurmaEfetivaDTO(com.tomasio.projects.trainning.dto.TurmaEfetivaDTO) Turma(com.tomasio.projects.trainning.model.Turma) StatusTurmaEfetiva(com.tomasio.projects.trainning.model.StatusTurmaEfetiva) TurmaEfetiva(com.tomasio.projects.trainning.model.TurmaEfetiva) TurmaPlanejadaDTO(com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO)

Example 8 with TurmaPlanejadaDTO

use of com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO in project trainning by fernandotomasio.

the class TCATrainningDocument method makeDocument.

@Override
public byte[] makeDocument() {
    document = documentManager.getDocumentPortrait();
    ByteArrayOutputStream byteArray = documentManager.prepareDocument(document);
    writer = documentManager.getWritter();
    document.open();
    List<TurmaPlanejadaDTO> turmasPlanejadas = Arrays.asList(planningService.findAllTurmasPlanejadas(planejamentoId, null, null, null));
    Map<Long, CursoDTO> cursosMap = new HashMap<Long, CursoDTO>();
    // ReportUtil.arrangeCursosMapByTurmas(turmasPlanejadas, cursosMap);
    createPrincipal(principal);
    createAnexo1(cursosMap);
    createAnexo2(turmasPlanejadas, cursosMap);
    createAnexo3(anexo3);
    document.close();
    return byteArray.toByteArray();
}
Also used : HashMap(java.util.HashMap) ByteArrayOutputStream(java.io.ByteArrayOutputStream) CursoDTO(com.tomasio.projects.trainning.dto.CursoDTO) TurmaPlanejadaDTO(com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO)

Example 9 with TurmaPlanejadaDTO

use of com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO in project trainning by fernandotomasio.

the class TCATrainningDocumentODF method createAnexo2.

private void createAnexo2(List<TurmaPlanejadaDTO> turmasPlanejadas, Map<Long, CursoDTO> cursosMap) {
    Map<Long, List<TurmaDTO>> turmasMap = // ReportUtil.buildTurmasMapByCurso(turmasPlanejadas);
    null;
    Map<Long, AnotacaoDTO[]> anotacoesMap = new HashMap<Long, AnotacaoDTO[]>();
    // ReportUtil.arrangeAnotacoesMapByTurmas(turmasPlanejadas, anotacoesMap);
    // ReportUtil.getCursos(cursosMap);
    List<CursoDTO> cursos = null;
    try {
        for (CursoDTO curso : cursos) {
            if (curso == null) {
                continue;
            }
            odt.newParagraph(curso.getCodigo() + " - " + curso.getDescricao());
            odt.newParagraph();
            List<TurmaDTO> turmas = turmasMap.get(curso.getId());
            FolhaRostoDTO folha = planningService.findFolhaRosto(curso.getCodigo());
            if (folha == null) {
                System.out.println("folha nula" + curso.getCodigo());
            } else {
                odt.newParagraph("FOLHA DE ROSTO:");
                OdfTable folhaDeRostoTable = OdfTable.newTable(odt, 5, 1);
                OdfTableCell objetivoCell = folhaDeRostoTable.getCellByPosition(0, 0);
                objetivoCell.setStringValue("OBJETIVO: \n" + folha.getObjetivo());
                OdfTableCell nivelCell = folhaDeRostoTable.getCellByPosition(0, 1);
                nivelCell.setStringValue(folha.getNivel());
                String numero = "";
                if (curso.getDuracao() == 1) {
                    numero = "dia útil";
                } else {
                    numero = "dias úteis";
                }
                OdfTableCell duracaoCell = folhaDeRostoTable.getCellByPosition(0, 2);
                duracaoCell.setStringValue("DURAÇÃO: " + NumberConverterHelper.convert(curso.getDuracao()) + " " + numero);
                OdfTableCell requisitosCell = folhaDeRostoTable.getCellByPosition(0, 3);
                requisitosCell.setStringValue("PRÉ-REQUISITOS: \n" + folha.getPreRequisitos());
                OdfTableCell disciplinasCell = folhaDeRostoTable.getCellByPosition(0, 4);
                disciplinasCell.setStringValue("DISCIPLINAS: \n" + folha.getDisciplinas());
            }
            odt.newParagraph();
            odt.newParagraph("TURMAS PLANEJADAS:");
            if (turmas != null) {
                for (TurmaDTO turma : turmas) {
                    TurmaPlanejadaDTO turmaPlanejada = (TurmaPlanejadaDTO) turma;
                    String textTurma = "";
                    if (turmaPlanejada.getNumeroTurma() < 10) {
                        textTurma = " - TU 0";
                    } else {
                        textTurma = " - TU ";
                    }
                    odt.newParagraph(curso.getCodigo() + textTurma + String.valueOf(turmaPlanejada.getNumeroTurma()));
                    odt.newParagraph("Local de Realização: " + turmaPlanejada.getLocal());
                    Calendar calendar = Calendar.getInstance();
                    calendar.setTime(turma.getDataInicio());
                    calendar.add(Calendar.DAY_OF_MONTH, -30);
                    odt.newParagraph("Prazo para Indicação: " + df.format(calendar.getTime()));
                    odt.newParagraph("Vagas: " + String.valueOf(turma.getQuantidadeVagas()));
                    odt.newParagraph("Período: ");
                    FaseDTO[] fases = turmaPlanejada.getFases();
                    OdfTable fasesTable = OdfTable.newTable(odt, fases.length + 1, 4);
                    OdfTableCell modadidadeHeader = fasesTable.getCellByPosition(0, 0);
                    modadidadeHeader.setStringValue("Modalidade");
                    modadidadeHeader.setHorizontalAlignment("center");
                    OdfTableCell localHeader = fasesTable.getCellByPosition(1, 0);
                    localHeader.setStringValue("Local");
                    localHeader.setHorizontalAlignment("center");
                    OdfTableCell inicioHeader = fasesTable.getCellByPosition(2, 0);
                    inicioHeader.setStringValue("Início");
                    inicioHeader.setHorizontalAlignment("center");
                    OdfTableCell terminoHeader = fasesTable.getCellByPosition(3, 0);
                    terminoHeader.setStringValue("Término");
                    terminoHeader.setHorizontalAlignment("center");
                    for (int i = 0; i < fases.length; i++) {
                        String local = "A DEFINIR";
                        if (fases[i].getLocal() != null) {
                            local = fases[i].getLocal().getSigla();
                        }
                        String dataInicio = "A DEFINIR";
                        if (fases[i].getDataInicio() != null) {
                            dataInicio = df.format(fases[i].getDataInicio());
                        }
                        String dataTermino = "A DEFINIR";
                        if (fases[i].getDataTermino() != null) {
                            dataTermino = df.format(fases[i].getDataTermino());
                        }
                        OdfTableCell modadidadeCell = fasesTable.getCellByPosition(0, i + 1);
                        modadidadeCell.setStringValue(fases[i].getDescricao());
                        OdfTableCell localCell = fasesTable.getCellByPosition(1, i + 1);
                        localCell.setStringValue(local);
                        localCell.setHorizontalAlignment("center");
                        OdfTableCell inicioCell = fasesTable.getCellByPosition(2, i + 1);
                        inicioCell.setStringValue(dataInicio);
                        inicioCell.setHorizontalAlignment("center");
                        OdfTableCell terminoCell = fasesTable.getCellByPosition(3, i + 1);
                        terminoCell.setStringValue(dataTermino);
                        terminoCell.setHorizontalAlignment("center");
                    }
                    odt.newParagraph("Distribuição de Vagas:");
                    TreinamentoPlanejadoDTO[] treinamentosPlanejados = null;
                    // turmaPlanejada.getTreinamentosPlanejados();
                    Arrays.sort(treinamentosPlanejados, new Comparator<TreinamentoPlanejadoDTO>() {

                        @Override
                        public int compare(TreinamentoPlanejadoDTO o1, TreinamentoPlanejadoDTO o2) {
                            return o1.getOrganizacao().getSigla().compareTo(o2.getOrganizacao().getSigla());
                        }
                    });
                    OdfTable planejadosTable = OdfTable.newTable(odt, treinamentosPlanejados.length + 1, 2);
                    OdfTableCell unidadeHeader = planejadosTable.getCellByPosition(0, 0);
                    unidadeHeader.setStringValue("Organização");
                    unidadeHeader.setHorizontalAlignment("center");
                    OdfTableCell vagasHeader = planejadosTable.getCellByPosition(1, 0);
                    vagasHeader.setStringValue("Vagas");
                    vagasHeader.setHorizontalAlignment("center");
                    for (int i = 0; i < treinamentosPlanejados.length; i++) {
                        OdfTableCell unidadeCell = planejadosTable.getCellByPosition(0, i + 1);
                        unidadeCell.setStringValue(treinamentosPlanejados[i].getOrganizacao().getSigla());
                        OdfTableCell vagasCell = planejadosTable.getCellByPosition(1, i + 1);
                        vagasCell.setStringValue(String.valueOf(treinamentosPlanejados[i].getQuantidade()));
                        vagasCell.setHorizontalAlignment("center");
                    }
                    AnotacaoDTO[] listAnotacoes = anotacoesMap.get(turma.getId());
                    String anotacao = "";
                    if (anotacoesMap.get(turma.getId()) != null) {
                        for (AnotacaoDTO anotacaoDTO : listAnotacoes) {
                            if (!anotacaoDTO.isVisibleInTca()) {
                                anotacao += anotacaoDTO.getTexto() + "\n";
                            }
                        }
                    }
                    if (listAnotacoes != null && listAnotacoes.length > 0) {
                        odt.newParagraph("Observações: " + anotacao);
                    }
                    odt.newParagraph();
                }
            }
        }
    } catch (Exception ex) {
        Logger.getLogger(TCATrainningDocumentODF.class.getName()).log(Level.SEVERE, null, ex);
    }
}
Also used : HashMap(java.util.HashMap) TurmaDTO(com.tomasio.projects.trainning.dto.TurmaDTO) FaseDTO(com.tomasio.projects.trainning.dto.FaseDTO) List(java.util.List) TreinamentoPlanejadoDTO(com.tomasio.projects.trainning.dto.TreinamentoPlanejadoDTO) TurmaPlanejadaDTO(com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO) Calendar(java.util.Calendar) FolhaRostoDTO(com.tomasio.projects.trainning.dto.FolhaRostoDTO) IOException(java.io.IOException) OdfTableCell(org.odftoolkit.odfdom.doc.table.OdfTableCell) AnotacaoDTO(com.tomasio.projects.trainning.dto.AnotacaoDTO) OdfTable(org.odftoolkit.odfdom.doc.table.OdfTable) CursoDTO(com.tomasio.projects.trainning.dto.CursoDTO)

Example 10 with TurmaPlanejadaDTO

use of com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO in project trainning by fernandotomasio.

the class PLN005ODF method createAnexo2.

private void createAnexo2(List<TurmaPlanejadaDTO> turmasPlanejadas, Map<Long, CursoDTO> cursosMap) {
    Map<Long, List<TurmaDTO>> turmasMap = reportUtil.buildTurmasMapByCurso(turmasPlanejadas);
    Map<Long, AnotacaoDTO[]> anotacoesMap = new HashMap<Long, AnotacaoDTO[]>();
    reportUtil.arrangeAnotacoesMapByTurmas(turmasPlanejadas, anotacoesMap);
    List<CursoDTO> cursos = reportUtil.getCursos(cursosMap);
    try {
        for (CursoDTO curso : cursos) {
            if (curso == null) {
                continue;
            }
            odt.newParagraph(curso.getCodigo() + " - " + curso.getDescricao());
            odt.newParagraph();
            List<TurmaDTO> turmas = turmasMap.get(curso.getId());
            FolhaRostoDTO folha = planningService.findFolhaRosto(curso.getCodigo());
            if (folha == null) {
                System.out.println("folha nula" + curso.getCodigo());
            } else {
                odt.newParagraph("FOLHA DE ROSTO:");
                OdfTable folhaDeRostoTable = OdfTable.newTable(odt, 5, 1);
                OdfTableCell objetivoCell = folhaDeRostoTable.getCellByPosition(0, 0);
                objetivoCell.setStringValue("OBJETIVO: \n" + folha.getObjetivo());
                OdfTableCell nivelCell = folhaDeRostoTable.getCellByPosition(0, 1);
                nivelCell.setStringValue(folha.getNivel());
                String numero = "";
                if (curso.getDuracao() == 1) {
                    numero = "dia útil";
                } else {
                    numero = "dias úteis";
                }
                OdfTableCell duracaoCell = folhaDeRostoTable.getCellByPosition(0, 2);
                duracaoCell.setStringValue("DURAÇÃO: " + NumberConverterHelper.convert(curso.getDuracao()) + " " + numero);
                OdfTableCell requisitosCell = folhaDeRostoTable.getCellByPosition(0, 3);
                requisitosCell.setStringValue("PRÉ-REQUISITOS: \n" + folha.getPreRequisitos());
                OdfTableCell disciplinasCell = folhaDeRostoTable.getCellByPosition(0, 4);
                disciplinasCell.setStringValue("DISCIPLINAS: \n" + folha.getDisciplinas());
            }
            odt.newParagraph();
            odt.newParagraph("TURMAS PLANEJADAS:");
            if (turmas != null) {
                for (TurmaDTO turma : turmas) {
                    TurmaPlanejadaDTO turmaPlanejada = (TurmaPlanejadaDTO) turma;
                    String textTurma = "";
                    if (turmaPlanejada.getNumeroTurma() < 10) {
                        textTurma = " - TU 0";
                    } else {
                        textTurma = " - TU ";
                    }
                    odt.newParagraph(curso.getCodigo() + textTurma + String.valueOf(turmaPlanejada.getNumeroTurma()));
                    odt.newParagraph("Local de Realização: " + turmaPlanejada.getLocal());
                    String prazo = "";
                    if (turma.getDataInicio() != null) {
                        Calendar calendar = Calendar.getInstance();
                        calendar.setTime(turma.getDataInicio());
                        calendar.add(Calendar.DAY_OF_MONTH, -30);
                        prazo = df.format(calendar.getTime());
                    }
                    odt.newParagraph("Prazo para Indicação: " + prazo);
                    odt.newParagraph("Vagas: " + String.valueOf(turma.getQuantidadeVagas()));
                    odt.newParagraph("Período: ");
                    FaseDTO[] fases = turmaPlanejada.getFases();
                    OdfTable fasesTable = OdfTable.newTable(odt, fases.length + 1, 4);
                    OdfTableCell modadidadeHeader = fasesTable.getCellByPosition(0, 0);
                    modadidadeHeader.setStringValue("Modalidade");
                    modadidadeHeader.setHorizontalAlignment("center");
                    OdfTableCell localHeader = fasesTable.getCellByPosition(1, 0);
                    localHeader.setStringValue("Local");
                    localHeader.setHorizontalAlignment("center");
                    OdfTableCell inicioHeader = fasesTable.getCellByPosition(2, 0);
                    inicioHeader.setStringValue("Início");
                    inicioHeader.setHorizontalAlignment("center");
                    OdfTableCell terminoHeader = fasesTable.getCellByPosition(3, 0);
                    terminoHeader.setStringValue("Término");
                    terminoHeader.setHorizontalAlignment("center");
                    for (int i = 0; i < fases.length; i++) {
                        String local = "A DEFINIR";
                        if (fases[i].getLocal() != null) {
                            local = fases[i].getLocal().getSigla();
                        }
                        String dataInicio = "A DEFINIR";
                        if (fases[i].getDataInicio() != null) {
                            dataInicio = df.format(fases[i].getDataInicio());
                        }
                        String dataTermino = "A DEFINIR";
                        if (fases[i].getDataTermino() != null) {
                            dataTermino = df.format(fases[i].getDataTermino());
                        }
                        OdfTableCell modadidadeCell = fasesTable.getCellByPosition(0, i + 1);
                        modadidadeCell.setStringValue(fases[i].getDescricao());
                        OdfTableCell localCell = fasesTable.getCellByPosition(1, i + 1);
                        localCell.setStringValue(local);
                        localCell.setHorizontalAlignment("center");
                        OdfTableCell inicioCell = fasesTable.getCellByPosition(2, i + 1);
                        inicioCell.setStringValue(dataInicio);
                        inicioCell.setHorizontalAlignment("center");
                        OdfTableCell terminoCell = fasesTable.getCellByPosition(3, i + 1);
                        terminoCell.setStringValue(dataTermino);
                        terminoCell.setHorizontalAlignment("center");
                    }
                    odt.newParagraph("Distribuição de Vagas:");
                    DistribuicaoDTO[] distribuidas = planningService.findAllDistribuicoes(turma.getId());
                    // turmaPlanejada.getTreinamentosPlanejados();
                    Arrays.sort(distribuidas, new Comparator<DistribuicaoDTO>() {

                        @Override
                        public int compare(DistribuicaoDTO o1, DistribuicaoDTO o2) {
                            return o1.getOrganizacao().getSigla().compareTo(o2.getOrganizacao().getSigla());
                        }
                    });
                    OdfTable planejadosTable = OdfTable.newTable(odt, distribuidas.length + 1, 2);
                    OdfTableCell unidadeHeader = planejadosTable.getCellByPosition(0, 0);
                    unidadeHeader.setStringValue("Organização");
                    unidadeHeader.setHorizontalAlignment("center");
                    OdfTableCell vagasHeader = planejadosTable.getCellByPosition(1, 0);
                    vagasHeader.setStringValue("Vagas");
                    vagasHeader.setHorizontalAlignment("center");
                    for (int i = 0; i < distribuidas.length; i++) {
                        OdfTableCell unidadeCell = planejadosTable.getCellByPosition(0, i + 1);
                        unidadeCell.setStringValue(distribuidas[i].getOrganizacao().getSigla());
                        OdfTableCell vagasCell = planejadosTable.getCellByPosition(1, i + 1);
                        vagasCell.setStringValue(String.valueOf(distribuidas[i].getQuantidadeVagas()));
                        vagasCell.setHorizontalAlignment("center");
                    }
                    AnotacaoDTO[] listAnotacoes = anotacoesMap.get(turma.getId());
                    String anotacao = "";
                    if (anotacoesMap.get(turma.getId()) != null) {
                        for (AnotacaoDTO anotacaoDTO : listAnotacoes) {
                            if (!anotacaoDTO.isVisibleInTca()) {
                                anotacao += anotacaoDTO.getTexto() + "\n";
                            }
                        }
                    }
                    odt.newParagraph();
                    if (listAnotacoes != null && listAnotacoes.length > 0) {
                        odt.newParagraph("Observações: " + anotacao);
                    }
                    odt.newParagraph();
                }
            }
        }
    } catch (Exception ex) {
        Logger.getLogger(TCATrainningDocumentODF.class.getName()).log(Level.SEVERE, null, ex);
    }
}
Also used : HashMap(java.util.HashMap) TurmaDTO(com.tomasio.projects.trainning.dto.TurmaDTO) FaseDTO(com.tomasio.projects.trainning.dto.FaseDTO) List(java.util.List) TurmaPlanejadaDTO(com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO) Calendar(java.util.Calendar) FolhaRostoDTO(com.tomasio.projects.trainning.dto.FolhaRostoDTO) OdfTableCell(org.odftoolkit.odfdom.doc.table.OdfTableCell) DistribuicaoDTO(com.tomasio.projects.trainning.dto.DistribuicaoDTO) AnotacaoDTO(com.tomasio.projects.trainning.dto.AnotacaoDTO) OdfTable(org.odftoolkit.odfdom.doc.table.OdfTable) CursoDTO(com.tomasio.projects.trainning.dto.CursoDTO)

Aggregations

TurmaPlanejadaDTO (com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO)21 FaseDTO (com.tomasio.projects.trainning.dto.FaseDTO)11 HashMap (java.util.HashMap)9 ArrayList (java.util.ArrayList)8 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)7 CursoDTO (com.tomasio.projects.trainning.dto.CursoDTO)6 ItemPlanejamentoDTO (com.tomasio.projects.trainning.dto.ItemPlanejamentoDTO)6 StripItemPlanejamentoDTO (com.tomasio.projects.trainning.dto.StripItemPlanejamentoDTO)5 SimpleDateFormat (java.text.SimpleDateFormat)5 Calendar (java.util.Calendar)5 List (java.util.List)5 DistribuicaoDTO (com.tomasio.projects.trainning.dto.DistribuicaoDTO)4 FolhaRostoDTO (com.tomasio.projects.trainning.dto.FolhaRostoDTO)4 Map (java.util.Map)4 ResponseBody (org.springframework.web.bind.annotation.ResponseBody)4 AnotacaoDTO (com.tomasio.projects.trainning.dto.AnotacaoDTO)3 TreinamentoPlanejadoDTO (com.tomasio.projects.trainning.dto.TreinamentoPlanejadoDTO)3 TurmaDTO (com.tomasio.projects.trainning.dto.TurmaDTO)3 TurmaEfetivaDTO (com.tomasio.projects.trainning.dto.TurmaEfetivaDTO)3 ParseException (java.text.ParseException)3