Commit b8a44539a00122a094b5f6dda88c707321718a56

Authored by Roberto Alencar
2 parents 916eb8b6 beafa92b

integrando o código para a versao 2.10.16

Showing 100 changed files with 5363 additions and 3967 deletions   Show diff stats
sql/GGAS_Ver-2.10.11_Seq-004.sql
... ... @@ -7,4 +7,4 @@ UPDATE RECURSO_SISTEMA SET RESI_DS = 'exibirInsercaoSetorComercial' WHERE RESI_D
7 7 UPDATE RECURSO_SISTEMA SET RESI_DS = 'inserirSetorComercial' WHERE RESI_DS LIKE '%inserirSetorComercial.do%';
8 8 UPDATE RECURSO_SISTEMA SET RESI_DS = 'exibirAtualizacaoSetorComercial' WHERE RESI_DS LIKE '%exibirAtualizacaoSetorComercial.do%';
9 9 UPDATE RECURSO_SISTEMA SET RESI_DS = 'atualizarSetorComercial' WHERE RESI_DS LIKE '%atualizarSetorComercial.do%';
10 10 -UPDATE RECURSO_SISTEMA SET RESI_DS = 'pesquisarSetoresComerciais' WHERE RESI_DS LIKE '%pesquisarSetoresComerciais.do%';
  11 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'pesquisarSetoresComerciais' WHERE RESI_DS LIKE '%pesquisarSetoresComerciais.do%';
11 12 \ No newline at end of file
... ...
sql/GGAS_Ver-2.10.16_Seq-001.sql 0 → 100644
... ... @@ -0,0 +1,16 @@
  1 +UPDATE MENU SET MENU_DS_URL = 'exibirPesquisaRota' WHERE MENU_DS_URL LIKE '%exibirPesquisaRota.do%';
  2 +
  3 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'exibirPesquisaRota' WHERE RESI_DS LIKE '%exibirPesquisaRota.do%';
  4 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'pesquisarRota' WHERE RESI_DS LIKE '%pesquisarRota.do%';
  5 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'exibirInclusaoRota' WHERE RESI_DS LIKE '%exibirInclusaoRota.do%';
  6 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'incluirRota' WHERE RESI_DS LIKE '%incluirRota.do%';
  7 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'associarPontosConsumoRota' WHERE RESI_DS LIKE '%associarPontosConsumoRota.do%';
  8 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'excluirRota' WHERE RESI_DS LIKE '%excluirRota.do%';
  9 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'exibirDetalhamentoRota' WHERE RESI_DS LIKE '%exibirDetalhamentoRota.do%';
  10 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'exibirAlteracaoRota' WHERE RESI_DS LIKE '%exibirAlteracaoRota.do%';
  11 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'associarPontosConsumoRotaAlterar' WHERE RESI_DS LIKE '%associarPontosConsumoRotaAlterar.do%';
  12 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'remanejarPontosConsumoRota' WHERE RESI_DS LIKE '%remanejarPontosConsumoRota.do%';
  13 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'carregarPontoConsumoRotaRemanejamento' WHERE RESI_DS LIKE '%carregarPontoConsumoRotaRemanejamento.do%';
  14 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'alterarRota' WHERE RESI_DS LIKE '%alterarRota.do%';
  15 +
  16 +commit;
... ...
sql/GGAS_Ver-2.10.16_Seq-002.sql 0 → 100644
... ... @@ -0,0 +1,12 @@
  1 +UPDATE MENU SET MENU_DS_URL = 'exibirPesquisaVazaoCorretor' WHERE MENU_DS_URL LIKE 'exibirPesquisaVazaoCorretor.do?acao=exibirPesquisaVazaoCorretor%tela=vazaoCorretor';
  2 +
  3 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'exibirPesquisaVazaoCorretor' WHERE RESI_DS LIKE 'exibirPesquisaVazaoCorretor.do';
  4 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'exibirDetalhamentoVazaoCorretor' WHERE RESI_DS LIKE 'exibirDetalhamentoVazaoCorretor.do';
  5 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'exibirInclusaoVazaoCorretor' WHERE RESI_DS LIKE 'exibirInclusaoVazaoCorretor.do';
  6 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'exibirAlteracaoVazaoCorretor' WHERE RESI_DS LIKE 'exibirAlteracaoVazaoCorretor.do';
  7 +
  8 +
  9 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'pesquisarVazaoCorretor' WHERE RESI_DS LIKE 'pesquisarVazaoCorretor.do';
  10 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'incluirVazaoCorretor' WHERE RESI_DS LIKE 'incluirVazaoCorretor.do';
  11 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'alterarVazaoCorretor' WHERE RESI_DS LIKE 'alterarVazaoCorretor.do';
  12 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'excluirVazaoCorretor' WHERE RESI_DS LIKE 'excluirVazaoCorretor.do';
0 13 \ No newline at end of file
... ...
sql/GGAS_Ver-2.10.16_Seq-003.sql 0 → 100644
... ... @@ -0,0 +1,3 @@
  1 +UPDATE MENU SET MENU_DS_URL = 'exibirPesquisaHistoricoVazaoCorretor' WHERE MENU_DS_URL LIKE 'exibirPesquisaHistoricoVazaoCorretor.do?acao=exibirPesquisaHistoricoVazaoCorretor';
  2 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'exibirPesquisaHistoricoVazaoCorretor' WHERE RESI_DS LIKE 'exibirPesquisaHistoricoVazaoCorretor.do';
  3 +UPDATE RECURSO_SISTEMA SET RESI_DS = 'pesquisarHistoricoVazaoCorretor' WHERE RESI_DS LIKE 'pesquisarHistoricoVazaoCorretor.do';
0 4 \ No newline at end of file
... ...
sql/GGAS_Ver-2.10.16_Seq-004.sql 0 → 100644
... ... @@ -0,0 +1,6 @@
  1 +UPDATE TABELA_COLUNA
  2 + SET TACO_IN_AUDITAVEL = 0, TACO_IN_USO = 0
  3 +WHERE TACO_NM_PROPRIEDADE LIKE 'volumePiscina';
  4 +
  5 +
  6 +COMMIT;
0 7 \ No newline at end of file
... ...
sql/GGAS_Ver-2.10.16_Seq-005.sql 0 → 100644
... ... @@ -0,0 +1,47 @@
  1 +ALTER TABLE ATIVIDADE_SISTEMA ADD MOSI_CD NUMBER(19,0);
  2 +
  3 +UPDATE ATIVIDADE_SISTEMA S
  4 + SET S.MOSI_CD =( SELECT O.MOSI_CD
  5 + FROM OPERACAO_SISTEMA O
  6 + WHERE O.OPSI_CD = S.OPSI_CD);
  7 +
  8 +
  9 +---Inserindo duas atividades no Cronograma
  10 +---TAREFA DE INTEGRAÇÃO
  11 +INSERT INTO ATIVIDADE_SISTEMA (
  12 + ATSI_CD,
  13 + ATSI_DS,
  14 + ATSI_NR_SEQUENCIA,
  15 + ATSI_NR_DIAS_DURACAO,
  16 + ATSI_IN_OBRIGATORIEDADE,
  17 + ATSI_IN_AGENDAMENTO,
  18 + ATSI_IN_EXTERNA,
  19 + ATSI_IN_DETALHA_ROTA,
  20 + ATSI_IN_USO,
  21 + ATSI_NR_VERSAO,
  22 + ATSI_IN_CRONOGRAMA,
  23 + ATSI_IN_ENVIA_EMAIL,
  24 + ATSI_DS_EMAIL_REMETENTE)
  25 +VALUES
  26 + (SQ_ATSI_CD.NEXTVAL, 'INTEGRAR CLIENTES', 3, 1, 0, 1, 0, 0, 1, 1, 1, 0, 'ti@sergas.com.br');
  27 +
  28 +---TAREFA DE ANÁLISE DE ANORMALIDADE DE FATURAMENTO
  29 +INSERT INTO ATIVIDADE_SISTEMA (
  30 + ATSI_CD,
  31 + ATSI_DS,
  32 + ATSI_NR_SEQUENCIA,
  33 + ATSI_NR_DIAS_DURACAO,
  34 + ATSI_IN_OBRIGATORIEDADE,
  35 + ATSI_IN_AGENDAMENTO,
  36 + ATSI_IN_EXTERNA,
  37 + ATSI_IN_DETALHA_ROTA,
  38 + ATSI_IN_USO,
  39 + ATSI_NR_VERSAO,
  40 + ATSI_IN_CRONOGRAMA,
  41 + ATSI_IN_ENVIA_EMAIL,
  42 + ATSI_DS_EMAIL_REMETENTE)
  43 +VALUES
  44 + (SQ_ATSI_CD.NEXTVAL, 'ANÁLISE DE ANORMALIDADE DE FATURAMENTO', 10, 1, 0, 1, 0, 0, 1, 1, 1, 0, 'ti@sergas.com.br');
  45 +
  46 +
  47 +COMMIT;
0 48 \ No newline at end of file
... ...
sql/GGAS_Ver-2.10.16_Seq-016.sql 0 → 100644
... ... @@ -0,0 +1,38 @@
  1 +INSERT INTO CONSUMO_ANORMALIDADE(
  2 + COAN_CD,
  3 + COAN_DS,
  4 + COAN_DS_ABREVIADO,
  5 + COAN_IN_BLOQUEIA_FATURAMENTO,
  6 + COAN_NR_VERSAO,
  7 + COAN_IN_USO)
  8 +VALUES
  9 + (SQ_COAN_CD.NEXTVAL,
  10 + 'PCS INEXISTENTE',
  11 + 'P.I.',
  12 + 1,
  13 + 1,
  14 + 1);
  15 +
  16 +COMMIT;
  17 +
  18 +INSERT INTO CONSTANTE_SISTEMA (COST_CD,
  19 + TABE_CD,
  20 + MOSI_CD,
  21 + COST_NM,
  22 + COST_DS,
  23 + COST_VL,
  24 + COST_CD_CLASSE,
  25 + COST_NR_VERSAO,
  26 + COST_IN_USO)
  27 +values
  28 + (SQ_COST_CD.NEXTVAL,
  29 + '37',
  30 + '2',
  31 + 'C_ANORMALIDADE_PCS_INEXISTENTE',
  32 + 'Indica a anormalidade de ausência de PCS',
  33 + (SELECT COAN_CD FROM CONSUMO_ANORMALIDADE WHERE COAN_DS LIKE 'PCS INEXISTENTE'),
  34 + null,
  35 + '1',
  36 + '1');
  37 +
  38 +COMMIT;
0 39 \ No newline at end of file
... ...
src/main/java/br/com/ggas/arrecadacao/documento/impl/ControladorDocumentoLayoutImpl.java
... ... @@ -313,39 +313,23 @@ class ControladorDocumentoLayoutImpl extends ControladorNegocioImpl implements C
313 313 private String verificaValorPadrao(Map<String, Object> dados, String campo, String formato, String valorPadrao,
314 314 int tamanho, DocumentoLayoutCampo documentoRemessaAtributo) {
315 315 String valor;
316   - SimpleDateFormat simpleDateFormat;
317   - NumberFormat numberFormat;
318 316 Object data;
319 317 Object numero;
320   - String numeroFormatado;
  318 +
321 319 if (!StringUtils.isEmpty(valorPadrao)) {
322 320 valor = valorPadrao;
323 321 } else {
324 322 if (dados.containsKey(campo)) {
325 323 if (DOCUMENTO_LAYOUT_TIPO_NUMERICO.equals(documentoRemessaAtributo.getTipo().getCodigo())) {
326 324 numero = dados.get(campo);
327   - if (numero instanceof Number) {
328   - if (numero instanceof BigDecimal) {
329   - numberFormat = NumberFormat.getCurrencyInstance(Constantes.LOCALE_PADRAO);
330   - numeroFormatado = numberFormat.format(numero).substring(LIMITE_NUMERO);
331   - } else {
332   - numeroFormatado = Util.formatarValorNumerico(numero);
333   - }
334   - numeroFormatado = numeroFormatado.replaceAll(Constantes.EXPRESSAO_REGULAR_PONTO, StringUtils.EMPTY);
335   - numeroFormatado = numeroFormatado.replaceAll(Constantes.EXPRESSAO_REGULAR_VIRGULA, StringUtils.EMPTY);
336   - valor = Util.adicionarZerosEsquerdaNumero(numeroFormatado, tamanho);
337   - } else {
338   - valor = String.valueOf(dados.get(campo));
339   - valor = Util.adicionarZerosEsquerdaNumero(valor, tamanho);
340   - }
  325 +
  326 + valor = this.colocarZerosAEsquerdaEmDoumentoLayoutTipoNumerico(numero, dados, campo, tamanho);
  327 +
341 328 } else if (DOCUMENTO_LAYOUT_TIPO_DATA.equals(documentoRemessaAtributo.getTipo().getCodigo())) {
342 329 data = dados.get(campo);
343   - if (data instanceof Date && !StringUtils.isEmpty(formato)) {
344   - simpleDateFormat = new SimpleDateFormat(formato);
345   - valor = simpleDateFormat.format((Date) data);
346   - } else {
347   - valor = null;
348   - }
  330 +
  331 + valor = this.formatarDataEmDocumentoLayoutTipoData(data, formato);
  332 +
349 333 } else {
350 334 valor = String.valueOf(dados.get(campo));
351 335 }
... ... @@ -355,6 +339,43 @@ class ControladorDocumentoLayoutImpl extends ControladorNegocioImpl implements C
355 339 }
356 340 return valor;
357 341 }
  342 +
  343 + private String colocarZerosAEsquerdaEmDoumentoLayoutTipoNumerico(Object numero, Map<String, Object> dados, String campo, int tamanho){
  344 + NumberFormat numberFormat;
  345 + String numeroFormatado;
  346 + String valor;
  347 + if (numero instanceof Number) {
  348 + if (numero instanceof BigDecimal) {
  349 + numberFormat = NumberFormat.getCurrencyInstance(Constantes.LOCALE_PADRAO);
  350 + numeroFormatado = numberFormat.format(numero).substring(LIMITE_NUMERO);
  351 + } else {
  352 + numeroFormatado = Util.formatarValorNumerico(numero);
  353 + }
  354 + numeroFormatado = numeroFormatado.replaceAll(Constantes.EXPRESSAO_REGULAR_PONTO, StringUtils.EMPTY);
  355 + numeroFormatado = numeroFormatado.replaceAll(Constantes.EXPRESSAO_REGULAR_VIRGULA, StringUtils.EMPTY);
  356 + valor = Util.adicionarZerosEsquerdaNumero(numeroFormatado, tamanho);
  357 + } else {
  358 + valor = String.valueOf(dados.get(campo));
  359 + valor = Util.adicionarZerosEsquerdaNumero(valor, tamanho);
  360 + }
  361 +
  362 + return valor;
  363 + }
  364 +
  365 + private String formatarDataEmDocumentoLayoutTipoData(Object data, String formato){
  366 +
  367 + String valor;
  368 + SimpleDateFormat simpleDateFormat;
  369 +
  370 + if (data instanceof Date && !StringUtils.isEmpty(formato)) {
  371 + simpleDateFormat = new SimpleDateFormat(formato);
  372 + valor = simpleDateFormat.format((Date) data);
  373 + } else {
  374 + valor = null;
  375 + }
  376 +
  377 + return valor;
  378 + }
358 379  
359 380 private int validaTamanhoDocumentoRemessaAtributo(int tamanhoDocumento, DocumentoLayoutCampo documentoRemessaAtributo) {
360 381 int tamanho = tamanhoDocumento;
... ...
src/main/java/br/com/ggas/arrecadacao/impl/ControladorArrecadacaoImpl.java
... ... @@ -134,6 +134,10 @@ import br.com.ggas.util.Util;
134 134 */
135 135 class ControladorArrecadacaoImpl extends ControladorNegocioImpl implements ControladorArrecadacao {
136 136  
  137 + private static final String FILTRO_POR_IMOVEL = "imovel";
  138 +
  139 + private static final String FILTRO_POR_CONTRATO = "contrato";
  140 +
137 141 private static final int PERCENTUAL = 100;
138 142  
139 143 private static final int DIVISOR = 6;
... ... @@ -2284,8 +2288,7 @@ class ControladorArrecadacaoImpl extends ControladorNegocioImpl implements Contr
2284 2288 if (documentoLayoutRegistro != null) {
2285 2289  
2286 2290 // Montar os dados no mapa
2287   - dados =
2288   - controladorDocumentoLayout.gerarDadosDocumentoRemessaCobranca(arrecadadorWriter.totalLinhas, null,
  2291 + dados = controladorDocumentoLayout.gerarDadosDocumentoRemessaCobranca(arrecadadorWriter.totalLinhas, null,
2289 2292 cobrancaBancariaMovimento, documentoLayoutRegistro, ServiceLocator.getInstancia());
2290 2293  
2291 2294 dados.put("sequencialArquivo", nsaRemessaNovo);
... ... @@ -2406,14 +2409,9 @@ class ControladorArrecadacaoImpl extends ControladorNegocioImpl implements Contr
2406 2409 dados.put("sequencialRegistro", arrecadadorWriter.totalLinhas);
2407 2410 dados.put("dataMulta", Util.adicionarDiasData(documentoCobranca.getDataVencimento(), 1));
2408 2411  
2409   - if (documentoCobranca.getItens() != null && documentoCobranca.getItens().iterator().next().getFaturaGeral() != null) {
2410   - Contrato contrato =
2411   - documentoCobranca.getItens().iterator().next().getFaturaGeral().getFaturaAtual().getContratoAtual();
2412   - if (contrato != null && contrato.getPercentualMulta() != null) {
2413   - dados.put("valorMulta", contrato.getPercentualMulta().multiply(new BigDecimal(PERCENTUAL)));
2414   - }
2415   - }
2416   -
  2412 + this.verificacaoDeMulta(documentoCobranca, dados);
  2413 +
  2414 +
2417 2415 // Gerar a linha
2418 2416 linha = controladorDocumentoLayout.gerarLinhaRemessa(dados, documentoLayoutRegistro);
2419 2417  
... ... @@ -2426,6 +2424,8 @@ class ControladorArrecadacaoImpl extends ControladorNegocioImpl implements Contr
2426 2424 }
2427 2425  
2428 2426 }
  2427 +
  2428 +
2429 2429  
2430 2430 // [Gerar a trilha 9 para todos os arquivos]
2431 2431 // **********************************************************************************
... ... @@ -2467,9 +2467,9 @@ class ControladorArrecadacaoImpl extends ControladorNegocioImpl implements Contr
2467 2467 arrecadadorWriter.bufferedWriter.close();
2468 2468 if (erro) {
2469 2469 File arquivoGerado = new File(arrecadadorWriter.caminhoArquivo);
2470   - if (arquivoGerado.exists()) {
2471   - arquivoGerado.delete();
2472   - }
  2470 +
  2471 + this.deletarArquivoGerado(arquivoGerado);
  2472 +
2473 2473 }
2474 2474 } catch (IOException e) {
2475 2475 LOG.error(e.getMessage(), e);
... ... @@ -2482,6 +2482,28 @@ class ControladorArrecadacaoImpl extends ControladorNegocioImpl implements Contr
2482 2482  
2483 2483 return logProcessamento;
2484 2484 }
  2485 +
  2486 + private void deletarArquivoGerado(File arquivoGerado){
  2487 +
  2488 + if (arquivoGerado.exists()) {
  2489 + arquivoGerado.delete();
  2490 + }
  2491 + }
  2492 +
  2493 + private void verificacaoDeMulta(DocumentoCobranca documentoCobranca,Map<String, Object> dados ){
  2494 +
  2495 +
  2496 + if (documentoCobranca.getItens() != null && documentoCobranca.getItens().iterator().next().getFaturaGeral() != null) {
  2497 +
  2498 +
  2499 + Contrato contrato = documentoCobranca.getItens().iterator().next().getFaturaGeral().getFaturaAtual().getContratoAtual();
  2500 + if (contrato != null && contrato.getPercentualMulta() != null) {
  2501 + dados.put("valorMulta", contrato.getPercentualMulta().multiply(new BigDecimal(PERCENTUAL)));
  2502 + }
  2503 + }
  2504 +
  2505 +
  2506 + }
2485 2507  
2486 2508 private void verificaSePossuiFaturaGeral(Map<String, Object> dados, DocumentoCobranca documentoCobranca) {
2487 2509 if (documentoCobranca.getItens() != null && documentoCobranca.getItens().iterator().next().getFaturaGeral() != null) {
... ... @@ -2937,10 +2959,10 @@ class ControladorArrecadacaoImpl extends ControladorNegocioImpl implements Contr
2937 2959 if (filtro.containsKey("cliente")) {
2938 2960 hql.append(" debitoAutomatico.clienteDebitoAutomatico.cliente.chavePrimaria = :chaveCliente ");
2939 2961 }
2940   - if (filtro.containsKey("contrato")) {
  2962 + if (filtro.containsKey(FILTRO_POR_CONTRATO)) {
2941 2963 hql.append(" and debitoAutomatico.clienteDebitoAutomatico.contrato.chavePrimaria = :chaveContrato ");
2942 2964 }
2943   - if (filtro.containsKey("imovel")) {
  2965 + if (filtro.containsKey(FILTRO_POR_IMOVEL)) {
2944 2966 hql.append(" and debitoAutomatico.clienteDebitoAutomatico.imovel.chavePrimaria = :chaveImovel ");
2945 2967 }
2946 2968 if (isApenasDebitoAutomatico != null && isApenasDebitoAutomatico) {
... ... @@ -2953,11 +2975,11 @@ class ControladorArrecadacaoImpl extends ControladorNegocioImpl implements Contr
2953 2975 if (filtro.containsKey("cliente")) {
2954 2976 query.setLong("chaveCliente", (Long) filtro.get("cliente"));
2955 2977 }
2956   - if (filtro.containsKey("contrato")) {
2957   - query.setLong("chaveContrato", (Long) filtro.get("contrato"));
  2978 + if (filtro.containsKey(FILTRO_POR_CONTRATO)) {
  2979 + query.setLong("chaveContrato", (Long) filtro.get(FILTRO_POR_CONTRATO));
2958 2980 }
2959   - if (filtro.containsKey("imovel")) {
2960   - query.setLong("chaveImovel", (Long) filtro.get("imovel"));
  2981 + if (filtro.containsKey(FILTRO_POR_IMOVEL)) {
  2982 + query.setLong("chaveImovel", (Long) filtro.get(FILTRO_POR_IMOVEL));
2961 2983 }
2962 2984  
2963 2985 return (ClienteDebitoAutomatico) query.uniqueResult();
... ...
src/main/java/br/com/ggas/atendimento/chamado/apresentacao/ChamadoAction.java
... ... @@ -1705,11 +1705,7 @@ public class ChamadoAction extends GenericAction {
1705 1705  
1706 1706 String enderecoFormatado = contratoPontoConsumo.getPontoConsumo().getEnderecoFormatado();
1707 1707  
1708   - if(enderecoFormatado != null && !enderecoFormatado.isEmpty()) {
1709   - clienteVOAutoComplete.setEndereco("\r\n Endereço Consumo : " + enderecoFormatado + "\r\n");
1710   - } else {
1711   - clienteVOAutoComplete.setEndereco(" ");
1712   - }
  1708 + this.adicionarEnderecoEmCliente(clienteVOAutoComplete, enderecoFormatado);
1713 1709  
1714 1710 Date dateVigencia = contrato.getDataAssinatura();
1715 1711 SimpleDateFormat df = new SimpleDateFormat(Constantes.FORMATO_DATA_BR);
... ... @@ -1749,6 +1745,21 @@ public class ChamadoAction extends GenericAction {
1749 1745 }
1750 1746  
1751 1747 /**
  1748 + * Método responsável por adicionar endereço do consumo no cliente.
  1749 + *
  1750 + * @param clienteVOAutoComplete - {@link ClienteVOAutoComplete}
  1751 + * @param enderecoFormatado - {@link String}
  1752 + */
  1753 + private void adicionarEnderecoEmCliente(ClienteVOAutoComplete clienteVOAutoComplete, String enderecoFormatado){
  1754 +
  1755 + if(enderecoFormatado != null && !enderecoFormatado.isEmpty()) {
  1756 + clienteVOAutoComplete.setEndereco("\r\n Endereço Consumo : " + enderecoFormatado + "\r\n");
  1757 + } else {
  1758 + clienteVOAutoComplete.setEndereco(" ");
  1759 + }
  1760 + }
  1761 +
  1762 + /**
1752 1763 *
1753 1764 * @param clienteVOAutoComplete
1754 1765 * @param df
... ... @@ -4656,28 +4667,18 @@ public class ChamadoAction extends GenericAction {
4656 4667 mapaCampos = mapaCamposListaAlteradosSessao.get(chavePrimariaListaCliente);
4657 4668 listaNomeCampo = checkBoxMarcadosListaMapa.get(chavePrimariaListaCliente);
4658 4669  
4659   - if(mapaCamposListaAlteradosSessao.containsKey(chavePrimariaListaCliente)) {
  4670 + if(mapaCamposListaAlteradosSessao.containsKey(chavePrimariaListaCliente)){
4660 4671  
4661 4672 Collection<String> listaChaves = mapaCampos.keySet();
4662 4673  
4663   - if(listaChaves.contains(nomeCampo[0])) {
4664   - if("false".equalsIgnoreCase(valorChecked)) {
  4674 + if (listaChaves.contains(nomeCampo[0])) {
4665 4675  
4666   - mapaCampos.remove(nomeCampo[0]);
4667   - listaNomeCampo.remove(nomeCampo[0]);
  4676 + this.verificaERemoveNomeCampoEChavePrimaria(valorChecked, mapaCampos, listaNomeCampo, nomeCampo,
  4677 + mapaCamposListaAlteradosSessao, chavePrimariaListaCliente);
4668 4678  
4669   - if(mapaCampos.isEmpty()) {
4670   - mapaCamposListaAlteradosSessao.remove(chavePrimariaListaCliente);
4671   - }
4672   - }
4673 4679 } else {
4674   - if("true".equalsIgnoreCase(valorChecked)) {
4675   - mapaCampos.put(nomeCampo[0], valor);
4676   - mapaCamposListaAlteradosSessao.put(chavePrimariaListaCliente, mapaCampos);
4677   -
4678   - listaNomeCampo.add(nomeCampo[0]);
4679   - checkBoxMarcadosListaMapa.put(chavePrimariaListaCliente, listaNomeCampo);
4680   - }
  4680 + this.verificaEAdicionaValoresCampos(valorChecked, mapaCampos, listaNomeCampo, nomeCampo, mapaCamposListaAlteradosSessao,
  4681 + chavePrimariaListaCliente, valor, checkBoxMarcadosListaMapa);
4681 4682 }
4682 4683 } else {
4683 4684 if("true".equalsIgnoreCase(valorChecked)) {
... ... @@ -4729,6 +4730,34 @@ public class ChamadoAction extends GenericAction {
4729 4730 return (Map<Long, List<String>>) sessao.getAttribute(CHECK_BOX_MARCADOS_LISTA_MAPA + tipoMapa);
4730 4731 }
4731 4732  
  4733 + private void verificaERemoveNomeCampoEChavePrimaria(String valorChecked, Map<String, Object> mapaCampos, List<String> listaNomeCampo,
  4734 + String[] nomeCampo, Map<Long, Map<String, Object>> mapaCamposListaAlteradosSessao, Long chavePrimariaListaCliente) {
  4735 +
  4736 + if ("false".equalsIgnoreCase(valorChecked)) {
  4737 +
  4738 + mapaCampos.remove(nomeCampo[0]);
  4739 + listaNomeCampo.remove(nomeCampo[0]);
  4740 +
  4741 + if (mapaCampos.isEmpty()) {
  4742 + mapaCamposListaAlteradosSessao.remove(chavePrimariaListaCliente);
  4743 + }
  4744 + }
  4745 + }
  4746 +
  4747 + private void verificaEAdicionaValoresCampos(String valorChecked, Map<String, Object> mapaCampos, List<String> listaNomeCampo,
  4748 + String[] nomeCampo, Map<Long, Map<String, Object>> mapaCamposListaAlteradosSessao, Long chavePrimariaListaCliente, String valor,
  4749 + Map<Long, List<String>> checkBoxMarcadosListaMapa) {
  4750 +
  4751 + if ("true".equalsIgnoreCase(valorChecked)) {
  4752 + mapaCampos.put(nomeCampo[0], valor);
  4753 + mapaCamposListaAlteradosSessao.put(chavePrimariaListaCliente, mapaCampos);
  4754 +
  4755 + listaNomeCampo.add(nomeCampo[0]);
  4756 + checkBoxMarcadosListaMapa.put(chavePrimariaListaCliente, listaNomeCampo);
  4757 + }
  4758 + }
  4759 +
  4760 +
4732 4761 /**
4733 4762 * Preencher lista mapa cliente.
4734 4763 *
... ... @@ -4786,18 +4815,10 @@ public class ChamadoAction extends GenericAction {
4786 4815 for (Iterator iterator = listaObjetos.iterator(); iterator.hasNext();) {
4787 4816  
4788 4817 EntidadeNegocio obj = (EntidadeNegocio) iterator.next();
4789   -
4790   - if(chavePrimaria != null && obj.getChavePrimaria() == chavePrimaria) {
4791   -
4792   - Map<String, Object> mapaCampos = entry.getValue();
4793   -
4794   - this.popularCamposObjeto(mapaCampos, obj);
4795   - }
4796   -
4797   - if (listaChavesPrimariasRemover != null && !listaChavesPrimariasRemover.isEmpty()
4798   - && listaChavesPrimariasRemover.contains(obj.getChavePrimaria())) {
4799   - iterator.remove();
4800   - }
  4818 +
  4819 + this.popularCamposObjeto(chavePrimaria, obj, entry);
  4820 +
  4821 + this.removerItemDeListaDeChavesPrimarias(listaChavesPrimariasRemover, obj, iterator);
4801 4822  
4802 4823 }
4803 4824  
... ... @@ -4839,6 +4860,8 @@ public class ChamadoAction extends GenericAction {
4839 4860  
4840 4861 }
4841 4862  
  4863 +
  4864 +
4842 4865 /**
4843 4866 *
4844 4867 * @param listaObjetosContatoInserir
... ... @@ -4859,6 +4882,7 @@ public class ChamadoAction extends GenericAction {
4859 4882 }
4860 4883 }
4861 4884  
  4885 +
4862 4886 /**
4863 4887 *
4864 4888 * @param listaObjetosFoneInserir
... ... @@ -4936,20 +4960,10 @@ public class ChamadoAction extends GenericAction {
4936 4960  
4937 4961 ClienteAnexo clienteAnexo = (ClienteAnexo) iterator.next();
4938 4962  
4939   - if(chavePrimaria != null && clienteAnexo.getChavePrimaria() == chavePrimaria) {
4940   -
4941   - clienteAnexo.setAbaAnexo(chamadoClienteAnexo.getAbaAnexo());
4942   - clienteAnexo.setDescricaoAnexo(chamadoClienteAnexo.getDescricaoAnexo());
  4963 + this.popularClienteAnexo(chavePrimaria, clienteAnexo, chamadoClienteAnexo);
4943 4964  
4944   - clienteAnexo.setDocumentoAnexo(chamadoClienteAnexo.getDocumentoAnexo());
4945   - clienteAnexo.setTipoAnexo(chamadoClienteAnexo.getTipoAnexo());
4946   -
4947   - }
4948   -
4949   - if (listaRegistrosExcluidosClienteAnexo != null && !listaRegistrosExcluidosClienteAnexo.isEmpty()
4950   - && listaRegistrosExcluidosClienteAnexo.contains(clienteAnexo.getChavePrimaria())) {
4951   - iterator.remove();
4952   - }
  4965 + this.removerItemDeListaDeChavesPrimarias(listaRegistrosExcluidosClienteAnexo, clienteAnexo, iterator);
  4966 +
4953 4967  
4954 4968 }
4955 4969  
... ... @@ -4978,6 +4992,14 @@ public class ChamadoAction extends GenericAction {
4978 4992 }
4979 4993 }
4980 4994 }
  4995 +
  4996 +
  4997 + private void removerItemDeListaDeChavesPrimarias(List<Long> listaChavesPrimariasRemover, EntidadeNegocio obj, Iterator iterator) {
  4998 + if (listaChavesPrimariasRemover != null && !listaChavesPrimariasRemover.isEmpty()
  4999 + && listaChavesPrimariasRemover.contains(obj.getChavePrimaria())) {
  5000 + iterator.remove();
  5001 + }
  5002 + }
4981 5003  
4982 5004 /**
4983 5005 * Popular cliente anexo.
... ... @@ -4990,13 +5012,25 @@ public class ChamadoAction extends GenericAction {
4990 5012  
4991 5013 ClienteAnexo clienteAnexo = (ClienteAnexo) controladorCliente.criarClienteAnexo();
4992 5014  
  5015 + this.popularClienteAnexo(clienteAnexo, chamadoClienteAnexo);
  5016 +
  5017 + return clienteAnexo;
  5018 + }
  5019 +
  5020 + private void popularClienteAnexo(Long chavePrimaria, ClienteAnexo clienteAnexo, ChamadoClienteAnexo chamadoClienteAnexo ) {
  5021 +
  5022 + if(chavePrimaria != null && clienteAnexo.getChavePrimaria() == chavePrimaria) {
  5023 + this.popularClienteAnexo(clienteAnexo, chamadoClienteAnexo);
  5024 + }
  5025 + }
  5026 +
  5027 + private void popularClienteAnexo(ClienteAnexo clienteAnexo, ChamadoClienteAnexo chamadoClienteAnexo ) {
  5028 +
4993 5029 clienteAnexo.setAbaAnexo(chamadoClienteAnexo.getAbaAnexo());
4994 5030 clienteAnexo.setDescricaoAnexo(chamadoClienteAnexo.getDescricaoAnexo());
4995 5031  
4996 5032 clienteAnexo.setDocumentoAnexo(chamadoClienteAnexo.getDocumentoAnexo());
4997 5033 clienteAnexo.setTipoAnexo(chamadoClienteAnexo.getTipoAnexo());
4998   -
4999   - return clienteAnexo;
5000 5034 }
5001 5035  
5002 5036 /**
... ... @@ -5091,6 +5125,17 @@ public class ChamadoAction extends GenericAction {
5091 5125 return model;
5092 5126 }
5093 5127  
  5128 + private void popularCamposObjeto(Long chavePrimaria, EntidadeNegocio entidadeNegocio,
  5129 + Entry<Long, Map<String, Object>> entry) throws GGASException, ReflectiveOperationException {
  5130 +
  5131 + if(chavePrimaria != null && entidadeNegocio.getChavePrimaria() == chavePrimaria) {
  5132 +
  5133 + Map<String, Object> mapaCampos = entry.getValue();
  5134 +
  5135 + this.popularCamposObjeto(mapaCampos, entidadeNegocio);
  5136 + }
  5137 +
  5138 + }
5094 5139 /**
5095 5140 * Popular campos objeto.
5096 5141 *
... ... @@ -5130,26 +5175,9 @@ public class ChamadoAction extends GenericAction {
5130 5175 Object valor = null;
5131 5176  
5132 5177 if(!(field.getType().isPrimitive() || Util.isWrapperType(field.getType()))) {
5133   - if(field.getType().isInterface()) {
5134   - String nomeClasse = field.getType().getPackage() + ".impl." + field.getType().getSimpleName() + "Impl";
5135   - String[] nomeClasseFormatado = nomeClasse.split("package ");
5136   - Class<?> classePai = Class.forName(nomeClasseFormatado[1]);
5137   -
5138   - Object objPai = classePai.newInstance();
5139   - Method m = null;
5140   - try {
5141   -
5142   - m = classePai.getSuperclass().getSuperclass().getMethod(Util.montarNomeSet("chavePrimaria"), long.class);
5143   - } catch (Exception e) {
5144   - LOG.error(e.getMessage(), e);
5145   - m = classePai.getSuperclass().getMethod(Util.montarNomeSet(CHAVE_PRIMARIA), long.class);
5146   - }
5147   -
5148   - m.invoke(objPai, Long.valueOf((String) entry.getValue()));
5149   -
5150   - valor = objPai;
5151   -
5152   - }
  5178 +
  5179 + valor = this.adicionandoChavePrimariaEmCampoDeEntidade(field, entry);
  5180 +
5153 5181 } else {
5154 5182 valor = entry.getValue();
5155 5183 valor = Util.converterValores(field.getType(), valor);
... ... @@ -5171,6 +5199,32 @@ public class ChamadoAction extends GenericAction {
5171 5199 }
5172 5200  
5173 5201 }
  5202 +
  5203 + private Object adicionandoChavePrimariaEmCampoDeEntidade(Field field, Entry<String, Object> entry) throws ClassNotFoundException,
  5204 + InstantiationException, IllegalAccessException, NoSuchMethodException, InvocationTargetException {
  5205 + Object objPai = null;
  5206 +
  5207 + if (field.getType().isInterface()) {
  5208 + String nomeClasse = field.getType().getPackage() + ".impl." + field.getType().getSimpleName() + "Impl";
  5209 + String[] nomeClasseFormatado = nomeClasse.split("package ");
  5210 + Class<?> classePai = Class.forName(nomeClasseFormatado[1]);
  5211 +
  5212 + objPai = classePai.newInstance();
  5213 + Method m = null;
  5214 + try {
  5215 +
  5216 + m = classePai.getSuperclass().getSuperclass().getMethod(Util.montarNomeSet("chavePrimaria"), long.class);
  5217 + } catch (Exception e) {
  5218 + LOG.error(e.getMessage(), e);
  5219 + m = classePai.getSuperclass().getMethod(Util.montarNomeSet(CHAVE_PRIMARIA), long.class);
  5220 + }
  5221 +
  5222 + m.invoke(objPai, Long.valueOf((String) entry.getValue()));
  5223 +
  5224 + }
  5225 +
  5226 + return objPai;
  5227 + }
5174 5228  
5175 5229 /**
5176 5230 * Exibir dados aba documentacao.
... ...
src/main/java/br/com/ggas/atendimento/questionario/repositorio/RepositorioQuestionario.java
... ... @@ -191,17 +191,19 @@ public class RepositorioQuestionario extends RepositorioGenerico {
191 191 */
192 192 public boolean exiteQuestionarioParaTipoServicoOuSegmento(Questionario questionario) {
193 193  
  194 + boolean retorno = false;
  195 +
194 196 Criteria criteria = createCriteria(getClasseEntidade());
195   - if(questionario.getTipoServico() != null && questionario.getSegmento() != null) {
  197 + if (questionario.getTipoServico() != null && questionario.getSegmento() != null) {
196 198 criteria.add(Restrictions.eq("tipoServico.chavePrimaria", questionario.getTipoServico().getChavePrimaria()));
197 199 criteria.add(Restrictions.eq("segmento.chavePrimaria", questionario.getSegmento().getChavePrimaria()));
198 200 }
199   - if(questionario.getTipoServico() != null && questionario.getSegmento() == null) {
  201 + if (questionario.getTipoServico() != null && questionario.getSegmento() == null) {
200 202 criteria.add(Restrictions.eq("tipoServico.chavePrimaria", questionario.getTipoServico().getChavePrimaria()));
201 203 criteria.createAlias("segmento", "segmento", Criteria.LEFT_JOIN);
202 204 criteria.add(Restrictions.isNull("segmento.chavePrimaria"));
203 205 }
204   - if(questionario.getTipoServico() == null && questionario.getSegmento() == null) {
  206 + if (questionario.getTipoServico() == null && questionario.getSegmento() == null) {
205 207 criteria.add(Restrictions.isNull("tipoServico.chavePrimaria"));
206 208 criteria.createAlias("segmento", "segmento", Criteria.LEFT_JOIN);
207 209 criteria.add(Restrictions.isNull("segmento.chavePrimaria"));
... ... @@ -209,8 +211,11 @@ public class RepositorioQuestionario extends RepositorioGenerico {
209 211  
210 212 criteria.add(Restrictions.eq(EntidadeNegocio.ATRIBUTO_HABILITADO, true));
211 213 Questionario quest = (Questionario) criteria.uniqueResult();
  214 + if (quest != null && questionario.getChavePrimaria() != quest.getChavePrimaria()) {
  215 + retorno = true;
  216 + }
212 217  
213   - return (quest != null && questionario.getChavePrimaria() != quest.getChavePrimaria());
  218 + return retorno;
214 219 }
215 220  
216 221 /**
... ...
src/main/java/br/com/ggas/atendimento/servicoautorizacao/apresentacao/ServicoAutorizacaoAction.java
... ... @@ -45,6 +45,7 @@ package br.com.ggas.atendimento.servicoautorizacao.apresentacao;
45 45 import static br.com.ggas.util.Constantes.ATRIBUTO_USUARIO_LOGADO;
46 46  
47 47 import java.io.IOException;
  48 +import java.net.UnknownHostException;
48 49 import java.text.ParseException;
49 50 import java.text.SimpleDateFormat;
50 51 import java.util.ArrayList;
... ... @@ -785,17 +786,7 @@ public class ServicoAutorizacaoAction extends GenericAction {
785 786 sessao.setAttribute(INDICADOR_ATUALIZACAO_CADASTRAL, Boolean.TRUE);
786 787 model = escolherTelaAtualizacaoCadastral(servicoAutorizacao);
787 788  
788   - if(model == null) {
789   - model = new ModelAndView(FORWARD_PESQUISAR_SERVICO_AUTORIZACAO);
790   - controladorServicoAutorizacao.encerrarServicoAutorizacao(servicoAutorizacao, listaMateriais, listaEquipamentos,
791   - Constantes.C_STATUS_SERV_AUT_ENCERRADO, dados);
792   - mensagemSucesso(model, Constantes.SUCESSO_ENTIDADE_ENCERRADA,
793   - GenericAction.obterMensagem(Constantes.SERVICO_AUTORIZACAO));
794   - removerDadosSessao(sessao);
795   - } else {
796   - sessao.setAttribute(URL_RETORNO_ATUALIZACAO_CASTRAL, "encerrarServicoAutorizacao");
797   - }
798   -
  789 + model = this.encerrarServicoDeAutorizacao(model, servicoAutorizacao, listaMateriais, sessao, listaEquipamentos, dados);
799 790 } else {
800 791 model = new ModelAndView("forward:/exibirPesquisaServicoAutorizacao");
801 792 controladorServicoAutorizacao.encerrarServicoAutorizacao(servicoAutorizacao, listaMateriais, listaEquipamentos,
... ... @@ -819,6 +810,26 @@ public class ServicoAutorizacaoAction extends GenericAction {
819 810 return model;
820 811 }
821 812  
  813 + private ModelAndView encerrarServicoDeAutorizacao(ModelAndView modelParam, ServicoAutorizacao servicoAutorizacao,
  814 + Collection<ServicoAutorizacaoMaterial> listaMateriais, HttpSession sessao,
  815 + Collection<ServicoAutorizacaoEquipamento> listaEquipamentos, Map<String, Object> dados)
  816 + throws UnknownHostException, GGASException {
  817 +
  818 + ModelAndView model = modelParam;
  819 +
  820 + if (model == null) {
  821 + model = new ModelAndView(FORWARD_PESQUISAR_SERVICO_AUTORIZACAO);
  822 + controladorServicoAutorizacao.encerrarServicoAutorizacao(servicoAutorizacao, listaMateriais, listaEquipamentos,
  823 + Constantes.C_STATUS_SERV_AUT_ENCERRADO, dados);
  824 + mensagemSucesso(model, Constantes.SUCESSO_ENTIDADE_ENCERRADA, GenericAction.obterMensagem(Constantes.SERVICO_AUTORIZACAO));
  825 + removerDadosSessao(sessao);
  826 + } else {
  827 + sessao.setAttribute(URL_RETORNO_ATUALIZACAO_CASTRAL, "encerrarServicoAutorizacao");
  828 + }
  829 +
  830 + return model;
  831 + }
  832 +
822 833 /**
823 834 * Exibir executar servico autorizacao.
824 835 *
... ... @@ -996,8 +1007,6 @@ public class ServicoAutorizacaoAction extends GenericAction {
996 1007 * @param servicoAutorizacao
997 1008 * the servico autorizacao
998 1009 *
999   - * @param sessao
1000   - * the sessao
1001 1010 * @return the model and view
1002 1011 */
1003 1012 private ModelAndView escolherTelaAtualizacaoCadastral(ServicoAutorizacao servicoAutorizacao) {
... ...
src/main/java/br/com/ggas/atendimento/servicoautorizacao/negocio/impl/ControladorServicoAutorizacaoImpl.java
... ... @@ -868,16 +868,13 @@ public class ControladorServicoAutorizacaoImpl implements ControladorServicoAuto
868 868 dadosChamado.put("dataInicioCredito", Calendar.getInstance().getTime());
869 869  
870 870 DadosGeraisParcelas dadosGerais = controladorCreditoDebito.gerarParcelasCreditoDebito(dadosChamado, true);
871   -
  871 +
872 872 controladorCreditoDebito.salvarCreditoDebitoARealizar(dadosChamado, dadosGerais);
873 873 } else {
874 874  
875 875 FaturaImpl notaDebitoCredito = new FaturaImpl();
876 876  
877   - if (servicoAutorizacao.getChamado().getPontoConsumo() != null) {
878   - controladorFatura
879   - .validarPontoConsumoSelecionado(servicoAutorizacao.getChamado().getPontoConsumo().getChavePrimaria());
880   - }
  877 + this.validaPontoDeConsumoSelecionado(servicoAutorizacao);
881 878  
882 879 Long idTipoDocumento = Long.valueOf(
883 880 controladorConstanteSistema.obterValorConstanteSistemaPorCodigo(Constantes.C_TIPO_DOCUMENTO_NOTA_DEBITO));
... ... @@ -905,22 +902,19 @@ public class ControladorServicoAutorizacaoImpl implements ControladorServicoAuto
905 902 notaDebitoCredito.setDataVencimento(dataVencimento);
906 903 notaDebitoCredito.setHabilitado(Boolean.TRUE);
907 904 notaDebitoCredito.setPontoConsumo(servicoAutorizacao.getChamado().getPontoConsumo());
908   - if (servicoAutorizacao.getChamado().getPontoConsumo() != null) {
909   - notaDebitoCredito.setSegmento(servicoAutorizacao.getChamado().getPontoConsumo().getSegmento());
910   - }
  905 +
  906 + this.adcionandoSegmentoNotaDebito(servicoAutorizacao, notaDebitoCredito);
  907 +
911 908 notaDebitoCredito.setValorConciliado(BigDecimal.ZERO);
912 909  
913 910 BigDecimal valorReferencia =
914 911 servicoAutorizacao.getChamado().getChamadoAssunto().getRubricaDebito().getValorReferencia();
915 912 BigDecimal valorMaximo = servicoAutorizacao.getChamado().getChamadoAssunto().getRubricaDebito().getValorMaximo();
916   - if (valorReferencia != null) {
917   - notaDebitoCredito.setValorTotal(valorReferencia);
918   - } else if (valorMaximo != null) {
919   - notaDebitoCredito.setValorTotal(valorMaximo);
920   - } else {
921   - throw new NegocioException(Constantes.ERRO_NEGOCIO_SERVICO_AUTORIZACAO_RUBRICA_DEBITO);
922   - }
  913 +
  914 + this.atribuiValoresANotaDeDebito(valorReferencia, valorMaximo, notaDebitoCredito);
923 915  
  916 +
  917 +
924 918 notaDebitoCredito.setSituacaoPagamento(situacaoPagamento);
925 919 notaDebitoCredito.setTipoDocumento(tipoDocumento);
926 920 notaDebitoCredito.setProvisaoDevedoresDuvidosos(Boolean.FALSE);
... ... @@ -964,6 +958,79 @@ public class ControladorServicoAutorizacaoImpl implements ControladorServicoAuto
964 958  
965 959 this.verificaEncerramentoChamado(servicoAutorizacao, dados);
966 960 }
  961 +
  962 + private void atribuiValoresANotaDeDebito(BigDecimal valorReferencia, BigDecimal valorMaximo, FaturaImpl notaDebitoCredito)
  963 + throws NegocioException {
  964 +
  965 + if (valorReferencia != null) {
  966 + notaDebitoCredito.setValorTotal(valorReferencia);
  967 + } else if (valorMaximo != null) {
  968 + notaDebitoCredito.setValorTotal(valorMaximo);
  969 + } else {
  970 + throw new NegocioException(Constantes.ERRO_NEGOCIO_SERVICO_AUTORIZACAO_RUBRICA_DEBITO);
  971 + }
  972 + }
  973 +
  974 + private void validaPontoDeConsumoSelecionado(ServicoAutorizacao servicoAutorizacao) throws NegocioException{
  975 +
  976 + if (servicoAutorizacao.getChamado().getPontoConsumo() != null) {
  977 + controladorFatura
  978 + .validarPontoConsumoSelecionado(servicoAutorizacao.getChamado().getPontoConsumo().getChavePrimaria());
  979 + }
  980 +
  981 + }
  982 +
  983 + private void adcionandoSegmentoNotaDebito(ServicoAutorizacao servicoAutorizacao, FaturaImpl notaDebitoCredito){
  984 + if (servicoAutorizacao.getChamado().getPontoConsumo() != null) {
  985 + notaDebitoCredito.setSegmento(servicoAutorizacao.getChamado().getPontoConsumo().getSegmento());
  986 + }
  987 + }
  988 +
  989 + private void adicionaInformacoesSobreValorEmDadosChamado(ServicoAutorizacao servicoAutorizacao, Map<String, Object> dadosChamado)
  990 + throws GGASException {
  991 +
  992 + if (servicoAutorizacao.getChamado().getChamadoAssunto().getRubricaDebito() != null) {
  993 +
  994 + if (servicoAutorizacao.getChamado().getChamadoAssunto().getRubricaDebito().getValorReferencia() != null && servicoAutorizacao
  995 + .getChamado().getChamadoAssunto().getRubricaDebito().getValorReferencia().compareTo(BigDecimal.ZERO) > 0) {
  996 +
  997 + servicoAutorizacao.getChamado().getChamadoAssunto().getRubricaDebito().getValorReferencia();
  998 +
  999 + String valor = Util.converterCampoValorDecimalParaString("Valor",
  1000 + servicoAutorizacao.getChamado().getChamadoAssunto().getRubricaDebito().getValorReferencia(),
  1001 + Constantes.LOCALE_PADRAO);
  1002 +
  1003 + BigDecimal valorDecimal = Util.converterCampoStringParaValorBigDecimal("Valor", valor, Constantes.FORMATO_VALOR_NUMERO,
  1004 + Constantes.LOCALE_PADRAO);
  1005 +
  1006 + dadosChamado.put("valorHidden", valorDecimal);
  1007 +
  1008 + dadosChamado.put("idRubrica", servicoAutorizacao.getChamado().getChamadoAssunto().getRubricaDebito().getChavePrimaria());
  1009 +
  1010 + dadosChamado.put("valorUnitarioHidden", valorDecimal);
  1011 +
  1012 + dadosChamado.put("valor", valorDecimal);
  1013 +
  1014 + } else {
  1015 + throw new NegocioException(Constantes.ERRO_NEGOCIO_SERVICO_AUTORIZACAO_RUBRICA_DEBITO);
  1016 + }
  1017 + }
  1018 +
  1019 + }
  1020 +
  1021 + private void adicionarDadosChavePrimariaDeChamado(ServicoAutorizacao servicoAutorizacao, Map<String, Object> dadosChamado ){
  1022 + if ((servicoAutorizacao.getChamado().getCliente() != null)
  1023 + && (servicoAutorizacao.getChamado().getCliente().getChavePrimaria() > 0)) {
  1024 + dadosChamado.put("idCliente", servicoAutorizacao.getChamado().getCliente().getChavePrimaria());
  1025 + }
  1026 +
  1027 + if ((servicoAutorizacao.getChamado().getPontoConsumo() != null)
  1028 + && (servicoAutorizacao.getChamado().getPontoConsumo().getChavePrimaria() > 0)) {
  1029 + dadosChamado.put("idPontoConsumo", servicoAutorizacao.getChamado().getPontoConsumo().getChavePrimaria());
  1030 + }
  1031 +
  1032 +
  1033 + }
967 1034  
968 1035 /**
969 1036 * Verifica se o chamado da autorização de serviço deve ser encerrado.
... ... @@ -1347,18 +1414,12 @@ public class ControladorServicoAutorizacaoImpl implements ControladorServicoAuto
1347 1414 servicoAutorizacao.setDataPrevisaoEncerramento(new Date(obterDataPrevisao(acao.getServicoTipo())));
1348 1415 servicoAutorizacao.setEquipe(acao.getEquipe());
1349 1416 Cliente cliente = controladorCliente.obterClientePorPontoConsumo(pontoConsumo.getChavePrimaria());
1350   - if (cliente != null) {
1351   - servicoAutorizacao.setCliente(cliente);
1352   - }
1353   - ContratoPontoConsumo contratoPontoConsumo = controladorContrato.obterContratoAtivoPontoConsumo(pontoConsumo);
1354   - Contrato contrato = null;
1355   - if (contratoPontoConsumo != null) {
1356   - contrato = contratoPontoConsumo.getContrato();
1357   - }
1358   - if (contrato != null) {
1359   - servicoAutorizacao.setContrato(contrato);
1360   - }
  1417 + this.adicionarClienteAoServicoAutorizacao(cliente, servicoAutorizacao);
1361 1418  
  1419 + ContratoPontoConsumo contratoPontoConsumo = controladorContrato.obterContratoAtivoPontoConsumo(pontoConsumo);
  1420 +
  1421 + this.adicionarContratoPontoDeConsumoEmServicoAutorizacao(servicoAutorizacao, contratoPontoConsumo);
  1422 +
1362 1423 servicoAutorizacao.getServicoAutorizacaoMaterial()
1363 1424 .addAll(converterListaMaterial(acao.getServicoTipo().getListaMateriais(), servicoAutorizacao));
1364 1425  
... ... @@ -1420,14 +1481,26 @@ public class ControladorServicoAutorizacaoImpl implements ControladorServicoAuto
1420 1481 }
1421 1482 }
1422 1483  
1423   - /**
1424   - * Converter lista material.
1425   - *
1426   - * @param materialList the material list
1427   - * @param servicoAutorizacao the servico autorizacao
1428   - * @return the list
1429   - */
1430   - public List<ServicoAutorizacaoMaterial> converterListaMaterial(Collection<ServicoTipoMaterial> materialList,
  1484 +
  1485 + private void adicionarContratoPontoDeConsumoEmServicoAutorizacao(ServicoAutorizacao servicoAutorizacao,
  1486 + ContratoPontoConsumo contratoPontoConsumo) {
  1487 + Contrato contrato = null;
  1488 +
  1489 + if (contratoPontoConsumo != null) {
  1490 + contrato = contratoPontoConsumo.getContrato();
  1491 + }
  1492 + if (contrato != null) {
  1493 + servicoAutorizacao.setContrato(contrato);
  1494 + }
  1495 + }
  1496 +
  1497 + private void adicionarClienteAoServicoAutorizacao(Cliente cliente, ServicoAutorizacao servicoAutorizacao){
  1498 + if (cliente != null) {
  1499 + servicoAutorizacao.setCliente(cliente);
  1500 + }
  1501 + }
  1502 +
  1503 + private List<ServicoAutorizacaoMaterial> converterListaMaterial(Collection<ServicoTipoMaterial> materialList,
1431 1504 ServicoAutorizacao servicoAutorizacao) {
1432 1505  
1433 1506 List<ServicoAutorizacaoMaterial> servicoAutorizacaoMaterialList = new ArrayList<ServicoAutorizacaoMaterial>();
... ... @@ -1445,7 +1518,7 @@ public class ControladorServicoAutorizacaoImpl implements ControladorServicoAuto
1445 1518 }
1446 1519 return servicoAutorizacaoMaterialList;
1447 1520 }
1448   -
  1521 +
1449 1522 /**
1450 1523 * Converter lista equipamento.
1451 1524 *
... ... @@ -1493,7 +1566,6 @@ public class ControladorServicoAutorizacaoImpl implements ControladorServicoAuto
1493 1566 byte[] retorno = null;
1494 1567  
1495 1568 if (servicoAutorizacao.getServicoTipo().getFormulario() != null) {
1496   -
1497 1569 Questionario questionario = controladorQuestionario.consultarPorCodico(
1498 1570 servicoAutorizacao.getServicoTipo().getFormulario().getChavePrimaria(), LISTA_PERGUNTAS, "tipoServico", "segmento");
1499 1571  
... ...
src/main/java/br/com/ggas/batch/impl/ControladorProcessoImpl.java
... ... @@ -412,12 +412,8 @@ class ControladorProcessoImpl extends ControladorNegocioImpl implements Controla
412 412 Map<String, Object> parametros = new HashMap<String, Object>();
413 413 parametros.put("processo", processo);
414 414  
415   - boolean possuiParametro = false;
416   - if (processo.getParametros() != null && !processo.getParametros().isEmpty()) {
417   - possuiParametro = true;
418   - parametros.putAll(processo.getParametros());
419   - }
420   -
  415 + boolean possuiParametro = this.adicionarParametrosDoProcesso(parametros, processo);
  416 +
421 417 boolean operacaoAtividadeSistema = false;
422 418 boolean atividadeCronograma = false;
423 419 atividadeSistema = controladorCronogramaFaturamento.obterAtividadeSistemaPorOperacao(processo.getOperacao()
... ... @@ -480,12 +476,11 @@ class ControladorProcessoImpl extends ControladorNegocioImpl implements Controla
480 476  
481 477 }
482 478 LOG.info("Batch finalizado com sucesso: " + batch.getClass().getName());
483   - if (batchRealizadoComSucesso) {
484   - logExecucao.append("\r\n[");
485   - logExecucao.append(Util.converterDataParaString(Calendar.getInstance().getTime(), Constantes.FORMATO_DATA_HORA_BR,
486   - true));
487   - logExecucao.append("] Batch finalizado com sucesso.");
488   - }
  479 +
  480 +
  481 + this.adicionarBatchFinalizadoAoArquivo(batchRealizadoComSucesso, logExecucao);
  482 +
  483 +
489 484 } catch (ClassNotFoundException e) {
490 485 throw new GGASException(e);
491 486 } catch (SecurityException e) {
... ... @@ -501,7 +496,26 @@ class ControladorProcessoImpl extends ControladorNegocioImpl implements Controla
501 496 return logExecucao.toString();
502 497  
503 498 }
504