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.servidor;
2
 
3
import java.io.Serializable;
4
import java.util.ArrayList;
5
import java.util.HashSet;
6
import java.util.List;
7
import java.util.Set;
8
 
9
import javax.faces.bean.ManagedBean;
10
 
11
import org.springframework.beans.factory.annotation.Autowired;
12
import org.springframework.context.annotation.Scope;
13
import org.springframework.stereotype.Component;
14
 
15
import br.gov.al.saude.framework.core.generic.GenericFacade;
16
import br.gov.al.saude.framework.core.util.VerificadorUtil;
17
import br.gov.al.saude.framework.web.generic.AbstractBean;
18
import br.gov.al.saude.framework.web.generic.GenericConsultaDemanda;
19
import br.gov.al.saude.rhd.core.application.servidor.ServidorFacade;
20
import br.gov.al.saude.rhd.core.application.unidade.UnidadeFacade;
21
import br.gov.al.saude.rhd.model.view.ServidorDadoFuncionalView;
22
import br.gov.al.saude.rhd.model.view.ServidorView;
23
import br.gov.al.saude.rhd.model.view.UnidadeView;
24
import br.gov.al.saude.sca.model.usuario.view.UsuarioView;
25
import br.gov.al.saude.scg.model.view.PessoaDocumentoView;
26
import br.gov.al.saude.scg.model.view.PessoaTelefoneView;
27
 
28
@Component
29
@ManagedBean
30
@Scope("view")
31
public class ServidorBean extends AbstractBean<ServidorView> implements Serializable {
32
 
33
        private static final long serialVersionUID = 1L;
34
 
35
        private ServidorFacade servidorFacade;
36
        private UnidadeFacade unidadeFacade;
37
 
38
        private List<ServidorDadoFuncionalView> dadosFuncionais;
39
        private ServidorDadoFuncionalView dadoFuncional;
40
 
41
        private List<PessoaDocumentoView> documentos;
42
        private List<PessoaTelefoneView> telefones;
43
 
44
        @Autowired
45
        public ServidorBean(ServidorFacade servidorFacade, UnidadeFacade unidadeFacade) {
46
                this.servidorFacade = servidorFacade;
47
                this.unidadeFacade = unidadeFacade;
48
        }
49
 
50
        @Override
51
        public ServidorView getEntidade() {
52
                if (VerificadorUtil.estaNulo(entidade)) {
53
                        entidade = servidorFacade.consultarDadosPessoais(getSequencialPessoaUsuarioLogado());
54
                }
55
                return entidade;
56
        }
57
 
58
        @Override
59
        public GenericFacade<ServidorView> getFacade() {
60
                return servidorFacade;
61
        }
62
 
63
        @Override
64
        public Object getId() {
65
                return getEntidade().getId();
66
        }
67
 
68
        @Override
69
        public String getTelaCrud() {
70
                return "/paginas/dados_gerais.xhtml";
71
        }
72
 
73
        @Override
74
        public void limparEntidade() {
75
                entidade = new ServidorView();
76
        }
77
 
78
        @Override
79
        public GenericConsultaDemanda<ServidorView> getLazy() {
80
                return null;
81
        }
82
 
83
        public List<ServidorDadoFuncionalView> getDadosFuncionais() {
84
                if (dadosFuncionais == null) {
85
                        dadosFuncionais = new ArrayList<ServidorDadoFuncionalView>();
86
                        if (VerificadorUtil.naoEstaNulo(getEntidade())) {
87
                                dadosFuncionais.addAll(getEntidade().getListaDadosFuncionaisView());
88
                        }
89
                }
90
                return dadosFuncionais;
91
        }
92
        public void setListaDadosFuncionais(List<ServidorDadoFuncionalView> dadosFuncionais) {
93
                this.dadosFuncionais = dadosFuncionais;
94
        }
95
 
96
        public void setDadoFuncional(ServidorDadoFuncionalView dadoFuncional) {
97
                this.dadoFuncional = dadoFuncional;
98
        }
99
        public ServidorDadoFuncionalView getDadoFuncional() {
100
                return dadoFuncional;
101
        }
102
 
103
        public List<PessoaDocumentoView> getDocumentos() {
104
                if (documentos == null) {
105
                        documentos = new ArrayList<PessoaDocumentoView>();
106
                        if (VerificadorUtil.naoEstaNulo(getEntidade())) {
107
                                documentos.addAll(getEntidade().getPessoa().getDocumentos());
108
                        }
109
                }
110
                return documentos;
111
        }
112
        public void setDocumentos(List<PessoaDocumentoView> documentos) {
113
                this.documentos = documentos;
114
        }
115
 
116
        public List<PessoaTelefoneView> getTelefones() {
117
                if (telefones == null) {
118
                        telefones = new ArrayList<PessoaTelefoneView>();
119
                        if (VerificadorUtil.naoEstaNulo(getEntidade())) {
120
                                telefones.addAll(getEntidade().getPessoa().getTelefones());
121
                        }
122
                }
123
                return telefones;
124
        }
125
        public void setTelefones(List<PessoaTelefoneView> telefones) {
126
                this.telefones = telefones;
127
        }
128
 
129
        private Long getSequencialPessoaUsuarioLogado() {
130
                return ((UsuarioView) getUsuario().getPrincipal()).getSequencialPessoa();
131
        }
132
 
133
        public void setarEntidadeServidorDadoFuncionalView(ServidorDadoFuncionalView servidorDadoFuncionalView) {
134
                setDadoFuncional(servidorDadoFuncionalView);
135
        }
136
 
137
        public Set<UnidadeView> getUnidadesDeExercicioDoUsuario() {
138
                Set<UnidadeView> unidades = new HashSet<UnidadeView>();
139
                unidades.addAll(unidadeFacade.listarUnidadeExercicioPorPapelUsuario((UsuarioView) getUsuario().getPrincipal()));
140
                return unidades;
141
        }
142
 
143
}