1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package ecar.popup;
17
18 import java.util.ArrayList;
19 import java.util.HashSet;
20 import java.util.Iterator;
21 import java.util.List;
22 import java.util.Set;
23
24 import javax.servlet.http.HttpServletRequest;
25
26 import comum.database.Dao;
27 import comum.util.Pagina;
28
29 import ecar.dao.RegDemandaDao;
30 import ecar.exception.ECARException;
31 import ecar.pojo.EntidadeEnt;
32 import ecar.pojo.RegDemandaRegd;
33
34
35
36
37
38 public class PopUpRegDemanda implements PopUpPesquisa {
39
40
41
42 private String[] pesquisarEm;
43
44
45 private RegDemandaRegd pojo;
46 private RegDemandaDao dao;
47
48 private List objetosIgnorados;
49
50 private Set gruposAcesso = null;
51
52 public PopUpRegDemanda(){
53 pojo = new RegDemandaRegd();
54 dao = new RegDemandaDao(null);
55 this.setPesquisarEm(new String[] {"Descrição", "Sigla", "Entidade", "Usuário"});
56 }
57
58
59
60
61
62
63
64
65
66
67 public Dao getDao() {
68 return dao;
69 }
70
71
72
73
74
75
76
77
78
79 public String getTitulo(){
80 return "Demanda";
81 }
82
83
84
85
86
87
88
89
90
91
92
93
94 public void setArgPesquisa(HttpServletRequest request) throws ECARException{
95 String arg = Pagina.getParam(request, "hidArg");
96 String[] pesquisarEm = request.getParameterValues("hidPesquisarEm");
97
98 if(request.getSession().getAttribute("objetosIgnorados") != null)
99 objetosIgnorados = new ArrayList((List)request.getSession().getAttribute("objetosIgnorados"));
100
101 if (request.getSession().getAttribute("gruposAcesso") != null){
102
103 gruposAcesso = (Set) request.getSession().getAttribute("gruposAcesso");
104 }
105
106 if (pesquisarEm != null) {
107 EntidadeEnt entidade = null;
108 for (int i = 0; i < pesquisarEm.length; i++) {
109 if ("0".equals(pesquisarEm[i])) {
110 pojo.setDescricaoRegd(arg);
111 } else if ("1".equals(pesquisarEm[i])) {
112 entidade = new EntidadeEnt();
113 entidade.setSiglaEnt(arg);
114 } else if ("2".equals(pesquisarEm[i])) {
115 if (entidade == null) {
116 entidade = new EntidadeEnt();
117 }
118 entidade.setNomeEnt(arg);
119 } else if ("3".equals(pesquisarEm[i]))
120 pojo.setNomeSolicitanteRegd(arg);
121 }
122 if (entidade != null) {
123 pojo.setEntidadeDemandaEntds(new HashSet());
124 pojo.getEntidadeDemandaEntds().add(entidade);
125 }
126 }
127 }
128
129
130
131
132
133
134
135
136
137
138 public List pesquisar() throws ECARException {
139 List demandas = dao.pesquisarPopUpRegDemanda(pojo, gruposAcesso);
140 if(demandas != null){
141 Iterator it = demandas.iterator();
142 while(it.hasNext()){
143 RegDemandaRegd d = (RegDemandaRegd) it.next();
144 if((objetosIgnorados != null && objetosIgnorados.contains(d)) || !"S".equals(d.getIndAtivoRegd()))
145 it.remove();
146 }
147 }
148 return demandas;
149 }
150
151
152
153
154
155
156
157
158
159 public String getCodigo() {
160 return pojo.getCodRegd().toString();
161 }
162
163
164
165
166
167
168
169
170
171 public String getDescricao() {
172 return pojo.getDescricaoRegd();
173 }
174
175
176
177
178
179
180
181
182
183 public void setPojo(Object o) {
184 pojo = (RegDemandaRegd) o;
185 }
186
187
188
189
190
191
192
193
194
195 public String[] getPesquisarEm() {
196 return pesquisarEm;
197 }
198
199
200
201
202
203
204
205
206
207 private void setPesquisarEm(String[] pesquisarEm) {
208 this.pesquisarEm = pesquisarEm;
209 }
210 }