Search in sources :

Example 66 with TurmaEfetivaDTO

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

the class TurmasEfetivasController method saveIndicacao.

@RequestMapping("/save_indicacao_ciaer")
public String saveIndicacao(Model model, @Valid IndicacaoCIAER indicacaoCIAER, BindingResult bindingResult, WebRequest request, final RedirectAttributes redirectAttributes) {
    OrganizacaoDTO userOrganization = (OrganizacaoDTO) model.asMap().get("userOrganization");
    TurmaEfetivaDTO turma = (TurmaEfetivaDTO) model.asMap().get("turma");
    if (bindingResult.hasErrors()) {
        model.addAttribute("selectableOrganizacoes", initializeSelectableBeneficiadas(turma, userOrganization));
        model.addAttribute("pessoa", organizationalService.findPessoa(indicacaoCIAER.getPessoaId()));
        return "turmas_efetivas/form_indicacao_ciaer";
    }
    IndicacaoAlunoDTO dto;
    if (indicacaoCIAER.getId() != null) {
        dto = (IndicacaoAlunoDTO) atividadesEnsinoService.findIndicacao(indicacaoCIAER.getId());
    } else {
        dto = new IndicacaoAlunoDTO();
    }
    dto.setId(indicacaoCIAER.getId());
    dto.setCredencialSeguranca(indicacaoCIAER.getCredencialSeguranca());
    dto.setCursos(indicacaoCIAER.getCursos());
    dto.setExpectativaPermanencia(indicacaoCIAER.getExpectativaPermanencia());
    dto.setFuncaoAtual(indicacaoCIAER.getFuncaoAtual());
    dto.setTempoAtividade(indicacaoCIAER.getTempoAtividade());
    dto.setNomeMae(indicacaoCIAER.getNomeMae());
    dto.setNomePai(indicacaoCIAER.getNomePai());
    dto.setPlanoTransmisssao(indicacaoCIAER.getPlanoTransmissao());
    dto.setForaDoPrazo(indicacaoCIAER.isForaDoPrazo());
    dto.setAtendeRequisitos(indicacaoCIAER.isAtendeRequisitos());
    dto.setFuncao(indicacaoCIAER.getFuncao());
    dto.setId(indicacaoCIAER.getId());
    dto.setDataCriacao(new Date());
    dto.setEmail(indicacaoCIAER.getEmail());
    dto.setJustificativa(indicacaoCIAER.getJustificativa());
    CustoDTO custo = new CustoDTO();
    custo.setAjudaCustoPlanejado(indicacaoCIAER.getAjudaCustoPlanejado());
    custo.setDiariasPlanejado(indicacaoCIAER.getDiariasPlanejado());
    custo.setPassagensPlanejado(indicacaoCIAER.getPassagensPlanejado());
    dto.setCusto(custo);
    dto.setObservacao(indicacaoCIAER.getObservacao());
    dto.setOrganizacao(organizationalService.findOrganizacao(indicacaoCIAER.getOrganizacaoId()));
    dto.setPessoa(organizationalService.findPessoa(indicacaoCIAER.getPessoaId()));
    dto.setPrioridade(indicacaoCIAER.getPrioridade());
    dto.setTelefone(indicacaoCIAER.getTelefone());
    dto.setTurma(atividadesEnsinoService.findTurmaEfetiva(indicacaoCIAER.getTurmaId()));
    dto.setTelefoneOM(indicacaoCIAER.getTelefoneOM());
    dto.setQuantidadeCursoOM(indicacaoCIAER.getQuantidadeCursoOM());
    dto.setQuantidadeCursoELO(indicacaoCIAER.getQuantidadeCursoElo());
    dto.setQuantidadeIdealELO(indicacaoCIAER.getQuantidadeIdealElo());
    dto.setQuantidadeMinimoELO(indicacaoCIAER.getQuantidadeMinimoElo());
    dto.setOrganizacaoBeneficiada(organizationalService.findOrganizacao(indicacaoCIAER.getOrganizacaoBeneficiadaId()));
    if (dto.getId() != null && dto.getId() > 0) {
        try {
            atividadesEnsinoService.updateIndicacao(dto);
            redirectAttributes.addFlashAttribute("successMessage", "Indicação atualizada com sucesso.");
        } catch (CoreException e) {
            model.addAttribute("errorMessage", e.getMessage());
            PessoaDTO pessoa = organizationalService.findPessoa(indicacaoCIAER.getPessoaId());
            model.addAttribute("pessoa", pessoa);
            model.addAttribute("selectableOrganizacoes", initializeSelectableBeneficiadas(turma, userOrganization));
            return "turmas_efetivas/form_indicacao_ciaer";
        }
    } else {
        try {
            atividadesEnsinoService.createIndicacao(dto);
            redirectAttributes.addFlashAttribute("successMessage", "Indicação criada com sucesso.");
        } catch (CoreException e) {
            model.addAttribute("errorMessage", e.getMessage());
            PessoaDTO pessoa = organizationalService.findPessoa(indicacaoCIAER.getPessoaId());
            model.addAttribute("pessoa", pessoa);
            model.addAttribute("selectableOrganizacoes", initializeSelectableBeneficiadas(turma, userOrganization));
            return "turmas_efetivas/form_indicacao_ciaer";
        }
    }
    return "redirect:detail/indicacoes";
}
Also used : IndicacaoAlunoDTO(com.tomasio.projects.trainning.dto.IndicacaoAlunoDTO) TurmaEfetivaDTO(com.tomasio.projects.trainning.dto.TurmaEfetivaDTO) CoreException(com.tomasio.projects.trainning.exeption.CoreException) PessoaDTO(com.tomasio.projects.trainning.dto.PessoaDTO) CustoDTO(com.tomasio.projects.trainning.dto.CustoDTO) OrganizacaoDTO(com.tomasio.projects.trainning.dto.OrganizacaoDTO) Date(java.util.Date) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 67 with TurmaEfetivaDTO

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

the class TurmasEfetivasController method saveIndicaAtivacao.

@RequestMapping("/save_prazo_indica_ativacao")
public String saveIndicaAtivacao(@Valid @ModelAttribute("indicaAtivaForm") PrazoIndicaAtivacaoForm form, BindingResult bindingResult) {
    if (bindingResult.hasErrors()) {
        return "turmas_efetivas/form_indica_ativacao";
    }
    TurmaEfetivaDTO turma = atividadesEnsinoService.findTurmaEfetiva(form.getTurmaId());
    turma.setDataAtivacao(form.getDataAtivacao());
    PeriodoDTO periodoIndicacao = new PeriodoDTO();
    if (form.getTerminoIndicacoes() != null) {
        periodoIndicacao.setDataInicio(form.getInicioIndicacoes());
        periodoIndicacao.setDataTermino(form.getTerminoIndicacoes());
    }
    turma.setPeriodoIndicacao(periodoIndicacao);
    atividadesEnsinoService.updateTurmaEfetiva(turma);
    return "redirect:detail?turmaId=" + form.getTurmaId();
}
Also used : TurmaEfetivaDTO(com.tomasio.projects.trainning.dto.TurmaEfetivaDTO) PeriodoDTO(com.tomasio.projects.trainning.dto.PeriodoDTO) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 68 with TurmaEfetivaDTO

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

the class TurmasEfetivasController method listCustos.

@RequestMapping("/detail/custos")
public String listCustos(Model model, WebRequest request, @ModelAttribute("turma") TurmaEfetivaDTO turma) {
    TurmaEfetivaDTO[] turmas = { turma };
    Map<String, BigDecimal> custosRealizadoAlunosMap = atividadesEnsinoService.calculateCustoRealizadoAlunos(turmas);
    Map<String, BigDecimal> custosPrevistoAlunosMap = atividadesEnsinoService.calculateCustoPrevistoAlunos(turmas);
    Map<String, BigDecimal> custosRealizadoInstrutoresMap = atividadesEnsinoService.calculateCustoRealizadoInstrutores(turmas);
    Map<String, BigDecimal> custosPrevistoInstrutoresMap = atividadesEnsinoService.calculateCustoPrevistoInstrutores(turmas);
    BigDecimal custosPrevistoAdministrativo = atividadesEnsinoService.calculateCustoPrevistoAdministrativo(turmas);
    BigDecimal custosRealizadosAdministrativo = atividadesEnsinoService.calculateCustoRealizadoAdministrativo(turmas);
    BigDecimal diariasAlunosRealizado = custosRealizadoAlunosMap.get("diarias");
    BigDecimal transporteAlunosRealizado = custosRealizadoAlunosMap.get("transporte");
    BigDecimal diariasAlunosPrevisto = custosPrevistoAlunosMap.get("diarias");
    BigDecimal transporteAlunosPrevisto = custosPrevistoAlunosMap.get("transporte");
    BigDecimal diariasInstrutoresRealizado = custosRealizadoInstrutoresMap.get("diarias");
    BigDecimal diariasInstrutoresPrevisto = custosPrevistoInstrutoresMap.get("diarias");
    BigDecimal transporteInstrutoresRealizado = custosRealizadoInstrutoresMap.get("transporte");
    BigDecimal transporteInstrutoresPrevisto = custosPrevistoInstrutoresMap.get("transporte");
    BigDecimal totalInstrutoresRealizado = custosRealizadoInstrutoresMap.get("total");
    BigDecimal totalInstrutoresPrevisto = custosPrevistoInstrutoresMap.get("total");
    BigDecimal totalAlunosPrevisto = custosPrevistoAlunosMap.get("total");
    BigDecimal totalAlunosRealizado = custosRealizadoAlunosMap.get("total");
    BigDecimal totalRealizado = custosRealizadosAdministrativo.add(totalAlunosRealizado.add(totalInstrutoresRealizado));
    BigDecimal totalPrevisto = custosPrevistoAdministrativo.add(totalInstrutoresPrevisto.add(totalAlunosPrevisto));
    model.addAttribute("custosAdministrativosRealizado", custosRealizadosAdministrativo.toPlainString());
    model.addAttribute("custosAdministrativosPrevisto", custosPrevistoAdministrativo.toPlainString());
    model.addAttribute("diariasAlunosRealizado", diariasAlunosRealizado.toPlainString());
    model.addAttribute("transporteAlunosRealizado", transporteAlunosRealizado.toPlainString());
    model.addAttribute("diariasInstrutoresRealizado", diariasInstrutoresRealizado.toPlainString());
    model.addAttribute("diariasInstrutoresPrevisto", diariasInstrutoresPrevisto.toPlainString());
    model.addAttribute("transporteInstrutoresPrevisto", transporteInstrutoresPrevisto.toPlainString());
    model.addAttribute("transporteInstrutoresRealizado", transporteInstrutoresRealizado.toPlainString());
    model.addAttribute("diariasAlunosPrevisto", diariasAlunosPrevisto.toPlainString());
    model.addAttribute("transporteAlunosPrevisto", transporteAlunosPrevisto.toPlainString());
    model.addAttribute("totalAlunosPrevisto", totalAlunosPrevisto.toPlainString());
    model.addAttribute("totalAlunosRealizado", totalAlunosRealizado.toPlainString());
    model.addAttribute("totalInstrutoresRealizado", totalInstrutoresRealizado.toPlainString());
    model.addAttribute("totalInstrutoresPrevisto", totalInstrutoresPrevisto.toPlainString());
    model.addAttribute("totalPrevisto", totalPrevisto.toPlainString());
    model.addAttribute("totalRealizado", totalRealizado.toPlainString());
    model.addAttribute("tab", "custos");
    return "turmas_efetivas/detail/custos";
}
Also used : TurmaEfetivaDTO(com.tomasio.projects.trainning.dto.TurmaEfetivaDTO) BigDecimal(java.math.BigDecimal) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 69 with TurmaEfetivaDTO

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

the class ChartsController method retrieveIndicacoes.

public List<Map<Object, Object>> retrieveIndicacoes(Map<Object, Object> cursoData, ExternalContext context) {
    List<Map<Object, Object>> result = new ArrayList<Map<Object, Object>>();
    OrganizacaoDTO userOrganization = (OrganizacaoDTO) context.getSessionMap().get("userOrganization");
    OrganizacaoDTO organizacao = organizationalService.findOrganizacao(userOrganization.getId());
    Long[] cursosIds = new Long[1];
    cursosIds[0] = (Long) cursoData.get("id");
    Long[] organizacoesIds = new Long[1];
    organizacoesIds[0] = organizacao.getId();
    int countMatriculadosSede = 0;
    int countIndicadosSede = 0;
    int countMatriculadosGDSede = 0;
    int countIndicadosGDSede = 0;
    int countMatriculadosOfSede = 0;
    int countIndicadosOfSede = 0;
    List<Map<Object, Object>> indicadosSede = new ArrayList<Map<Object, Object>>();
    IndicacaoAlunoDTO[] indicacoes = atividadesEnsinoService.findAllIndicacoesAlunosByOrganizacoesBeneficiadas(ano, organizacoesIds, cursosIds, null);
    for (IndicacaoAlunoDTO indicacao : indicacoes) {
        PessoaDTO pessoa = organizationalService.findPessoa(indicacao.getPessoa().getId());
        TurmaEfetivaDTO turma = indicacao.getTurma();
        countIndicadosSede++;
        if (pessoa.isOficial()) {
            countIndicadosOfSede++;
        } else {
            countIndicadosGDSede++;
        }
        if (indicacao.isMatriculado()) {
            countMatriculadosSede++;
            if (pessoa.isOficial()) {
                countMatriculadosOfSede++;
            } else {
                countMatriculadosGDSede++;
            }
        }
        Map<Object, Object> itemIndicacao = new HashMap<Object, Object>();
        itemIndicacao.put("nome", pessoa.getTargetaCompletaOM());
        itemIndicacao.put("status", indicacao.isMatriculado());
        itemIndicacao.put("turma", turma.getNumeroTurma());
        indicadosSede.add(itemIndicacao);
    }
    Map<Object, Object> itemSede = new HashMap<Object, Object>();
    itemSede.put("sigla", organizacao.getSigla() + " (SEDE)");
    itemSede.put("indicados", countIndicadosSede);
    itemSede.put("indicadosOf", countIndicadosOfSede);
    itemSede.put("indicadosGD", countIndicadosGDSede);
    itemSede.put("matriculados", countMatriculadosSede);
    itemSede.put("matriculadosOf", countMatriculadosOfSede);
    itemSede.put("matriculadosGD", countMatriculadosGDSede);
    itemSede.put("indicacoes", indicadosSede);
    itemSede.put("id", organizacao.getId());
    result.add(itemSede);
    OrganizacaoDTO[] organizacoesDiretamenteSubordinadas = organizationalService.findAllOrganizacoesDiretamenteSubordinadas(organizacao.getId());
    for (OrganizacaoDTO organizacaoDiretamenteSubordinada : organizacoesDiretamenteSubordinadas) {
        int countMatriculados = 0;
        int countIndicados = 0;
        int countMatriculadosOf = 0;
        int countIndicadosOf = 0;
        int countMatriculadosGD = 0;
        int countIndicadosGD = 0;
        List<Map<Object, Object>> indicadosSubordinada = new ArrayList<Map<Object, Object>>();
        OrganizacaoDTO[] outrasOrganizacoesSubordinadas = organizationalService.findAllOrganizacoesSubordinadas(organizacaoDiretamenteSubordinada.getId());
        Long[] organizacoesSubordinadasIds = new Long[outrasOrganizacoesSubordinadas.length + 1];
        for (int i = 0; i < outrasOrganizacoesSubordinadas.length; i++) {
            organizacoesSubordinadasIds[i] = outrasOrganizacoesSubordinadas[i].getId();
        }
        organizacoesSubordinadasIds[outrasOrganizacoesSubordinadas.length] = organizacaoDiretamenteSubordinada.getId();
        IndicacaoAlunoDTO[] indicacoesFromSubordinadas = atividadesEnsinoService.findAllIndicacoesAlunosByOrganizacoesBeneficiadas(ano, organizacoesSubordinadasIds, cursosIds, null);
        for (IndicacaoAlunoDTO indicacao : indicacoesFromSubordinadas) {
            PessoaDTO pessoa = organizationalService.findPessoa(indicacao.getPessoa().getId());
            TurmaEfetivaDTO turma = indicacao.getTurma();
            countIndicados++;
            if (pessoa.isOficial()) {
                countIndicadosOf++;
            } else {
                countIndicadosGD++;
            }
            if (indicacao.isMatriculado()) {
                countMatriculados++;
                if (pessoa.isOficial()) {
                    countMatriculadosOf++;
                } else {
                    countMatriculadosGD++;
                }
            }
            Map<Object, Object> itemIndicacao = new HashMap<Object, Object>();
            itemIndicacao.put("nome", pessoa.getTargetaCompletaOM());
            itemIndicacao.put("status", indicacao.isMatriculado());
            itemIndicacao.put("turma", turma.getNumeroTurma());
            indicadosSubordinada.add(itemIndicacao);
        }
        Map<Object, Object> itemSubordinada = new HashMap<Object, Object>();
        itemSubordinada.put("sigla", organizacaoDiretamenteSubordinada.getSigla());
        itemSubordinada.put("indicados", countIndicados);
        itemSubordinada.put("indicadosOf", countIndicadosOf);
        itemSubordinada.put("indicadosGD", countIndicadosGD);
        itemSubordinada.put("matriculados", countMatriculados);
        itemSubordinada.put("matriculadosOf", countMatriculadosOf);
        itemSubordinada.put("matriculadosGD", countMatriculadosGD);
        itemSubordinada.put("indicacoes", indicadosSubordinada);
        itemSubordinada.put("id", organizacaoDiretamenteSubordinada.getId());
        result.add(itemSubordinada);
    }
    return result;
}
Also used : HashMap(java.util.HashMap) ArrayList(java.util.ArrayList) IndicacaoAlunoDTO(com.tomasio.projects.trainning.dto.IndicacaoAlunoDTO) TurmaEfetivaDTO(com.tomasio.projects.trainning.dto.TurmaEfetivaDTO) PessoaDTO(com.tomasio.projects.trainning.dto.PessoaDTO) OrganizacaoDTO(com.tomasio.projects.trainning.dto.OrganizacaoDTO) HashMap(java.util.HashMap) Map(java.util.Map)

Example 70 with TurmaEfetivaDTO

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

the class TurmasEfetivasController method saveIndicacao.

@RequestMapping("/save_indicacao_sefa")
public String saveIndicacao(Model model, @Valid IndicacaoSEFA indicacao, BindingResult bindingResult, WebRequest request, final RedirectAttributes redirectAttributes) {
    OrganizacaoDTO userOrganization = (OrganizacaoDTO) model.asMap().get("userOrganization");
    TurmaEfetivaDTO turma = (TurmaEfetivaDTO) model.asMap().get("turma");
    if (bindingResult.hasErrors()) {
        PessoaDTO pessoa = organizationalService.findPessoa(indicacao.getPessoaId());
        model.addAttribute("pessoa", pessoa);
        model.addAttribute("selectableOrganizacoes", initializeSelectableBeneficiadas(turma, userOrganization));
        return "turmas_efetivas/form_indicacao_sefa";
    }
    IndicacaoAlunoDTO dto;
    if (indicacao.getId() != null) {
        dto = (IndicacaoAlunoDTO) atividadesEnsinoService.findIndicacao(indicacao.getId());
    } else {
        dto = new IndicacaoAlunoDTO();
    }
    dto.setAtendeRequisitos(indicacao.isAtendeRequisitos());
    dto.setFuncaoAtual(indicacao.getFuncaoAtual());
    dto.setDataUltimaPromocao(indicacao.getDataUltimaPromocao());
    dto.setId(indicacao.getId());
    dto.setDataCriacao(new Date());
    dto.setEmail(indicacao.getEmail());
    CustoDTO custo = new CustoDTO();
    custo.setAjudaCustoPlanejado(indicacao.getAjudaCustoPlanejado());
    custo.setDiariasPlanejado(indicacao.getDiariasPlanejado());
    custo.setPassagensPlanejado(indicacao.getPassagensPlanejado());
    dto.setCusto(custo);
    dto.setForaDoPrazo(indicacao.isForaDoPrazo());
    dto.setJustificativa(indicacao.getJustificativa());
    dto.setObservacao(indicacao.getObservacao());
    dto.setOrganizacaoBeneficiada(organizationalService.findOrganizacao(indicacao.getOrganizacaoBeneficiadaId()));
    dto.setOrganizacao(organizationalService.findOrganizacao(indicacao.getOrganizacaoId()));
    dto.setPessoa(organizationalService.findPessoa(indicacao.getPessoaId()));
    dto.setPrioridade(indicacao.getPrioridade());
    dto.setTelefone(indicacao.getTelefone());
    dto.setTurma(atividadesEnsinoService.findTurmaEfetiva(indicacao.getTurmaId()));
    if (dto.getId() != null && dto.getId() > 0) {
        try {
            atividadesEnsinoService.updateIndicacao(dto);
            redirectAttributes.addFlashAttribute("successMessage", "Indicação atualizada com sucesso.");
        } catch (CoreException e) {
            model.addAttribute("errorMessage", e.getMessage());
            PessoaDTO pessoa = organizationalService.findPessoa(indicacao.getPessoaId());
            model.addAttribute("pessoa", pessoa);
            model.addAttribute("selectableOrganizacoes", initializeSelectableBeneficiadas(turma, userOrganization));
            return "turmas_efetivas/form_indicacao_sefa";
        }
    } else {
        try {
            atividadesEnsinoService.createIndicacao(dto);
            redirectAttributes.addFlashAttribute("successMessage", "Indicação criada com sucesso.");
        } catch (CoreException e) {
            model.addAttribute("errorMessage", e.getMessage());
            PessoaDTO pessoa = organizationalService.findPessoa(indicacao.getPessoaId());
            model.addAttribute("pessoa", pessoa);
            model.addAttribute("selectableOrganizacoes", initializeSelectableBeneficiadas(turma, userOrganization));
            return "turmas_efetivas/form_indicacao_sefa";
        }
    }
    return "redirect:detail/indicacoes";
}
Also used : IndicacaoAlunoDTO(com.tomasio.projects.trainning.dto.IndicacaoAlunoDTO) TurmaEfetivaDTO(com.tomasio.projects.trainning.dto.TurmaEfetivaDTO) PessoaDTO(com.tomasio.projects.trainning.dto.PessoaDTO) CoreException(com.tomasio.projects.trainning.exeption.CoreException) CustoDTO(com.tomasio.projects.trainning.dto.CustoDTO) OrganizacaoDTO(com.tomasio.projects.trainning.dto.OrganizacaoDTO) Date(java.util.Date) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Aggregations

TurmaEfetivaDTO (com.tomasio.projects.trainning.dto.TurmaEfetivaDTO)92 OrganizacaoDTO (com.tomasio.projects.trainning.dto.OrganizacaoDTO)37 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)36 Date (java.util.Date)31 SimpleDateFormat (java.text.SimpleDateFormat)28 PessoaDTO (com.tomasio.projects.trainning.dto.PessoaDTO)27 HashMap (java.util.HashMap)27 ArrayList (java.util.ArrayList)24 Map (java.util.Map)20 IndicacaoAlunoDTO (com.tomasio.projects.trainning.dto.IndicacaoAlunoDTO)18 CoreException (com.tomasio.projects.trainning.exeption.CoreException)18 FaseDTO (com.tomasio.projects.trainning.dto.FaseDTO)16 ParseException (java.text.ParseException)16 DAOException (com.tomasio.projects.trainning.exception.DAOException)14 Transactional (org.springframework.transaction.annotation.Transactional)14 AtividadesEnsinoService (com.tomasio.projects.trainning.interfaces.AtividadesEnsinoService)12 CustoDTO (com.tomasio.projects.trainning.dto.CustoDTO)11 IndicacaoDTO (com.tomasio.projects.trainning.dto.IndicacaoDTO)11 TurmaDAO (com.tomasio.projects.trainning.dao.TurmaDAO)9 BigDecimal (java.math.BigDecimal)9