Commit 59527fab0d29ddaa9fff4dfb809a64802d263ab1
1 parent
fbcb9b03
Exists in
master
Redmine #285Reabertura de Processo
Showing
16 changed files
with
196 additions
and
21 deletions
Show diff stats
cit-ecm-api/src/main/java/br/com/centralit/api/dao/ReabrirProcessoDao.java
1 | package br.com.centralit.api.dao; | 1 | package br.com.centralit.api.dao; |
2 | 2 | ||
3 | +import java.util.Collection; | ||
4 | + | ||
5 | +import br.com.centralit.api.model.ReabrirProcesso; | ||
3 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; | 6 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; |
4 | 7 | ||
5 | 8 | ||
@@ -25,4 +28,17 @@ import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; | @@ -25,4 +28,17 @@ import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; | ||
25 | */ | 28 | */ |
26 | public interface ReabrirProcessoDao extends CitGenericDAO { | 29 | public interface ReabrirProcessoDao extends CitGenericDAO { |
27 | 30 | ||
31 | + /** | ||
32 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
33 | + * | ||
34 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
35 | + * | ||
36 | + * Método responsável por | ||
37 | + * | ||
38 | + * @author maycon.silva | ||
39 | + * | ||
40 | + * @return | ||
41 | + */ | ||
42 | + Collection<ReabrirProcesso> findSolicitacaoEmAberto(); | ||
43 | + | ||
28 | } | 44 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/ProcessoDaoHibernate.java
@@ -299,17 +299,21 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | @@ -299,17 +299,21 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | ||
299 | @Override | 299 | @Override |
300 | public Collection<Processo> autoCompleteProcessoConcluidoByNup(String nup) { | 300 | public Collection<Processo> autoCompleteProcessoConcluidoByNup(String nup) { |
301 | 301 | ||
302 | - Search search = new SearchSeven(this.persistentClass); | 302 | + Criteria criteriaProcesso = this.newCriteria(Processo.class); |
303 | 303 | ||
304 | - search.addFilterOr(Filter.ilike("nup", "%" + nup + "%"), Filter.ilike("nup", "%" + nup + "%")); | ||
305 | - | ||
306 | - search.addFilterEqual("status.codigo", 1L); | 304 | + criteriaProcesso.add(Restrictions.ilike("nup", "%" + nup + "%")); |
307 | 305 | ||
308 | - search.addSortDesc("id"); | 306 | + criteriaProcesso.createAlias("status", "status", JoinType.LEFT_OUTER_JOIN); |
309 | 307 | ||
310 | - search.setMaxResults(10); | 308 | + criteriaProcesso.add(Restrictions.eq("status.codigo", 1L)); |
311 | 309 | ||
312 | - return this.search(search); | 310 | + this.filterProcessoPermissaoUsuario(criteriaProcesso); |
311 | + | ||
312 | + criteriaProcesso.addOrder(Order.desc("id")); | ||
313 | + | ||
314 | + criteriaProcesso.setMaxResults(10); | ||
315 | + | ||
316 | + return criteriaProcesso.list(); | ||
313 | } | 317 | } |
314 | 318 | ||
315 | @Override | 319 | @Override |
cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/ReabrirProcessoDaoHibernate.java
1 | package br.com.centralit.api.dao.impl; | 1 | package br.com.centralit.api.dao.impl; |
2 | 2 | ||
3 | +import java.util.Collection; | ||
4 | + | ||
3 | import org.springframework.stereotype.Repository; | 5 | import org.springframework.stereotype.Repository; |
4 | 6 | ||
7 | +import com.googlecode.genericdao.search.Filter; | ||
8 | + | ||
5 | import br.com.centralit.api.dao.ReabrirProcessoDao; | 9 | import br.com.centralit.api.dao.ReabrirProcessoDao; |
6 | import br.com.centralit.api.model.ReabrirProcesso; | 10 | import br.com.centralit.api.model.ReabrirProcesso; |
7 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; | 11 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; |
12 | +import br.com.centralit.framework.dao.arquitetura.SearchSeven; | ||
8 | 13 | ||
9 | 14 | ||
10 | /** | 15 | /** |
@@ -38,4 +43,17 @@ public class ReabrirProcessoDaoHibernate extends CitGenericDAOImpl implements Re | @@ -38,4 +43,17 @@ public class ReabrirProcessoDaoHibernate extends CitGenericDAOImpl implements Re | ||
38 | super(ReabrirProcesso.class); | 43 | super(ReabrirProcesso.class); |
39 | } | 44 | } |
40 | 45 | ||
46 | + @Override | ||
47 | + public Collection<ReabrirProcesso> findSolicitacaoEmAberto() { | ||
48 | + | ||
49 | + SearchSeven searchSeven = new SearchSeven(); | ||
50 | + | ||
51 | + searchSeven.addFilter(Filter.equal("validado", false)); | ||
52 | + | ||
53 | + return super.search(searchSeven); | ||
54 | + | ||
55 | + } | ||
56 | + | ||
57 | + | ||
58 | + | ||
41 | } | 59 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/model/AcaoHistoricoAlteracaoProcesso.java
@@ -76,6 +76,10 @@ public class AcaoHistoricoAlteracaoProcesso extends PersistentObject { | @@ -76,6 +76,10 @@ public class AcaoHistoricoAlteracaoProcesso extends PersistentObject { | ||
76 | public static String INCLUSAO_PROCESSO_ACAO = "Inclusão do processo"; | 76 | public static String INCLUSAO_PROCESSO_ACAO = "Inclusão do processo"; |
77 | public static String INCLUSAO_PROCESSO_CHAVE = "INCLUSAO_PROCESSO"; | 77 | public static String INCLUSAO_PROCESSO_CHAVE = "INCLUSAO_PROCESSO"; |
78 | 78 | ||
79 | + public static String REABERTURA_DE_PROCESSO_DESCRICAO = "Processo <<protocolo>> reaberto."; | ||
80 | + public static String REABERTURA_DE_PROCESSO_ACAO = "Reabertura de processo"; | ||
81 | + public static String REABERTURA_DE_PROCESSO_CHAVE = "REABERTURA_DE_PROCESSO"; | ||
82 | + | ||
79 | 83 | ||
80 | public AcaoHistoricoAlteracaoProcesso() { | 84 | public AcaoHistoricoAlteracaoProcesso() { |
81 | 85 |
cit-ecm-api/src/main/java/br/com/centralit/api/model/ReabrirProcesso.java
@@ -75,6 +75,7 @@ public class ReabrirProcesso extends PersistentObjectUnidade { | @@ -75,6 +75,7 @@ public class ReabrirProcesso extends PersistentObjectUnidade { | ||
75 | private Dominio status; | 75 | private Dominio status; |
76 | 76 | ||
77 | @Transient | 77 | @Transient |
78 | + @JsonView({ Views.ReabrirProcessoListView.class}) | ||
78 | private boolean validado; | 79 | private boolean validado; |
79 | 80 | ||
80 | 81 | ||
@@ -192,7 +193,6 @@ public class ReabrirProcesso extends PersistentObjectUnidade { | @@ -192,7 +193,6 @@ public class ReabrirProcesso extends PersistentObjectUnidade { | ||
192 | * | 193 | * |
193 | * @return <code>boolean</code> | 194 | * @return <code>boolean</code> |
194 | */ | 195 | */ |
195 | - @JsonView({ Views.ReabrirProcessoListView.class}) | ||
196 | public boolean isValidado() { | 196 | public boolean isValidado() { |
197 | 197 | ||
198 | return validado; | 198 | return validado; |
cit-ecm-api/src/main/java/br/com/centralit/api/service/HistoricoAlteracaoProcessoService.java
@@ -6,6 +6,7 @@ import br.com.centralit.api.model.Assinatura; | @@ -6,6 +6,7 @@ import br.com.centralit.api.model.Assinatura; | ||
6 | import br.com.centralit.api.model.HistoricoAlteracaoProcesso; | 6 | import br.com.centralit.api.model.HistoricoAlteracaoProcesso; |
7 | import br.com.centralit.api.model.Processo; | 7 | import br.com.centralit.api.model.Processo; |
8 | import br.com.centralit.api.model.UnidadeProcesso; | 8 | import br.com.centralit.api.model.UnidadeProcesso; |
9 | +import br.com.centralit.framework.model.Unidade; | ||
9 | import br.com.centralit.framework.service.arquitetura.GenericService; | 10 | import br.com.centralit.framework.service.arquitetura.GenericService; |
10 | 11 | ||
11 | /** | 12 | /** |
@@ -133,4 +134,13 @@ public interface HistoricoAlteracaoProcessoService extends GenericService<Histor | @@ -133,4 +134,13 @@ public interface HistoricoAlteracaoProcessoService extends GenericService<Histor | ||
133 | * @param unidadeProcesso | 134 | * @param unidadeProcesso |
134 | */ | 135 | */ |
135 | void gerarHistoricoCapturaDeProcesso(UnidadeProcesso unidadeProcesso); | 136 | void gerarHistoricoCapturaDeProcesso(UnidadeProcesso unidadeProcesso); |
137 | + | ||
138 | + /** * | ||
139 | + * Método responsável por gerar historico de reabertura do processo | ||
140 | + * | ||
141 | + * @author maycon.silva | ||
142 | + * | ||
143 | + * @param processo | ||
144 | + */ | ||
145 | + void gerarHistoricoReaberturProcesso(Processo processo, Unidade unidade); | ||
136 | } | 146 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/service/ReabrirProcessoService.java
1 | package br.com.centralit.api.service; | 1 | package br.com.centralit.api.service; |
2 | 2 | ||
3 | +import java.util.Collection; | ||
4 | + | ||
3 | import br.com.centralit.api.model.ReabrirProcesso; | 5 | import br.com.centralit.api.model.ReabrirProcesso; |
4 | import br.com.centralit.framework.service.arquitetura.GenericService; | 6 | import br.com.centralit.framework.service.arquitetura.GenericService; |
5 | 7 | ||
@@ -25,5 +27,18 @@ import br.com.centralit.framework.service.arquitetura.GenericService; | @@ -25,5 +27,18 @@ import br.com.centralit.framework.service.arquitetura.GenericService; | ||
25 | * | 27 | * |
26 | */ | 28 | */ |
27 | public interface ReabrirProcessoService extends GenericService<ReabrirProcesso, Long> { | 29 | public interface ReabrirProcessoService extends GenericService<ReabrirProcesso, Long> { |
30 | + | ||
31 | + /** | ||
32 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
33 | + * | ||
34 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
35 | + * | ||
36 | + * Método responsável por | ||
37 | + * | ||
38 | + * @author maycon.silva | ||
39 | + * | ||
40 | + * @return | ||
41 | + */ | ||
42 | + Collection<ReabrirProcesso> findSolicitacaoEmAberto(); | ||
28 | 43 | ||
29 | } | 44 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/HistoricoAlteracaoProcessoServiceImpl.java
@@ -20,6 +20,7 @@ import br.com.centralit.api.model.UnidadeProcesso; | @@ -20,6 +20,7 @@ import br.com.centralit.api.model.UnidadeProcesso; | ||
20 | import br.com.centralit.api.service.AcaoHistoricoAlteracaoProcessoService; | 20 | import br.com.centralit.api.service.AcaoHistoricoAlteracaoProcessoService; |
21 | import br.com.centralit.api.service.HistoricoAlteracaoProcessoService; | 21 | import br.com.centralit.api.service.HistoricoAlteracaoProcessoService; |
22 | import br.com.centralit.api.service.ProcessoService; | 22 | import br.com.centralit.api.service.ProcessoService; |
23 | +import br.com.centralit.framework.model.Unidade; | ||
23 | import br.com.centralit.framework.model.Usuario; | 24 | import br.com.centralit.framework.model.Usuario; |
24 | import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; | 25 | import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; |
25 | import br.com.centralit.framework.util.UtilObjeto; | 26 | import br.com.centralit.framework.util.UtilObjeto; |
@@ -312,4 +313,25 @@ public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl<Hi | @@ -312,4 +313,25 @@ public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl<Hi | ||
312 | 313 | ||
313 | this.saveWithParams(hap); | 314 | this.saveWithParams(hap); |
314 | } | 315 | } |
316 | + | ||
317 | + public void gerarHistoricoReaberturProcesso(Processo processo, Unidade unidade){ | ||
318 | + | ||
319 | + Usuario usuario = (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); | ||
320 | + Map<String, String> mapaAtributos = new HashMap<String, String>(); | ||
321 | + mapaAtributos.put("protocolo", processo.getNup()); | ||
322 | + mapaAtributos.put("unidade", unidade.getSigla()); | ||
323 | + | ||
324 | + HistoricoAlteracaoProcesso hap = new HistoricoAlteracaoProcesso( | ||
325 | + processo, | ||
326 | + Calendar.getInstance(), | ||
327 | + usuario.getUnidade().getNome(), | ||
328 | + usuario.getUsername(), | ||
329 | + null, | ||
330 | + AcaoHistoricoAlteracaoProcesso.REABERTURA_DE_PROCESSO_DESCRICAO, | ||
331 | + AcaoHistoricoAlteracaoProcesso.REABERTURA_DE_PROCESSO_CHAVE, null, mapaAtributos); | ||
332 | + hap.setAutor(usuario); | ||
333 | + | ||
334 | + this.saveWithParams(hap); | ||
335 | + | ||
336 | + } | ||
315 | } | 337 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/ProcessoServiceImpl.java
@@ -1246,11 +1246,17 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | @@ -1246,11 +1246,17 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | ||
1246 | 1246 | ||
1247 | final List<EnvironmentVariable> variaveis = new ArrayList<EnvironmentVariable>(); | 1247 | final List<EnvironmentVariable> variaveis = new ArrayList<EnvironmentVariable>(); |
1248 | 1248 | ||
1249 | - processoReabertura.setStatus(this.dominioService.findByChaveAndCodigo("statusProcesso", 1L)); | 1249 | + processoReabertura.setStatus(this.dominioService.findByChaveAndCodigo("statusProcesso", 2L)); |
1250 | + | ||
1251 | + UnidadeProcesso unidadeProcesso = unidadeProcessoService.obterPorUnidadeEProcesso(processoReabertura.getId(), unidade.getId()); | ||
1252 | + | ||
1253 | + unidadeProcesso.setConcluido(false); | ||
1250 | 1254 | ||
1251 | variaveis.add(new EnvironmentVariable("grupoPadrao", VariableTypeEnum.TEXT, unidadeReabertura.getGrupo().getSigla(), false)); | 1255 | variaveis.add(new EnvironmentVariable("grupoPadrao", VariableTypeEnum.TEXT, unidadeReabertura.getGrupo().getSigla(), false)); |
1252 | 1256 | ||
1253 | - reopenProcessInstance(processoReabertura.getIdProcessInstance(), variaveis); | 1257 | + reopenProcessInstance(processoReabertura.getIdProcessInstance(), variaveis); |
1258 | + | ||
1259 | + historicoAlteracaoProcessoService.gerarHistoricoReaberturProcesso(processo, unidade); | ||
1254 | } | 1260 | } |
1255 | 1261 | ||
1256 | /** | 1262 | /** |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/ReabrirProcessoServiceImpl.java
1 | package br.com.centralit.api.service.impl; | 1 | package br.com.centralit.api.service.impl; |
2 | 2 | ||
3 | import java.util.ArrayList; | 3 | import java.util.ArrayList; |
4 | +import java.util.Collection; | ||
4 | import java.util.LinkedList; | 5 | import java.util.LinkedList; |
5 | 6 | ||
6 | import org.springframework.beans.factory.annotation.Autowired; | 7 | import org.springframework.beans.factory.annotation.Autowired; |
@@ -9,6 +10,7 @@ import org.springframework.stereotype.Service; | @@ -9,6 +10,7 @@ import org.springframework.stereotype.Service; | ||
9 | import br.com.centralit.api.dao.ReabrirProcessoDao; | 10 | import br.com.centralit.api.dao.ReabrirProcessoDao; |
10 | import br.com.centralit.api.model.ReabrirProcesso; | 11 | import br.com.centralit.api.model.ReabrirProcesso; |
11 | import br.com.centralit.api.service.DominioService; | 12 | import br.com.centralit.api.service.DominioService; |
13 | +import br.com.centralit.api.service.GrupoService; | ||
12 | import br.com.centralit.api.service.NotificacaoService; | 14 | import br.com.centralit.api.service.NotificacaoService; |
13 | import br.com.centralit.api.service.ProcessoService; | 15 | import br.com.centralit.api.service.ProcessoService; |
14 | import br.com.centralit.api.service.ReabrirProcessoService; | 16 | import br.com.centralit.api.service.ReabrirProcessoService; |
@@ -16,9 +18,12 @@ import br.com.centralit.api.service.TemporalidadeService; | @@ -16,9 +18,12 @@ import br.com.centralit.api.service.TemporalidadeService; | ||
16 | import br.com.centralit.api.service.UnidadeProcessoService; | 18 | import br.com.centralit.api.service.UnidadeProcessoService; |
17 | import br.com.centralit.api.service.UnidadeService; | 19 | import br.com.centralit.api.service.UnidadeService; |
18 | import br.com.centralit.framework.model.Dominio; | 20 | import br.com.centralit.framework.model.Dominio; |
21 | +import br.com.centralit.framework.model.Grupo; | ||
19 | import br.com.centralit.framework.model.Notificacao; | 22 | import br.com.centralit.framework.model.Notificacao; |
23 | +import br.com.centralit.framework.model.NotificacaoGrupo; | ||
20 | import br.com.centralit.framework.model.NotificacaoUsuario; | 24 | import br.com.centralit.framework.model.NotificacaoUsuario; |
21 | import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; | 25 | import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; |
26 | +import br.com.centralit.framework.util.UtilColecao; | ||
22 | 27 | ||
23 | /** | 28 | /** |
24 | * <p> | 29 | * <p> |
@@ -55,6 +60,10 @@ import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; | @@ -55,6 +60,10 @@ import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; | ||
55 | @Service("reabrirProcessoServiceImpl") | 60 | @Service("reabrirProcessoServiceImpl") |
56 | public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProcesso, Long> implements ReabrirProcessoService { | 61 | public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProcesso, Long> implements ReabrirProcessoService { |
57 | 62 | ||
63 | + private static final String SOLICITAÇÃO_DE_REABERTURA = "Solicitação de Reabertura"; | ||
64 | + | ||
65 | + private static final String PROTOCOLO = "PROTOCOLO"; | ||
66 | + | ||
58 | /** Atributo reabrirProcessoDao. */ | 67 | /** Atributo reabrirProcessoDao. */ |
59 | private ReabrirProcessoDao reabrirProcessoDao; | 68 | private ReabrirProcessoDao reabrirProcessoDao; |
60 | 69 | ||
@@ -76,6 +85,10 @@ public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProces | @@ -76,6 +85,10 @@ public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProces | ||
76 | @Autowired | 85 | @Autowired |
77 | private NotificacaoService notificacaoService; | 86 | private NotificacaoService notificacaoService; |
78 | 87 | ||
88 | + /** Atributo grupoService. */ | ||
89 | + @Autowired | ||
90 | + private GrupoService grupoService; | ||
91 | + | ||
79 | @Autowired | 92 | @Autowired |
80 | public ReabrirProcessoServiceImpl( ReabrirProcessoDao reabrirProcessoDao ) { | 93 | public ReabrirProcessoServiceImpl( ReabrirProcessoDao reabrirProcessoDao ) { |
81 | 94 | ||
@@ -94,6 +107,8 @@ public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProces | @@ -94,6 +107,8 @@ public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProces | ||
94 | 107 | ||
95 | reabrirProcesso = super.save(reabrirProcesso); | 108 | reabrirProcesso = super.save(reabrirProcesso); |
96 | 109 | ||
110 | + this.enviarNotificacaoReabertura(reabrirProcesso); | ||
111 | + | ||
97 | return reabrirProcesso; | 112 | return reabrirProcesso; |
98 | } | 113 | } |
99 | 114 | ||
@@ -109,9 +124,11 @@ public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProces | @@ -109,9 +124,11 @@ public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProces | ||
109 | if (reabrirProcesso.getStatus().getCodigo().equals(2L)) { | 124 | if (reabrirProcesso.getStatus().getCodigo().equals(2L)) { |
110 | 125 | ||
111 | this.processoService.reopenProcessIntance(reabrirProcesso.getProcesso(), reabrirProcesso.getUnidade()); | 126 | this.processoService.reopenProcessIntance(reabrirProcesso.getProcesso(), reabrirProcesso.getUnidade()); |
127 | + | ||
128 | + | ||
112 | } | 129 | } |
113 | 130 | ||
114 | - this.enviarNotificacaoReabertura(reabrirProcesso); | 131 | + this.enviarNotificacaoStatusReabertura(reabrirProcesso); |
115 | 132 | ||
116 | } | 133 | } |
117 | 134 | ||
@@ -122,6 +139,37 @@ public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProces | @@ -122,6 +139,37 @@ public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProces | ||
122 | 139 | ||
123 | StringBuilder sb = new StringBuilder(); | 140 | StringBuilder sb = new StringBuilder(); |
124 | 141 | ||
142 | + sb.append("Foi aberta uma solicitação de reabertura para o proceso ").append(reabrirProcesso.getProcesso().getNup()); | ||
143 | + | ||
144 | + Dominio tipoNotificacao = this.dominioService.findByChaveAndCodigo("tipoNotificacao", 4L); | ||
145 | + | ||
146 | + Dominio tipoPrioridade = this.dominioService.findByChaveAndCodigo("tipoPrioridade", 2L); | ||
147 | + | ||
148 | + Notificacao notificacao = new Notificacao(SOLICITAÇÃO_DE_REABERTURA, sb.toString(), tipoNotificacao, tipoPrioridade, null, null, null); | ||
149 | + | ||
150 | + Collection<Grupo> grupos = this.grupoService.findGrupoPorNomePrivilegio(PROTOCOLO); | ||
151 | + | ||
152 | + if (!UtilColecao.isVazio(grupos)) { | ||
153 | + | ||
154 | + notificacao.setNotificacaoGrupos(new LinkedList<NotificacaoGrupo>()); | ||
155 | + | ||
156 | + for (Grupo grupo : grupos) { | ||
157 | + | ||
158 | + NotificacaoGrupo notificacaoGrupo = new NotificacaoGrupo(grupo, notificacao); | ||
159 | + | ||
160 | + notificacao.getNotificacaoGrupos().add(notificacaoGrupo); | ||
161 | + } | ||
162 | + | ||
163 | + } | ||
164 | + | ||
165 | + this.notificacaoService.save(notificacao); | ||
166 | + | ||
167 | + } | ||
168 | + | ||
169 | + private void enviarNotificacaoStatusReabertura(ReabrirProcesso reabrirProcesso) { | ||
170 | + | ||
171 | + StringBuilder sb = new StringBuilder(); | ||
172 | + | ||
125 | sb.append("A sua solicitação de reabertura para o proceso ").append(reabrirProcesso.getProcesso().getNup()).append(" foi "); | 173 | sb.append("A sua solicitação de reabertura para o proceso ").append(reabrirProcesso.getProcesso().getNup()).append(" foi "); |
126 | 174 | ||
127 | if (reabrirProcesso.getStatus().getCodigo().equals(2L)) { | 175 | if (reabrirProcesso.getStatus().getCodigo().equals(2L)) { |
@@ -147,5 +195,9 @@ public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProces | @@ -147,5 +195,9 @@ public class ReabrirProcessoServiceImpl extends GenericServiceImpl<ReabrirProces | ||
147 | 195 | ||
148 | this.notificacaoService.save(notificacao); | 196 | this.notificacaoService.save(notificacao); |
149 | } | 197 | } |
198 | + | ||
199 | + public Collection<ReabrirProcesso> findSolicitacaoEmAberto(){ | ||
200 | + return reabrirProcessoDao.findSolicitacaoEmAberto(); | ||
201 | + } | ||
150 | 202 | ||
151 | } | 203 | } |
cit-ecm-web/src/main/java/br/com/centralit/controller/ReabrirProcessoController.java
1 | package br.com.centralit.controller; | 1 | package br.com.centralit.controller; |
2 | 2 | ||
3 | +import java.util.Collection; | ||
4 | + | ||
3 | import org.springframework.beans.factory.annotation.Autowired; | 5 | import org.springframework.beans.factory.annotation.Autowired; |
4 | import org.springframework.stereotype.Controller; | 6 | import org.springframework.stereotype.Controller; |
5 | import org.springframework.web.bind.annotation.RequestMapping; | 7 | import org.springframework.web.bind.annotation.RequestMapping; |
8 | +import org.springframework.web.bind.annotation.RequestMethod; | ||
9 | +import org.springframework.web.bind.annotation.RequestParam; | ||
10 | +import org.springframework.web.bind.annotation.ResponseBody; | ||
6 | 11 | ||
7 | import br.com.centralit.api.framework.json.ViewsEcm; | 12 | import br.com.centralit.api.framework.json.ViewsEcm; |
13 | +import br.com.centralit.api.model.Processo; | ||
8 | import br.com.centralit.api.model.ReabrirProcesso; | 14 | import br.com.centralit.api.model.ReabrirProcesso; |
9 | import br.com.centralit.api.service.ReabrirProcessoService; | 15 | import br.com.centralit.api.service.ReabrirProcessoService; |
10 | import br.com.centralit.framework.controller.GenericController; | 16 | import br.com.centralit.framework.controller.GenericController; |
17 | +import br.com.centralit.framework.json.ResponseBodyWrapper; | ||
18 | +import br.com.centralit.framework.view.ResultResponseVH; | ||
11 | 19 | ||
12 | /** | 20 | /** |
13 | * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | 21 | * <p><img src="http://centralit.com.br/images/logo_central.png"></p> |
@@ -48,6 +56,19 @@ public class ReabrirProcessoController extends GenericController<ReabrirProcesso | @@ -48,6 +56,19 @@ public class ReabrirProcessoController extends GenericController<ReabrirProcesso | ||
48 | 56 | ||
49 | this.reabrirProcessoService = reabrirProcessoService; | 57 | this.reabrirProcessoService = reabrirProcessoService; |
50 | } | 58 | } |
59 | + | ||
60 | + @RequestMapping(value = "/findSolicitacaoEmAberto", method = RequestMethod.GET, produces = "application/json") | ||
61 | + @ResponseBody | ||
62 | + public ResponseBodyWrapper findSolicitacaoEmAberto() { | ||
63 | + | ||
64 | + ResultResponseVH<Collection<ReabrirProcesso>> resultResponseVH = new ResultResponseVH<Collection<ReabrirProcesso>>(this.reabrirProcessoService.findSolicitacaoEmAberto()); | ||
65 | + | ||
66 | + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(resultResponseVH, getListView()); | ||
67 | + | ||
68 | + return responseBody; | ||
69 | + } | ||
70 | + | ||
71 | + | ||
51 | 72 | ||
52 | @Override | 73 | @Override |
53 | public Class<ViewsEcm.ReabrirProcessoEditView> getEditView() { | 74 | public Class<ViewsEcm.ReabrirProcessoEditView> getEditView() { |
cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java
@@ -88,7 +88,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -88,7 +88,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
88 | */ | 88 | */ |
89 | private void criarRegraDeAcesso() { | 89 | private void criarRegraDeAcesso() { |
90 | 90 | ||
91 | - Privilegio privilegioProtocolo = this.privilegioService.saveIfNotExist(new Privilegio("PROTOCOLO", "Acessa processo finalizados")); | 91 | + this.privilegioService.saveIfNotExist(new Privilegio("PROTOCOLO", "Acessa processo finalizados")); |
92 | 92 | ||
93 | Privilegio privilegioReservado = this.privilegioService.saveIfNotExist(new Privilegio("RESERVADO", "Acessa o sigilo reservado")); | 93 | Privilegio privilegioReservado = this.privilegioService.saveIfNotExist(new Privilegio("RESERVADO", "Acessa o sigilo reservado")); |
94 | Privilegio privilegioSecreto = this.privilegioService.saveIfNotExist(new Privilegio("SECRETO", "Acessa o sigilo secreto")); | 94 | Privilegio privilegioSecreto = this.privilegioService.saveIfNotExist(new Privilegio("SECRETO", "Acessa o sigilo secreto")); |
@@ -146,7 +146,8 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -146,7 +146,8 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
146 | list.add(new AcaoHistoricoAlteracaoProcesso("ATUALIZAR_ANDAMENTO_PROCESSO", "Atualização de Andamento do Processo", "Situação do processo alterada para <<situacao>>.")); | 146 | list.add(new AcaoHistoricoAlteracaoProcesso("ATUALIZAR_ANDAMENTO_PROCESSO", "Atualização de Andamento do Processo", "Situação do processo alterada para <<situacao>>.")); |
147 | list.add(new AcaoHistoricoAlteracaoProcesso("INICIAR_ATRIBUICAO_PROCESSO", "Atribuição do processo", "Processo atribuído a <<usuario>>.")); | 147 | list.add(new AcaoHistoricoAlteracaoProcesso("INICIAR_ATRIBUICAO_PROCESSO", "Atribuição do processo", "Processo atribuído a <<usuario>>.")); |
148 | list.add(new AcaoHistoricoAlteracaoProcesso("ALTERAR_ATRIBUICAO_PROCESSO", "Atribuição do processo alterada", "Processo atribuído a <<usuario>>.")); | 148 | list.add(new AcaoHistoricoAlteracaoProcesso("ALTERAR_ATRIBUICAO_PROCESSO", "Atribuição do processo alterada", "Processo atribuído a <<usuario>>.")); |
149 | - | 149 | + list.add(new AcaoHistoricoAlteracaoProcesso("REABERTURA_DE_PROCESSO", "Reabrir Processo", "Processo reaberto na unidade <<unidade>>.")); |
150 | + | ||
150 | try { | 151 | try { |
151 | this.acaoHistoricoAlteracaoProcessoService.saveListIfNotExist(list); | 152 | this.acaoHistoricoAlteracaoProcessoService.saveListIfNotExist(list); |
152 | } catch (Exception e) { | 153 | } catch (Exception e) { |
@@ -552,7 +553,6 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -552,7 +553,6 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
552 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.RESTAURACAO_VERSAO_DOCUMENTO", "Restauração de uma versão do documento", dominio, modulo)); | 553 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.RESTAURACAO_VERSAO_DOCUMENTO", "Restauração de uma versão do documento", dominio, modulo)); |
553 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.CONCLUSAO_PROCESSO_UNIDADE", "Conclusão do Processo na Unidade", dominio, modulo)); | 554 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.CONCLUSAO_PROCESSO_UNIDADE", "Conclusão do Processo na Unidade", dominio, modulo)); |
554 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.CANCELAR_DOCUMENTO", "Cancelar Documentos", dominio, modulo)); | 555 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.CANCELAR_DOCUMENTO", "Cancelar Documentos", dominio, modulo)); |
555 | - internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.REABRIR_PROCESSO", "Reabrir Processo", dominio, modulo)); | ||
556 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ENVIO_PROCESSO", "Envio de processo para outra unidade", dominio, modulo)); | 556 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ENVIO_PROCESSO", "Envio de processo para outra unidade", dominio, modulo)); |
557 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.JUSTIFICATIVA_ACAO_PROCESSO", "Justificativa", dominio, modulo)); | 557 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.JUSTIFICATIVA_ACAO_PROCESSO", "Justificativa", dominio, modulo)); |
558 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.SUBSTITUIR_VERSAO_DOCUMENTO", "Confirma substituir a versão do documento?", dominio, modulo)); | 558 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.SUBSTITUIR_VERSAO_DOCUMENTO", "Confirma substituir a versão do documento?", dominio, modulo)); |
@@ -593,6 +593,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -593,6 +593,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
593 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.DOCUMENTO_JA_ASSINADO", "Documento já foi assinado por este usuário!", dominio, modulo)); | 593 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.DOCUMENTO_JA_ASSINADO", "Documento já foi assinado por este usuário!", dominio, modulo)); |
594 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.INFORMACAO_RESTRITA", "Informação restrita", dominio, modulo)); | 594 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.INFORMACAO_RESTRITA", "Informação restrita", dominio, modulo)); |
595 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CONFIRMAR_ASSINATURA", "Deseja realmente assinar este documento? Após esta ação, não será possível cancelar!", dominio, modulo)); | 595 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CONFIRMAR_ASSINATURA", "Deseja realmente assinar este documento? Após esta ação, não será possível cancelar!", dominio, modulo)); |
596 | + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.REABERTURA_DE_PROCESSO", "Reabertura de processo", dominio, modulo)); | ||
596 | 597 | ||
597 | } | 598 | } |
598 | } | 599 | } |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ReabrirProcessoController.js
@@ -53,6 +53,8 @@ citApp.controller('ReabrirProcessoController', ['$scope', 'ReabrirProcessoReposi | @@ -53,6 +53,8 @@ citApp.controller('ReabrirProcessoController', ['$scope', 'ReabrirProcessoReposi | ||
53 | $scope.showAlert("success", $translate.instant('MSG.REGISTRO_SALVO')); | 53 | $scope.showAlert("success", $translate.instant('MSG.REGISTRO_SALVO')); |
54 | $scope.reabrirProcessoForm.$submitted = false; | 54 | $scope.reabrirProcessoForm.$submitted = false; |
55 | $scope.setLoading(false); | 55 | $scope.setLoading(false); |
56 | + $scope.atualizaPaginaPesquisa(); | ||
57 | + | ||
56 | }); | 58 | }); |
57 | 59 | ||
58 | }else{ | 60 | }else{ |
@@ -70,8 +72,7 @@ citApp.controller('ReabrirProcessoController', ['$scope', 'ReabrirProcessoReposi | @@ -70,8 +72,7 @@ citApp.controller('ReabrirProcessoController', ['$scope', 'ReabrirProcessoReposi | ||
70 | 72 | ||
71 | $scope.findAutoCompleteProcesso = function(value){ | 73 | $scope.findAutoCompleteProcesso = function(value){ |
72 | 74 | ||
73 | - return ProcessoRepository.findAutoComplete('nup', value).then(function(result) { | ||
74 | - | 75 | + return ProcessoRepository.findAutoComplete('nup', value).then(function(result) { |
75 | return result; | 76 | return result; |
76 | 77 | ||
77 | }); | 78 | }); |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/ReabrirProcessoRepository.js
@@ -5,6 +5,11 @@ citApp.factory('ReabrirProcessoRepository', ['RestangularEcm', 'AbstractReposito | @@ -5,6 +5,11 @@ citApp.factory('ReabrirProcessoRepository', ['RestangularEcm', 'AbstractReposito | ||
5 | function ReabrirProcessoRepository() { | 5 | function ReabrirProcessoRepository() { |
6 | AbstractRepository.call(this, restangularEcm, 'rest/reabrirProcesso'); | 6 | AbstractRepository.call(this, restangularEcm, 'rest/reabrirProcesso'); |
7 | 7 | ||
8 | + this.findSolicitacaoEmAberto = function (){ | ||
9 | + return restangularEcm.one(this.route + '/findSolicitacaoEmAberto').get().then(); | ||
10 | + | ||
11 | + }; | ||
12 | + | ||
8 | } | 13 | } |
9 | 14 | ||
10 | AbstractRepository.extend(ReabrirProcessoRepository); | 15 | AbstractRepository.extend(ReabrirProcessoRepository); |
cit-ecm-web/src/main/webapp/html/reabrirProcesso/reabrirProcessoEdit.html
@@ -64,14 +64,14 @@ | @@ -64,14 +64,14 @@ | ||
64 | 64 | ||
65 | <div class="row" ng-if="reabrirProcesso.id"> | 65 | <div class="row" ng-if="reabrirProcesso.id"> |
66 | <div class="col-md-4"> | 66 | <div class="col-md-4"> |
67 | - <label-select ng-id="reabrirProcesso.status" ng-model="reabrirProcesso.status" ng-label="ECM.LABEL.STATUS" ng-obrigatorio='reabrirProcesso.id' form="reabrirProcessoForm" ng-list="statusList" | 67 | + <label-select ng-id="reabrirProcesso.status" ng-model="reabrirProcesso.status" ng-disabled="reabrirProcesso.validado" ng-label="ECM.LABEL.STATUS" ng-obrigatorio='reabrirProcesso.id' form="reabrirProcessoForm" ng-list="statusList" |
68 | ng-custom-options="dominioStatus.originalElement as dominioStatus.descricao for dominioStatus" track-by="track by dominioStatus.id" ng-disabled='!edit && reabrirProcesso.id'> </label-select> | 68 | ng-custom-options="dominioStatus.originalElement as dominioStatus.descricao for dominioStatus" track-by="track by dominioStatus.id" ng-disabled='!edit && reabrirProcesso.id'> </label-select> |
69 | </div> | 69 | </div> |
70 | </div> | 70 | </div> |
71 | 71 | ||
72 | <div class="row" ng-if="reabrirProcesso.id && reabrirProcesso.status.codigo == 3"> | 72 | <div class="row" ng-if="reabrirProcesso.id && reabrirProcesso.status.codigo == 3"> |
73 | <div class="col-sm-8"> | 73 | <div class="col-sm-8"> |
74 | - <label-text-area ng-id="reabrirProcesso.justificativaRejeicao" ng-disabled="!edit && reabrirProcesso.id" ng-typ="text" ng-obrigatorio='!edit && reabrirProcesso.id' ng-label="ECM.LABEL.JUSTIFICATIVAREJEICAO" form='reabrirProcessoForm' ng-model="reabrirProcesso.justificativaRejeicao" | 74 | + <label-text-area ng-id="reabrirProcesso.justificativaRejeicao" ng-disabled="reabrirProcesso.validado" ng-typ="text" ng-obrigatorio='!edit && reabrirProcesso.id' ng-label="ECM.LABEL.JUSTIFICATIVAREJEICAO" form='reabrirProcessoForm' ng-model="reabrirProcesso.justificativaRejeicao" |
75 | ng-custom-maxlength='255' /> | 75 | ng-custom-maxlength='255' /> |
76 | </div> | 76 | </div> |
77 | </div> | 77 | </div> |
cit-ecm-web/src/main/webapp/html/reabrirProcesso/reabrirProcessoList.html
1 | -<div id="searchProcesso" class="page-content" ng-controller="ReabrirProcessoListController"> | 1 | +<div id="searchReabrirProcesso" class="page-content" ng-controller="ReabrirProcessoListController"> |
2 | <div class="bar-buttons-action fixed"> | 2 | <div class="bar-buttons-action fixed"> |
3 | <div class="row"> | 3 | <div class="row"> |
4 | <div class="col-sm-8 text-left"> | 4 | <div class="col-sm-8 text-left"> |
@@ -9,8 +9,8 @@ | @@ -9,8 +9,8 @@ | ||
9 | </button> | 9 | </button> |
10 | 10 | ||
11 | <button class="btn btn-clear" ng-click="abrirVisualizar(true);"> | 11 | <button class="btn btn-clear" ng-click="abrirVisualizar(true);"> |
12 | - <i class="fa fa-times red"></i> | ||
13 | - <translate>ECM.LABEL.REABRIR_PROCESSO</translate> | 12 | + <i class="fa fa-pencil blue"></i> |
13 | + <translate>ECM.LABEL.REABRIR</translate> | ||
14 | </button> | 14 | </button> |
15 | 15 | ||
16 | <span class="divider-vertical"></span> | 16 | <span class="divider-vertical"></span> |