Commit da69d4bb3d5589c7e96392b8ffb090998e40353b

Authored by maycon.silva
1 parent 9b2f91bb
Exists in master

Redmine #4599 Correcao atividade de homologacao

Showing 22 changed files with 164 additions and 136 deletions   Show diff stats
cit-ecm-api/src/main/java/br/com/centralit/api/dao/ProcessoDao.java
... ... @@ -5,6 +5,7 @@ import java.util.Collection;
5 5  
6 6 import br.com.centralit.api.model.Processo;
7 7 import br.com.centralit.framework.dao.arquitetura.CitGenericDAO;
  8 +import br.com.centralit.framework.model.Dominio;
8 9  
9 10 import com.googlecode.genericdao.search.ISearch;
10 11 import com.googlecode.genericdao.search.SearchResult;
... ... @@ -155,5 +156,22 @@ public interface ProcessoDao extends CitGenericDAO {
155 156 * @return <RT> SearchResult<RT>
156 157 */
157 158 <RT> SearchResult<RT> searchAndCountPorSigilo(ISearch search);
  159 +
  160 +
  161 + /**
  162 + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p>
  163 + *
  164 + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p>
  165 + *
  166 + * Método responsável por
  167 + *
  168 + * @author maycon.silva
  169 + *
  170 + * @param nup
  171 + * @param dominio
  172 + * @return
  173 + */
  174 + Collection<Processo> autoCompleteProcessoByNupAndStatus(String nup, Dominio dominio);
  175 +
158 176  
159 177 }
... ...
cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/ProcessoDaoHibernate.java
... ... @@ -15,10 +15,12 @@ import br.com.centralit.api.model.Processo;
15 15 import br.com.centralit.api.model.SigiloPrivilegio;
16 16 import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl;
17 17 import br.com.centralit.framework.dao.arquitetura.SearchSeven;
  18 +import br.com.centralit.framework.model.Dominio;
18 19 import br.com.centralit.framework.model.Usuario;
19 20  
20 21 import com.googlecode.genericdao.search.Filter;
21 22 import com.googlecode.genericdao.search.ISearch;
  23 +import com.googlecode.genericdao.search.Search;
22 24 import com.googlecode.genericdao.search.SearchResult;
23 25  
24 26 /**
... ... @@ -211,5 +213,20 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD
211 213  
212 214 return super.searchAndCount(search);
213 215 }
  216 +
  217 + public Collection<Processo> autoCompleteProcessoByNupAndStatus(String nup, Dominio dominio){
  218 +
  219 + Search search = new SearchSeven(this.persistentClass);
214 220  
  221 + search.addFilterOr(Filter.ilike("nup", "%" + nup + "%"), Filter.ilike("nup", "%" + nup + "%"));
  222 +
  223 + search.addFilterEqual("status.id", dominio.getId());
  224 +
  225 + search.addSortDesc("id");
  226 +
  227 + search.setMaxResults(10);
  228 +
  229 + return this.search(search);
  230 +
  231 + }
215 232 }
... ...
cit-ecm-api/src/main/java/br/com/centralit/api/service/ProcessoService.java
1 1 package br.com.centralit.api.service;
2 2  
  3 +import java.util.Collection;
  4 +
3 5 import br.com.centralit.api.model.PlanoClassificacao;
4 6 import br.com.centralit.api.model.Processo;
5 7 import br.com.centralit.framework.service.arquitetura.GenericService;
... ... @@ -221,5 +223,19 @@ public interface ProcessoService extends GenericService&lt;Processo, Long&gt; {
221 223 * @return <RT> SearchResult<RT>
222 224 */
223 225 <RT> SearchResult<RT> searchAndCountPorSigilo(ISearch search);
  226 +
  227 + /**
  228 + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p>
  229 + *
  230 + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p>
  231 + *
  232 + * Método responsável por
  233 + *
  234 + * @author maycon.silva
  235 + *
  236 + * @param nup
  237 + * @return
  238 + */
  239 + Collection<Processo> autoCompleteProcessoEmAndametoByNup(String nup);
224 240  
225 241 }
... ...
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/ProcessoServiceImpl.java
... ... @@ -233,7 +233,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
233 233 this.montarEntidade(processo);
234 234  
235 235 try {
236   - this.solrService.addProcesso(processo);
  236 + /*this.solrService.addProcesso(processo);*/
237 237 } catch (Exception e) {
238 238 e.printStackTrace();
239 239 }
... ... @@ -1068,5 +1068,15 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
1068 1068  
1069 1069 return this.processoDao.getProcessoByProtocolo(nup);
1070 1070 }
  1071 +
  1072 + /**
  1073 + *
  1074 + */
  1075 + public Collection<Processo> autoCompleteProcessoEmAndametoByNup(String nup){
  1076 +
  1077 +
  1078 + return this.processoDao.autoCompleteProcessoByNupAndStatus(nup , this.dominioService.findByChaveAndCodigo("statusProcesso", 2L));
  1079 +
  1080 + }
1071 1081  
1072 1082 }
... ...
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/UnidadeProcessoServiceImpl.java
... ... @@ -221,7 +221,7 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;UnidadeProces
221 221 */
222 222 public void executarConcluirProcessoNaUnidade(Long idTask, Processo processo) {
223 223  
224   - UnidadeProcesso unidadeProcesso = this.unidadeProcessoDao.obterPorUnidadeEProcesso(processo.getId(), this.getUsuario().getUnidade().getId());
  224 + UnidadeProcesso unidadeProcesso = this.unidadeProcessoDao.obterPorUnidadeEProcessoEmExecucao(processo.getId(), this.getUsuario().getUnidade().getId());
225 225  
226 226 if (UtilObjeto.isReferencia(unidadeProcesso)) {
227 227  
... ...
cit-ecm-web/src/main/java/br/com/centralit/controller/ProcessoController.java
1 1 package br.com.centralit.controller;
2 2  
  3 +import java.util.Collection;
  4 +
3 5 import org.springframework.beans.factory.annotation.Autowired;
4   -import org.springframework.security.core.context.SecurityContextHolder;
5 6 import org.springframework.stereotype.Controller;
6 7 import org.springframework.web.bind.annotation.RequestBody;
7 8 import org.springframework.web.bind.annotation.RequestMapping;
... ... @@ -10,6 +11,7 @@ import org.springframework.web.bind.annotation.RequestParam;
10 11 import org.springframework.web.bind.annotation.ResponseBody;
11 12  
12 13 import br.com.centralit.api.framework.json.ViewsEcm;
  14 +import br.com.centralit.api.model.PlanoClassificacao;
13 15 import br.com.centralit.api.model.Processo;
14 16 import br.com.centralit.api.service.ProcessoService;
15 17 import br.com.centralit.api.service.UsuarioService;
... ... @@ -19,7 +21,6 @@ import br.com.centralit.framework.json.ResponseBodyWrapper;
19 21 import br.com.centralit.framework.json.Views;
20 22 import br.com.centralit.framework.json.Views.GenericView;
21 23 import br.com.centralit.framework.model.SearchParams;
22   -import br.com.centralit.framework.model.Usuario;
23 24 import br.com.centralit.framework.util.UtilString;
24 25 import br.com.centralit.framework.view.GridVH;
25 26 import br.com.centralit.framework.view.ResultResponseVH;
... ... @@ -205,6 +206,18 @@ public class ProcessoController extends GenericController&lt;Processo&gt; {
205 206 return responseBody;
206 207 }
207 208  
  209 +
  210 + @RequestMapping(value = "/autoCompleteProcessoEmAndametoByNup", method = RequestMethod.GET, produces = "application/json")
  211 + @ResponseBody
  212 + public ResponseBodyWrapper autoCompleteProcessoEmAndametoByNup(@RequestParam(value = "nup") String nup) {
  213 +
  214 + ResultResponseVH<Collection<Processo>> resultResponseVH = new ResultResponseVH<Collection<Processo>>(this.processoService.autoCompleteProcessoEmAndametoByNup(nup));
  215 +
  216 + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(resultResponseVH, getAutoCompleteView());
  217 +
  218 + return responseBody;
  219 + }
  220 +
208 221 @Override
209 222 public Class<Views.ProcessoEdit> getEditView() {
210 223  
... ...
cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java
... ... @@ -129,8 +129,9 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen
129 129 list.add(new AcaoHistoricoAlteracaoProcesso("REMOVER_PROCESSO_ANEXADO", "Remover Anexo Processo", "O Anexo com o processo <<protocolo>> foi removido."));
130 130 list.add(new AcaoHistoricoAlteracaoProcesso("ANEXAR_PROCESSO_PRINCIPAL", "Anexar Processo principal", "Processo <<protocolo>> anexado a este processo."));
131 131 list.add(new AcaoHistoricoAlteracaoProcesso("ANEXAR_PROCESSO_SECUNDARIO", "Anexar Processo secundário", "Processo anexado ao processo <<protocolo>>."));
132   - list.add(new AcaoHistoricoAlteracaoProcesso("ATUALIZAR_ANDAMENTO_PROCESSO", "Atualização de Andamento do Processo", "Situação do processo alterada para <<situacao>>."));
133   - list.add(new AcaoHistoricoAlteracaoProcesso("ALTERACAO_ATRIBUICAO_PROCESSO", "Alteração de atribuição de Processo", "Processo atribuído a <<usuario>>."));
  132 + list.add(new AcaoHistoricoAlteracaoProcesso("ATUALIZAR_ANDAMENTO_PROCESSO", "Atualização de Andamento do Processo", "Situação do processo alterada para <<situacao>>."));
  133 + list.add(new AcaoHistoricoAlteracaoProcesso("INICIAR_ATRIBUICAO_PROCESSO", "Atribuição do processo", "Processo atribuído a <<usuario>>."));
  134 + list.add(new AcaoHistoricoAlteracaoProcesso("ALTERACAO_ATRIBUICAO_PROCESSO", "Atribuição do processo alterada", "Processo atribuído a <<usuario>>."));
134 135 list.add(new AcaoHistoricoAlteracaoProcesso("CRIACAO_NOVA_VERSAO_DOCUMENTO", "Criação de uma nova versão do documento", "Documento <<tipo_documento>> <<numero_documento>> alterado para a versão <<numero_versao>>."));
135 136 list.add(new AcaoHistoricoAlteracaoProcesso("RESTAURACAO_VERSAO_DOCUMENTO", "Restauração de uma versão do documento", "Documento <<tipo_documento>> <<numero_documento>> restaurado para a versão <<numero_versao>>."));
136 137 list.add(new AcaoHistoricoAlteracaoProcesso("CONCLUSAO_PROCESSO_UNIDADE", "Conclusão do Processo na Unidade", "Processo concluído na unidade <<unidade>>."));
... ... @@ -488,7 +489,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen
488 489 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ANEXAR_PROCESSO_PRINCIPAL", "Anexar Processo principal", dominio, modulo));
489 490 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ANEXAR_PROCESSO_SECUNDARIO", "Anexar Processo secundário", dominio, modulo));
490 491 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ATUALIZAR_ANDAMENTO_PROCESSO", "Atualização de Andamento do Processo", dominio, modulo));
491   - internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ALTERACAO_ATRIBUICAO_PROCESSO", "Alteração ene atribuição de Processo", dominio, modulo));
  492 + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ALTERACAO_ATRIBUICAO_PROCESSO", "Atribuição do processo alterada", dominio, modulo));
492 493 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.RESTAURACAO_VERSAO_DOCUMENTO", "Restauração de uma versão do documento", dominio, modulo));
493 494 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.CONCLUSAO_PROCESSO_UNIDADE", "Conclusão do Processo na Unidade", dominio, modulo));
494 495 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.CANCELAR_DOCUMENTO", "Cancelar Documentos", dominio, modulo));
... ... @@ -520,6 +521,6 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen
520 521 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.PROCESSO_CONCLUIDO_SUCESSO", "Processo concluído com sucesso!", dominio, modulo));
521 522 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.O_PROCESSO", "O processo", dominio, modulo));
522 523 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.SALVO_SUCESSO", "Foi salvo com sucesso!", dominio, modulo));
523   -
  524 + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.INICIAR_ATRIBUICAO_PROCESSO", "Atribuição do processo", dominio, modulo));
524 525 }
525 526 }
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/AnexarProcessoController.js
... ... @@ -58,9 +58,9 @@ citApp.controller(&#39;AnexarProcessoController&#39;, [&#39;$scope&#39;, &#39;UnidadeProcessoReposit
58 58  
59 59  
60 60 //Buscar processo através do nup
61   - $scope.findAutoCompleteProcesso = function(value){
62   - return ProcessoRepository.findAutoComplete('nup', value).then(function(result) {
63   - return $filter('idNotEqualProcessoAnexadoAndProcessoPai')(result, $scope.anexarProcessoVH.listaProcessoAnexado, $scope.$parent.$parent.processo);
  61 + $scope.autoCompleteProcessoEmAndametoByNup = function(value){
  62 + return ProcessoRepository.autoCompleteProcessoEmAndametoByNup(value).then(function(result) {
  63 + return $filter('idNotEqualProcessoAnexadoAndProcessoPai')(result, $scope.anexarProcessoVH.listaProcessoAnexado, $scope.$parent.$parent.processo);
64 64 });
65 65 };
66 66  
... ... @@ -242,85 +242,4 @@ citApp.controller(&#39;AnexarProcessoController&#39;, [&#39;$scope&#39;, &#39;UnidadeProcessoReposit
242 242 $scope.updateTask(true);
243 243 };
244 244  
245   -
246   - // ------------------------------EXECUTA BPE------------------------------------
247   -
248   -// // ATUALIZAR TASK BPE
249   -// $scope.updateTask = function(complete) {
250   -// if ($scope.updateAction && (!$scope.flowAction || !$scope.flowAction.id)) {
251   -// $scope.showAlert("error", $translate.instant('ESI.MSG.SELECIONE_ACAO'));
252   -// return;
253   -// }
254   -//
255   -//
256   -// // Executa regras criadas
257   -// if ($scope.businessRule && $scope.businessRule != '') {
258   -// $scope.buildBusinessRuleVariables();
259   -// $scope[$scope.businessRule] = undefined;
260   -// RuntimeManagerRepository.executeBusinessRule($scope.businessRule, $scope.businessRuleVariables).then(function(result) {
261   -// $scope[$scope.businessRule] = result.originalElement.businessRule;
262   -// if ($scope[$scope.businessRule] && $scope[$scope.businessRule].valid) {
263   -// $scope.execute(complete);
264   -// }
265   -// });
266   -// }else{
267   -// $scope.execute(complete);
268   -// }
269   -//
270   -// };
271   -//
272   -// // FIM
273   -//
274   -// $scope.hasTaskVariable = function(name) {
275   -// for (var i = 0; i < $scope.taskVariables.length; i++) {
276   -// if ($scope.taskVariables[i].name == name) {
277   -// return true;
278   -// }
279   -// }
280   -// return false;
281   -// };
282   -//
283   -//
284   -// // EXCUTA TAREFA BPE
285   -// $scope.execute = function(complete) {
286   -// $scope.setLoading(true,$translate.instant('ESI.EXECUTANDO_TAREFA')+" "+$scope.task.flowElement.name);
287   -// $scope.runtimeManagerUtils.executeCode("beforeUpdate");
288   -//
289   -// var idRetorno = ESI_RETURN+$scope.flowName;
290   -// var idParam = ESI_PARAM+$scope.flowName;
291   -// $scope[idParam] = new RuntimeEnvironmentInput($scope.flowName,$scope.taskVariables);
292   -// $scope[idParam].workItemId = $scope.task.id;
293   -// $scope[idParam].updateFlowAction = $scope.updateAction;
294   -//
295   -// // ADICIONA ACÃO DO FLUXO NO SCOPO
296   -// if ($scope.updateAction) {
297   -// $scope[idParam].flowAction = $scope.flowAction;
298   -// }
299   -//
300   -// $scope[idRetorno] = new RuntimeEnvironmentOutput(null);
301   -//
302   -// RuntimeManagerRepository.updateTask($scope[idParam], complete).then(function(result) {
303   -// $scope[idRetorno] = new RuntimeEnvironmentOutput(result.originalElement);
304   -// $scope.runtimeManagerUtils.setObjectValues($scope[idRetorno]);
305   -//
306   -// $scope.processInstance = result.originalElement.processInstance;
307   -//
308   -// $scope.runtimeManagerUtils.saveDocuments($scope[idRetorno].processInstance, $scope.task);
309   -//
310   -// $scope.runtimeManagerUtils.executeCode("afterUpdate");
311   -// $scope.setLoading(false);
312   -// $scope.showExecuteButton = false;
313   -// if ($scope.callbackFunction != null)
314   -// $scope.callbackFunction();
315   -// $rootScope.controllerScope.fetchResult();
316   -// if ($scope.removeWorkspace)
317   -// $scope.close();
318   -// $scope.showAlert("success","ESI.MSG.TAREFA_EXECUTADA","");
319   -// });
320   -// };
321   -//
322   - // FIM
323   -
324   -
325   -
326 245 }]);
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ClassificarDocumentoProcessoController.js
... ... @@ -33,7 +33,7 @@ citApp.controller(&#39;ClassificarDocumentoProcessoController&#39;, [&#39;$scope&#39;, &#39;Processo
33 33 };
34 34  
35 35 $scope.resetForm = function() {
36   - angular.element("#editProcessoEcm").scope().resetForm();
  36 + angular.element("#editProcesso").scope().resetForm();
37 37 };
38 38  
39 39 $scope.headers = [{title : $translate.instant('ECM.LABEL.PROTOCOLO'), value : 'nup' },
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ClassificarDocumentoProcessoListController.js
... ... @@ -31,7 +31,7 @@ citApp.controller(&#39;ClassificarDocumentoProcessoListController&#39;, [&#39;$scope&#39;, &#39;Proc
31 31 };
32 32  
33 33 $scope.resetForm = function() {
34   - angular.element("#editProcessoEcm").scope().resetForm();
  34 + angular.element("#editProcesso").scope().resetForm();
35 35 };
36 36  
37 37 $scope.headers = [{title : $translate.instant('LABEL.PROTOCOLO'), value : 'nup' },
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/DocumentoGedController.js
... ... @@ -668,5 +668,17 @@ citApp.controller(&#39;DocumentoGedController&#39;, [&#39;$scope&#39;, &#39;DocumentoGedRepository&#39;,
668 668 return result;
669 669 });
670 670 };
  671 +
  672 + $scope.novaPessoa = function() {
  673 + $scope.openWorkspaceIfNotOpen($translate.instant('LABEL.PESSOA'), '/cit-tabelas-corp-web/html/pessoa/pessoa.html', 'mod-blue');
  674 +
  675 + $timeout(function() {
  676 + angular.element('#searchPessoa').scope().$showPageEditWorkspace(angular.element('#searchPessoa').scope().workspace);
  677 + angular.element('#pessoaEdit').scope().resetForm();
  678 +
  679 + }, 600);
  680 +
  681 + };
  682 +
671 683  
672 684 }]);
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/GerenciarProcessoController.js
... ... @@ -289,7 +289,6 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim
289 289 $timeout( function () {
290 290 ProcessoRepository.get( $scope.processo.id ).then( function ( result ) {
291 291 $scope.processo = result.originalElement;
292   - $scope.atualizarAtribuicaoProcesso($scope.processo.id);
293 292 } );
294 293 }, 100 );
295 294  
... ... @@ -429,7 +428,7 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim
429 428 $scope.saveOrUpdateProcessoECM = function () {
430 429  
431 430 // CHAMA GRAVAR DO PROCESSOCONTROLLER.JS
432   - angular.element( '#editProcessoEcm' ).scope().saveOrUpdate();
  431 + angular.element( '#editProcesso' ).scope().saveOrUpdate();
433 432  
434 433 $scope.closeWidget();
435 434 $scope.atualizaProcesso();
... ... @@ -454,7 +453,7 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim
454 453 // FECHA WIDGET E INICIA WIDGET PADRÃO
455 454 $scope.closeWidget = function () {
456 455 angular.element( "#widget-historico" ).scope().atualizar();
457   - $scope.atualizarAtribuicaoProcesso($scope.idProcesso);
  456 + $scope.atualizaProcesso();
458 457 $scope.fecharPagina();
459 458 $scope.widgetExemploIsCollapsed = false;
460 459 // WIDGET PRADAO
... ... @@ -660,6 +659,8 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim
660 659 if(result){
661 660  
662 661 $scope.showAlert('warning', $translate.instant('ECM.MSG.ATRIBUICAO_PRIMEIRO_ACESSO'));
  662 +
  663 +
663 664 }
664 665 if($scope.usuarioLogado.unidade){
665 666  
... ... @@ -690,4 +691,19 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim
690 691 } );
691 692 };
692 693  
  694 + $scope.saveHistoricoAtribuicao = function () {
  695 +
  696 + var historicoAlteracaoProcesso = {
  697 + descricaoAcao : $translate.instant( 'ECM.MSG_HISTORICO_ECM.ALTERACAO_ATRIBUICAO_PROCESSO' ),
  698 + processo : $scope.processo,
  699 + autor : $scope.usuarioLogado,
  700 + acaoAlteracao : "ALTERACAO_ATRIBUICAO_PROCESSO",
  701 + idTask : $scope.task.id
  702 +
  703 + };
  704 +
  705 + HistoricoAlteracaoProcessoRepository.saveParams( historicoAlteracaoProcesso ).then( function ( result ) {
  706 + } );
  707 + };
  708 +
693 709 }] );
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ProcessoController.js
... ... @@ -15,10 +15,8 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini
15 15  
16 16 // Limpa formulário para novo cadastro
17 17 $scope.resetForm = function() {
18   -
19   - $scope.processoForm = $scope.processoNewController.processoForm;
20   -
21   - $scope.limparProcesso();
  18 +
  19 + $scope.limparProcesso();
22 20  
23 21 $scope.edit = true;
24 22 $timeout(function(){
... ... @@ -102,6 +100,8 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini
102 100 $scope.setLoadingSalva(false);
103 101  
104 102 });
  103 +
  104 + $scope.$parent.$parent.atualizaProcesso();
105 105 }
106 106 $scope.processoForm.$submitted = false;
107 107 });
... ... @@ -117,8 +117,11 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini
117 117 $scope.processo = {};
118 118 $scope.assuntoPlanoClassificacao = null;
119 119 $scope.assuntoSelecionado = null;
120   - $scope.sugestoes = [];
  120 + $scope.sugestoes = null;
121 121 $scope.assuntos = [];
  122 + angular.element('#sugestoes').scope().sugestoes = null;
  123 + angular.element('#assuntoSelecionado').scope().limparCampo();
  124 +
122 125 $scope.processo.tipoProtocolo = {
123 126 codigo : 1
124 127 };
... ... @@ -136,10 +139,10 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini
136 139 $scope.processo = result.originalElement;
137 140 $scope.edit = edit;
138 141 $scope.setLoading(false);
139   - $scope.constroiRelacionamentoTipoProcesso($scope.processo.tipoProcesso);
  142 + $scope.findSugestaoAssunto($scope.processo.tipoProcesso);
  143 + $scope.findNivelAcessoTipoProcesso($scope.processo.tipoProcesso);
140 144 $scope.montarHipotese();
141   - $scope.setAssuntoModelByTipoAssunto();
142   -
  145 + $scope.setAssuntoModelByTipoAssunto();
143 146 });
144 147 };
145 148  
... ... @@ -200,22 +203,23 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini
200 203 });
201 204 };
202 205  
203   - $scope.constroiRelacionamentoTipoProcesso = function(tipoProcesso){
  206 + $scope.findNivelAcessoTipoProcesso = function(tipoProcesso){
  207 + $scope.nivelAcessoList = [];
204 208  
205   - $scope.nivelAcessoList = [];
206   -
207   - $scope.assuntos = [];
208   -
209   - $scope.findSugestaoAssunto(tipoProcesso);
210   -
211   - NivelAcessoTipoProcessoRepository.findPorIdTipoProcesso(tipoProcesso.id).then(function(result) {
212   -
213   - $scope.nivelAcessoList = result;
214   - //Setar o nivelAcessoTipoProcesso público.
215   - $scope.processo.nivelAcesso = $.grep($scope.nivelAcessoList, function(e){ return e.nivelAcesso.codigo == 2; })[0].originalElement;
216   -
217   - });
218   - };
  209 + NivelAcessoTipoProcessoRepository.findPorIdTipoProcesso(tipoProcesso.id).then(function(result) {
  210 + $scope.nivelAcessoList = result;
  211 +
  212 + /* $scope.processo.nivelAcesso = $.grep($scope.nivelAcessoList, function(e){ return e.nivelAcesso.codigo == 2; })[0].originalElement; */
  213 + });
  214 + };
  215 +
  216 + $scope.constroiRelacionamentoTipoProcesso = function(tipoProcesso){
  217 +
  218 + $scope.findSugestaoAssunto(tipoProcesso);
  219 +
  220 + $scope.findNivelAcessoTipoProcesso(tipoProcesso);
  221 +
  222 + };
219 223  
220 224  
221 225 //SET HIPOTESE LEGAL #INICIO
... ... @@ -362,6 +366,5 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini
362 366 });
363 367 };
364 368  
365   - $scope.inicializarProcesso();
366 369  
367 370 }]);
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ProcessoFinalizadoListController.js
... ... @@ -4,7 +4,7 @@ citApp.controller(&#39;ProcessoFinalizadoListController&#39;, [&#39;$scope&#39;, &#39;ProcessoReposi
4 4 $scope.$showAdvancedFilters = false;
5 5  
6 6 $scope.resetForm = function() {
7   - angular.element("#editProcessoEcm").scope().resetForm();
  7 + angular.element("#editProcesso").scope().resetForm();
8 8 };
9 9  
10 10 $scope.headers = [{title : $translate.instant('ECM.LABEL.PROTOCOLO'), value : 'nup' }, {title : $translate.instant('ECM.LABEL.TIPOPROCESSO'), value : 'tipoProcesso.nome'} , {title : $translate.instant('ECM.LABEL.CLASSIFICACAO_ARQUIVISTICA'), value : 'assunto.nome'},
... ... @@ -35,7 +35,7 @@ citApp.controller(&#39;ProcessoFinalizadoListController&#39;, [&#39;$scope&#39;, &#39;ProcessoReposi
35 35 $scope.showAlert('warning', !edit ? $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_VISUALIZACAO') : $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_EDICAO'));
36 36 return;
37 37 }
38   - angular.element('#editProcessoEcm').scope().getProcesso(processo, edit);
  38 + angular.element('#editProcesso').scope().getProcesso(processo, edit);
39 39 $scope.$showPageEditWorkspace($scope.workspace);
40 40 };
41 41 }]);
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ProcessoListController.js
... ... @@ -4,7 +4,7 @@ citApp.controller(&#39;ProcessoListController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;$t
4 4 $scope.$showAdvancedFilters = false;
5 5  
6 6 $scope.resetForm = function() {
7   - angular.element("#editProcessoEcm").scope().resetForm();
  7 + angular.element("#editProcesso").scope().resetForm();
8 8 };
9 9  
10 10 $scope.headers = [{title : $translate.instant('ECM.LABEL.TIPOPROCESSO'), value : 'tipoProcesso.nome'}, {title : $translate.instant('LABEL.NUP'), value : 'nup' } , {title : $translate.instant('ECM.LABEL.ASSUNTOCOMPLEMENTAR'), value : 'assuntoComplementar' }];
... ... @@ -26,7 +26,7 @@ citApp.controller(&#39;ProcessoListController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;$t
26 26 $scope.showAlert('warning', !edit ? $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_VISUALIZACAO') : $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_EDICAO'));
27 27 return;
28 28 }
29   - angular.element('#editProcessoEcm').scope().getProcesso(processo, edit);
  29 + angular.element('#editProcesso').scope().getProcesso(processo, edit);
30 30 $scope.$showPageEditWorkspace($scope.workspace);
31 31 };
32 32 }]);
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/UnidadeProcessoController.js
... ... @@ -163,7 +163,7 @@ citApp.controller(&#39;UnidadeProcessoController&#39;, [&#39;$scope&#39;, &#39;UnidadeProcessoReposi
163 163 //Verifica se o processo está sendo concluido na unidade
164 164 if($scope.enviarProcessoVH.concluirProcesso){
165 165  
166   - var workspace = angular.element('#editProcessoEcm').scope().workspace;
  166 + var workspace = angular.element('#editProcesso').scope().workspace;
167 167 if (workspace) {
168 168 $scope.$modalConfirmInstance.dismiss('cancel');
169 169 angular.element("#citapp-controller").scope().removeWorkspace(workspace.id);
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/ProcessoRepository.js
... ... @@ -41,6 +41,11 @@ citApp.factory(&#39;ProcessoRepository&#39;, [&#39;RestangularEcm&#39;, &#39;AbstractRepository&#39;, fu
41 41 return restangularEcm.one(this.route + '/getMetadadoProcesso').get({"idProcesso": idProcesso});
42 42  
43 43 };
  44 +
  45 + this.autoCompleteProcessoEmAndametoByNup = function (nup){
  46 + return restangularEcm.one(this.route + '/autoCompleteProcessoEmAndametoByNup').get({"nup": nup}).then();
  47 +
  48 + };
44 49  
45 50 }
46 51  
... ...
cit-ecm-web/src/main/webapp/html/anexarProcesso/anexarProcesso.html
... ... @@ -34,7 +34,7 @@
34 34 <div class="row">
35 35  
36 36 <div class="col-md-8">
37   - <auto-complete ng-id="processo" numbers-only ng-label="ECM.LABEL.PROCESSO" ng-model="processo" ng-find="findAutoCompleteProcesso(value)" ng-item="item.nup" />
  37 + <auto-complete ng-id="processo" numbers-only ng-label="ECM.LABEL.PROCESSO" ng-model="processo" ng-find="autoCompleteProcessoEmAndametoByNup(value)" ng-item="item.nup" />
38 38 </div>
39 39  
40 40  
... ...
cit-ecm-web/src/main/webapp/html/documentoGed/metadadosDocumentoEdit.html
... ... @@ -69,7 +69,7 @@
69 69  
70 70 <div class="col-md-8">
71 71 <auto-complete ng-id="documentoGed.destinatario" ng-label="ECM.LABEL.DESTINATARIO" ng-model="documentoGed.destinatario" form="documentoGedForm" ng-obrigatorio="true" ng-disabled="!edit"
72   - ng-find="findAutoCompleteDestinatario(value);" ng-item="item.nome" />
  72 + ng-find="findAutoCompleteDestinatario(value);" button-new-show="true" button-new-action="novaPessoa();" ng-item="item.nome" />
73 73 </div>
74 74  
75 75 </div>
... ... @@ -172,7 +172,7 @@
172 172  
173 173 <div class="col-md-10">
174 174 <auto-complete ng-id="interessado" ng-label="ECM.LABEL.INTERESSADO" ng-disabled="!edit" form='documentoGedForm' ng-model="interessado" ng-find="findAutoCompleteInteressados(value)"
175   - ng-item="item.nome" ng-set-result="setInteressados(item)" />
  175 + ng-item="item.nome" ng-set-result="setInteressados(item)" button-new-show="true" button-new-action="novaPessoa();" />
176 176 </div>
177 177  
178 178 <div class="col-md-12">
... ...
cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeInformacaoProcesso.html
1 1  
2   -
3 2 <div class="widget-main clearfix">
4 3  
5 4 <div class="col-md-4">
... ...
cit-ecm-web/src/main/webapp/html/processo/metadadosProcesso.html
... ... @@ -22,8 +22,8 @@
22 22 <div class='form-group' ng-class="{'has-error': processoForm['protocolo'].$error.required && (!processoForm['protocolo'].$pristine || processoForm.$submitted)}">
23 23 <label class='control-label'> <translate>ECM.LABEL.PROTOCOLO</translate> <span class='red'>*</span></label> <i
24 24 ng-show="processoForm['protocolo'].$error.required && !processoForm['protocolo'].$pristine || processoForm.$submitted" class='fa fa-warning red'
25   - tooltip="{{$translate.instant('ECM.LABEL.PROTOCOLO') + ' ' +$translate.instant('LABEL.CAMPO_OBRIGATORIO')}}" tooltip-placement='top'></i> <input ng-required="processo.tipoProtocolo.codigo == 2"
26   - class="form-control" numbers-only id="protocolo" ng-show='processo.tipoProtocolo.codigo == 2 ||processo.id' ng-label="LABEL.PROTOCOLO" ng-disabled='!edit || processo.id' ng-model="processo.nup"
  25 + tooltip="{{$translate.instant('ECM.LABEL.PROTOCOLO') + ' ' +$translate.instant('LABEL.CAMPO_OBRIGATORIO')}}" tooltip-placement='top'></i>
  26 + <input class="form-control" numbers-only id="protocolo" ng-show='processo.tipoProtocolo.codigo == 2 || processo.id' ng-label="LABEL.PROTOCOLO" ng-disabled='!edit || processo.id' ng-model="processo.nup"
27 27 form="processoForm" />
28 28 </div>
29 29 </div>
... ... @@ -50,7 +50,7 @@
50 50 <div class="col-md-6">
51 51 <div class="form-group">
52 52 <div class="input-group">
53   - <select class="form-control typeahead-wide" ng-model="sugestoes" ng-change="setAssunto(sugestoes)" multiple id="sugestoes" ng-disabled='assuntoSelecionado.id' ng-multiple="false"
  53 + <select class="form-control typeahead-wide" ng-model="sugestoes" ng-change="setAssunto(sugestoes)" multiple id="sugestoes" form="processoForm" ng-disabled='assuntoSelecionado.id' ng-multiple="false"
54 54 ng-options="sugestao as sugestao.assunto for sugestao in assuntos track by sugestao.id">
55 55 </select> <span ng-show="sugestoes.length > 0" class="input-group-addon" ng-click="sugestoes = null" ng-class="{'hover-directive' : (($hover == true) && !disabled)}" ng-mouseover="$hover = true"
56 56 ng-mouseout="$hover = false"> <i class="fa fa-eraser bigger-110"></i>
... ... @@ -62,7 +62,6 @@
62 62 </div>
63 63  
64 64 <div class="row" ng-show='processo.tipoProcesso.id'>
65   -
66 65 <div class="col-md-6">
67 66 <label-select ng-id="processo.nivelAcesso" ng-label="ECM.LABEL.NIVEL_ACESSO" ng-model="processo.nivelAcesso" ng-custom-change='setHipoteseLegal(processo.nivelAcesso.id)' form="processoForm"
68 67 ng-obrigatorio="true" ng-disabled="!edit" ng-custom-options="nivelAcessoTipoProcesso.originalElement as nivelAcessoTipoProcesso.nivelAcesso.descricao for nivelAcessoTipoProcesso "
... ... @@ -76,7 +75,7 @@
76 75 ng-show="processoForm['processo.sigilo.id'].$error.required && (!processoForm['processo.sigilo.id'].$pristine || processoForm.$submitted)" class='fa fa-warning red'
77 76 tooltip="{{$translate.instant('ECM.LABEL.SIGILO') + ' ' +$translate.instant('LABEL.CAMPO_OBRIGATORIO')}}" tooltip-placement='top'></i>
78 77 </label>
79   -
  78 +
80 79 <div class="radio-inline" ng-repeat="sigiloTipoProcesso in processo.nivelAcesso.sigilos">
81 80 <label> <input type="radio" required="processo.nivelAcesso.nivelAcesso.codigo == 1" name="processo.sigilo.id" id="processo.tipoSigilo.id" ng-disabled="!edit"
82 81 ng-value="sigiloTipoProcesso.sigilo.id" ng-model="processo.sigilo.id" ng-change='setHipoteseLegal(processo.sigilo.id)' /> {{sigiloTipoProcesso.sigilo.tipoSigilo.descricao}}
... ...
cit-ecm-web/src/main/webapp/html/processo/processoNew.html
1   -<div id="newProcesso" class="page-content clearfix" ng-controller="ProcessoController as processoNewController">
  1 +<div id="newProcesso" class="page-content clearfix" ng-controller="ProcessoController as processoNewController" ng-init="init(inicializarProcesso())">
2 2  
3 3 <div id="newProcesso" ng-if="!processo.id">
4 4 <div class="bar-buttons-action fixed">
... ...