Search in sources :

Example 31 with FaseDTO

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

the class ImportTurmasEfetivasFromPlanejamento method execute.

@Override
public void execute() {
    Long planejamentoId = 312434L;
    ApplicationContext context = new ClassPathXmlApplicationContext("service-context.xml");
    AtividadesEnsinoService atividadesService = (AtividadesEnsinoService) context.getBean("atividadesEnsinoService");
    TrainningService trainningService = (TrainningService) context.getBean("trainningService");
    PlanningService planningService = (PlanningService) context.getBean("planningService");
    try {
        PlanejamentoDTO planejamento = planningService.findPlanejamento(planejamentoId);
        TurmaPlanejadaDTO[] turmasPlanejadas = planningService.findAllTurmasPlanejadas(planejamentoId, null, null, null);
        for (TurmaPlanejadaDTO turmaPlanejadaDTO : turmasPlanejadas) {
            TurmaEfetivaDTO turmaEfetiva = new TurmaEfetivaDTO();
            turmaEfetiva.setCurso(trainningService.findCurso(turmaPlanejadaDTO.getCurso().getId()));
            turmaEfetiva.setResponsavelId(turmaPlanejadaDTO.getResponsavelId());
            turmaEfetiva.setOrganizacaoGestoraId(planejamento.getOrganizacao().getId());
            turmaEfetiva.setResponsavelMatriculaId(planejamento.getOrganizacao().getId());
            turmaEfetiva.setResponsavelConclusaoId(turmaPlanejadaDTO.getResponsavelId());
            turmaEfetiva.setResponsavelPreMatriculaId(planejamento.getOrganizacao().getId());
            turmaEfetiva.setResponsavelSelecaoId(planejamento.getOrganizacao().getId());
            turmaEfetiva.setResponsavelApresentacaoId(turmaPlanejadaDTO.getResponsavelId());
            turmaEfetiva.setNumeroTurma(turmaPlanejadaDTO.getNumeroTurma());
            Set<FaseDTO> fasesDTO = new HashSet<FaseDTO>(Arrays.asList(turmaPlanejadaDTO.getFases()));
            FaseDTO[] fasesArray = new FaseDTO[fasesDTO.size()];
            int i = 0;
            for (FaseDTO faseDTO : fasesDTO) {
                fasesArray[i] = faseDTO;
                i++;
            }
            turmaEfetiva.setFases(fasesArray);
            turmaEfetiva.setTurmaPlanejadaId(turmaPlanejadaDTO.getId());
            turmaEfetiva.setNumeroTurma(turmaPlanejadaDTO.getNumeroTurma());
            turmaEfetiva.setQuantidadeVagas(turmaPlanejadaDTO.getQuantidadeVagas());
            Calendar calendar = Calendar.getInstance();
            SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");
            Date dataInicio = turmaPlanejadaDTO.getDataInicio();
            Date startIndicacoes = null;
            Date endIndicacoes = null;
            if (dataInicio != null) {
                calendar.setTime(dataInicio);
                try {
                    startIndicacoes = df.parse("01/01/2015");
                    calendar.add(Calendar.DATE, -20);
                    endIndicacoes = df.parse(df.format(calendar.getTime()));
                } catch (ParseException ex) {
                    Logger.getLogger(ImportTurmasEfetivasFromPlanejamento.class.getName()).log(Level.SEVERE, null, ex);
                }
            } else {
                try {
                    startIndicacoes = df.parse("01/01/2015");
                    endIndicacoes = df.parse("31/12/2015");
                } catch (ParseException ex) {
                    Logger.getLogger(ImportTurmasEfetivasFromPlanejamento.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
            PeriodoDTO periodoIndicacoes = new PeriodoDTO();
            periodoIndicacoes.setDataInicio(startIndicacoes);
            periodoIndicacoes.setDataTermino(endIndicacoes);
            turmaEfetiva.setPeriodoIndicacao(periodoIndicacoes);
            // TODO: QuantidadeVagas?
            // TODO: periodoIndicacao?
            // TreinamentoPlanejadoDTO [] treinamentosPlanejados = turmaPlanejadaDTO.getTreinamentosPlanejados();
            // for (TreinamentoPlanejadoDTO treinamentoPlanejadoDTO : treinamentosPlanejados) {
            // DistribuicaoDTO distribuicao = new DistribuicaoDTO();
            // distribuicao.setOrganizacao(treinamentoPlanejadoDTO.getOrganizacao());
            // distribuicao.setQuantidadeVagas(treinamentoPlanejadoDTO.getQuantidade());
            // distribuicao.setReserva(false);
            // //turmaEfetiva.getDistribuicoes().add(distribuicao);
            // 
            // }
            Date exercicio = planejamento.getExercicio();
            turmaEfetiva.setExercicio(exercicio);
            Long turmaId = atividadesService.createTurmaEfetiva(turmaEfetiva);
            // DistribuiĆ§Ć£o de Vagas
            DistribuicaoDTO[] distribuicoes = planningService.findAllDistribuicoes(turmaPlanejadaDTO.getId());
            for (DistribuicaoDTO distribuicaoPlanejada : distribuicoes) {
                DistribuicaoDTO distribuicaoEfetiva = new DistribuicaoDTO();
                distribuicaoEfetiva.setOrganizacao(distribuicaoPlanejada.getOrganizacao());
                distribuicaoEfetiva.setPrioridade(distribuicaoPlanejada.getPrioridade());
                distribuicaoEfetiva.setQuantidadeVagas(distribuicaoPlanejada.getQuantidadeVagas());
                distribuicaoEfetiva.setReserva(distribuicaoPlanejada.isReserva());
                distribuicaoEfetiva.setTurma(atividadesService.findTurmaEfetiva(turmaId));
                atividadesService.createDistribuicao(distribuicaoEfetiva);
            }
        }
    } catch (Exception e) {
    }
}
Also used : PlanningService(com.tomasio.projects.trainning.interfaces.PlanningService) Calendar(java.util.Calendar) Date(java.util.Date) ParseException(java.text.ParseException) PlanejamentoDTO(com.tomasio.projects.trainning.dto.PlanejamentoDTO) FaseDTO(com.tomasio.projects.trainning.dto.FaseDTO) DistribuicaoDTO(com.tomasio.projects.trainning.dto.DistribuicaoDTO) ApplicationContext(org.springframework.context.ApplicationContext) ClassPathXmlApplicationContext(org.springframework.context.support.ClassPathXmlApplicationContext) TurmaEfetivaDTO(com.tomasio.projects.trainning.dto.TurmaEfetivaDTO) ClassPathXmlApplicationContext(org.springframework.context.support.ClassPathXmlApplicationContext) TrainningService(com.tomasio.projects.trainning.interfaces.TrainningService) PeriodoDTO(com.tomasio.projects.trainning.dto.PeriodoDTO) ParseException(java.text.ParseException) SimpleDateFormat(java.text.SimpleDateFormat) AtividadesEnsinoService(com.tomasio.projects.trainning.interfaces.AtividadesEnsinoService) TurmaPlanejadaDTO(com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO) HashSet(java.util.HashSet)

Example 32 with FaseDTO

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

the class TurmaEfetiva method createDTOMinimal.

@Override
public TurmaEfetivaDTO createDTOMinimal() {
    SimpleDateFormat dfOnlyDay = new SimpleDateFormat("dd");
    SimpleDateFormat dfOnlyMonth = new SimpleDateFormat("MM");
    SimpleDateFormat dfOnlyYear = new SimpleDateFormat("yyyy");
    SimpleDateFormat dfMonthAndDay = new SimpleDateFormat("dd/MM");
    SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");
    TurmaEfetivaDTO dto = new TurmaEfetivaDTO();
    dto.setAtivado(ativado);
    dto.setBCAAtivacao(BCAAtivacao);
    dto.setBCAEncerramento(BCAEncerramento);
    dto.setDataBCAAtivacao(dataBCAAtivacao);
    if (dataBCAAtivacao != null) {
        dto.setDataBCAAtivacaoFormatted(df.format(dataBCAAtivacao));
    }
    dto.setDataBCAEncerramento(dataBCAEncerramento);
    if (dataBCAEncerramento != null) {
        dto.setDataBCAEncerramentoFormatted(df.format(dataBCAEncerramento));
    }
    dto.setLmsCourseId(lmsCourseId);
    dto.setPreAtivado(preAtivado);
    dto.setStatus(getStatus());
    dto.setDataAtivacao(dataAtivacao);
    dto.setConcluido(isConcluido());
    dto.setId(id);
    dto.setRestrictedIndicacoes(restrictedIndicacoes);
    dto.setCancelado(cancelado);
    dto.setAdiado(adiado);
    dto.setJustificativaCancelamento(justificativaCancelamento);
    dto.setUsuarioCancelamento(usuarioCancelamento);
    dto.setFolderId(folderId);
    dto.setExtra(extra);
    dto.setPrivatedIndicacoes(privatedIndicacoes);
    dto.setOpenForAprovacoes(isOpenForAprovacao());
    dto.setOpenForIndicacoes(isOpenForIndicacoes());
    dto.setEmAndamento(isEmAndamento());
    dto.setOrganizacoesPendentesIds(organizacoesPendentesIds);
    dto.setResponsavelId(responsavelId);
    dto.setTurmaPlanejadaId(turmaPlanejadaId);
    dto.setProcessStatus(processStatus);
    dto.setProcessId(processId);
    if (dataAtivacao != null) {
        Calendar data = Calendar.getInstance();
        data.add(Calendar.DATE, -1);
        if (dataAtivacao.before(data.getTime())) {
            dto.setClosedForAtivacao(true);
        }
    }
    List<FaseDTO> fasesList = new ArrayList<FaseDTO>();
    for (Fase fase : fases) {
        fasesList.add(fase.createDTO());
    }
    Collections.sort(fasesList, new Comparator<FaseDTO>() {

        @Override
        public int compare(FaseDTO o1, FaseDTO o2) {
            if (o1.getDataInicio() != null) {
                return o1.getDataInicio().compareTo(o2.getDataInicio());
            }
            return 0;
        }
    });
    FaseDTO[] fasesArray = new FaseDTO[fasesList.size()];
    if (periodoIndicacao != null) {
        dto.setPeriodoIndicacao(periodoIndicacao.createDTO());
    }
    fasesList.toArray(fasesArray);
    dto.setFases(fasesArray);
    if (getTipoTurma() != null) {
        dto.setTipoTurma(getTipoTurma().toString());
    }
    dto.setQuantidadeConclusoes(quantidadeConclusoes);
    dto.setExercicio(exercicio);
    dto.setNumeroTurma(numeroTurma);
    Date dataInicio = getDataInicio();
    Date dataTermino = getDataTermino();
    dto.setDataInicio(dataInicio);
    dto.setDataTermino(dataTermino);
    long inicioMilis = 0L;
    long terminoMilis = 0L;
    if (dataInicio != null) {
        dto.setDataInicioFormatted(df.format(dataInicio));
        inicioMilis = dataInicio.getTime();
    }
    if (dataTermino != null) {
        dto.setDataTerminoFormatted(df.format(dataTermino));
        terminoMilis = dataTermino.getTime();
    }
    Long intervalo = Math.abs((terminoMilis - inicioMilis) / (1000 * 60 * 60 * 24));
    dto.setQuantidadeDias(intervalo.intValue());
    if (dataAtivacao != null) {
        dto.setDataAtivacaoFormatted(df.format(dataAtivacao));
    }
    if (dataTermino != null && dataInicio != null) {
        if (dfOnlyYear.format(dataTermino).equals(dfOnlyYear.format(dataInicio))) {
            if (dfOnlyMonth.format(dataTermino).equals(dfOnlyMonth.format(dataInicio))) {
                dto.setPeriodoFormatted(dfOnlyDay.format(dataInicio) + " a " + df.format(dataTermino));
            } else {
                dto.setPeriodoFormatted(dfMonthAndDay.format(dataInicio) + " a " + df.format(dataTermino));
            }
        } else {
            dto.setPeriodoFormatted(df.format(dataInicio) + " a " + df.format(dataTermino));
        }
    }
    dto.setObjectId(this.getObjectId());
    dto.setLocal(this.getLocal());
    dto.setQuantidadeVagas(quantidadeVagas);
    dto.setDaysToExpireAprovacoes(getDaysToExpireAprovacoes());
    dto.setDaysToExpireIndicacoes(getDaysToExpireIndicacoes());
    dto.setDaysToExpireApresentacoes(getDaysToExpireApresentacoes());
    dto.setStatusApresentacoes(getStatusApresentacoes());
    dto.setDaysToExpireConclusoes(getDaysToExpireConclusoes());
    dto.setStatusConclusoes(getStatusConclusoes());
    dto.setResponsavelApresentacaoId(responsavelApresentacaoId);
    dto.setResponsavelConclusaoId(responsavelConclusaoId);
    dto.setResponsavelMatriculaId(responsavelMatriculaId);
    dto.setResponsavelPreMatriculaId(responsavelPreMatriculaId);
    dto.setResponsavelSelecaoId(responsavelSelecaoId);
    dto.setOrganizacaoGestoraId(organizacaoGestoraId);
    return dto;
}
Also used : Calendar(java.util.Calendar) ArrayList(java.util.ArrayList) Date(java.util.Date) FaseDTO(com.tomasio.projects.trainning.dto.FaseDTO) TurmaEfetivaDTO(com.tomasio.projects.trainning.dto.TurmaEfetivaDTO) SimpleDateFormat(java.text.SimpleDateFormat)

Aggregations

FaseDTO (com.tomasio.projects.trainning.dto.FaseDTO)32 TurmaEfetivaDTO (com.tomasio.projects.trainning.dto.TurmaEfetivaDTO)16 OrganizacaoDTO (com.tomasio.projects.trainning.dto.OrganizacaoDTO)14 SimpleDateFormat (java.text.SimpleDateFormat)14 PessoaDTO (com.tomasio.projects.trainning.dto.PessoaDTO)11 TurmaPlanejadaDTO (com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO)11 HashMap (java.util.HashMap)9 ProceedingJoinPoint (org.aspectj.lang.ProceedingJoinPoint)7 Around (org.aspectj.lang.annotation.Around)7 IndicacaoDTO (com.tomasio.projects.trainning.dto.IndicacaoDTO)6 Calendar (java.util.Calendar)6 CancelamentoMatriculaDTO (com.tomasio.projects.trainning.dto.CancelamentoMatriculaDTO)5 IndicacaoInstrutorDTO (com.tomasio.projects.trainning.dto.IndicacaoInstrutorDTO)5 DAOException (com.tomasio.projects.trainning.exception.DAOException)5 AtividadesEnsinoService (com.tomasio.projects.trainning.interfaces.AtividadesEnsinoService)5 BigDecimal (java.math.BigDecimal)5 HashSet (java.util.HashSet)5 DateTime (org.joda.time.DateTime)5 Days (org.joda.time.Days)5 Transactional (org.springframework.transaction.annotation.Transactional)5