From 928f8f31ff35ddd19731aee9f83560d8bf3f78fa Mon Sep 17 00:00:00 2001 From: ROGERIO CASSIMIRO DE SOUZA Date: Wed, 20 Apr 2016 18:11:05 -0300 Subject: [PATCH] redmine #4583 panel assinar doc --- cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java | 10 +++++++++- cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/GerenciarProcessoController.js | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------- cit-ecm-web/src/main/webapp/html/documentoGed/documentoAssinatura.html | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeAcaoProcesso.html | 3 +++ cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeDocumentosProcesso.html | 4 ++-- 5 files changed, 141 insertions(+), 20 deletions(-) create mode 100644 cit-ecm-web/src/main/webapp/html/documentoGed/documentoAssinatura.html diff --git a/cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java b/cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java index 8d4e44d..26f0bbb 100644 --- a/cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java +++ b/cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java @@ -408,7 +408,12 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.SITUACAO_INSTANCIA_TAREFA", "Situação instância tarefa", dominio, modulo)); internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.NIVEL_DE_ACESSO", "Nível de acesso", dominio, modulo)); internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ASSUNTO_COMPLEMENTAR", "Assunto complementar", dominio, modulo)); - internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.VISUALIZAR_ASSINATURAS", "Visualiar Assinaturas", dominio, modulo)); + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ASSINATURAS_DOCUMENTO", "Assinaturas do Documento", dominio, modulo)); + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ASSINANTE", "Assinante", dominio, modulo)); + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CARGO_FUNCAO", "Cargo/Função", dominio, modulo)); + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.OU", "ou", dominio, modulo)); + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CERTIFICADO_DIGITAL", "Certificado Digital", dominio, modulo)); + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ASSINATURA_DOCUMENTO", "Assinatura de Documento", dominio, modulo)); } /** @@ -517,5 +522,8 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.TAREFA_SOBRESTADA_SUCESSO", "Tarefa sobrestada com sucesso!", dominio, modulo)); internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CONFIRMA_REATIVACAO_TAREFA", "Confirma reativação da tarefa?", dominio, modulo)); internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.TAREFA_REATIVADA", "Tarefa reativada com sucesso", dominio, modulo)); + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.ERRO_PERMISSAO_ASSINAR", "Erro! Para assinar documentos é necessário possuir o papel “Servidor” ou “Terceirizado” com “Função” preenchida no Cadastro de Pessoas!", dominio, modulo)); + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.USUARIO_SEM_PESSOA", "Usuário não está presente no Cadastro de Pessoa!", dominio, modulo)); + } } diff --git a/cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/GerenciarProcessoController.js b/cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/GerenciarProcessoController.js index 78a49b4..1221fdd 100644 --- a/cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/GerenciarProcessoController.js +++ b/cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/GerenciarProcessoController.js @@ -1,8 +1,8 @@ 'use strict'; -citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$timeout','GerenciarProcessoRepository', 'ProcessoRepository', 'RuntimeManagerRepository','$rootScope', 'DocumentoGedRepository', 'HistoricoAlteracaoProcessoRepository','UnidadeRepository','UnidadeProcessoRepository','CredencialProcessoRepository', '$q', 'PessoaRepository', - function GerenciarProcessoController($scope, $translate, $timeout, GerenciarProcessoRepository, ProcessoRepository, RuntimeManagerRepository,$rootScope, DocumentoGedRepository, HistoricoAlteracaoProcessoRepository,UnidadeRepository, UnidadeProcessoRepository,CredencialProcessoRepository, $q, PessoaRepository) { +citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$timeout','GerenciarProcessoRepository', 'ProcessoRepository', 'RuntimeManagerRepository','$rootScope', 'DocumentoGedRepository', 'HistoricoAlteracaoProcessoRepository','UnidadeRepository','UnidadeProcessoRepository','CredencialProcessoRepository', 'PessoaRepository', + function GerenciarProcessoController($scope, $translate, $timeout, GerenciarProcessoRepository, ProcessoRepository, RuntimeManagerRepository,$rootScope, DocumentoGedRepository, HistoricoAlteracaoProcessoRepository,UnidadeRepository, UnidadeProcessoRepository,CredencialProcessoRepository, PessoaRepository) { $scope.processo = {}; $scope.iconAnexo = {}; @@ -30,6 +30,7 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim $scope.isGerenciarCredencialProcesso = false; $scope.isClassificarProcessoDocumento = false; $scope.isAtribuirProcesso = false; + $scope.isAssinarDocumento = false; }; // CRIAR RELACIONAMENTO DE PROCESSO @@ -624,9 +625,7 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim $scope.tratimitado(); - _carregarPermissoesDocumentoUsuario().then(function(){ - $scope.setLoading( false ); - }); + $scope.setLoading( false ); } ); @@ -635,17 +634,6 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim }; // FIM EXECUTAR BPE - function _carregarPermissoesDocumentoUsuario() { - var defer = $q.defer(); - $scope.permiteAssintar = false; - PessoaRepository.getPermissaoAssinaturaDocumento().then(function(result){ - $scope.permiteAssintar = result == undefined ? false : true; - defer.resolve(); - }); - - return defer.promise; - } - if ( $scope.task != null ) { $scope.initialize(); } @@ -705,6 +693,56 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim } }); + }; + + /* + * Abre panel assinar documento + */ + $scope.abrirAssinarDocumento = function(documento) { + $scope.fecharPagina(); + $scope.numeroDocumento = documento.numero ? documento.numero : ''; + $scope.isAssinarDocumento = false; + _obterPermissaoAssinaturaDocumento(); + }; + + function _obterPermissaoAssinaturaDocumento(){ + $scope.pessoa = {}; + PessoaRepository.getPermissaoAssinaturaDocumento().then(function(result){ + $scope.isAssinarDocumento = result.originalElement.isAssinarDocumento; + $scope.pessoa = result.originalElement; + if(!$scope.isAssinarDocumento) { + $scope.showAlert("error", $translate.instant('ECM.MSG.ERRO_PERMISSAO_ASSINAR')); + return; + } + _montarParceiros(); + }); + }; + + function _montarParceiros() { + delete $scope.isFuncaoServidor; + $scope.funcoes =[]; + $scope.pessoa.parceiros.forEach(function(parceiro){ + if(parceiro.dataInativo === null && parceiro.classeParceiro.dominioTipoParceiro.codigo == 1){ + $scope.funcoes.push(_getFuncao(parceiro, true)); + } else if(parceiro.dataInativo === null && parceiro.classeParceiro.dominioTipoParceiro.codigo == 6){ + $scope.funcoes.push(_getFuncao(parceiro, false)); + } + }); + + if($scope.funcoes.length === 1) { + $scope.funcoes.forEach(function(funcao){ + funcao.isServidor = true; + }); + } } - + + function _getFuncao(parceiro, isServidor) { + var funcao = {nome : '', isServidor : isServidor}; + if(parceiro.cargo) + funcao.nome = funcao.nome.concat(parceiro.cargo).concat(' / ').concat(parceiro.funcao.nome); + else + funcao.nome = funcao.nome.concat(parceiro.funcao.nome); + return funcao; + } + }] ); diff --git a/cit-ecm-web/src/main/webapp/html/documentoGed/documentoAssinatura.html b/cit-ecm-web/src/main/webapp/html/documentoGed/documentoAssinatura.html new file mode 100644 index 0000000..3720ce7 --- /dev/null +++ b/cit-ecm-web/src/main/webapp/html/documentoGed/documentoAssinatura.html @@ -0,0 +1,72 @@ +
+
+

+ ECM.LABEL.ASSINATURA_DOCUMENTO : {{numeroDocumento}} +

+
+ + + +
+
+
+
+
+
+
+ +
+
+
+
+ +
+
+
+
+
+ +
+
+
+ +
+
+ +
+
+ +
+
+ + +
+
+ +
+
+ + +
+
+ +
+
+
+
\ No newline at end of file diff --git a/cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeAcaoProcesso.html b/cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeAcaoProcesso.html index 2e1e37c..9640fcb 100644 --- a/cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeAcaoProcesso.html +++ b/cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeAcaoProcesso.html @@ -23,7 +23,10 @@
+
+ +
diff --git a/cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeDocumentosProcesso.html b/cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeDocumentosProcesso.html index 14ffe29..4a52ccd 100644 --- a/cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeDocumentosProcesso.html +++ b/cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeDocumentosProcesso.html @@ -39,8 +39,8 @@
  • ECM.LABEL.CANCELARDOCUMENTO
  • ECM.LABEL.VERSOESDODOCUMENTO
  • ECM.LABEL.JUSTIFICATIVA_CANCELAMENTO
  • -
  • ECM.LABEL.ASSINARDOCUMENTO
  • -
  • ECM.LABEL.VISUALIZAR_ASSINATURAS
  • +
  • ECM.LABEL.ASSINARDOCUMENTO
  • +
  • ECM.LABEL.ASSINATURAS_DOCUMENTO
  • -- libgit2 0.21.2