Commit 5a58e3dc1bf2f79e345dffe34d251bd0d3550722
1 parent
f55c1435
Exists in
master
redmine #4463 subtabela listagem processos
Showing
9 changed files
with
156 additions
and
43 deletions
Show diff stats
cit-ecm-api/src/main/java/br/com/centralit/api/dao/UnidadeProcessoDao.java
| ... | ... | @@ -8,6 +8,7 @@ import com.googlecode.genericdao.search.SearchResult; |
| 8 | 8 | import br.com.centralit.api.model.Processo; |
| 9 | 9 | import br.com.centralit.api.model.UnidadeProcesso; |
| 10 | 10 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; |
| 11 | +import br.com.centralit.framework.model.Usuario; | |
| 11 | 12 | |
| 12 | 13 | /** |
| 13 | 14 | * <p> |
| ... | ... | @@ -122,8 +123,10 @@ public interface UnidadeProcessoDao extends CitGenericDAO { |
| 122 | 123 | * Método responsável por listar processos através da unidade do usuário |
| 123 | 124 | * @author rogerio.cassimiro |
| 124 | 125 | * @param search |
| 126 | + * @param usuario | |
| 127 | + * @param idStatus | |
| 125 | 128 | * @return <RT> SearchResult<RT> |
| 126 | 129 | */ |
| 127 | - <RT> SearchResult<RT> searchAndCountPorUnidade(ISearch search); | |
| 130 | + <RT> SearchResult<RT> searchAndCountPorUnidade(ISearch search, Usuario usuario, Long idStatus); | |
| 128 | 131 | |
| 129 | 132 | } | ... | ... |
cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/UnidadeProcessoDaoHibernate.java
| ... | ... | @@ -2,21 +2,24 @@ package br.com.centralit.api.dao.impl; |
| 2 | 2 | |
| 3 | 3 | import java.util.Collection; |
| 4 | 4 | |
| 5 | -import org.springframework.security.core.context.SecurityContextHolder; | |
| 5 | +import org.hibernate.Criteria; | |
| 6 | +import org.hibernate.criterion.Projections; | |
| 7 | +import org.hibernate.criterion.Restrictions; | |
| 6 | 8 | import org.springframework.stereotype.Repository; |
| 7 | 9 | |
| 8 | -import com.googlecode.genericdao.search.Filter; | |
| 9 | -import com.googlecode.genericdao.search.ISearch; | |
| 10 | -import com.googlecode.genericdao.search.SearchResult; | |
| 11 | - | |
| 12 | 10 | import br.com.centralit.api.dao.UnidadeProcessoDao; |
| 13 | 11 | import br.com.centralit.api.model.Processo; |
| 12 | +import br.com.centralit.api.model.SigiloPrivilegio; | |
| 14 | 13 | import br.com.centralit.api.model.UnidadeProcesso; |
| 15 | 14 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; |
| 16 | 15 | import br.com.centralit.framework.dao.arquitetura.SearchSeven; |
| 17 | 16 | import br.com.centralit.framework.model.Usuario; |
| 18 | 17 | import br.com.centralit.framework.util.UtilColecao; |
| 19 | 18 | |
| 19 | +import com.googlecode.genericdao.search.Filter; | |
| 20 | +import com.googlecode.genericdao.search.ISearch; | |
| 21 | +import com.googlecode.genericdao.search.SearchResult; | |
| 22 | + | |
| 20 | 23 | /** |
| 21 | 24 | * <p> |
| 22 | 25 | * <img src="http://centralit.com.br/images/logo_central.png"> |
| ... | ... | @@ -177,13 +180,30 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un |
| 177 | 180 | * Método responsável por listar processos através da unidade do usuário |
| 178 | 181 | * @author rogerio.cassimiro |
| 179 | 182 | * @param search |
| 183 | + * @param usuario | |
| 184 | + * @param idStatus | |
| 180 | 185 | * @return <RT> SearchResult<RT> |
| 181 | 186 | */ |
| 182 | 187 | @Override |
| 183 | - public <RT> SearchResult<RT> searchAndCountPorUnidade(ISearch search) { | |
| 184 | - Usuario usuario = ( (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal() ); | |
| 185 | - search.getFilters().add(Filter.in("unidade.id", usuario.getUnidade().getId())); | |
| 186 | - search.getFilters().add(Filter.or(Filter.equal("concluido", Boolean.FALSE), Filter.isEmpty("concluido"))); | |
| 188 | + public <RT> SearchResult<RT> searchAndCountPorUnidade(ISearch search, Usuario usuario, Long idStatus) { | |
| 189 | + | |
| 190 | + search.getFilters().add(Filter.or(Filter.not(Filter.equal("processo.status.id", idStatus)), Filter.isEmpty("processo.status.id"))); | |
| 191 | + | |
| 192 | + Criteria criteriaPrivilegio = this.newCriteria(SigiloPrivilegio.class); | |
| 193 | + criteriaPrivilegio.setProjection(Projections.property("sigilo.id")); | |
| 194 | + criteriaPrivilegio.createAlias("privilegio", "privilegio"); | |
| 195 | + criteriaPrivilegio.createAlias("privilegio.grupoPrivilegios", "grupoPrivilegio"); | |
| 196 | + criteriaPrivilegio.add(Restrictions.isNull("grupoPrivilegio.dataInativo")); | |
| 197 | + criteriaPrivilegio.createCriteria("grupoPrivilegio.grupo").createAlias("grupoUsuarios", "grupoUsuario"); | |
| 198 | + criteriaPrivilegio.add(Restrictions.isNull("grupoUsuario.dataInativo")); | |
| 199 | + criteriaPrivilegio.add(Restrictions.eq("grupoUsuario.usuario.id", usuario.getId())); | |
| 200 | + | |
| 201 | + search.getFilters().add(Filter.equal("processo.autor.id", usuario.getId())); | |
| 202 | +// search.getFilters().add(Filter.or( | |
| 203 | +// Filter.in("processo.autor.id", usuario.getId()), | |
| 204 | +// Filter.in("unidade.id", usuario.getUnidade().getId()), | |
| 205 | +// Filter.in("processo.sigilo.id", criteriaPrivilegio.list()))); | |
| 206 | +// | |
| 187 | 207 | return super.searchAndCount(search); |
| 188 | 208 | } |
| 189 | 209 | } | ... | ... |
cit-ecm-api/src/main/java/br/com/centralit/api/model/NivelAcessoTipoProcesso.java
| ... | ... | @@ -72,7 +72,7 @@ public class NivelAcessoTipoProcesso extends PersistentObjectAudit { |
| 72 | 72 | |
| 73 | 73 | /** Atributo tipoAcesso. */ |
| 74 | 74 | @ManyToOne(fetch = FetchType.LAZY) |
| 75 | - @JsonView({ ViewsEcm.TipoProcessoEdit.class, ViewsEcm.NivelAcessoTipoProcessoEdit.class, Views.ProcessoList.class }) | |
| 75 | + @JsonView({ ViewsEcm.TipoProcessoEdit.class, ViewsEcm.NivelAcessoTipoProcessoEdit.class, Views.ProcessoList.class, Views.UnidadeProcessoListView.class }) | |
| 76 | 76 | private Dominio nivelAcesso; |
| 77 | 77 | |
| 78 | 78 | @OneToMany(fetch = FetchType.LAZY, mappedBy = "nivelAcessoTipoProcesso", cascade = CascadeType.ALL) | ... | ... |
cit-ecm-api/src/main/java/br/com/centralit/api/model/Processo.java
| ... | ... | @@ -147,7 +147,7 @@ public class Processo extends PersistentObjectUnidade { |
| 147 | 147 | |
| 148 | 148 | /** Atributo nivelAcesso. */ |
| 149 | 149 | @ManyToOne(fetch = FetchType.LAZY) |
| 150 | - @JsonView({ Views.ProcessoList.class }) | |
| 150 | + @JsonView({ Views.ProcessoList.class, Views.UnidadeProcessoListView.class }) | |
| 151 | 151 | private NivelAcessoTipoProcesso nivelAcesso; |
| 152 | 152 | |
| 153 | 153 | @ManyToOne(fetch = FetchType.LAZY) |
| ... | ... | @@ -171,7 +171,7 @@ public class Processo extends PersistentObjectUnidade { |
| 171 | 171 | |
| 172 | 172 | /** Atributo sigilo. */ |
| 173 | 173 | @ManyToOne(fetch = FetchType.LAZY) |
| 174 | - @JsonView({ Views.ProcessoList.class, Views.UnidadeProcessoListView.class }) | |
| 174 | + @JsonView({ Views.ProcessoList.class }) | |
| 175 | 175 | private Sigilo sigilo; |
| 176 | 176 | |
| 177 | 177 | @ManyToOne(fetch = FetchType.LAZY) | ... | ... |
cit-ecm-api/src/main/java/br/com/centralit/api/model/Sigilo.java
| ... | ... | @@ -65,7 +65,7 @@ public class Sigilo extends PersistentObjectAudit { |
| 65 | 65 | |
| 66 | 66 | /** Atributo tipoSigilo. */ |
| 67 | 67 | @ManyToOne(fetch = FetchType.LAZY) |
| 68 | - @JsonView({ Views.GenericView.class, Views.UnidadeProcessoListView.class }) | |
| 68 | + @JsonView({ Views.GenericView.class}) | |
| 69 | 69 | private Dominio tipoSigilo; |
| 70 | 70 | |
| 71 | 71 | /** Atributo sigiloPrivilegios. */ | ... | ... |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/UnidadeProcessoServiceImpl.java
| ... | ... | @@ -5,6 +5,7 @@ import java.util.Collection; |
| 5 | 5 | import java.util.List; |
| 6 | 6 | |
| 7 | 7 | import org.springframework.beans.factory.annotation.Autowired; |
| 8 | +import org.springframework.security.core.context.SecurityContextHolder; | |
| 8 | 9 | import org.springframework.stereotype.Service; |
| 9 | 10 | |
| 10 | 11 | import br.com.centralit.api.dao.UnidadeProcessoDao; |
| ... | ... | @@ -21,7 +22,9 @@ import br.com.centralit.api.service.UnidadeProcessoService; |
| 21 | 22 | import br.com.centralit.api.service.UnidadeService; |
| 22 | 23 | import br.com.centralit.api.service.UsuarioService; |
| 23 | 24 | import br.com.centralit.api.viewHelper.EnviarProcessoVH; |
| 25 | +import br.com.centralit.framework.model.Dominio; | |
| 24 | 26 | import br.com.centralit.framework.model.Unidade; |
| 27 | +import br.com.centralit.framework.model.Usuario; | |
| 25 | 28 | import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; |
| 26 | 29 | import br.com.centralit.framework.util.UtilColecao; |
| 27 | 30 | import br.com.centralit.framework.util.UtilObjeto; |
| ... | ... | @@ -102,7 +105,7 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces |
| 102 | 105 | /** Atributo historicoAtribuicaoProcessoService. */ |
| 103 | 106 | @Autowired |
| 104 | 107 | private HistoricoAtribuicaoProcessoService historicoAtribuicaoProcessoService; |
| 105 | - | |
| 108 | + | |
| 106 | 109 | /** |
| 107 | 110 | * Responsável pela criação de novas instâncias desta classe. |
| 108 | 111 | * |
| ... | ... | @@ -331,7 +334,9 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces |
| 331 | 334 | */ |
| 332 | 335 | @Override |
| 333 | 336 | public <RT> SearchResult<RT> searchAndCountPorUnidade(ISearch search) { |
| 334 | - return this.unidadeProcessoDao.searchAndCountPorUnidade(search); | |
| 337 | + Dominio dominioStatusProcesso = dominioService.findByChaveAndCodigo(Dominio.TIPO_STATUS_PROCESSO_ECM, Dominio.TIPO_STATUS_PROCESSO_ECM_CONCLUIDO); | |
| 338 | + Usuario usuario = ( (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal() ); | |
| 339 | + return this.unidadeProcessoDao.searchAndCountPorUnidade(search, usuario, dominioStatusProcesso.getId()); | |
| 335 | 340 | } |
| 336 | 341 | |
| 337 | 342 | } |
| 338 | 343 | \ No newline at end of file | ... | ... |
cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java
| ... | ... | @@ -404,7 +404,10 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen |
| 404 | 404 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.TIPO_SUPORTE_DOCUMENTO ", "Tipo suporte de documento", dominio, modulo)); |
| 405 | 405 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DIGITE_PROTOCOLO", "Digite o potocolo", dominio, modulo)); |
| 406 | 406 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.SOBRESTAR_SEM", "Sobrestar", dominio, modulo)); |
| 407 | - | |
| 407 | + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.SOBRESTADA", "Sobrestada", dominio, modulo)); | |
| 408 | + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.SITUACAO_INSTANCIA_TAREFA", "Situação instância tarefa", dominio, modulo)); | |
| 409 | + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.NIVEL_DE_ACESSO", "Nível de acesso", dominio, modulo)); | |
| 410 | + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ASSUNTO_COMPLEMENTAR", "Assunto complementar", dominio, modulo)); | |
| 408 | 411 | } |
| 409 | 412 | |
| 410 | 413 | /** |
| ... | ... | @@ -509,6 +512,9 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen |
| 509 | 512 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.PROCESSO_CONCLUIDO_SUCESSO", "Processo concluído com sucesso!", dominio, modulo)); |
| 510 | 513 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.PROCESSO_SALVO_SUCESSO", "O processo !", dominio, modulo)); |
| 511 | 514 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.NAO_EXISTE_TAREFA_EXECUTAR", "Não existem tarefas a serem executadas!", dominio, modulo)); |
| 512 | - | |
| 515 | + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CONFIRMA_SOBRESTAMENTO_TAREFA", "Confirma o sobrestamento da tarefa?", dominio, modulo)); | |
| 516 | + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.TAREFA_SOBRESTADA_SUCESSO", "Tarefa sobrestada com sucesso!", dominio, modulo)); | |
| 517 | + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CONFIRMA_REATIVACAO_TAREFA", "Confirma reativação da tarefa?", dominio, modulo)); | |
| 518 | + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.TAREFA_REATIVADA", "Tarefa reativada com sucesso", dominio, modulo)); | |
| 513 | 519 | } |
| 514 | 520 | } | ... | ... |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/GerenciarProcessoListUnidadeController.js
| ... | ... | @@ -13,7 +13,7 @@ citApp.controller('GerenciarProcessoListUnidadeController', ['$scope', 'workflow |
| 13 | 13 | title : $translate.instant('ECM.LABEL.TIPOPROCESSO'), |
| 14 | 14 | value : 'processo.tipoProcesso.descricao' |
| 15 | 15 | }, { |
| 16 | - title : $translate.instant('ECM.LABEL.ASSUNTOCOMPLEMENTAR'), | |
| 16 | + title : $translate.instant('ECM.LABEL.ASSUNTO_COMPLEMENTAR'), | |
| 17 | 17 | value : 'processo.assuntoComplementar' |
| 18 | 18 | }, { |
| 19 | 19 | title : $translate.instant('ECM.LABEL.ATRIBUIDOA'), |
| ... | ... | @@ -22,8 +22,8 @@ citApp.controller('GerenciarProcessoListUnidadeController', ['$scope', 'workflow |
| 22 | 22 | title : $translate.instant('LABEL.SITUACAO'), |
| 23 | 23 | value : 'processo.status.descricao' |
| 24 | 24 | }, { |
| 25 | - title : $translate.instant('ECM.LABEL.NIVEL_SIGILO'), | |
| 26 | - value : 'processo.sigilo.tipoSigilo.descricao' | |
| 25 | + title : $translate.instant('ECM.LABEL.NIVEL_DE_ACESSO'), | |
| 26 | + value : 'processo.nivelAcesso.nivelAcesso.descricao' | |
| 27 | 27 | }]; |
| 28 | 28 | |
| 29 | 29 | $scope.filterCriteria = { |
| ... | ... | @@ -32,14 +32,14 @@ citApp.controller('GerenciarProcessoListUnidadeController', ['$scope', 'workflow |
| 32 | 32 | dir : 'asc', |
| 33 | 33 | sort : 'processo.nup', |
| 34 | 34 | limit : 10, |
| 35 | - fields: ['id', 'processo.nup', 'processo.tipoProcesso.descricao', 'processo.assuntoComplementar','usuarioResponsavel.username', 'processo.status.descricao', 'processo.sigilo.tipoSigilo.descricao', 'processo.dataCriacao', 'processo.idProcessInstance', 'processo.dataReferencia', 'processo.assunto'], | |
| 35 | + fields: ['id', 'processo.nup', 'processo.tipoProcesso.descricao', 'processo.assuntoComplementar','usuarioResponsavel.username', 'processo.status.descricao', 'processo.nivelAcesso.nivelAcesso.descricao', 'processo.dataCriacao', 'processo.idProcessInstance', 'processo.dataReferencia', 'processo.assunto'], | |
| 36 | 36 | filters : [ |
| 37 | 37 | { type : 'string', field : 'processo.nup'}, |
| 38 | 38 | { type : 'string', field : 'processo.tipoProcesso.descricao'}, |
| 39 | 39 | { type : 'string', field : 'processo.assuntoComplementar'}, |
| 40 | 40 | { type : 'string', field : 'usuarioResponsavel.username'}, |
| 41 | 41 | { type : 'string', field : 'processo.status.descricao', listaDominio : []}, |
| 42 | - { type : 'string', field : 'processo.sigilo.tipoSigilo.descricao'} | |
| 42 | + { type : 'string', field : 'processo.nivelAcesso.nivelAcesso.descricao'} | |
| 43 | 43 | ] |
| 44 | 44 | }; |
| 45 | 45 | |
| ... | ... | @@ -102,7 +102,6 @@ citApp.controller('GerenciarProcessoListUnidadeController', ['$scope', 'workflow |
| 102 | 102 | , {type: 'string', field: 'workItem.processInstance.businessProcess.description'} |
| 103 | 103 | , {type: 'string', field: 'workItem.processInstance.flowStatus.name'}] |
| 104 | 104 | }; |
| 105 | - | |
| 106 | 105 | $scope.filterCriteriaBusinessProcess.username = filterService.username; |
| 107 | 106 | $scope.filterCriteriaBusinessProcess.groups = filterService.groups; |
| 108 | 107 | } |
| ... | ... | @@ -121,27 +120,44 @@ citApp.controller('GerenciarProcessoListUnidadeController', ['$scope', 'workflow |
| 121 | 120 | }); |
| 122 | 121 | }; |
| 123 | 122 | |
| 124 | - $scope.selecionarTarefa = function(tarefaSelecionada) { | |
| 125 | - //$scope.tarefaSelecionada = tarefaSelecionada; | |
| 126 | - }; | |
| 127 | - | |
| 128 | 123 | function _recuperarPermissoes(idAssignment){ |
| 129 | - $scope.assignments[0].$checked = true; | |
| 130 | 124 | BusinessProcessRepository.getPermissions({id: idAssignment}).then(function(result) { |
| 131 | 125 | $scope.workItem = result.originalElement; |
| 132 | 126 | vincularWorkItemAssignments(); |
| 133 | 127 | $scope.btnAction = !(!$scope.workItem.execute && !$scope.workItem.suspend && !$scope.workItem.delegate && !$scope.workItem.restart && !$scope.workItem.visualize); |
| 134 | 128 | $scope.modelSelecionado.$expandido = !$scope.modelSelecionado.$expandido; |
| 129 | + $scope.modelSelecionado.workItem = $scope.workItem; | |
| 135 | 130 | }); |
| 136 | 131 | }; |
| 137 | 132 | |
| 138 | 133 | function vincularWorkItemAssignments(){ |
| 139 | - $scope.assignments.forEach(function(assignments){ | |
| 140 | - assignments.workItem = $scope.workItem; | |
| 134 | + $scope.assignments.forEach(function(assignment){ | |
| 135 | + assignment.workItem = $scope.workItem; | |
| 136 | + assignment.checked = false; | |
| 137 | + }); | |
| 138 | + $scope.assignments[0].checked = true; | |
| 139 | + }; | |
| 140 | + | |
| 141 | + $scope.selectAssignment = function(assignmentSelect) { | |
| 142 | + $scope.assignments.forEach(function(assignment){ | |
| 143 | + assignment.checked = false; | |
| 144 | + if(assignment.id == assignmentSelect.id){ | |
| 145 | + assignment.checked = true; | |
| 146 | + } | |
| 141 | 147 | }); |
| 142 | 148 | }; |
| 143 | 149 | |
| 150 | + function _getAssignmentSelected() { | |
| 151 | + for(var pos = 0; pos < $scope.assignments.length; pos++){ | |
| 152 | + if($scope.assignments[pos].checked){ | |
| 153 | + $scope.modelSelecionado.workItem = $scope.assignments[pos]; | |
| 154 | + break; | |
| 155 | + } | |
| 156 | + } | |
| 157 | + }; | |
| 158 | + | |
| 144 | 159 | $scope.executarTarefa = function(){ |
| 160 | + _getAssignmentSelected(); | |
| 145 | 161 | if($scope.workItem){ |
| 146 | 162 | var pagina = '/cit-esi-web/assets/js/angular/custom/directive/html/userTask.html'; |
| 147 | 163 | if ($scope.workItem.flowElement.userInterface && $scope.workItem.flowElement.userInterface.executeCustomPage) { |
| ... | ... | @@ -163,11 +179,9 @@ citApp.controller('GerenciarProcessoListUnidadeController', ['$scope', 'workflow |
| 163 | 179 | $scope.showAlert('warning', $translate.instant('ESI.MSG.JA_EXISTE_TELA_TAREFA')); |
| 164 | 180 | return ; |
| 165 | 181 | } |
| 166 | - | |
| 167 | - $scope.processInstance = $scope.workItem.processInstance; | |
| 182 | + $scope.processInstance = $scope.modelSelecionado.workItem.processInstance; | |
| 168 | 183 | $scope.processInstance.collapsed = true; |
| 169 | 184 | $scope.processInstance.collapsedError = true; |
| 170 | - | |
| 171 | 185 | $rootScope.task = $scope.workItem; |
| 172 | 186 | $rootScope.processInstance = $scope.processInstance; |
| 173 | 187 | $rootScope.controllerScope = $scope; |
| ... | ... | @@ -179,5 +193,70 @@ citApp.controller('GerenciarProcessoListUnidadeController', ['$scope', 'workflow |
| 179 | 193 | $scope.addNewWorkspace($translate.instant('ESI.PERMISSAO.EXECUTAR')+" "+$translate.instant('ESI.TAREFA').toLowerCase()+" '"+nome+"'", pagina, true, 'mod-red-dark', $scope.workItem); |
| 180 | 194 | }; |
| 181 | 195 | |
| 196 | + $scope.suspenderProcesso = function(){ | |
| 197 | + _getAssignmentSelected(); | |
| 198 | + $scope.$openModalConfirm({ | |
| 199 | + message: $translate.instant('ECM.MSG.CONFIRMA_SOBRESTAMENTO_TAREFA'), | |
| 200 | + callback: function () { | |
| 201 | + $scope.$modalConfirmInstance.dismiss('cancel'); | |
| 202 | + $scope.setLoading(true); | |
| 203 | + RuntimeManagerRepository.suspendProcessInstance($scope.modelSelecionado.workItem.processInstance.id).then(function(result) { | |
| 204 | + $scope.setLoading(false); | |
| 205 | + $scope.modelSelecionado.$expandido = !$scope.modelSelecionado.$expandido; | |
| 206 | + $scope.modelSelecionado.$show = !$scope.modelSelecionado.$show; | |
| 207 | + $scope.showAlert("success","ECM.MSG.TAREFA_SOBRESTADA_SUCESSO",""); | |
| 208 | + }); | |
| 209 | + } | |
| 210 | + }); | |
| 211 | + }; | |
| 212 | + | |
| 213 | + $scope.reativarProcesso = function(){ | |
| 214 | + _getAssignmentSelected(); | |
| 215 | + $scope.$openModalConfirm({ | |
| 216 | + message: $translate.instant('ECM.MSG.CONFIRMA_REATIVACAO_TAREFA'), | |
| 217 | + callback: function () { | |
| 218 | + $scope.$modalConfirmInstance.dismiss('cancel'); | |
| 219 | + $scope.setLoading(true); | |
| 220 | + RuntimeManagerRepository.restartProcessInstance($scope.modelSelecionado.workItem.processInstance.id).then(function(result) { | |
| 221 | + $scope.setLoading(false); | |
| 222 | + $scope.modelSelecionado.$expandido = !$scope.modelSelecionado.$expandido; | |
| 223 | + $scope.modelSelecionado.$show = !$scope.modelSelecionado.$show; | |
| 224 | + $scope.showAlert("success","ECM.MSG.TAREFA_REATIVADA",""); | |
| 225 | + }); | |
| 226 | + } | |
| 227 | + }); | |
| 228 | + }; | |
| 229 | + | |
| 230 | + $scope.visualizarFluxo = function(){ | |
| 231 | + _getAssignmentSelected(); | |
| 232 | + var pagina = '/cit-esi-web/assets/js/angular/custom/directive/html/visualizacaoEsi.html'; | |
| 233 | + if (appService.existsWorkspace(pagina)) { | |
| 234 | + $scope.showAlert('warning', $translate.instant('ESI.MSG.JA_EXISTE_TELA_VISUALIZACAO')); | |
| 235 | + return ; | |
| 236 | + } | |
| 237 | + $scope.tarefa = $scope.modelSelecionado.workItem; | |
| 238 | + $scope.instancia = $scope.tarefa.processInstance; | |
| 239 | + $rootScope.tarefa = $scope.tarefa; | |
| 240 | + $rootScope.instancia = $scope.instancia; | |
| 241 | + $rootScope.controllerScope = $scope; | |
| 242 | + $scope.addNewWorkspace($scope.modelSelecionado.workItem.processInstance.businessProcess.description, pagina, true, 'mod-red-dark', $scope.tarefa); | |
| 243 | + }; | |
| 244 | + | |
| 245 | + $scope.consultarHistorico = function(){ | |
| 246 | + _getAssignmentSelected(); | |
| 247 | + var pagina = '/cit-esi-web/assets/js/angular/custom/directive/html/consultaLog.html'; | |
| 248 | + if (appService.existsWorkspace(pagina)) { | |
| 249 | + $scope.showAlert('warning', $translate.instant('ESI.MSG.JA_EXISTE_TELA_HISTORICO')); | |
| 250 | + return ; | |
| 251 | + } | |
| 252 | + $scope.processInstance = $scope.modelSelecionado.workItem.processInstance; | |
| 253 | + $rootScope.processInstance = $scope.processInstance; | |
| 254 | + $rootScope.controllerScope = $scope; | |
| 255 | + $scope.processInstance.collapsed = true; | |
| 256 | + $scope.processInstance.collapsedError = true; | |
| 257 | + $scope.processInstance.instances = []; | |
| 258 | + $scope.addNewWorkspace($scope.modelSelecionado.workItem.processInstance.businessProcess.description, pagina, true, 'mod-red-dark', $scope.processInstance); | |
| 259 | + }; | |
| 260 | + | |
| 182 | 261 | carregarDominiosStatusProcesso(); |
| 183 | 262 | }]); |
| 184 | 263 | \ No newline at end of file | ... | ... |
cit-ecm-web/src/main/webapp/html/gerenciarProcesso/tarefasPorProcesso.html
| 1 | 1 | |
| 2 | -<fieldset style="margin-left: 5%; width: 90%" ng-if="modelSelecionado.$expandido"> | |
| 2 | +<fieldset style="margin-left: 5%; width: 90%; margin-top: 10px;" ng-if="modelSelecionado.$expandido"> | |
| 3 | 3 | |
| 4 | 4 | <legend> |
| 5 | 5 | <div class="pull-left" style="font-size : 14px; !important"> |
| ... | ... | @@ -17,27 +17,27 @@ |
| 17 | 17 | <div class="panel panel-default"> |
| 18 | 18 | <div class="panel-heading clearfix" ng-if="btnAction"> |
| 19 | 19 | <button class="btn btn-clear" title="{{$translate.instant('LABEL.EXECUTAR')}}" alt="{{$translate.instant('LABEL.EXECUTAR')}}" type="button" |
| 20 | - ng-click="executarTarefa();" > | |
| 20 | + ng-click="executarTarefa();" ng-if="modelSelecionado.workItem.processInstance.status != 'SUSPENDED'" > | |
| 21 | 21 | <i class="fa fa-play-circle-o green"></i> |
| 22 | 22 | <translate>LABEL.EXECUTAR</translate> |
| 23 | 23 | </button> |
| 24 | 24 | <button class="btn btn-clear" title="{{$translate.instant('ECM.LABEL.SOBRESTAR_SEM')}}" alt="{{$translate.instant('ECM.LABEL.SOBRESTAR_SEM')}}" type="button" |
| 25 | - ng-click="" > | |
| 25 | + ng-click="suspenderProcesso();" ng-if="modelSelecionado.workItem.processInstance.status != 'SUSPENDED'"> | |
| 26 | 26 | <i class="fa fa-pause red"></i> |
| 27 | 27 | <translate>ECM.LABEL.SOBRESTAR_SEM</translate> |
| 28 | 28 | </button> |
| 29 | 29 | <button class="btn btn-clear" title="{{$translate.instant('LABEL.REATIVAR')}}" alt="{{$translate.instant('LABEL.REATIVAR')}}" type="button" |
| 30 | - ng-click="" > | |
| 30 | + ng-click="reativarProcesso();" ng-if="modelSelecionado.workItem.processInstance.status == 'SUSPENDED'"> | |
| 31 | 31 | <i class="fa fa-play green"></i> |
| 32 | 32 | <translate>LABEL.REATIVAR</translate> |
| 33 | 33 | </button> |
| 34 | 34 | <button class="btn btn-clear" title="{{$translate.instant('PORTAL.LABEL.VISUALIZAR_FLUXO')}}" alt="{{$translate.instant('PORTAL.LABEL.VISUALIZAR_FLUXO')}}" type="button" |
| 35 | - ng-click="" > | |
| 35 | + ng-click="visualizarFluxo();" > | |
| 36 | 36 | <i class="fa fa-search blue"></i> |
| 37 | 37 | <translate>PORTAL.LABEL.VISUALIZAR_FLUXO</translate> |
| 38 | 38 | </button> |
| 39 | 39 | <button class="btn btn-clear" title="{{$translate.instant('ESI.LOG.CONSULTA_LOG')}}" alt="{{$translate.instant('ESI.LOG.CONSULTA_LOG')}}" type="button" |
| 40 | - ng-click="" > | |
| 40 | + ng-click="consultarHistorico();" > | |
| 41 | 41 | <i class="fa fa-history yellow-dark"></i> |
| 42 | 42 | <translate>ESI.LOG.CONSULTA_LOG</translate> |
| 43 | 43 | </button> |
| ... | ... | @@ -49,13 +49,13 @@ |
| 49 | 49 | <tr> |
| 50 | 50 | <th style="width: 5%;"></th> |
| 51 | 51 | <th colspan="2" style="width: 60%;"><small><translate>ESI.TAREFA</translate></small></th> |
| 52 | - <th style="align:center;"><small><translate>PORTAL.LABEL.SITUACAO_INSTANCIA</translate></small></th> | |
| 52 | + <th style="align:center;"><small><translate>ECM.LABEL.SITUACAO_INSTANCIA_TAREFA</translate></small></th> | |
| 53 | 53 | </tr> |
| 54 | 54 | </thead> |
| 55 | 55 | <tbody> |
| 56 | 56 | <tr ng-repeat="assignment in assignments"> |
| 57 | 57 | <td class="text-center" style="width: 5%;"> |
| 58 | - <input type="radio" name="modelChecked" ng-value="true" ng-model="$parent.tarefaSelecionada" ng-click="selecionarTarefa(assigment)"/> | |
| 58 | + <input type="radio" id="{{assignment.id}}" name="assignments" ng-checked="assignment.checked === true" ng-click="selectAssignment(assignment);" /> | |
| 59 | 59 | </td> |
| 60 | 60 | <td class="text-center" style="width: 5%;"> |
| 61 | 61 | <span class="small green" >{{assignment.id}}</span> |
| ... | ... | @@ -74,7 +74,7 @@ |
| 74 | 74 | <label ng-show="assignment.workItem.processInstance.status == 'SUSPENDED'"> |
| 75 | 75 | <span class="small badge black" style="background-color: red !important"> |
| 76 | 76 | <b><font color="white"> |
| 77 | - <translate>ESI.ENUMERADO.SITUACAO_INSTANCIA_SUSPENSA</translate> | |
| 77 | + <translate>ECM.LABEL.SOBRESTADA</translate> | |
| 78 | 78 | </b></font> |
| 79 | 79 | </span> |
| 80 | 80 | </label> | ... | ... |