1
2
3
4 package ecar.dao;
5
6 import java.text.SimpleDateFormat;
7 import java.util.ArrayList;
8 import java.util.Calendar;
9 import java.util.Collections;
10 import java.util.Date;
11 import java.util.Iterator;
12 import java.util.List;
13
14 import javax.servlet.http.HttpServletRequest;
15
16 import org.hibernate.Criteria;
17 import org.hibernate.HibernateException;
18 import org.hibernate.Query;
19 import org.hibernate.Transaction;
20 import org.hibernate.criterion.Restrictions;
21
22 import comum.database.Dao;
23 import comum.util.Data;
24 import comum.util.Pagina;
25
26 import ecar.bean.DetalhamentoTotaisConta;
27 import ecar.exception.ECARException;
28 import ecar.login.SegurancaECAR;
29 import ecar.pojo.ConfigExecFinanCef;
30 import ecar.pojo.ConfigSisExecFinanCsef;
31 import ecar.pojo.ConfigSisExecFinanCsefv;
32 import ecar.pojo.ConfiguracaoCfg;
33 import ecar.pojo.EfItemEstContaEfiec;
34 import ecar.pojo.EfItemEstRealizadoEfier;
35 import ecar.pojo.ExercicioExe;
36 import gov.pr.celepar.framework.exception.ApplicationException;
37
38
39
40
41 public class ItemEstruturaRealizadoDao extends Dao {
42
43 public ItemEstruturaRealizadoDao(HttpServletRequest request) {
44 super();
45 this.request = request;
46 }
47
48
49
50
51
52
53 public void setEfItemEstRealizadoEfier(EfItemEstRealizadoEfier item, HttpServletRequest request) throws ECARException {
54 ConfigSisExecFinanCsefvDao versaoDao = new ConfigSisExecFinanCsefvDao(null);
55 ItemEstruturaContaOrcamentoDao itemEstContaDao = new ItemEstruturaContaOrcamentoDao(null);
56
57 SegurancaECAR usuarioLogado = (SegurancaECAR) request.getSession().getAttribute("seguranca");
58
59 Long anoReferencia = Long.valueOf(Pagina.getParamStr(request, "anoReferenciaEfier"));
60 Long mesReferencia = Long.valueOf(Pagina.getParamStr(request, "mesReferenciaEfier"));
61
62 item.setAnoReferenciaEfier(anoReferencia);
63 item.setMesReferenciaEfier(mesReferencia);
64
65 ConfigSisExecFinanCsefv versao = (ConfigSisExecFinanCsefv) versaoDao.buscar(ConfigSisExecFinanCsefv.class, Long.valueOf(Pagina.getParamStr(request, "codVersaoEscolhida")));
66 if (versao == null)
67 throw new ECARException("integracaoFinanceira.manual.inclusao.versaoInexistente");
68
69
70
71 item.setConfigSisExecFinanCsefv(versao);
72
73
74
75
76
77
78 ConfigSisExecFinanCsef sistema = versao.getConfigSisExecFinanCsef();
79 if (!"S".equals(sistema.getIndPermiteValormanualorcCsef()))
80 throw new ECARException("integracaoFinanceira.manual.inclusao.naoPermiteManual");
81
82 List estruturasContabil = new ConfigExecFinanDao(request).getConfigExecFinanByVersao(versao);
83 String estrutura = "";
84 if (estruturasContabil != null) {
85
86 Iterator it = estruturasContabil.iterator();
87 while (it.hasNext()) {
88 ConfigExecFinanCef estruturaContabil = (ConfigExecFinanCef) it.next();
89 if (estrutura.length() > 0)
90 estrutura += " ";
91
92
93 estrutura += Pagina.getParamStr(request, "e" + estruturaContabil.getCodCef().toString() + String.valueOf(versao.getCodCsefv()));
94 }
95
96
97
98
99
100
101
102
103
104 if (!"".equals(estrutura)) {
105 List contasOrcamentarias = itemEstContaDao.listar(EfItemEstContaEfiec.class, new String[] { "contaSistemaOrcEfiec", "asc" });
106 estrutura = estrutura.trim();
107 boolean existeConta = false;
108 Iterator itConta = contasOrcamentarias.iterator();
109 while (itConta.hasNext()) {
110 EfItemEstContaEfiec con = (EfItemEstContaEfiec) itConta.next();
111 if (estrutura.equals(con.getContaSistemaOrcEfiec())) {
112 existeConta = true;
113 break;
114 }
115 }
116
117 if (!existeConta) {
118
119
120 }
121
122 item.setContaSistemaOrcEfier(estrutura.toUpperCase());
123 }
124 }
125
126 item.setDataHoraInfoEfier(Data.getDataAtual());
127
128 if (item.getDataInclusaoEfier() == null)
129 item.setDataInclusaoEfier(Data.getDataAtual());
130
131 item.setIndContabilidadeEfier("A");
132 item.setIndManualEfier(Pagina.getParamStr(request, "indManualEfier"));
133
134 item.setUsuarioUsu(usuarioLogado.getUsuario());
135
136 String valor1 = Pagina.getParamStr(request, "valor1Efier");
137 if (!"".equals(valor1)) {
138 item.setValor1Efier(new Double(valor1.replaceAll(",", ".")));
139 }
140
141 String valor2 = Pagina.getParamStr(request, "valor2Efier");
142 if (!"".equals(valor2)) {
143 item.setValor2Efier(new Double(valor2.replaceAll(",", ".")));
144 }
145
146 String valor3 = Pagina.getParamStr(request, "valor3Efier");
147 if (!"".equals(valor3)) {
148 item.setValor3Efier(new Double(valor3.replaceAll(",", ".")));
149 }
150
151 String valor4 = Pagina.getParamStr(request, "valor4Efier");
152 if (!"".equals(valor4)) {
153 item.setValor4Efier(new Double(valor4.replaceAll(",", ".")));
154 }
155
156 String valor5 = Pagina.getParamStr(request, "valor5Efier");
157 if (!"".equals(valor5)) {
158 item.setValor5Efier(new Double(valor5.replaceAll(",", ".")));
159 }
160
161 String valor6 = Pagina.getParamStr(request, "valor6Efier");
162 if (!"".equals(valor6)) {
163 item.setValor6Efier(new Double(valor6.replaceAll(",", ".")));
164 }
165
166 }
167
168
169
170
171
172
173
174 public void setEfItemEstRealizadoEfier(EfItemEstRealizadoEfier item, HttpServletRequest request, int iteracao) throws ECARException {
175 ConfigSisExecFinanCsefvDao versaoDao = new ConfigSisExecFinanCsefvDao(null);
176 ItemEstruturaContaOrcamentoDao itemEstContaDao = new ItemEstruturaContaOrcamentoDao(null);
177
178 SegurancaECAR usuarioLogado = (SegurancaECAR) request.getSession().getAttribute("seguranca");
179
180 Long anoReferencia = Long.valueOf(Pagina.getParamStr(request, "anoReferenciaEfier"));
181 Long mesReferencia = Long.valueOf(Pagina.getParamStr(request, "mesReferenciaEfier"));
182
183 item.setAnoReferenciaEfier(anoReferencia);
184 item.setMesReferenciaEfier(mesReferencia);
185
186 ConfigSisExecFinanCsefv versao = (ConfigSisExecFinanCsefv) versaoDao.buscar(ConfigSisExecFinanCsefv.class, Long.valueOf(Pagina.getParamStr(request, "codVersaoEscolhida")));
187 if (versao == null)
188 throw new ECARException("integracaoFinanceira.manual.inclusao.versaoInexistente");
189
190
191
192 item.setConfigSisExecFinanCsefv(versao);
193
194
195
196
197
198
199 ConfigSisExecFinanCsef sistema = versao.getConfigSisExecFinanCsef();
200 if (!"S".equals(sistema.getIndPermiteValormanualorcCsef()))
201 throw new ECARException("integracaoFinanceira.manual.inclusao.naoPermiteManual");
202
203 List estruturasContabil = new ConfigExecFinanDao(request).getConfigExecFinanByVersao(versao);
204 String estrutura = "";
205 if (estruturasContabil != null) {
206
207 Iterator it = estruturasContabil.iterator();
208 while (it.hasNext()) {
209 ConfigExecFinanCef estruturaContabil = (ConfigExecFinanCef) it.next();
210 if (estrutura.length() > 0)
211 estrutura += " ";
212
213
214
215
216
217 estrutura += request.getParameterValues("e" + estruturaContabil.getCodCef().toString() + String.valueOf(versao.getCodCsefv()))[iteracao - 1];
218 }
219
220
221
222
223
224
225
226
227
228 if (!"".equals(estrutura)) {
229 List contasOrcamentarias = itemEstContaDao.listar(EfItemEstContaEfiec.class, new String[] { "contaSistemaOrcEfiec", "asc" });
230 estrutura = estrutura.trim();
231 boolean existeConta = false;
232 Iterator itConta = contasOrcamentarias.iterator();
233 while (itConta.hasNext()) {
234 EfItemEstContaEfiec con = (EfItemEstContaEfiec) itConta.next();
235 if (estrutura.equals(con.getContaSistemaOrcEfiec())) {
236 existeConta = true;
237 break;
238 }
239 }
240
241 if (!existeConta) {
242
243
244 }
245
246 item.setContaSistemaOrcEfier(estrutura.toUpperCase());
247 }
248 }
249
250 item.setDataHoraInfoEfier(Data.getDataAtual());
251
252 if (item.getDataInclusaoEfier() == null)
253 item.setDataInclusaoEfier(Data.getDataAtual());
254
255 item.setIndContabilidadeEfier("A");
256 item.setIndManualEfier(Pagina.getParamStr(request, "indManualEfier"));
257
258 item.setUsuarioUsu(usuarioLogado.getUsuario());
259
260 String valor1 = Pagina.getParamStr(request, "valor" + iteracao + "_1Efier");
261 if (!"".equals(valor1)) {
262 item.setValor1Efier(new Double(valor1.replaceAll(",", ".")));
263 }
264
265 String valor2 = Pagina.getParamStr(request, "valor" + iteracao + "_2Efier");
266 if (!"".equals(valor2)) {
267 item.setValor2Efier(new Double(valor2.replaceAll(",", ".")));
268 }
269
270 String valor3 = Pagina.getParamStr(request, "valor" + iteracao + "_3Efier");
271 if (!"".equals(valor3)) {
272 item.setValor3Efier(new Double(valor3.replaceAll(",", ".")));
273 }
274
275 String valor4 = Pagina.getParamStr(request, "valor" + iteracao + "_4Efier");
276 if (!"".equals(valor4)) {
277 item.setValor4Efier(new Double(valor4.replaceAll(",", ".")));
278 }
279
280 String valor5 = Pagina.getParamStr(request, "valor" + iteracao + "_5Efier");
281 if (!"".equals(valor5)) {
282 item.setValor5Efier(new Double(valor5.replaceAll(",", ".")));
283 }
284
285 String valor6 = Pagina.getParamStr(request, "valor" + iteracao + "_6Efier");
286 if (!"".equals(valor6)) {
287 item.setValor6Efier(new Double(valor6.replaceAll(",", ".")));
288 }
289 }
290
291 public void gravar(EfItemEstRealizadoEfier efier, Transaction tx) throws ECARException {
292 Long mes = efier.getMesReferenciaEfier();
293 Long ano = efier.getAnoReferenciaEfier();
294 String conta = efier.getContaSistemaOrcEfier();
295
296 try {
297 StringBuilder sql = new StringBuilder("from EfItemEstRealizadoEfier efier").append(" where efier.mesReferenciaEfier = :mes").append(" and efier.anoReferenciaEfier = :ano").append(" and efier.contaSistemaOrcEfier = :conta");
298
299 Query q = this.session.createQuery(sql.toString());
300 q.setLong("mes", mes.longValue());
301 q.setLong("ano", ano.longValue());
302 q.setString("conta", conta);
303
304 List lista = q.list();
305
306 if (lista != null && !lista.isEmpty()) {
307 throw new ECARException("integracaoFinanceira.manual.inclusao.contaCadastrada");
308 }
309
310 if (tx != null) {
311 session.save(efier);
312 }
313 else {
314 super.salvar(efier);
315 }
316 } catch (HibernateException e) {
317 this.logger.error(e);
318 throw new ECARException("integracaoFinanceira.manual.inclusao.erro");
319 }
320 }
321
322 public void alterar(EfItemEstRealizadoEfier efier) throws ECARException {
323 super.alterar(efier);
324 }
325
326 public void excluir(String[] codigosParaExcluir) throws ECARException, HibernateException {
327 Transaction tx = null;
328 try {
329 tx = this.session.beginTransaction();
330 for (int i = 0; i < codigosParaExcluir.length; i++) {
331 EfItemEstRealizadoEfier efier = (EfItemEstRealizadoEfier) buscar(EfItemEstRealizadoEfier.class, Long.valueOf(codigosParaExcluir[i]));
332 session.delete(efier);
333 }
334 tx.commit();
335 } catch (Exception e) {
336 if (tx != null)
337 tx.rollback();
338 this.logger.error(e);
339 throw new ECARException("integracaoFinanceira.manual.exclusao.erro");
340 }
341 }
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365 public Double[] getSomaItemEstruturaRealizado(EfItemEstContaEfiec efItem, ExercicioExe exercicio) throws ECARException, HibernateException {
366
367 try {
368
369 StringBuilder baseQuery = new StringBuilder();
370 StringBuilder where = new StringBuilder();
371 Double[] efier = new Double[] { new Double(0), new Double(0), new Double(0), new Double(0), new Double(0), new Double(0) };
372
373 if (efItem.getIndAcumuladoEfiec() == null || "".equals(efItem.getIndAcumuladoEfiec().trim())) {
374 return efier;
375 }
376
377 Calendar dataIniExe = Data.getGregorianCalendar(exercicio.getDataInicialExe());
378 Calendar dataFimExe = Data.getGregorianCalendar(exercicio.getDataFinalExe());
379
380
381
382 int mesIniExe = dataIniExe.get(Calendar.MONTH) + 1;
383 int mesFimExe = dataFimExe.get(Calendar.MONTH) + 1;
384
385 Query query = null;
386
387 if ("S".equals(efItem.getIndAcumuladoEfiec())) {
388
389 baseQuery.append("select itemEstRealizado.valor1Efier, ").append("itemEstRealizado.valor2Efier,").append("itemEstRealizado.valor3Efier,").append("itemEstRealizado.valor4Efier,").append("itemEstRealizado.valor5Efier,").append("itemEstRealizado.valor6Efier ").append("from EfItemEstRealizadoEfier itemEstRealizado ");
390
391 where.append(" where itemEstRealizado.contaSistemaOrcEfier = :conta ").append(" and (((itemEstRealizado.anoReferenciaEfier = :anoIni and itemEstRealizado.mesReferenciaEfier >= :mesIni)").append(" or itemEstRealizado.anoReferenciaEfier > :anoIni )").append(" and ((itemEstRealizado.anoReferenciaEfier = :anoFim and itemEstRealizado.mesReferenciaEfier <= :mesFim)").append(" or itemEstRealizado.anoReferenciaEfier < :anoFim))").append(" order by itemEstRealizado.anoReferenciaEfier desc, itemEstRealizado.mesReferenciaEfier desc");
392
393 }
394 else if ("N".equals(efItem.getIndAcumuladoEfiec())) {
395
396 baseQuery.append("select sum(itemEstRealizado.valor1Efier), ").append("sum(itemEstRealizado.valor2Efier),").append("sum(itemEstRealizado.valor3Efier),").append("sum(itemEstRealizado.valor4Efier),").append("sum(itemEstRealizado.valor5Efier),").append("sum(itemEstRealizado.valor6Efier)").append("from EfItemEstRealizadoEfier itemEstRealizado ");
397
398 where.append(" where itemEstRealizado.contaSistemaOrcEfier = :conta ").append(" and (((itemEstRealizado.anoReferenciaEfier = :anoIni and itemEstRealizado.mesReferenciaEfier >= :mesIni)").append(" or itemEstRealizado.anoReferenciaEfier > :anoIni )").append(" and ((itemEstRealizado.anoReferenciaEfier = :anoFim and itemEstRealizado.mesReferenciaEfier <= :mesFim)").append(" or itemEstRealizado.anoReferenciaEfier < :anoFim))");
399
400 }
401
402 query = this.getSession().createQuery(baseQuery.toString() + where);
403 query.setString("conta", efItem.getContaSistemaOrcEfiec());
404 query.setLong("anoIni", Long.parseLong(String.valueOf(dataIniExe.get(Calendar.YEAR))));
405 query.setLong("mesIni", Long.parseLong(String.valueOf(mesIniExe)));
406 query.setLong("anoFim", Long.parseLong(String.valueOf(dataFimExe.get(Calendar.YEAR))));
407 query.setLong("mesFim", Long.parseLong(String.valueOf(mesFimExe)));
408
409 List lista = query.list();
410
411 Iterator it = lista.iterator();
412
413
414 if (it.hasNext()) {
415 Object aux[] = (Object[]) it.next();
416
417 if (aux[0] != null)
418 efier[0] = (Double) aux[0];
419 if (aux[1] != null)
420 efier[1] = (Double) aux[1];
421 if (aux[2] != null)
422 efier[2] = (Double) aux[2];
423 if (aux[3] != null)
424 efier[3] = (Double) aux[3];
425 if (aux[4] != null)
426 efier[4] = (Double) aux[4];
427 if (aux[5] != null)
428 efier[5] = (Double) aux[5];
429 }
430
431 return (efier);
432
433 } catch (Exception e) {
434 this.logger.error(e);
435 throw new ECARException("relAcompanhamento.financeiro.consulta.erro");
436 }
437 }
438
439
440
441
442
443
444
445
446
447
448 public DetalhamentoTotaisConta getSomaDetalhadaItemEstruturaRealizado(EfItemEstContaEfiec efItem, ExercicioExe exercicio) throws ECARException, HibernateException {
449
450 try {
451
452 StringBuilder baseQuery = new StringBuilder();
453 StringBuilder where = new StringBuilder();
454
455 DetalhamentoTotaisConta detalheConta = new DetalhamentoTotaisConta();
456
457 if (efItem.getIndAcumuladoEfiec() == null || "".equals(efItem.getIndAcumuladoEfiec().trim())) {
458 return detalheConta;
459 }
460
461 Calendar dataIniExe = Data.getGregorianCalendar(exercicio.getDataInicialExe());
462 Calendar dataFimExe = Data.getGregorianCalendar(exercicio.getDataFinalExe());
463
464
465
466 int mesIniExe = dataIniExe.get(Calendar.MONTH) + 1;
467 int mesFimExe = dataFimExe.get(Calendar.MONTH) + 1;
468
469 Query query = null;
470 String indManual = "N";
471 List lista = new ArrayList();
472
473 if ("S".equals(efItem.getIndAcumuladoEfiec())) {
474
475 for (int i = 0; i <= 1; i++) {
476
477 baseQuery.append("select itemEstRealizado.valor1Efier, ").append("itemEstRealizado.valor2Efier,").append("itemEstRealizado.valor3Efier,").append("itemEstRealizado.valor4Efier,").append("itemEstRealizado.valor5Efier,").append("itemEstRealizado.valor6Efier,").append("itemEstRealizado.indManualEfier ").append("from EfItemEstRealizadoEfier itemEstRealizado ");
478
479 where.append(" where itemEstRealizado.contaSistemaOrcEfier like :conta ").append(" and (((itemEstRealizado.anoReferenciaEfier = :anoIni and itemEstRealizado.mesReferenciaEfier >= :mesIni)").append(" or itemEstRealizado.anoReferenciaEfier > :anoIni )").append(" and ((itemEstRealizado.anoReferenciaEfier = :anoFim and itemEstRealizado.mesReferenciaEfier <= :mesFim)").append(" or itemEstRealizado.anoReferenciaEfier < :anoFim))").append(" and itemEstRealizado.indManualEfier = :indManualEfier))").append(" order by itemEstRealizado.anoReferenciaEfier desc, itemEstRealizado.mesReferenciaEfier desc");
480
481 query = this.getSession().createQuery(baseQuery.toString() + where);
482
483
484 String[] parametros = efItem.getContaSistemaOrcEfiec().split(" ");
485 query.setString("conta", parametros[0] + "%" + parametros[2] + " " + parametros[3]);
486 query.setLong("anoIni", Long.parseLong(String.valueOf(dataIniExe.get(Calendar.YEAR))));
487 query.setLong("mesIni", Long.parseLong(String.valueOf(mesIniExe)));
488 query.setLong("anoFim", Long.parseLong(String.valueOf(dataFimExe.get(Calendar.YEAR))));
489 query.setLong("mesFim", Long.parseLong(String.valueOf(mesFimExe)));
490 query.setString("indManualEfier", indManual);
491
492 query.setMaxResults(1);
493 lista.addAll(query.list());
494
495 if ("S".equals(indManual)) {
496 indManual = "S";
497 }
498 }
499
500 }
501 else if ("N".equals(efItem.getIndAcumuladoEfiec())) {
502
503 baseQuery.append("select sum(itemEstRealizado.valor1Efier), ").append("sum(itemEstRealizado.valor2Efier),").append("sum(itemEstRealizado.valor3Efier),").append("sum(itemEstRealizado.valor4Efier),").append("sum(itemEstRealizado.valor5Efier),").append("sum(itemEstRealizado.valor6Efier),").append("itemEstRealizado.indManualEfier ").append("from EfItemEstRealizadoEfier itemEstRealizado ");
504
505 where.append(" where itemEstRealizado.contaSistemaOrcEfier like :conta ").append(" and (((itemEstRealizado.anoReferenciaEfier = :anoIni and itemEstRealizado.mesReferenciaEfier >= :mesIni)").append(" or itemEstRealizado.anoReferenciaEfier > :anoIni )").append(" and ((itemEstRealizado.anoReferenciaEfier = :anoFim and itemEstRealizado.mesReferenciaEfier <= :mesFim)").append(" or itemEstRealizado.anoReferenciaEfier < :anoFim))").append(" group by itemEstRealizado.indManualEfier").append(" order by itemEstRealizado.indManualEfier asc");
506
507 query = this.getSession().createQuery(baseQuery.toString() + where);
508
509
510 String[] parametros = efItem.getContaSistemaOrcEfiec().split(" ");
511 query.setString("conta", parametros[0] + "%" + parametros[2] + " " + parametros[3]);
512 query.setLong("anoIni", Long.parseLong(String.valueOf(dataIniExe.get(Calendar.YEAR))));
513 query.setLong("mesIni", Long.parseLong(String.valueOf(mesIniExe)));
514 query.setLong("anoFim", Long.parseLong(String.valueOf(dataFimExe.get(Calendar.YEAR))));
515 query.setLong("mesFim", Long.parseLong(String.valueOf(mesFimExe)));
516
517 lista.addAll(query.list());
518 }
519
520 Iterator it = lista.iterator();
521
522 Double[][] arrayDetalhesContas = detalheConta.getDetalhesContas();
523
524 int linha = 0;
525 while (it.hasNext()) {
526
527 Object aux[] = (Object[]) it.next();
528
529 if ((aux[6] != null) && ("S".equals((String) aux[6])) && (linha == 0))
530 linha++;
531
532 if (aux[0] != null)
533 arrayDetalhesContas[linha][0] = (Double) aux[0];
534 if (aux[1] != null)
535 arrayDetalhesContas[linha][1] = (Double) aux[1];
536 if (aux[2] != null)
537 arrayDetalhesContas[linha][2] = (Double) aux[2];
538 if (aux[3] != null)
539 arrayDetalhesContas[linha][3] = (Double) aux[3];
540 if (aux[4] != null)
541 arrayDetalhesContas[linha][4] = (Double) aux[4];
542 if (aux[5] != null)
543 arrayDetalhesContas[linha][5] = (Double) aux[5];
544
545 linha++;
546 }
547
548 return (detalheConta);
549
550 } catch (Exception e) {
551 this.logger.error(e);
552 throw new ECARException("relAcompanhamento.financeiro.consulta.erro");
553 }
554 }
555
556
557
558
559
560
561
562
563
564
565
566
567
568 public boolean getVerificarMostrarValorByPosicaoCfg(int posicao) throws ECARException {
569 ConfiguracaoCfg cfg = (new ConfiguracaoDao(null)).getConfiguracao();
570 posicao++;
571
572 boolean retorno = false;
573
574 switch (posicao) {
575 case 1: {
576 if (cfg.getFinanceiroDescValor1Cfg() != null && !"".equals(cfg.getFinanceiroDescValor1Cfg().trim()))
577 retorno = true;
578 break;
579 }
580 case 2: {
581 if (cfg.getFinanceiroDescValor2Cfg() != null && !"".equals(cfg.getFinanceiroDescValor2Cfg().trim()))
582 retorno = true;
583 break;
584 }
585 case 3: {
586 if (cfg.getFinanceiroDescValor3Cfg() != null && !"".equals(cfg.getFinanceiroDescValor3Cfg().trim()))
587 retorno = true;
588 break;
589 }
590 case 4: {
591 if (cfg.getFinanceiroDescValor4Cfg() != null && !"".equals(cfg.getFinanceiroDescValor4Cfg().trim()))
592 retorno = true;
593 break;
594 }
595 case 5: {
596 if (cfg.getFinanceiroDescValor5Cfg() != null && !"".equals(cfg.getFinanceiroDescValor5Cfg().trim()))
597 retorno = true;
598 break;
599 }
600 case 6: {
601 if (cfg.getFinanceiroDescValor6Cfg() != null && !"".equals(cfg.getFinanceiroDescValor6Cfg().trim()))
602 retorno = true;
603 break;
604 }
605
606 default:
607 break;
608 }
609 return retorno;
610 }
611
612
613
614
615
616
617
618
619
620
621 public boolean getVerificarMostrarRecursoByPosicaoCfg(int posicao) throws ECARException {
622 ConfiguracaoCfg cfg = (new ConfiguracaoDao(null)).getConfiguracao();
623 posicao++;
624
625 boolean retorno = false;
626
627 switch (posicao) {
628 case 1: {
629 if (cfg.getRecursoDescValor1Cfg() != null && !"".equals(cfg.getRecursoDescValor1Cfg().trim()))
630 retorno = true;
631 break;
632 }
633 case 2: {
634 if (cfg.getRecursoDescValor2Cfg() != null && !"".equals(cfg.getRecursoDescValor2Cfg().trim()))
635 retorno = true;
636 break;
637 }
638 case 3: {
639 if (cfg.getRecursoDescValor3Cfg() != null && !"".equals(cfg.getRecursoDescValor3Cfg().trim()))
640 retorno = true;
641 break;
642 }
643
644 default:
645 break;
646 }
647 return retorno;
648 }
649
650
651
652
653
654
655
656
657
658 public List getValoresParaExportacao(String mesIni, String anoIni, String mesFim, String anoFim) throws ECARException, HibernateException {
659 try {
660 StringBuilder baseQuery = new StringBuilder("from EfItemEstRealizadoEfier itemEstRealizado ").append(" where (((itemEstRealizado.anoReferenciaEfier = :anoIni and itemEstRealizado.mesReferenciaEfier >= :mesIni)").append(" or itemEstRealizado.anoReferenciaEfier > :anoIni)").append(" and ((itemEstRealizado.anoReferenciaEfier = :anoFim and itemEstRealizado.mesReferenciaEfier <= :mesFim)").append(" or itemEstRealizado.anoReferenciaEfier < :anoFim))");
661
662 Query objQuery = this.getSession().createQuery(baseQuery.toString());
663
664 objQuery.setLong("mesIni", Long.valueOf(mesIni).longValue());
665 objQuery.setLong("anoIni", Long.valueOf(anoIni).longValue());
666 objQuery.setLong("mesFim", Long.valueOf(mesFim).longValue());
667 objQuery.setLong("anoFim", Long.valueOf(anoFim).longValue());
668
669 return objQuery.list();
670 } catch (Exception e) {
671 this.logger.error(e);
672 throw new ECARException("integracaoFinanceira.exportarArquivo.consultaDados.erro");
673 }
674 }
675
676
677
678
679
680
681
682
683
684 public List getItemEstRealizadoEfierToImportacao(String conta, Long mes, Long ano) throws ECARException {
685 try {
686 StringBuilder baseQuery = new StringBuilder("from EfItemEstRealizadoEfier itemEstRealizado ").append(" where itemEstRealizado.anoReferenciaEfier = :ano").append(" and itemEstRealizado.mesReferenciaEfier = :mes").append(" and itemEstRealizado.contaSistemaOrcEfier = :conta");
687
688 Query objQuery = this.getSession().createQuery(baseQuery.toString());
689
690 objQuery.setString("conta", conta);
691 objQuery.setLong("ano", ano.longValue());
692 objQuery.setLong("mes", mes.longValue());
693
694 return objQuery.list();
695 } catch (HibernateException e) {
696 this.logger.error(e);
697 throw new ECARException("integracaoFinanceira.importarArquivo.importacao.erro");
698 }
699 }
700
701
702
703
704
705
706
707
708
709
710
711 public List getItemEstRealizadoEfierToImportacao(Date inicio, Date fim, ConfigSisExecFinanCsef sistema) throws ECARException {
712
713 Long anoIni = Long.valueOf(new SimpleDateFormat("yyyy").format(inicio));
714 Long mesIni = Long.valueOf(new SimpleDateFormat("MM").format(inicio));
715 Long anoFim = Long.valueOf(new SimpleDateFormat("yyyy").format(fim));
716 Long mesFim = Long.valueOf(new SimpleDateFormat("MM").format(fim));
717
718 try {
719 StringBuilder baseQuery = new StringBuilder("from EfItemEstRealizadoEfier itemEstRealizado ").append(" where itemEstRealizado.indManualEfier = 'N'").append(" and (itemEstRealizado.anoReferenciaEfier >= :anoIni and itemEstRealizado.anoReferenciaEfier <= :anoFim)").append(" and (itemEstRealizado.mesReferenciaEfier >= :mesIni and itemEstRealizado.mesReferenciaEfier <= :mesFim)").append(" and itemEstRealizado.configSisExecFinanCsefv.configSisExecFinanCsef.codCsef = :codSistema");
720
721 Query objQuery = this.getSession().createQuery(baseQuery.toString());
722 objQuery.setLong("anoIni", anoIni.longValue());
723 objQuery.setLong("mesIni", mesIni.longValue());
724 objQuery.setLong("anoFim", anoFim.longValue());
725 objQuery.setLong("mesFim", mesFim.longValue());
726 objQuery.setLong("codSistema", sistema.getCodCsef());
727
728 return objQuery.list();
729 } catch (HibernateException e) {
730 this.logger.error(e);
731 throw new ECARException("integracaoFinanceira.importarArquivo.importacao.erro");
732 }
733 }
734
735
736
737
738
739
740 public List getItemEstRealizadoEfier(String conta, String mes, String ano, String codSistema, String indManualEfier) throws ECARException {
741
742 try {
743
744 Criteria crits = session.createCriteria(EfItemEstRealizadoEfier.class);
745
746 if (!"".equals(conta.trim()))
747 crits.add(Restrictions.eq("contaSistemaOrcEfier", conta));
748
749 if (!"".equals(mes.trim()))
750 crits.add(Restrictions.eq("mesReferenciaEfier", Long.valueOf(mes).longValue()));
751
752 if (!"".equals(ano.trim()))
753 crits.add(Restrictions.eq("anoReferenciaEfier", Long.valueOf(ano).longValue()));
754
755 if (!"".equals(indManualEfier.trim()))
756 crits.add(Restrictions.eq("indManualEfier", indManualEfier));
757
758 if (!"".equals(codSistema.trim())) {
759 Criteria crits2 = crits.createCriteria("configSisExecFinanCsefv");
760 crits2.add(Restrictions.eq("configSisExecFinanCsef.codCsef", Long.valueOf(codSistema).longValue()));
761 }
762
763 return crits.list();
764
765 } catch (Exception e) {
766 this.logger.error(e);
767 throw new ECARException("integracaoFinanceira.manual.buscar.erro");
768 }
769 }
770 }