Subversion Repositories Integrator Subversion

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 espaco 1
package br.gov.al.saude.rhd.web.managebean.revisao;
2
 
3
import java.io.Serializable;
4
 
5
import javax.faces.bean.ManagedBean;
6
 
7
import org.springframework.beans.factory.annotation.Autowired;
8
import org.springframework.context.annotation.Scope;
9
import org.springframework.stereotype.Component;
10
 
11
import br.gov.al.saude.framework.core.generic.GenericFacade;
12
import br.gov.al.saude.framework.core.util.VerificadorUtil;
13
import br.gov.al.saude.framework.web.generic.AbstractBean;
14
import br.gov.al.saude.framework.web.generic.GenericConsultaDemanda;
15
import br.gov.al.saude.framework.web.message.LancadorMensagem;
16
import br.gov.al.saude.framework.web.util.ConstantesWebHelper;
17
import br.gov.al.saude.rhd.core.application.avaliacao.AvaliacaoFacade;
18
import br.gov.al.saude.rhd.core.application.grupoavaliacao.GrupoAvaliacaoFacade;
19
import br.gov.al.saude.rhd.model.Cronograma;
20
import br.gov.al.saude.rhd.model.RevisaoAvaliacao;
21
import br.gov.al.saude.rhd.model.dto.RevisaoAvaliacaoDTO;
22
import br.gov.al.saude.rhd.parametros.ParametrosConsultarRevisaoAvaliacaoNaoRespondida;
23
import br.gov.al.saude.rhd.tipo.TipoAvaliacao;
24
import br.gov.al.saude.rhd.tipo.TipoRevisao;
25
import br.gov.al.saude.rhd.web.managebean.sessao.SessaoBean;
26
import br.gov.al.saude.sca.model.usuario.view.UsuarioView;
27
 
28
@Component
29
@ManagedBean
30
@Scope("view")
31
public class RevisaoBean extends AbstractBean<RevisaoAvaliacao> implements Serializable {
32
 
33
 
34
        private static final long serialVersionUID = 1L;
35
        private AvaliacaoFacade avaliacaoFacade;
36
        private Cronograma cronogramaCorrente;
37
        private RevisaoAvaliacaoNaoRespondidaConsultaDemanda consultaRevisaoLazy;
38
        private ParametrosConsultarRevisaoAvaliacaoNaoRespondida parametrosConsultaRevisaoLazy;
39
 
40
        @Autowired
41
        public RevisaoBean(AvaliacaoFacade avaliacaoFacade, SessaoBean sessaoBean, GrupoAvaliacaoFacade grupoAvaliacaoFacade,
42
                                           RevisaoAvaliacaoNaoRespondidaConsultaDemanda consultaRevisaoLazy) {
43
                this.cronogramaCorrente = sessaoBean.getCronogramaCorrente();
44
                this.avaliacaoFacade = avaliacaoFacade;
45
                this.consultaRevisaoLazy = consultaRevisaoLazy;
46
        }
47
 
48
        @Override
49
        public GenericFacade<RevisaoAvaliacao> getFacade() {
50
                return null;
51
        }
52
 
53
        @Override
54
        public Object getId() {
55
                return getEntidade().getSequencial();
56
        }
57
 
58
        @Override
59
        public String getTelaCrud() {
60
                return "/paginas/participacao_servidor.xhtml";
61
        }
62
 
63
        @Override
64
        public void limparEntidade() {
65
                setEntidade(null);
66
        }
67
 
68
        @Override
69
        public RevisaoAvaliacao getEntidade() {
70
                if(VerificadorUtil.estaNulo(entidade)){
71
                        entidade = new RevisaoAvaliacao();
72
                }
73
                return entidade;
74
        }
75
 
76
        @Override
77
        public GenericConsultaDemanda<RevisaoAvaliacao> getLazy() {
78
                return null;
79
        }
80
 
81
        public RevisaoAvaliacaoNaoRespondidaConsultaDemanda getConsultaRevisaoLazy() {
82
                return consultaRevisaoLazy;
83
        }
84
 
85
        @Override
86
        public void prepararConsultaPorDemanda() {
87
                getParametrosConsultaRevisaoLazy().setCronograma(getCronogramaCorrente());
88
                getParametrosConsultaRevisaoLazy().setUsuario(getUsuarioLogado());
89
                getConsultaRevisaoLazy().setarParametrosConsulta(getParametrosConsultaRevisaoLazy());
90
        }
91
 
92
        public void selecionarRevisaoAvaliacao(RevisaoAvaliacaoDTO revisaoAvaliacao) {
93
                entidade = avaliacaoFacade.consultarRevisaoAvaliacaoPorSequencial(revisaoAvaliacao.getSequencial());
94
        }
95
 
96
        public Cronograma getCronogramaCorrente() {
97
                return cronogramaCorrente;
98
        }
99
 
100
        public ParametrosConsultarRevisaoAvaliacaoNaoRespondida getParametrosConsultaRevisaoLazy() {
101
                if(VerificadorUtil.estaNulo(parametrosConsultaRevisaoLazy)){
102
                        parametrosConsultaRevisaoLazy = new ParametrosConsultarRevisaoAvaliacaoNaoRespondida();
103
                }
104
                return parametrosConsultaRevisaoLazy;
105
        }
106
 
107
        public String descricaoAvaliacao(RevisaoAvaliacao revisaoAvaliacao) {
108
                return revisaoAvaliacao.getSequencial() != null ? TipoAvaliacao.parse(revisaoAvaliacao.getTipoAvaliacao()).getDescricao() : null;
109
        }
110
 
111
        public String descricaoRevisao(RevisaoAvaliacao revisaoAvaliacao) {
112
                return revisaoAvaliacao.getSequencial() != null ? TipoRevisao.parse(revisaoAvaliacao.getTipoRevisao()).getDescricao() : null;
113
        }
114
 
115
        public void responderSolicitacaoRevisao(RevisaoAvaliacao entidade) {
116
                avaliacaoFacade.responderSolicitacaoRevisao(entidade);
117
                LancadorMensagem.lancarSucessoRedirecionandoTela(ConstantesWebHelper.Mensagem.REGISTRO_CADASTRADO_COM_SUCESSO, "/paginas/revisoes.xhtml");
118
        }
119
 
120
        private UsuarioView getUsuarioLogado() {
121
                UsuarioView usuario = (UsuarioView) getUsuario().getPrincipal();
122
                return usuario;
123
        }
124
 
125
}