1
2
3
4
5 package ecar.taglib.util;
6
7 import java.util.Collection;
8 import java.util.Collections;
9 import java.util.Iterator;
10
11 import javax.servlet.jsp.JspException;
12 import javax.servlet.jsp.JspWriter;
13 import javax.servlet.jsp.PageContext;
14 import javax.servlet.jsp.tagext.Tag;
15
16 import comum.util.Data;
17 import comum.util.Pagina;
18
19 import ecar.dao.PontoCriticoDao;
20 import ecar.login.SegurancaECAR;
21 import ecar.pojo.AcompReferenciaItemAri;
22 import ecar.pojo.AcompRelatorioArel;
23 import ecar.pojo.ItemEstruturaIett;
24 import ecar.pojo.PontoCriticoPtc;
25 import ecar.pojo.SisGrupoAtributoSga;
26
27
28
29
30
31
32
33 public class PontosCriticosListaTag implements Tag {
34
35 private SisGrupoAtributoSga grupoAssunto;
36 private PontoCriticoDao pontoCriticoDao;
37 private ItemEstruturaIett itemEstrutura;
38 private AcompRelatorioArel acompRelatorioArel;
39 private Boolean apontamentos;
40 private String contextPath;
41
42
43 private String indice;
44
45
46
47 private Boolean abaPontoCriticoDeAcompanhamento = new Boolean(false);
48 private AcompReferenciaItemAri ari;
49 private SegurancaECAR seguranca;
50 private String tipoSelecao = "";
51
52
53 private PageContext page = null;
54
55 private Tag parent;
56
57 public static final long MAXLENGTH = 200;
58
59 private JspWriter writerParametro = null;
60
61
62
63
64
65
66 public PontosCriticosListaTag() {
67
68 }
69
70
71
72
73
74
75
76
77
78 public PontosCriticosListaTag(JspWriter writer) {
79 this.writerParametro = writer;
80 }
81
82
83
84
85
86
87
88
89
90
91 public int doStartTag() throws JspException {
92 JspWriter writer = null;
93 if(writerParametro != null) {
94 writer = writerParametro;
95 } else {
96 writer = this.page.getOut();
97 }
98 StringBuffer s = new StringBuffer();
99 try {
100 s.append("<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">");
101 s.append("<tr><td class=\"espacador\" colspan=8><img src=\"" + contextPath + "/images/pixel.gif\"></td></tr>");
102 s.append("<tr class=\"linha_subtitulo\">");
103 s.append(" <td width=\"4%\">");
104 if(getIndice() != null && !getIndice().equals("")) {
105 s.append(" <input type=\"checkBox\" class=\"form_check_radio\" name=\"todosPontosCriticos"+getIndice()+"\" onclick=\"javascript:selectAllParecer(document.forms[1], 'todosPontosCriticos"+getIndice()+"', 'excluirPontoCritico"+getIndice()+"')\"> ");
106 } else {
107 s.append(" <input type=\"checkBox\" class=\"form_check_radio\" name=\"todosPontosCriticos\" onclick=\"javascript:selectAll(document.form, 'todosPontosCriticos', 'excluirPontoCritico')\"> ");
108 }
109 s.append(" </td> ");
110 s.append(" <td width=\"4%\"></td>");
111 if (grupoAssunto != null){
112 s.append("<td>");
113 s.append(grupoAssunto.getDescricaoSga());
114 s.append("</td>");
115 }
116 s.append(" <td>Descrição</td>");
117 s.append(" <td>Estado</td>");
118 s.append(" <td>Data Limite</td>");
119 s.append(" <td>Data da Solução</td>");
120 s.append(" <td>Responsável</td>");
121 s.append("</tr>");
122 s.append("<tr><td class=\"espacador\" colspan=8><img src=\"" + contextPath + "/images/pixel.gif\"></td></tr>");
123
124
125 Collection<PontoCriticoPtc> pontosAtivos = Collections.EMPTY_LIST;
126
127
128 if(abaPontoCriticoDeAcompanhamento.booleanValue() ){
129 if( "".equals(tipoSelecao) || "T".equals(tipoSelecao) )
130 pontosAtivos = pontoCriticoDao.getAtivos(itemEstrutura);
131 else{
132 if("S".equals(tipoSelecao))
133 pontosAtivos = pontoCriticoDao.getPontosCriticosSolucionados(itemEstrutura);
134 if("N".equals(tipoSelecao))
135 pontosAtivos = pontoCriticoDao.getPontosCriticosNaoSolucionados(itemEstrutura);
136 }
137
138
139
140 } else if (acompRelatorioArel != null ){
141 PontoCriticoPtc pontoCriticoPtc = new PontoCriticoPtc();
142 pontoCriticoPtc.setAcompRelatorioArel(acompRelatorioArel);
143 pontoCriticoPtc.setItemEstruturaIett(itemEstrutura);
144 pontoCriticoPtc.setIndAtivoPtc("S");
145 pontosAtivos = pontoCriticoDao.pesquisar(pontoCriticoPtc, new String[]{"acompRelatorioArel", "asc"});
146 } else {
147 pontosAtivos = pontoCriticoDao.getAtivos(itemEstrutura);
148 }
149
150
151 String corRelogio = "Branco";
152 String descRelogio = "";
153 if(pontosAtivos != null ){
154 Iterator itPc = pontosAtivos.iterator();
155 while(itPc.hasNext()){
156 PontoCriticoPtc pontoCritico = (PontoCriticoPtc) itPc.next();
157
158
159 if (pontoCritico.getIndExcluidoPtc() == null || !pontoCritico.getIndExcluidoPtc().equals("S")){
160
161 String[] relogioAtual = pontoCriticoDao.getRelogioNaData(pontoCritico, Data.getDataAtual());
162 corRelogio = relogioAtual[0];
163 descRelogio = relogioAtual[1];
164 s.append("<tr class=\"linha_subtitulo2\">");
165 s.append(" <td width=\"4%\">");
166 if(getIndice() != null && !getIndice().equals("")) {
167 s.append(" <input type=\"checkbox\" class=\"form_check_radio\" name=\"excluirPontoCritico"+getIndice()+"\" id=\"excluirPontoCritico"+getIndice()+"\" value=\"" + pontoCritico.getCodPtc() + "\">");
168 } else {
169 s.append(" <input type=\"checkbox\" class=\"form_check_radio\" name=\"excluirPontoCritico\" value=\"" + pontoCritico.getCodPtc() + "\">");
170 }
171 s.append(" </td>");
172 s.append(" <td width=\"4%\">");
173 if(getIndice() != null && !getIndice().equals("")) {
174 s.append(" <a href=\"javascript:aoClicarEditar(document.form, " + getIndice() + " ," + pontoCritico.getCodPtc() + ")\">");
175 } else {
176 s.append(" <a href=\"javascript:aoClicarEditar(document.form," + pontoCritico.getCodPtc() + ")\">");
177 }
178 s.append(" <img border=\"0\" src=\"" + contextPath + "/images/icon_alterar.png\" alt=\"Alterar\"></a> ");
179 s.append(" </td>");
180 if (grupoAssunto != null) {
181 s.append("<td>");
182 if (apontamentos != null && apontamentos.booleanValue()){
183 s.append("<a href=\"javascript:aoClicarConsultar(document.form, " + pontoCritico.getCodPtc() + ")\">");
184 }
185
186 if (pontoCritico.getSisAtributoTipo() != null) {
187 s.append(pontoCritico.getSisAtributoTipo().getDescricaoSatb());
188 }
189 if (apontamentos != null && apontamentos.booleanValue()){
190 s.append("</a>");
191 }
192
193 s.append("</td>");
194
195 }
196 s.append(" <td>");
197 if (apontamentos != null && apontamentos.booleanValue()){
198 s.append(" <a href=\"javascript:aoClicarConsultar(document.form," + pontoCritico.getCodPtc()+ ")\">");
199 }
200
201 s.append(pontoCritico.getDescricaoPtc());
202 if (apontamentos != null && apontamentos.booleanValue()){
203 s.append(" </a>");
204 }
205 s.append(" </td>");
206 s.append(" <td><img src=\"" + contextPath + "/images/pc"+corRelogio+"1.png\" title=\""+descRelogio+"\"></td>");
207 s.append(" <td> " + Pagina.trocaNullData(pontoCritico.getDataLimitePtc()) + "</td>");
208 s.append(" <td> " + Pagina.trocaNullData(pontoCritico.getDataSolucaoPtc())+ "</td>");
209 s.append(" <td>");
210 if(pontoCritico.getUsuarioUsu()!=null){
211 s.append(Pagina.trocaNull(pontoCritico.getUsuarioUsu().getNomeUsuSent()));
212 }
213 s.append(" </td>");
214 s.append(" </tr>");
215 }
216 }
217 }
218
219 Collection pontosInativos = null;
220
221 if (acompRelatorioArel != null){
222 PontoCriticoPtc pontoCriticoPtc = new PontoCriticoPtc();
223 pontoCriticoPtc.setAcompRelatorioArel(acompRelatorioArel);
224 pontoCriticoPtc.setItemEstruturaIett(itemEstrutura);
225 pontoCriticoPtc.setIndAtivoPtc("N");
226 pontosInativos = pontoCriticoDao.pesquisar(pontoCriticoPtc, new String[]{"acompRelatorioArel", "asc"});
227 } else {
228 pontosInativos = pontoCriticoDao.getInativos(itemEstrutura);
229 }
230 if(pontosInativos != null ){
231 Iterator itPc = pontosInativos.iterator();
232 while(itPc.hasNext()){
233 PontoCriticoPtc pontoCritico = (PontoCriticoPtc) itPc.next();
234
235
236 if (pontoCritico.getIndExcluidoPtc() == null || !pontoCritico.getIndExcluidoPtc().equals("S")){
237
238 String[] relogioAtual = pontoCriticoDao.getRelogioNaData(pontoCritico, Data.getDataAtual());
239 corRelogio = relogioAtual[0];
240 descRelogio = relogioAtual[1];
241 s.append("<tr class=\"linha_subtitulo2inativo\">");
242 s.append(" <td width=\"4%\">");
243 if(getIndice() != null && !getIndice().equals("")) {
244 s.append(" <input type=\"checkbox\" class=\"form_check_radio\" name=\"excluirPontoCritico"+getIndice()+"\" id=\"excluirPontoCritico"+getIndice()+"\" value=\"" + pontoCritico.getCodPtc() + "\">");
245 } else {
246 s.append(" <input type=\"checkbox\" class=\"form_check_radio\" name=\"excluir\" value=\""+pontoCritico.getCodPtc()+"\">");
247 }
248 s.append(" </td>");
249 s.append(" <td width=\"4%\">");
250 if(getIndice() != null && !getIndice().equals("")) {
251 s.append(" <a href=\"javascript:aoClicarEditar(document.form, " + getIndice() + " ," + pontoCritico.getCodPtc() + ")\">");
252 } else {
253 s.append(" <a href=\"javascript:aoClicarEditar(document.form,"+pontoCritico.getCodPtc()+")\">");
254 }
255 s.append(" <img border=\"0\" src=\"" + contextPath + "/images/icon_alterar.png\" alt=\"Alterar\"></a> ");
256 s.append(" </td>");
257 if (grupoAssunto != null) {
258 s.append("<td>");
259 if (apontamentos != null && apontamentos.booleanValue()){
260 s.append("<a href=\"javascript:aoClicarConsultar(document.form,"+pontoCritico.getCodPtc()+")\">");
261 }
262
263 if (pontoCritico.getSisAtributoTipo() != null) {
264 s.append(pontoCritico.getSisAtributoTipo().getDescricaoSatb());
265 }
266 if (apontamentos != null && apontamentos.booleanValue()){
267 s.append("</a>");
268 }
269
270 s.append("</td>");
271 }
272 s.append("<td>");
273 if (apontamentos != null && apontamentos.booleanValue()){
274 s.append(" <a href=\"javascript:aoClicarConsultar(document.form,"+pontoCritico.getCodPtc()+")\">");
275 }
276
277 s.append(pontoCritico.getDescricaoPtc());
278 if (apontamentos != null && apontamentos.booleanValue()){
279 s.append(" </a>");
280 }
281
282 s.append("</td>");
283 s.append("<td><img src=\"" + contextPath + "/images/pc"+corRelogio+"1.png\" title=\""+descRelogio+"\"></td>");
284 s.append("<td>"+Pagina.trocaNullData(pontoCritico.getDataLimitePtc())+"</td>");
285 s.append("<td>"+Pagina.trocaNullData(pontoCritico.getDataSolucaoPtc())+"</td>");
286 s.append("<td>");
287 if(pontoCritico.getUsuarioUsu()!=null){
288 s.append(Pagina.trocaNull(pontoCritico.getUsuarioUsu().getNomeUsuSent()));
289 }
290 s.append("</td>");
291 s.append("</tr>");
292 }
293 }
294 }
295
296 s.append("</table>");
297
298
299 writer.print(s.toString());
300 } catch (Exception e) {
301
302 }
303 return Tag.EVAL_BODY_INCLUDE;
304 }
305
306 public String getIndice() {
307 return indice;
308 }
309
310 public void setIndice(String indice) {
311 this.indice = indice;
312 }
313
314
315
316
317
318
319
320
321
322 public void setPageContext(PageContext arg0) {
323 this.page = arg0;
324 }
325
326
327
328
329
330
331
332
333
334 public void setParent(Tag arg0) {
335 parent = arg0;
336 }
337
338
339
340
341
342
343
344
345
346 public Tag getParent() {
347 return parent;
348 }
349
350
351
352
353
354
355
356
357
358
359 public int doEndTag() throws JspException {
360 return Tag.EVAL_PAGE;
361 }
362
363
364
365
366
367
368
369
370 public void release() {
371
372 }
373
374
375
376
377
378
379
380
381
382 public PageContext getPage() {
383 return page;
384 }
385
386
387
388
389
390
391
392
393
394 public void setPage(PageContext page) {
395 this.page = page;
396 }
397
398 public SisGrupoAtributoSga getGrupoAssunto() {
399 return grupoAssunto;
400 }
401
402 public void setGrupoAssunto(SisGrupoAtributoSga grupoAssunto) {
403 this.grupoAssunto = grupoAssunto;
404 }
405
406 public PontoCriticoDao getPontoCriticoDao() {
407 return pontoCriticoDao;
408 }
409
410 public void setPontoCriticoDao(PontoCriticoDao pontoCriticoDao) {
411 this.pontoCriticoDao = pontoCriticoDao;
412 }
413
414 public ItemEstruturaIett getItemEstrutura() {
415 return itemEstrutura;
416 }
417
418 public void setItemEstrutura(ItemEstruturaIett itemEstrutura) {
419 this.itemEstrutura = itemEstrutura;
420 }
421
422 public AcompRelatorioArel getAcompRelatorioArel() {
423 return acompRelatorioArel;
424 }
425
426 public void setAcompRelatorioArel(AcompRelatorioArel acompRelatorioArel) {
427 this.acompRelatorioArel = acompRelatorioArel;
428 }
429
430 public Boolean getApontamentos() {
431 return apontamentos;
432 }
433
434 public void setApontamentos(Boolean apontamentos) {
435 this.apontamentos = apontamentos;
436 }
437
438 public String getContextPath() {
439 return contextPath;
440 }
441
442 public void setContextPath(String contextPath) {
443 this.contextPath = contextPath;
444 }
445
446 public Boolean getAbaPontoCriticoDeAcompanhamento() {
447 return abaPontoCriticoDeAcompanhamento;
448 }
449
450 public void setAbaPontoCriticoDeAcompanhamento(
451 Boolean abaPontoCriticoDeAcompanhamento) {
452 this.abaPontoCriticoDeAcompanhamento = abaPontoCriticoDeAcompanhamento;
453 }
454
455 public AcompReferenciaItemAri getAri() {
456 return ari;
457 }
458
459 public void setAri(AcompReferenciaItemAri ari) {
460 this.ari = ari;
461 }
462
463 public SegurancaECAR getSeguranca() {
464 return seguranca;
465 }
466
467 public void setSeguranca(SegurancaECAR seguranca) {
468 this.seguranca = seguranca;
469 }
470
471 public String getTipoSelecao() {
472 return tipoSelecao;
473 }
474
475 public void setTipoSelecao(String tipoSelecao) {
476 this.tipoSelecao = tipoSelecao;
477 }
478 }