public void capturarUltimaMensagem() { MensagemConvencaoDB mensagemDB = new MensagemConvencaoDBToplink(); this.mensagemConvencao.getConvencao().setId(-1); this.mensagemConvencao.getGrupoCidade().setId(-1); this.mensagemConvencao.getTipoServico().setId(-1); this.mensagemConvencao.getServicos().setId(-1); this.mensagemConvencao.setVencimento(""); int[] id = new int[4]; id[0] = Integer.parseInt(this.getListaConvencoes().get(idConvencao).getDescription()); id[1] = Integer.parseInt(this.getListaServico().get(idServico).getDescription()); id[2] = Integer.parseInt(this.getListaTipoServico().get(idTipoServico).getDescription()); id[3] = Integer.parseInt(this.getListaGrupoCidade().get(idGrupo).getDescription()); MensagemConvencao msgConvencao = mensagemDB.pesquisarUltimaMensagem(id[0], id[1], id[2], id[3]); this.mensagemConvencao.setConvencao(msgConvencao.getConvencao()); this.mensagemConvencao.setGrupoCidade(msgConvencao.getGrupoCidade()); this.mensagemConvencao.setTipoServico(msgConvencao.getTipoServico()); this.mensagemConvencao.setServicos(msgConvencao.getServicos()); this.mensagemConvencao.setMensagemCompensacao(msgConvencao.getMensagemCompensacao()); this.mensagemConvencao.setMensagemContribuinte(msgConvencao.getMensagemContribuinte()); this.mensagemConvencao.setDtVencimento(msgConvencao.getDtVencimento()); }
public synchronized String salvar() { MensagemConvencaoDB db = new MensagemConvencaoDBToplink(); ConvencaoCidadeDB dbc = new ConvencaoCidadeDBToplink(); DataHoje dataHoje = new DataHoje(); mensagemConvencao.setVencimento(vencimento); if (!mensagemConvencao.getVencimento().equals(vencimento)) { msgConfirma = "Este vencimento esta incorreto!"; GenericaMensagem.warn("Erro", msgConfirma); return null; } if ((mensagemConvencao.getReferencia().length() != 7) && (Integer.parseInt(this.getListaTipoServico().get(idTipoServico).getDescription()) != 4)) { msgConfirma = "Referência esta incorreta"; GenericaMensagem.warn("Erro", msgConfirma); return null; } if (DataHoje.converteData(mensagemConvencao.getDtVencimento()) == null) { msgConfirma = "Informe o vencimento"; GenericaMensagem.warn("Erro", msgConfirma); return null; } try { if (mensagemConvencao.getId() == -1) { // SE ACORDO FOR FALSO ---------------------------------------------------- if (mensagemConvencao.getReferencia().length() != 7 && !disAcordo) { msgConfirma = "Digite uma referencia!"; GenericaMensagem.warn("Erro", msgConfirma); return null; } int ano = 0; String referencia = "", vencto = "", diaOriginal = ""; int iservicos = Integer.parseInt(this.getListaServico().get(idServico).getDescription()), itiposervico = Integer.parseInt(this.getListaTipoServico().get(idTipoServico).getDescription()); if (gerarAno && !disAcordo) { ano = 12; referencia = "01/01/" + mensagemConvencao.getReferencia().substring(3); diaOriginal = mensagemConvencao.getVencimento().substring(0, 2); vencto = diaOriginal + "/01/" + mensagemConvencao.getVencimento().substring(6, 10); if (iservicos == 1) { vencto = dataHoje.incrementarMesesUltimoDia(1, vencto); } else { vencto = dataHoje.incrementarMeses(1, vencto); } } else { ano = 1; referencia = mensagemConvencao.getReferencia(); diaOriginal = mensagemConvencao.getVencimento().substring(0, 2); vencto = mensagemConvencao.getVencimento(); } switch (processarGrupos) { // SALVAR PARA TODOS OS GRUPOS DESTA CONVENÇÃO case 1: { int conv = Integer.parseInt(this.getListaConvencoes().get(idConvencao).getDescription()); List<GrupoCidade> listgc = dbc.pesquisarGruposPorConvencao(conv); for (int l = 0; l < ano; l++) { for (int k = 0; k < listgc.size(); k++) { if (gerarAno && !disAcordo) { msgConfirma = this.insertMensagem( conv, listgc.get(k).getId(), iservicos, itiposervico, referencia.substring(3), vencto); } else { msgConfirma = this.insertMensagem( conv, listgc.get(k).getId(), iservicos, itiposervico, referencia, vencto); } } referencia = dataHoje.incrementarMeses(1, referencia); if (iservicos == 1) { vencto = dataHoje.incrementarMesesUltimoDia(1, vencto); } else { vencto = diaOriginal + vencto.substring(2, 10); vencto = dataHoje.incrementarMeses(1, vencto); } } break; } // SALVAR PARA TODAS AS CONVENÇÕES DESTE GRUPO case 2: { int grupoC = Integer.parseInt(this.getListaGrupoCidade().get(idGrupo).getDescription()); List<Convencao> listc = dbc.pesquisarConvencaoPorGrupos(grupoC); for (int l = 0; l < ano; l++) { for (int k = 0; k < listc.size(); k++) { if (gerarAno && !disAcordo) { msgConfirma = this.insertMensagem( listc.get(k).getId(), grupoC, iservicos, itiposervico, referencia.substring(3), vencto); } else { msgConfirma = this.insertMensagem( listc.get(k).getId(), grupoC, iservicos, itiposervico, referencia, vencto); } } referencia = dataHoje.incrementarMeses(1, referencia); if (iservicos == 1) { vencto = dataHoje.incrementarMesesUltimoDia(1, vencto); } else { vencto = diaOriginal + vencto.substring(2, 10); vencto = dataHoje.incrementarMeses(1, vencto); } } break; } // SALVAR PARA TODOS OS GRUPOS E CONVENÇÕES case 3: { List<SelectItem> listc = this.getListaConvencoes(); for (int l = 0; l < ano; l++) { for (int k = 0; k < listc.size(); k++) { List<GrupoCidade> listgc = dbc.pesquisarGruposPorConvencao( Integer.parseInt(listc.get(k).getDescription())); for (int w = 0; w < listgc.size(); w++) { if (gerarAno && !disAcordo) { msgConfirma = this.insertMensagem( Integer.parseInt(listc.get(k).getDescription()), listgc.get(w).getId(), iservicos, itiposervico, referencia.substring(3), vencto); } else { msgConfirma = this.insertMensagem( Integer.parseInt(listc.get(k).getDescription()), listgc.get(w).getId(), iservicos, itiposervico, referencia, vencto); } } } referencia = dataHoje.incrementarMeses(1, referencia); if (iservicos == 1) { vencto = dataHoje.incrementarMesesUltimoDia(1, vencto); } else { vencto = diaOriginal + vencto.substring(2, 10); vencto = dataHoje.incrementarMeses(1, vencto); } } break; } // NENHUMA DESTAS OPÇÕES case 4: { int conv = Integer.parseInt(this.getListaConvencoes().get(idConvencao).getDescription()), grupoC = Integer.parseInt(this.getListaGrupoCidade().get(idGrupo).getDescription()); for (int l = 0; l < ano; l++) { if (gerarAno && !disAcordo) { msgConfirma = this.insertMensagem( conv, grupoC, iservicos, itiposervico, referencia.substring(3), vencto); } else { msgConfirma = this.insertMensagem( conv, grupoC, iservicos, itiposervico, referencia, vencto); } referencia = dataHoje.incrementarMeses(1, referencia); if (iservicos == 1) { vencto = dataHoje.incrementarMesesUltimoDia(1, vencto); } else { vencto = diaOriginal + vencto.substring(2, 10); vencto = dataHoje.incrementarMeses(1, vencto); } } break; } } } else { Dao dao = new Dao(); MensagemConvencao men = null; NovoLog novoLog = new NovoLog(); if (processarTipoServicos) { List<MensagemConvencao> lista = db.mesmoTipoServico( Integer.parseInt(this.getListaServico().get(idServico).getDescription()), Integer.parseInt(this.getListaTipoServico().get(idTipoServico).getDescription()), mensagemConvencao.getReferencia().substring(3)); for (int i = 0; i < lista.size(); i++) { lista.get(i).setMensagemCompensacao(mensagemConvencao.getMensagemCompensacao()); lista.get(i).setMensagemContribuinte(mensagemConvencao.getMensagemContribuinte()); lista.get(i).setVencimento(vencimento); men = db.verificaMensagem( lista.get(i).getConvencao().getId(), lista.get(i).getServicos().getId(), lista.get(i).getTipoServico().getId(), lista.get(i).getGrupoCidade().getId(), lista.get(i).getReferencia()); if ((men == null) || (men.getId() != -1)) { MensagemConvencao mcBefore = (MensagemConvencao) dao.find(men); String beforeUpdate = " - Referência: " + mcBefore.getReferencia() + " - Vencimento: " + mcBefore.getVencimento() + " - Serviço: (" + mcBefore.getServicos().getId() + ") " + " - Tipo Serviço: (" + mcBefore.getTipoServico().getId() + ") " + mcBefore.getTipoServico().getDescricao() + " - Convenção: (" + mcBefore.getConvencao().getId() + ") " + mcBefore.getConvencao().getDescricao() + " - Grupo Cidade: (" + mcBefore.getGrupoCidade().getId() + ") " + mcBefore.getGrupoCidade().getDescricao() + " - Mensagem Compensação: " + mcBefore.getMensagemCompensacao(); if (db.update(lista.get(i))) { msgConfirma = "Mensagem atualizado com sucesso!"; novoLog.update( beforeUpdate, " - Referência: " + men.getReferencia() + " - Vencimento: " + men.getVencimento() + " - Serviço: (" + men.getServicos().getId() + ") " + " - Tipo Serviço: (" + men.getTipoServico().getId() + ") " + men.getTipoServico().getDescricao() + " - Convenção: (" + men.getConvencao().getId() + ") " + men.getConvencao().getDescricao() + " - Grupo Cidade: (" + men.getGrupoCidade().getId() + ") " + men.getGrupoCidade().getDescricao() + " - Mensagem Compensação: " + men.getMensagemCompensacao() + " - Mensagem Contribuinte: " + men.getMensagemContribuinte()); GenericaMensagem.info("Sucesso", msgConfirma); } else { msgConfirma = "Ocorreu um erro ao atualizar!"; GenericaMensagem.warn("Erro", msgConfirma); } } } } else { men = db.verificaMensagem( mensagemConvencao.getConvencao().getId(), mensagemConvencao.getServicos().getId(), mensagemConvencao.getTipoServico().getId(), mensagemConvencao.getGrupoCidade().getId(), mensagemConvencao.getReferencia()); MensagemConvencao mcBefore = (MensagemConvencao) dao.find(mensagemConvencao); String beforeUpdate = " - Referência: " + mcBefore.getReferencia() + " - Vencimento: " + mcBefore.getVencimento() + " - Serviço: (" + mcBefore.getServicos().getId() + ") " + " - Tipo Serviço: (" + mcBefore.getTipoServico().getId() + ") " + mcBefore.getTipoServico().getDescricao() + " - Convenção: (" + mcBefore.getConvencao().getId() + ") " + mcBefore.getConvencao().getDescricao() + " - Grupo Cidade: (" + mcBefore.getGrupoCidade().getId() + ") " + mcBefore.getGrupoCidade().getDescricao() + " - Mensagem Compensação: " + mcBefore.getMensagemCompensacao(); if (men == null || (men.getId() == mensagemConvencao.getId())) { if (db.update(mensagemConvencao)) { novoLog.update( beforeUpdate, " - Referência: " + mensagemConvencao.getReferencia() + " - Vencimento: " + mensagemConvencao.getVencimento() + " - Serviço: (" + mensagemConvencao.getServicos().getId() + ") " + " - Tipo Serviço: (" + mensagemConvencao.getTipoServico().getId() + ") " + mensagemConvencao.getTipoServico().getDescricao() + " - Convenção: (" + mensagemConvencao.getConvencao().getId() + ") " + mensagemConvencao.getConvencao().getDescricao() + " - Grupo Cidade: (" + mensagemConvencao.getGrupoCidade().getId() + ") " + mensagemConvencao.getGrupoCidade().getDescricao() + " - Mensagem Compensação: " + mensagemConvencao.getMensagemCompensacao() + " - Mensagem Contribuinte: " + mensagemConvencao.getMensagemContribuinte()); msgConfirma = "Mensagem atualizado com sucesso!"; GenericaMensagem.info("Sucesso", msgConfirma); } else { msgConfirma = "Ocorreu um erro ao atualizar!"; GenericaMensagem.warn("Erro", msgConfirma); } } else { msgConfirma = "Mensagem já existe!"; GenericaMensagem.warn("Erro", msgConfirma); } } } } catch (Exception e) { msgConfirma = e.getMessage(); GenericaMensagem.warn("Erro", msgConfirma); } // mensagemConvencao = new MensagemConvencao(); // idGrupo = 0; // idConvencao = 0; // idServico = 0; // idTipoServico = 0; return null; }