Commit b5aa385d5f65e7440fb80daaa7747220ea253129
Exists in
master
Merge remote-tracking branch 'remotes/origin/tarefa-4599' into desenvolvimento
# Conflicts: # cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/ProcessoDaoHibernate.java # cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/UnidadeProcessoDaoHibernate.java # cit-ecm-api/src/main/java/br/com/centralit/api/framework/json/ViewsEcm.java # cit-ecm-api/src/main/java/br/com/centralit/api/model/NivelAcessoTipoProcesso.java # cit-ecm-api/src/main/java/br/com/centralit/api/model/PlanoClassificacao.java # cit-ecm-api/src/main/java/br/com/centralit/api/model/Processo.java # cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/ProcessoServiceImpl.java # cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java # cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ClassificarDocumentoProcessoController.js # cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ClassificarDocumentoProcessoListController.js # cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/GerenciarProcessoController.js # cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeAcaoProcesso.html # cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeDocumentosProcesso.html # cit-ecm-web/src/main/webapp/html/processo/processoEdit.html
Showing
47 changed files
with
1087 additions
and
670 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,6 +5,7 @@ import java.util.Collection; | ||
5 | 5 | ||
6 | import br.com.centralit.api.model.Processo; | 6 | import br.com.centralit.api.model.Processo; |
7 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; | 7 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; |
8 | +import br.com.centralit.framework.model.Dominio; | ||
8 | 9 | ||
9 | import com.googlecode.genericdao.search.ISearch; | 10 | import com.googlecode.genericdao.search.ISearch; |
10 | import com.googlecode.genericdao.search.SearchResult; | 11 | import com.googlecode.genericdao.search.SearchResult; |
@@ -155,6 +156,23 @@ public interface ProcessoDao extends CitGenericDAO { | @@ -155,6 +156,23 @@ public interface ProcessoDao extends CitGenericDAO { | ||
155 | * @return <RT> SearchResult<RT> | 156 | * @return <RT> SearchResult<RT> |
156 | */ | 157 | */ |
157 | <RT> SearchResult<RT> searchAndCountPorSigilo(ISearch search); | 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 | /** |
160 | * <p> | 178 | * <p> |
@@ -174,4 +192,6 @@ public interface ProcessoDao extends CitGenericDAO { | @@ -174,4 +192,6 @@ public interface ProcessoDao extends CitGenericDAO { | ||
174 | */ | 192 | */ |
175 | boolean isSigiloso(Long id); | 193 | boolean isSigiloso(Long id); |
176 | 194 | ||
195 | + Collection<Processo> autoCompleteProcessoEmAndamentoByNup(String nup); | ||
196 | + | ||
177 | } | 197 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/dao/UnidadeProcessoDao.java
@@ -99,6 +99,21 @@ public interface UnidadeProcessoDao extends CitGenericDAO { | @@ -99,6 +99,21 @@ public interface UnidadeProcessoDao extends CitGenericDAO { | ||
99 | * @return | 99 | * @return |
100 | */ | 100 | */ |
101 | Collection<UnidadeProcesso> findProcesso(Processo processo); | 101 | Collection<UnidadeProcesso> findProcesso(Processo processo); |
102 | + | ||
103 | + /** | ||
104 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
105 | + * | ||
106 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
107 | + * | ||
108 | + * Método responsável por | ||
109 | + * | ||
110 | + * @author maycon.silva | ||
111 | + * | ||
112 | + * @param processo | ||
113 | + * @return | ||
114 | + */ | ||
115 | + public Collection<UnidadeProcesso> findByPorIdProcessoEmExecucao(Long idProcesso); | ||
116 | + | ||
102 | 117 | ||
103 | /** | 118 | /** |
104 | * <p> | 119 | * <p> |
@@ -118,6 +133,22 @@ public interface UnidadeProcessoDao extends CitGenericDAO { | @@ -118,6 +133,22 @@ public interface UnidadeProcessoDao extends CitGenericDAO { | ||
118 | * @return UnidadeProcesso | 133 | * @return UnidadeProcesso |
119 | */ | 134 | */ |
120 | UnidadeProcesso obterPorUnidadeEProcesso(Long idProcesso, Long idUnidade); | 135 | UnidadeProcesso obterPorUnidadeEProcesso(Long idProcesso, Long idUnidade); |
136 | + | ||
137 | + | ||
138 | + /** | ||
139 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
140 | + * | ||
141 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
142 | + * | ||
143 | + * Método responsável por | ||
144 | + * | ||
145 | + * @author maycon.silva | ||
146 | + * | ||
147 | + * @param idProcesso | ||
148 | + * @param idUnidade | ||
149 | + * @return | ||
150 | + */ | ||
151 | + UnidadeProcesso obterPorUnidadeEProcessoEmExecucao(Long idProcesso, Long idUnidade); | ||
121 | 152 | ||
122 | /** | 153 | /** |
123 | * Método responsável por listar processos através da unidade do usuário | 154 | * Método responsável por listar processos através da unidade do usuário |
cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/ProcessoDaoHibernate.java
@@ -21,11 +21,13 @@ import br.com.centralit.api.model.Processo; | @@ -21,11 +21,13 @@ import br.com.centralit.api.model.Processo; | ||
21 | import br.com.centralit.api.model.SigiloPrivilegio; | 21 | import br.com.centralit.api.model.SigiloPrivilegio; |
22 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; | 22 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; |
23 | import br.com.centralit.framework.dao.arquitetura.SearchSeven; | 23 | import br.com.centralit.framework.dao.arquitetura.SearchSeven; |
24 | +import br.com.centralit.framework.model.Dominio; | ||
24 | import br.com.centralit.framework.model.Usuario; | 25 | import br.com.centralit.framework.model.Usuario; |
25 | import br.com.centralit.framework.util.UtilObjeto; | 26 | import br.com.centralit.framework.util.UtilObjeto; |
26 | 27 | ||
27 | import com.googlecode.genericdao.search.Filter; | 28 | import com.googlecode.genericdao.search.Filter; |
28 | import com.googlecode.genericdao.search.ISearch; | 29 | import com.googlecode.genericdao.search.ISearch; |
30 | +import com.googlecode.genericdao.search.Search; | ||
29 | import com.googlecode.genericdao.search.SearchResult; | 31 | import com.googlecode.genericdao.search.SearchResult; |
30 | 32 | ||
31 | /** | 33 | /** |
@@ -246,5 +248,40 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | @@ -246,5 +248,40 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | ||
246 | 248 | ||
247 | return UtilObjeto.isReferencia(criteria.uniqueResult()); | 249 | return UtilObjeto.isReferencia(criteria.uniqueResult()); |
248 | } | 250 | } |
251 | + | ||
252 | + public Collection<Processo> autoCompleteProcessoByNupAndStatus(String nup, Dominio dominio){ | ||
253 | + | ||
254 | + Search search = new SearchSeven(this.persistentClass); | ||
255 | + | ||
256 | + search.addFilterOr(Filter.ilike("nup", "%" + nup + "%"), Filter.ilike("nup", "%" + nup + "%")); | ||
257 | + | ||
258 | + search.addFilterEqual("status.id", dominio.getId()); | ||
259 | + | ||
260 | + search.addSortDesc("id"); | ||
261 | + | ||
262 | + search.setMaxResults(10); | ||
249 | 263 | ||
264 | + return this.search(search); | ||
265 | + | ||
266 | + } | ||
267 | + | ||
268 | + @Override | ||
269 | + public Collection<Processo> autoCompleteProcessoEmAndamentoByNup(String nup) { | ||
270 | + | ||
271 | + Search search = new SearchSeven(this.persistentClass); | ||
272 | + | ||
273 | + search.addFilterOr(Filter.ilike("nup", "%" + nup + "%"), Filter.ilike("nup", "%" + nup + "%")); | ||
274 | + | ||
275 | + search.getFilters().add(Filter.notEqual("status.codigo", 1L)); | ||
276 | + | ||
277 | + search.getFilters().add(Filter.notEqual("status.codigo", 5L)); | ||
278 | + | ||
279 | + search.getFilters().add(Filter.notEqual("status.codigo", 3L)); | ||
280 | + | ||
281 | + search.addSortDesc("id"); | ||
282 | + | ||
283 | + search.setMaxResults(10); | ||
284 | + | ||
285 | + return this.search(search); | ||
286 | + } | ||
250 | } | 287 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/UnidadeProcessoDaoHibernate.java
@@ -93,7 +93,7 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | @@ -93,7 +93,7 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | ||
93 | return this.search(searchSeven); | 93 | return this.search(searchSeven); |
94 | 94 | ||
95 | } | 95 | } |
96 | - | 96 | + |
97 | /** | 97 | /** |
98 | * | 98 | * |
99 | * <p> | 99 | * <p> |
@@ -203,7 +203,7 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | @@ -203,7 +203,7 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | ||
203 | searchSeven.addFilterEqual("processo.id", idProcesso); | 203 | searchSeven.addFilterEqual("processo.id", idProcesso); |
204 | 204 | ||
205 | searchSeven.addFilterEqual("unidade.id", idUnidade); | 205 | searchSeven.addFilterEqual("unidade.id", idUnidade); |
206 | - | 206 | + |
207 | searchSeven.setMaxResults(1); | 207 | searchSeven.setMaxResults(1); |
208 | 208 | ||
209 | return this.searchUnique(searchSeven); | 209 | return this.searchUnique(searchSeven); |
@@ -230,6 +230,8 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | @@ -230,6 +230,8 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | ||
230 | 230 | ||
231 | // Filtro da unidade, para processos públicos e restritos. | 231 | // Filtro da unidade, para processos públicos e restritos. |
232 | search.getFilters().add(Filter.or(Filter.not(Filter.equal("processo.status.id", idStatus)), Filter.isEmpty("processo.status.id"))); | 232 | search.getFilters().add(Filter.or(Filter.not(Filter.equal("processo.status.id", idStatus)), Filter.isEmpty("processo.status.id"))); |
233 | + | ||
234 | + search.getFilters().add(Filter.notEqual("processo.status.codigo", 5L)); | ||
233 | 235 | ||
234 | // Verifica se o usuario está lotado na unidade | 236 | // Verifica se o usuario está lotado na unidade |
235 | if (UtilObjeto.isReferencia(usuario.getUnidade())) { | 237 | if (UtilObjeto.isReferencia(usuario.getUnidade())) { |
@@ -321,4 +323,34 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | @@ -321,4 +323,34 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | ||
321 | 323 | ||
322 | return detachedCriteriaPrivilegio; | 324 | return detachedCriteriaPrivilegio; |
323 | } | 325 | } |
326 | + | ||
327 | + /** | ||
328 | + * | ||
329 | + */ | ||
330 | + public Collection<UnidadeProcesso> findByPorIdProcessoEmExecucao(Long idProcesso) { | ||
331 | + | ||
332 | + SearchSeven searchSeven = new SearchSeven(); | ||
333 | + | ||
334 | + searchSeven.addFilterEqual("processo.id", idProcesso); | ||
335 | + | ||
336 | + searchSeven.addFilterOr(Filter.equal("concluido", false), Filter.isNull("concluido")); | ||
337 | + | ||
338 | + return this.search(searchSeven); | ||
339 | + | ||
340 | + } | ||
341 | + | ||
342 | + public UnidadeProcesso obterPorUnidadeEProcessoEmExecucao(Long idProcesso, Long idUnidade) { | ||
343 | + | ||
344 | + SearchSeven searchSeven = new SearchSeven(); | ||
345 | + | ||
346 | + searchSeven.addFilterEqual("processo.id", idProcesso); | ||
347 | + | ||
348 | + searchSeven.addFilterEqual("unidade.id", idUnidade); | ||
349 | + | ||
350 | + searchSeven.addFilterOr( Filter.isNull("concluido")); | ||
351 | + | ||
352 | + searchSeven.setMaxResults(1); | ||
353 | + | ||
354 | + return this.searchUnique(searchSeven); | ||
355 | + } | ||
324 | } | 356 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/framework/json/ViewsEcm.java
@@ -110,5 +110,6 @@ public class ViewsEcm extends Views { | @@ -110,5 +110,6 @@ public class ViewsEcm extends Views { | ||
110 | 110 | ||
111 | public static class TarjaAssinaturaEditview extends ViewsEcm.TarjaAssinaturaListview{}; | 111 | public static class TarjaAssinaturaEditview extends ViewsEcm.TarjaAssinaturaListview{}; |
112 | 112 | ||
113 | - | 113 | + public static class MetadadoProcessoView extends Views.GenericView{}; |
114 | + | ||
114 | } | 115 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/model/AcaoHistoricoAlteracaoProcesso.java
@@ -63,6 +63,19 @@ public class AcaoHistoricoAlteracaoProcesso extends PersistentObject { | @@ -63,6 +63,19 @@ public class AcaoHistoricoAlteracaoProcesso extends PersistentObject { | ||
63 | public static String ASSINAR_DOCUMENTO_CHAVE = "ASSINAR_DOCUMENTO"; | 63 | public static String ASSINAR_DOCUMENTO_CHAVE = "ASSINAR_DOCUMENTO"; |
64 | public static String ASSINAR_DOCUMENTO_ACAO = "Assinatura de documento"; | 64 | public static String ASSINAR_DOCUMENTO_ACAO = "Assinatura de documento"; |
65 | public static String ASSINAR_DOCUMENTO_DESCRICAO = "O documento <<tipo_documento>> <<numero_documento>> foi assinado por <<usuario>>."; | 65 | public static String ASSINAR_DOCUMENTO_DESCRICAO = "O documento <<tipo_documento>> <<numero_documento>> foi assinado por <<usuario>>."; |
66 | + | ||
67 | + public static String ALTERAR_ATRIBUICAO_PROCESSO_DESCRICAO = "Processo atribuído a <<usuario>>."; | ||
68 | + public static String ALTERAR_ATRIBUICAO_PROCESSO_ACAO = "Alteração de atribuição de Processo"; | ||
69 | + public static String ALTERAR_ATRIBUICAO_PROCESSO_CHAVE = "ALTERAR_ATRIBUICAO_PROCESSO"; | ||
70 | + | ||
71 | + public static String INICIAR_ATRIBUICAO_PROCESSO_DESCRICAO = "Processo atribuído a <<usuario>>."; | ||
72 | + public static String INICIAR_ATRIBUICAO_PROCESSO_ACAO = "Atribuição do processo"; | ||
73 | + public static String INICIAR_ATRIBUICAO_PROCESSO_CHAVE = "INICIAR_ATRIBUICAO_PROCESSO"; | ||
74 | + | ||
75 | + public static String INCLUSAO_PROCESSO_DESCRICAO = "Processo <<protocolo>> criado."; | ||
76 | + public static String INCLUSAO_PROCESSO_ACAO = "Inclusão do processo"; | ||
77 | + public static String INCLUSAO_PROCESSO_CHAVE = "INCLUSAO_PROCESSO"; | ||
78 | + | ||
66 | 79 | ||
67 | public AcaoHistoricoAlteracaoProcesso() { | 80 | public AcaoHistoricoAlteracaoProcesso() { |
68 | 81 |
cit-ecm-api/src/main/java/br/com/centralit/api/model/DocumentoGed.java
@@ -241,7 +241,7 @@ public class DocumentoGed extends PersistentObjectUnidade implements Cloneable { | @@ -241,7 +241,7 @@ public class DocumentoGed extends PersistentObjectUnidade implements Cloneable { | ||
241 | private Collection<InteressadoDocumento> interessados; | 241 | private Collection<InteressadoDocumento> interessados; |
242 | 242 | ||
243 | @OneToMany(fetch = FetchType.LAZY, mappedBy = "documentoGed") | 243 | @OneToMany(fetch = FetchType.LAZY, mappedBy = "documentoGed") |
244 | - @JsonView({ Views.DocumentoGedEdit.class, ViewsEcm.DocumentoGedEdit.class, Views.ProcessoEdit.class }) | 244 | + @JsonView({ Views.DocumentoGedEdit.class, Views.ProcessoEdit.class }) |
245 | private Collection<Assinatura> assinaturas; | 245 | private Collection<Assinatura> assinaturas; |
246 | 246 | ||
247 | /** | 247 | /** |
cit-ecm-api/src/main/java/br/com/centralit/api/model/HipoteseLegal.java
@@ -69,7 +69,7 @@ public class HipoteseLegal extends PersistentObjectAudit { | @@ -69,7 +69,7 @@ public class HipoteseLegal extends PersistentObjectAudit { | ||
69 | private String descricao; | 69 | private String descricao; |
70 | 70 | ||
71 | /** Atributo nome. */ | 71 | /** Atributo nome. */ |
72 | - @JsonView({ ViewsEcm.HipoteseLegalList.class, ViewsEcm.TipoProcessoList.class, ViewsEcm.TipoDocumentoEdit.class, ViewsEcm.NivelAcessoTipoDocumentoEdit.class, ViewsEcm.DocumentoGedEdit.class, ViewsEcm.ProcessoEdit.class, ViewsEcm.NivelAcessoTipoProcessoEdit.class }) | 72 | + @JsonView({ ViewsEcm.HipoteseLegalList.class, ViewsEcm.TipoProcessoList.class, ViewsEcm.TipoDocumentoEdit.class, ViewsEcm.NivelAcessoTipoDocumentoEdit.class, ViewsEcm.DocumentoGedEdit.class, ViewsEcm.ProcessoEdit.class, ViewsEcm.NivelAcessoTipoProcessoEdit.class, ViewsEcm.MetadadoProcessoView.class }) |
73 | private String nome; | 73 | private String nome; |
74 | 74 | ||
75 | /** Atributo fundamentacaoLegal. */ | 75 | /** Atributo fundamentacaoLegal. */ |
cit-ecm-api/src/main/java/br/com/centralit/api/model/InteressadoProcesso.java
@@ -63,7 +63,7 @@ public class InteressadoProcesso extends PersistentObjectAudit { | @@ -63,7 +63,7 @@ public class InteressadoProcesso extends PersistentObjectAudit { | ||
63 | 63 | ||
64 | /** Atributo interessado. */ | 64 | /** Atributo interessado. */ |
65 | @ManyToOne(fetch = FetchType.LAZY) | 65 | @ManyToOne(fetch = FetchType.LAZY) |
66 | - @JsonView({ ViewsEcm.ProcessoEdit.class }) | 66 | + @JsonView({ ViewsEcm.ProcessoEdit.class, ViewsEcm.MetadadoProcessoView.class }) |
67 | private Pessoa interessado; | 67 | private Pessoa interessado; |
68 | 68 | ||
69 | /** | 69 | /** |
cit-ecm-api/src/main/java/br/com/centralit/api/model/NivelAcessoTipoProcesso.java
@@ -72,11 +72,11 @@ public class NivelAcessoTipoProcesso extends PersistentObjectAudit { | @@ -72,11 +72,11 @@ public class NivelAcessoTipoProcesso extends PersistentObjectAudit { | ||
72 | 72 | ||
73 | /** Atributo tipoAcesso. */ | 73 | /** Atributo tipoAcesso. */ |
74 | @ManyToOne(fetch = FetchType.LAZY) | 74 | @ManyToOne(fetch = FetchType.LAZY) |
75 | - @JsonView({ ViewsEcm.TipoProcessoEdit.class, ViewsEcm.NivelAcessoTipoProcessoEdit.class, Views.ProcessoList.class, Views.UnidadeProcessoListView.class }) | 75 | + @JsonView({ ViewsEcm.TipoProcessoEdit.class, ViewsEcm.NivelAcessoTipoProcessoEdit.class, Views.ProcessoList.class, Views.UnidadeProcessoListView.class, ViewsEcm.MetadadoProcessoView.class }) |
76 | private Dominio nivelAcesso; | 76 | private Dominio nivelAcesso; |
77 | 77 | ||
78 | @OneToMany(fetch = FetchType.LAZY, mappedBy = "nivelAcessoTipoProcesso", cascade = CascadeType.ALL) | 78 | @OneToMany(fetch = FetchType.LAZY, mappedBy = "nivelAcessoTipoProcesso", cascade = CascadeType.ALL) |
79 | - @JsonView({ ViewsEcm.TipoProcessoEdit.class, ViewsEcm.NivelAcessoTipoProcessoEdit.class, ViewsEcm.ProcessoEdit.class }) | 79 | + @JsonView({ ViewsEcm.TipoProcessoEdit.class, ViewsEcm.NivelAcessoTipoProcessoEdit.class, ViewsEcm.ProcessoEdit.class, ViewsEcm.MetadadoProcessoView.class }) |
80 | private Collection<SigiloTipoProcesso> sigilos; | 80 | private Collection<SigiloTipoProcesso> sigilos; |
81 | 81 | ||
82 | /** | 82 | /** |
cit-ecm-api/src/main/java/br/com/centralit/api/model/PlanoClassificacao.java
@@ -100,7 +100,7 @@ public class PlanoClassificacao extends PersistentObjectAuditOrganizacao impleme | @@ -100,7 +100,7 @@ public class PlanoClassificacao extends PersistentObjectAuditOrganizacao impleme | ||
100 | private Boolean permitirUsarComoClassificacao; | 100 | private Boolean permitirUsarComoClassificacao; |
101 | 101 | ||
102 | @Transient | 102 | @Transient |
103 | - @JsonView({ ViewsEcm.PlanoCLassificacaoAutoComplete.class, ViewsEcm.TipoDocumentoEdit.class, ViewsEcm.TipoProcessoEdit.class, Views.ProcessoList.class, Views.DocumentoGedEdit.class, ViewsEcm.TipoDocumentoPlanoClassificacaoAutoCompleteView.class, Views.UnidadeProcessoListView.class }) | 103 | + @JsonView({ ViewsEcm.PlanoCLassificacaoAutoComplete.class, ViewsEcm.TipoDocumentoEdit.class, ViewsEcm.TipoProcessoEdit.class, Views.ProcessoList.class, Views.DocumentoGedEdit.class, ViewsEcm.TipoDocumentoPlanoClassificacaoAutoCompleteView.class, Views.UnidadeProcessoListView.class, ViewsEcm.MetadadoProcessoView.class }) |
104 | private String assunto; | 104 | private String assunto; |
105 | 105 | ||
106 | /** Atributo tipoDestinacao. */ | 106 | /** Atributo tipoDestinacao. */ |
cit-ecm-api/src/main/java/br/com/centralit/api/model/Processo.java
@@ -84,7 +84,7 @@ public class Processo extends PersistentObjectUnidade { | @@ -84,7 +84,7 @@ public class Processo extends PersistentObjectUnidade { | ||
84 | private Long id; | 84 | private Long id; |
85 | 85 | ||
86 | /** Atributo assuntoComplementar. */ | 86 | /** Atributo assuntoComplementar. */ |
87 | - @JsonView({ Views.ProcessoList.class, Views.UnidadeProcessoListView.class }) | 87 | + @JsonView({ Views.ProcessoList.class, Views.UnidadeProcessoListView.class, ViewsEcm.MetadadoProcessoView.class }) |
88 | private String assuntoComplementar; | 88 | private String assuntoComplementar; |
89 | 89 | ||
90 | /** Atributo dataReferencia. */ | 90 | /** Atributo dataReferencia. */ |
@@ -101,7 +101,7 @@ public class Processo extends PersistentObjectUnidade { | @@ -101,7 +101,7 @@ public class Processo extends PersistentObjectUnidade { | ||
101 | private Calendar dataConclusao; | 101 | private Calendar dataConclusao; |
102 | 102 | ||
103 | /** Atributo nup. */ | 103 | /** Atributo nup. */ |
104 | - @JsonView({ Views.ProcessoList.class, Views.ProcessoRelacionadoList.class, Views.AnexarProcesso.class, Views.ProcessoAutoCompleteView.class, Views.UnidadeProcessoListView.class }) | 104 | + @JsonView({ Views.ProcessoList.class, Views.ProcessoRelacionadoList.class, Views.AnexarProcesso.class, Views.ProcessoAutoCompleteView.class, Views.UnidadeProcessoListView.class, ViewsEcm.MetadadoProcessoView.class }) |
105 | private String nup; | 105 | private String nup; |
106 | 106 | ||
107 | /** Atributo nome. */ | 107 | /** Atributo nome. */ |
@@ -111,8 +111,11 @@ public class Processo extends PersistentObjectUnidade { | @@ -111,8 +111,11 @@ public class Processo extends PersistentObjectUnidade { | ||
111 | @Transient | 111 | @Transient |
112 | private Long idTask; | 112 | private Long idTask; |
113 | 113 | ||
114 | + @JsonView({ ViewsEcm.ProcessoList.class }) | ||
115 | + private Boolean aprovado; | ||
116 | + | ||
114 | /** Atributo observacaoGeral. */ | 117 | /** Atributo observacaoGeral. */ |
115 | - @JsonView({ Views.ProcessoEdit.class }) | 118 | + @JsonView({ Views.ProcessoEdit.class, ViewsEcm.MetadadoProcessoView.class }) |
116 | private String observacaoGeral; | 119 | private String observacaoGeral; |
117 | 120 | ||
118 | @JsonView({ Views.ProcessoEdit.class }) | 121 | @JsonView({ Views.ProcessoEdit.class }) |
@@ -134,13 +137,13 @@ public class Processo extends PersistentObjectUnidade { | @@ -134,13 +137,13 @@ public class Processo extends PersistentObjectUnidade { | ||
134 | private Calendar prazoSigilo; | 137 | private Calendar prazoSigilo; |
135 | 138 | ||
136 | /** Atributo nup. */ | 139 | /** Atributo nup. */ |
137 | - @JsonView({ Views.ProcessoEdit.class }) | 140 | + @JsonView({ Views.ProcessoEdit.class, ViewsEcm.MetadadoProcessoView.class }) |
138 | @ManyToOne(fetch = FetchType.LAZY) | 141 | @ManyToOne(fetch = FetchType.LAZY) |
139 | private Dominio tipoProtocolo; | 142 | private Dominio tipoProtocolo; |
140 | 143 | ||
141 | /** Atributo status. */ | 144 | /** Atributo status. */ |
142 | @ManyToOne(fetch = FetchType.LAZY) | 145 | @ManyToOne(fetch = FetchType.LAZY) |
143 | - @JsonView({ Views.ProcessoEdit.class, Views.UnidadeProcessoListView.class }) | 146 | + @JsonView({ Views.ProcessoEdit.class, Views.UnidadeProcessoListView.class, Views.ProcessoAutoCompleteView.class, ViewsEcm.MetadadoProcessoView.class }) |
144 | private Dominio status; | 147 | private Dominio status; |
145 | 148 | ||
146 | /** Atributo tramitarDocumento. */ | 149 | /** Atributo tramitarDocumento. */ |
@@ -149,22 +152,22 @@ public class Processo extends PersistentObjectUnidade { | @@ -149,22 +152,22 @@ public class Processo extends PersistentObjectUnidade { | ||
149 | private TramitarDocumento tramitarDocumento; | 152 | private TramitarDocumento tramitarDocumento; |
150 | 153 | ||
151 | /** Atributo tipoProcesso. */ | 154 | /** Atributo tipoProcesso. */ |
152 | - @JsonView({ Views.ProcessoList.class, Views.ProcessoRelacionadoList.class, Views.AnexarProcesso.class, Views.UnidadeProcessoListView.class }) | 155 | + @JsonView({ Views.ProcessoList.class, Views.ProcessoRelacionadoList.class, Views.AnexarProcesso.class, Views.UnidadeProcessoListView.class, ViewsEcm.MetadadoProcessoView.class, Views.ProcessoAutoCompleteView.class }) |
153 | @ManyToOne(fetch = FetchType.LAZY) | 156 | @ManyToOne(fetch = FetchType.LAZY) |
154 | private TipoProcesso tipoProcesso; | 157 | private TipoProcesso tipoProcesso; |
155 | 158 | ||
156 | /** Atributo assunto. */ | 159 | /** Atributo assunto. */ |
157 | @ManyToOne(fetch = FetchType.LAZY) | 160 | @ManyToOne(fetch = FetchType.LAZY) |
158 | - @JsonView({ Views.ProcessoList.class, Views.UnidadeProcessoListView.class }) | 161 | + @JsonView({ Views.ProcessoList.class, Views.UnidadeProcessoListView.class, ViewsEcm.MetadadoProcessoView.class }) |
159 | private PlanoClassificacao assunto; | 162 | private PlanoClassificacao assunto; |
160 | 163 | ||
161 | /** Atributo nivelAcesso. */ | 164 | /** Atributo nivelAcesso. */ |
162 | @ManyToOne(fetch = FetchType.LAZY) | 165 | @ManyToOne(fetch = FetchType.LAZY) |
163 | - @JsonView({ Views.ProcessoList.class, Views.UnidadeProcessoListView.class }) | 166 | + @JsonView({ Views.ProcessoList.class, Views.UnidadeProcessoListView.class, ViewsEcm.MetadadoProcessoView.class }) |
164 | private NivelAcessoTipoProcesso nivelAcesso; | 167 | private NivelAcessoTipoProcesso nivelAcesso; |
165 | 168 | ||
166 | @ManyToOne(fetch = FetchType.LAZY) | 169 | @ManyToOne(fetch = FetchType.LAZY) |
167 | - @JsonView({ Views.ProcessoList.class }) | 170 | + @JsonView({ Views.ProcessoList.class, ViewsEcm.MetadadoProcessoView.class }) |
168 | private NivelAcessoTipoProcesso nivelAcessoOriginal; | 171 | private NivelAcessoTipoProcesso nivelAcessoOriginal; |
169 | 172 | ||
170 | /** Atributo anexoProcesso. */ | 173 | /** Atributo anexoProcesso. */ |
@@ -174,7 +177,7 @@ public class Processo extends PersistentObjectUnidade { | @@ -174,7 +177,7 @@ public class Processo extends PersistentObjectUnidade { | ||
174 | 177 | ||
175 | /** Atributo hipoteseLegal. */ | 178 | /** Atributo hipoteseLegal. */ |
176 | @ManyToOne(fetch = FetchType.LAZY) | 179 | @ManyToOne(fetch = FetchType.LAZY) |
177 | - @JsonView({ Views.ProcessoEdit.class }) | 180 | + @JsonView({ Views.ProcessoEdit.class, ViewsEcm.MetadadoProcessoView.class }) |
178 | private HipoteseLegal hipoteseLegal; | 181 | private HipoteseLegal hipoteseLegal; |
179 | 182 | ||
180 | /** Atributo cienciaProcesso. */ | 183 | /** Atributo cienciaProcesso. */ |
@@ -184,11 +187,11 @@ public class Processo extends PersistentObjectUnidade { | @@ -184,11 +187,11 @@ public class Processo extends PersistentObjectUnidade { | ||
184 | 187 | ||
185 | /** Atributo sigilo. */ | 188 | /** Atributo sigilo. */ |
186 | @ManyToOne(fetch = FetchType.LAZY) | 189 | @ManyToOne(fetch = FetchType.LAZY) |
187 | - @JsonView({ Views.ProcessoList.class }) | 190 | + @JsonView({ Views.ProcessoList.class, ViewsEcm.MetadadoProcessoView.class }) |
188 | private Sigilo sigilo; | 191 | private Sigilo sigilo; |
189 | 192 | ||
190 | @ManyToOne(fetch = FetchType.LAZY) | 193 | @ManyToOne(fetch = FetchType.LAZY) |
191 | - @JsonView({ Views.ProcessoList.class }) | 194 | + @JsonView({ Views.ProcessoList.class, ViewsEcm.MetadadoProcessoView.class }) |
192 | private Sigilo sigiloOriginal; | 195 | private Sigilo sigiloOriginal; |
193 | 196 | ||
194 | /** Atributo temporalidade. */ | 197 | /** Atributo temporalidade. */ |
@@ -199,7 +202,7 @@ public class Processo extends PersistentObjectUnidade { | @@ -199,7 +202,7 @@ public class Processo extends PersistentObjectUnidade { | ||
199 | 202 | ||
200 | /** Atributo Interessados. */ | 203 | /** Atributo Interessados. */ |
201 | @OneToMany(fetch = FetchType.LAZY, mappedBy = "processo", cascade = CascadeType.ALL, orphanRemoval = true) | 204 | @OneToMany(fetch = FetchType.LAZY, mappedBy = "processo", cascade = CascadeType.ALL, orphanRemoval = true) |
202 | - @JsonView({ Views.ProcessoEdit.class }) | 205 | + @JsonView({ Views.ProcessoEdit.class, ViewsEcm.MetadadoProcessoView.class }) |
203 | private Collection<InteressadoProcesso> interessados; | 206 | private Collection<InteressadoProcesso> interessados; |
204 | 207 | ||
205 | /** Atributo documentos. */ | 208 | /** Atributo documentos. */ |
@@ -228,6 +231,10 @@ public class Processo extends PersistentObjectUnidade { | @@ -228,6 +231,10 @@ public class Processo extends PersistentObjectUnidade { | ||
228 | /** Atributo unidadesProcesso. */ | 231 | /** Atributo unidadesProcesso. */ |
229 | @OneToMany(fetch = FetchType.LAZY, mappedBy = "processo", cascade = CascadeType.ALL) | 232 | @OneToMany(fetch = FetchType.LAZY, mappedBy = "processo", cascade = CascadeType.ALL) |
230 | private Collection<UnidadeProcesso> unidadesProcesso; | 233 | private Collection<UnidadeProcesso> unidadesProcesso; |
234 | + | ||
235 | + @Transient | ||
236 | + @JsonView({ Views.ProcessoEdit.class }) | ||
237 | + private boolean tramitado; | ||
231 | 238 | ||
232 | /** | 239 | /** |
233 | * Retorna o valor do atributo <code>id</code> | 240 | * Retorna o valor do atributo <code>id</code> |
@@ -860,6 +867,7 @@ public class Processo extends PersistentObjectUnidade { | @@ -860,6 +867,7 @@ public class Processo extends PersistentObjectUnidade { | ||
860 | this.unidadesProcesso = unidadesProcesso; | 867 | this.unidadesProcesso = unidadesProcesso; |
861 | } | 868 | } |
862 | 869 | ||
870 | + | ||
863 | /** | 871 | /** |
864 | * <p> | 872 | * <p> |
865 | * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | 873 | * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> |
@@ -875,10 +883,11 @@ public class Processo extends PersistentObjectUnidade { | @@ -875,10 +883,11 @@ public class Processo extends PersistentObjectUnidade { | ||
875 | * | 883 | * |
876 | * @return boolean | 884 | * @return boolean |
877 | */ | 885 | */ |
878 | - /* @JsonView({ Views.ProcessoEdit.class }) */ | ||
879 | - public boolean isTramitado() { | ||
880 | - | 886 | + public boolean getTramitado() { |
887 | + | ||
881 | return !UtilColecao.isVazio(this.getUnidadesProcesso()) && this.getUnidadesProcesso().size() > 1; | 888 | return !UtilColecao.isVazio(this.getUnidadesProcesso()) && this.getUnidadesProcesso().size() > 1; |
882 | } | 889 | } |
890 | + | ||
891 | + | ||
883 | 892 | ||
884 | } | 893 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/model/SigiloTipoProcesso.java
@@ -66,7 +66,7 @@ public class SigiloTipoProcesso extends PersistentObjectAudit { | @@ -66,7 +66,7 @@ public class SigiloTipoProcesso extends PersistentObjectAudit { | ||
66 | 66 | ||
67 | /** Atributo sigilo. */ | 67 | /** Atributo sigilo. */ |
68 | @ManyToOne(fetch = FetchType.LAZY) | 68 | @ManyToOne(fetch = FetchType.LAZY) |
69 | - @JsonView({ ViewsEcm.TipoProcessoEdit.class, ViewsEcm.NivelAcessoTipoProcessoEdit.class, ViewsEcm.ProcessoEdit.class }) | 69 | + @JsonView({ ViewsEcm.TipoProcessoEdit.class, ViewsEcm.NivelAcessoTipoProcessoEdit.class, ViewsEcm.ProcessoEdit.class, ViewsEcm.MetadadoProcessoView.class }) |
70 | private Sigilo sigilo; | 70 | private Sigilo sigilo; |
71 | 71 | ||
72 | /** | 72 | /** |
cit-ecm-api/src/main/java/br/com/centralit/api/model/TipoProcesso.java
@@ -67,7 +67,7 @@ public class TipoProcesso extends PersistentObjectUnidade { | @@ -67,7 +67,7 @@ public class TipoProcesso extends PersistentObjectUnidade { | ||
67 | private String descricao; | 67 | private String descricao; |
68 | 68 | ||
69 | /** Atributo nome. */ | 69 | /** Atributo nome. */ |
70 | - @JsonView({ ViewsEcm.TipoProcessoList.class, Views.ProcessoList.class, Views.ProcessoRelacionadoList.class }) | 70 | + @JsonView({ ViewsEcm.TipoProcessoList.class, Views.ProcessoList.class, Views.ProcessoRelacionadoList.class, ViewsEcm.MetadadoProcessoView.class }) |
71 | private String nome; | 71 | private String nome; |
72 | 72 | ||
73 | /** Atributo nome. */ | 73 | /** Atributo nome. */ |
cit-ecm-api/src/main/java/br/com/centralit/api/service/HistoricoAlteracaoProcessoService.java
@@ -4,6 +4,8 @@ import java.util.Collection; | @@ -4,6 +4,8 @@ import java.util.Collection; | ||
4 | 4 | ||
5 | import br.com.centralit.api.model.Assinatura; | 5 | 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; | ||
8 | +import br.com.centralit.api.model.UnidadeProcesso; | ||
7 | import br.com.centralit.framework.service.arquitetura.GenericService; | 9 | import br.com.centralit.framework.service.arquitetura.GenericService; |
8 | 10 | ||
9 | /** | 11 | /** |
@@ -102,4 +104,33 @@ public interface HistoricoAlteracaoProcessoService extends GenericService<Histor | @@ -102,4 +104,33 @@ public interface HistoricoAlteracaoProcessoService extends GenericService<Histor | ||
102 | * @param assinatura | 104 | * @param assinatura |
103 | */ | 105 | */ |
104 | void gerarHistoricoAssinatura(Assinatura assinatura); | 106 | void gerarHistoricoAssinatura(Assinatura assinatura); |
107 | + | ||
108 | + /** | ||
109 | + * Método responsável por gerar Histórico de alteracao do precesso atribuição | ||
110 | + * | ||
111 | + * @author maycon.silva | ||
112 | + * | ||
113 | + * @param unidadeProcesso | ||
114 | + */ | ||
115 | + void gerarHistoricoAtribuicao(UnidadeProcesso unidadeProcesso); | ||
116 | + | ||
117 | + /** | ||
118 | + * | ||
119 | + * Método responsável por | ||
120 | + * | ||
121 | + * @author maycon.silva | ||
122 | + * | ||
123 | + * @param processo | ||
124 | + */ | ||
125 | + void gerarHistoricoIniciacaoProcesso(Processo processo); | ||
126 | + | ||
127 | + | ||
128 | + /** | ||
129 | + * Método responsável por | ||
130 | + * | ||
131 | + * @author maycon.silva | ||
132 | + * | ||
133 | + * @param unidadeProcesso | ||
134 | + */ | ||
135 | + void gerarHistoricoCapturaDeProcesso(UnidadeProcesso unidadeProcesso); | ||
105 | } | 136 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/service/ProcessoService.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.PlanoClassificacao; | 5 | import br.com.centralit.api.model.PlanoClassificacao; |
4 | import br.com.centralit.api.model.Processo; | 6 | import br.com.centralit.api.model.Processo; |
5 | import br.com.centralit.framework.service.arquitetura.GenericService; | 7 | import br.com.centralit.framework.service.arquitetura.GenericService; |
@@ -221,5 +223,19 @@ public interface ProcessoService extends GenericService<Processo, Long> { | @@ -221,5 +223,19 @@ public interface ProcessoService extends GenericService<Processo, Long> { | ||
221 | * @return <RT> SearchResult<RT> | 223 | * @return <RT> SearchResult<RT> |
222 | */ | 224 | */ |
223 | <RT> SearchResult<RT> searchAndCountPorSigilo(ISearch search); | 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/UnidadeProcessoService.java
@@ -78,6 +78,20 @@ public interface UnidadeProcessoService extends GenericService<UnidadeProcesso, | @@ -78,6 +78,20 @@ public interface UnidadeProcessoService extends GenericService<UnidadeProcesso, | ||
78 | * @return | 78 | * @return |
79 | */ | 79 | */ |
80 | Collection<UnidadeProcesso> findByIdProcesso(Long idProcesso); | 80 | Collection<UnidadeProcesso> findByIdProcesso(Long idProcesso); |
81 | + | ||
82 | + /** | ||
83 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
84 | + * | ||
85 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
86 | + * | ||
87 | + * Método responsável por | ||
88 | + * | ||
89 | + * @author maycon.silva | ||
90 | + * | ||
91 | + * @param idProcesso | ||
92 | + * @return | ||
93 | + */ | ||
94 | + Collection<UnidadeProcesso> findByPorIdProcessoEmExecucao(Long idProcesso); | ||
81 | 95 | ||
82 | /** | 96 | /** |
83 | * <p> | 97 | * <p> |
@@ -171,6 +185,21 @@ public interface UnidadeProcessoService extends GenericService<UnidadeProcesso, | @@ -171,6 +185,21 @@ public interface UnidadeProcessoService extends GenericService<UnidadeProcesso, | ||
171 | * @param processo | 185 | * @param processo |
172 | */ | 186 | */ |
173 | void saveUnidadeProcesso(Processo processo); | 187 | void saveUnidadeProcesso(Processo processo); |
188 | + | ||
189 | + /** | ||
190 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
191 | + * | ||
192 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
193 | + * | ||
194 | + * Método responsável por | ||
195 | + * | ||
196 | + * @author maycon.silva | ||
197 | + * | ||
198 | + * @param idProcesso | ||
199 | + * @param idUnidade | ||
200 | + * @return | ||
201 | + */ | ||
202 | + UnidadeProcesso obterPorUnidadeEProcessoEmExecucao(Long idProcesso, Long idUnidade); | ||
174 | 203 | ||
175 | /** | 204 | /** |
176 | * Método responsável por listar processos através da unidade do usuário | 205 | * Método responsável por listar processos através da unidade do usuário |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/AnexarProcessoServiceImpl.java
@@ -14,13 +14,12 @@ import br.com.centralit.api.model.Processo; | @@ -14,13 +14,12 @@ import br.com.centralit.api.model.Processo; | ||
14 | import br.com.centralit.api.service.AnexarProcessoService; | 14 | import br.com.centralit.api.service.AnexarProcessoService; |
15 | import br.com.centralit.api.service.AnexoGedService; | 15 | import br.com.centralit.api.service.AnexoGedService; |
16 | import br.com.centralit.api.service.DocumentoGedService; | 16 | import br.com.centralit.api.service.DocumentoGedService; |
17 | +import br.com.centralit.api.service.DominioService; | ||
17 | import br.com.centralit.api.service.ProcessoService; | 18 | import br.com.centralit.api.service.ProcessoService; |
18 | import br.com.centralit.api.viewHelper.AnexarProcessoVH; | 19 | import br.com.centralit.api.viewHelper.AnexarProcessoVH; |
19 | -import br.com.centralit.framework.esi.enumerated.EventTargetEnum; | ||
20 | -import br.com.centralit.framework.esi.environment.EnvironmentVariable; | ||
21 | -import br.com.centralit.framework.esi.environment.SignalEventInput; | ||
22 | import br.com.centralit.framework.exception.BusinessException; | 20 | import br.com.centralit.framework.exception.BusinessException; |
23 | import br.com.centralit.framework.exception.CodigoErro; | 21 | import br.com.centralit.framework.exception.CodigoErro; |
22 | +import br.com.centralit.framework.model.Dominio; | ||
24 | import br.com.centralit.framework.service.arquitetura.GedFileService; | 23 | import br.com.centralit.framework.service.arquitetura.GedFileService; |
25 | import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; | 24 | import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; |
26 | import br.com.centralit.framework.util.UtilColecao; | 25 | import br.com.centralit.framework.util.UtilColecao; |
@@ -83,6 +82,9 @@ public class AnexarProcessoServiceImpl extends GenericServiceImpl<AnexoProcesso, | @@ -83,6 +82,9 @@ public class AnexarProcessoServiceImpl extends GenericServiceImpl<AnexoProcesso, | ||
83 | 82 | ||
84 | @Autowired | 83 | @Autowired |
85 | private DocumentoGedService documentoGedService; | 84 | private DocumentoGedService documentoGedService; |
85 | + | ||
86 | + @Autowired | ||
87 | + private DominioService dominioService; | ||
86 | 88 | ||
87 | /** | 89 | /** |
88 | * Responsável pela criação de novas instâncias desta classe. | 90 | * Responsável pela criação de novas instâncias desta classe. |
@@ -127,6 +129,8 @@ public class AnexarProcessoServiceImpl extends GenericServiceImpl<AnexoProcesso, | @@ -127,6 +129,8 @@ public class AnexarProcessoServiceImpl extends GenericServiceImpl<AnexoProcesso, | ||
127 | for (AnexoProcesso anexoProcesso : anexarProcessoVH.getListaProcessoAnexado()) { | 129 | for (AnexoProcesso anexoProcesso : anexarProcessoVH.getListaProcessoAnexado()) { |
128 | 130 | ||
129 | Processo processoFilho = this.processoService.getReference(anexoProcesso.getProcessoAnexado().getId()); | 131 | Processo processoFilho = this.processoService.getReference(anexoProcesso.getProcessoAnexado().getId()); |
132 | + | ||
133 | + processoFilho.setStatus(this.dominioService.findByChaveAndCodigo(Dominio.TIPO_STATUS_PROCESSO_ECM, 5L)); | ||
130 | 134 | ||
131 | if (UtilDate.diferencaHoras(processoPai.getDataCriacao().getTime(), processoFilho.getDataCriacao().getTime()) < 0) { | 135 | if (UtilDate.diferencaHoras(processoPai.getDataCriacao().getTime(), processoFilho.getDataCriacao().getTime()) < 0) { |
132 | 136 | ||
@@ -348,9 +352,6 @@ public class AnexarProcessoServiceImpl extends GenericServiceImpl<AnexoProcesso, | @@ -348,9 +352,6 @@ public class AnexarProcessoServiceImpl extends GenericServiceImpl<AnexoProcesso, | ||
348 | 352 | ||
349 | for (AnexoProcesso processoAnexado : anexarProcessoVH.getListaProcessoAnexado()) { | 353 | for (AnexoProcesso processoAnexado : anexarProcessoVH.getListaProcessoAnexado()) { |
350 | 354 | ||
351 | - /*AnexoProcesso anexoProcesso = this.anexarProcessoDao.verificarUnicidadeAnexoProcesso(processoAnexado.getProcessoAnexado().getId());*/ | ||
352 | - | ||
353 | - | ||
354 | if (this.anexarProcessoDao.isExisteAnexoProcesso(processoAnexado.getProcessoAnexado().getId())) { | 355 | if (this.anexarProcessoDao.isExisteAnexoProcesso(processoAnexado.getProcessoAnexado().getId())) { |
355 | mensagem.append(processoAnexado.getProcessoAnexado().getNup()).append(","); | 356 | mensagem.append(processoAnexado.getProcessoAnexado().getNup()).append(","); |
356 | } | 357 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/DocumentoGedServiceImpl.java
@@ -669,6 +669,7 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl<DocumentoGed, Lo | @@ -669,6 +669,7 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl<DocumentoGed, Lo | ||
669 | entity.setVersaoAnterior(versaoAnterior); | 669 | entity.setVersaoAnterior(versaoAnterior); |
670 | entity.setEditor(this.getUsuario()); | 670 | entity.setEditor(this.getUsuario()); |
671 | entity.setAutor(this.getUsuario()); | 671 | entity.setAutor(this.getUsuario()); |
672 | + entity.setOrigem(versaoAnterior.getOrigem()); | ||
672 | 673 | ||
673 | if (entity != null && entity.getNovaVersao()) { | 674 | if (entity != null && entity.getNovaVersao()) { |
674 | entity.setVersaoDocumento(Math.floor(entity.getVersaoDocumento()) + 1); | 675 | entity.setVersaoDocumento(Math.floor(entity.getVersaoDocumento()) + 1); |
@@ -884,6 +885,7 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl<DocumentoGed, Lo | @@ -884,6 +885,7 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl<DocumentoGed, Lo | ||
884 | documentoGed.setOrigem(processoOrigem); | 885 | documentoGed.setOrigem(processoOrigem); |
885 | documentoGed.setAnexo(null); | 886 | documentoGed.setAnexo(null); |
886 | documentoGed.setId(null); | 887 | documentoGed.setId(null); |
888 | + documentoGed.setAssinaturas(null); | ||
887 | 889 | ||
888 | if (!UtilColecao.isVazio(documentoGedOrigem.getInteressados())) { | 890 | if (!UtilColecao.isVazio(documentoGedOrigem.getInteressados())) { |
889 | 891 |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/HistoricoAlteracaoProcessoServiceImpl.java
@@ -15,6 +15,8 @@ import br.com.centralit.api.dao.HistoricoAlteracaoProcessoDao; | @@ -15,6 +15,8 @@ import br.com.centralit.api.dao.HistoricoAlteracaoProcessoDao; | ||
15 | import br.com.centralit.api.model.AcaoHistoricoAlteracaoProcesso; | 15 | import br.com.centralit.api.model.AcaoHistoricoAlteracaoProcesso; |
16 | import br.com.centralit.api.model.Assinatura; | 16 | import br.com.centralit.api.model.Assinatura; |
17 | import br.com.centralit.api.model.HistoricoAlteracaoProcesso; | 17 | import br.com.centralit.api.model.HistoricoAlteracaoProcesso; |
18 | +import br.com.centralit.api.model.Processo; | ||
19 | +import br.com.centralit.api.model.UnidadeProcesso; | ||
18 | import br.com.centralit.api.service.AcaoHistoricoAlteracaoProcessoService; | 20 | import br.com.centralit.api.service.AcaoHistoricoAlteracaoProcessoService; |
19 | import br.com.centralit.api.service.HistoricoAlteracaoProcessoService; | 21 | import br.com.centralit.api.service.HistoricoAlteracaoProcessoService; |
20 | import br.com.centralit.api.service.ProcessoService; | 22 | import br.com.centralit.api.service.ProcessoService; |
@@ -54,6 +56,26 @@ import br.com.centralit.framework.util.UtilObjeto; | @@ -54,6 +56,26 @@ import br.com.centralit.framework.util.UtilObjeto; | ||
54 | * @author rogerio.costa | 56 | * @author rogerio.costa |
55 | * | 57 | * |
56 | */ | 58 | */ |
59 | +/** | ||
60 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
61 | + * | ||
62 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
63 | + * | ||
64 | + * <p><b>Title: </b></p> | ||
65 | + * | ||
66 | + * <p><b>Description: </b></p> | ||
67 | + * | ||
68 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
69 | + * | ||
70 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
71 | + * | ||
72 | + * @since 28/04/2016 - 21:53:16 | ||
73 | + * | ||
74 | + * @version 1.0.0 | ||
75 | + * | ||
76 | + * @author maycon.silva | ||
77 | + * | ||
78 | + */ | ||
57 | @Service("historicoAlteracaoProcessoService") | 79 | @Service("historicoAlteracaoProcessoService") |
58 | public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl<HistoricoAlteracaoProcesso, Long> implements HistoricoAlteracaoProcessoService { | 80 | public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl<HistoricoAlteracaoProcesso, Long> implements HistoricoAlteracaoProcessoService { |
59 | 81 | ||
@@ -218,4 +240,76 @@ public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl<Hi | @@ -218,4 +240,76 @@ public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl<Hi | ||
218 | hap.setAutor(usuario); | 240 | hap.setAutor(usuario); |
219 | this.saveWithParams(hap); | 241 | this.saveWithParams(hap); |
220 | } | 242 | } |
243 | + | ||
244 | + /** | ||
245 | + * Método responsável por gerar Histórico de alteracao do processo atribuição | ||
246 | + * | ||
247 | + * @author maycon.silva | ||
248 | + * | ||
249 | + * @param unidadeProcesso | ||
250 | + */ | ||
251 | + public void gerarHistoricoAtribuicao(UnidadeProcesso unidadeProcesso) { | ||
252 | + | ||
253 | + Usuario usuario = (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); | ||
254 | + Map<String, String> mapaAtributos = new HashMap<String, String>(); | ||
255 | + mapaAtributos.put("usuario", null); | ||
256 | + | ||
257 | + HistoricoAlteracaoProcesso hap = new HistoricoAlteracaoProcesso( | ||
258 | + unidadeProcesso.getProcesso(), | ||
259 | + Calendar.getInstance(), | ||
260 | + usuario.getUnidade().getNome(), | ||
261 | + usuario.getUsername(), | ||
262 | + null, | ||
263 | + AcaoHistoricoAlteracaoProcesso.INICIAR_ATRIBUICAO_PROCESSO_DESCRICAO, | ||
264 | + AcaoHistoricoAlteracaoProcesso.INICIAR_ATRIBUICAO_PROCESSO_CHAVE, null, mapaAtributos); | ||
265 | + hap.setAutor(usuario); | ||
266 | + | ||
267 | + this.saveWithParams(hap); | ||
268 | + } | ||
269 | + | ||
270 | + /** | ||
271 | + * Método responsável por gerar Histórico de alteração do processo Iniciação processo | ||
272 | + * | ||
273 | + * @author maycon.silva | ||
274 | + * | ||
275 | + * @param processo | ||
276 | + */ | ||
277 | + public void gerarHistoricoIniciacaoProcesso(Processo processo) { | ||
278 | + | ||
279 | + Usuario usuario = (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); | ||
280 | + Map<String, String> mapaAtributos = new HashMap<String, String>(); | ||
281 | + mapaAtributos.put("usuario", null); | ||
282 | + mapaAtributos.put("protocolo", processo.getNup()); | ||
283 | + | ||
284 | + HistoricoAlteracaoProcesso hap = new HistoricoAlteracaoProcesso( | ||
285 | + processo, | ||
286 | + Calendar.getInstance(), | ||
287 | + usuario.getUnidade().getNome(), | ||
288 | + usuario.getUsername(), | ||
289 | + null, | ||
290 | + AcaoHistoricoAlteracaoProcesso.INCLUSAO_PROCESSO_DESCRICAO, | ||
291 | + AcaoHistoricoAlteracaoProcesso.INCLUSAO_PROCESSO_CHAVE, null, mapaAtributos); | ||
292 | + hap.setAutor(usuario); | ||
293 | + | ||
294 | + this.saveWithParams(hap); | ||
295 | + } | ||
296 | + | ||
297 | + public void gerarHistoricoCapturaDeProcesso(UnidadeProcesso unidadeProcesso){ | ||
298 | + | ||
299 | + Usuario usuario = (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); | ||
300 | + Map<String, String> mapaAtributos = new HashMap<String, String>(); | ||
301 | + mapaAtributos.put("usuario", null); | ||
302 | + | ||
303 | + HistoricoAlteracaoProcesso hap = new HistoricoAlteracaoProcesso( | ||
304 | + unidadeProcesso.getProcesso(), | ||
305 | + Calendar.getInstance(), | ||
306 | + usuario.getUnidade().getNome(), | ||
307 | + usuario.getUsername(), | ||
308 | + null, | ||
309 | + AcaoHistoricoAlteracaoProcesso.ALTERAR_ATRIBUICAO_PROCESSO_DESCRICAO, | ||
310 | + AcaoHistoricoAlteracaoProcesso.ALTERAR_ATRIBUICAO_PROCESSO_CHAVE, null, mapaAtributos); | ||
311 | + hap.setAutor(usuario); | ||
312 | + | ||
313 | + this.saveWithParams(hap); | ||
314 | + } | ||
221 | } | 315 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/InicializarEcmServiceImpl.java
@@ -129,7 +129,7 @@ public class InicializarEcmServiceImpl extends UtilStartup { | @@ -129,7 +129,7 @@ public class InicializarEcmServiceImpl extends UtilStartup { | ||
129 | menuProcesso = this.menuService.mergeIfNotExist(menuProcesso); | 129 | menuProcesso = this.menuService.mergeIfNotExist(menuProcesso); |
130 | 130 | ||
131 | // Submenu Cadastro de Processo #INICIO | 131 | // Submenu Cadastro de Processo #INICIO |
132 | - Pagina pgProcesso = new Pagina("Novo Processo", "/cit-ecm-web/html/processo/processoEdit.html"); | 132 | + Pagina pgProcesso = new Pagina("Novo Processo", "/cit-ecm-web/html/processo/processoNew.html"); |
133 | pgProcesso = this.paginaService.saveIfNotExist(pgProcesso); | 133 | pgProcesso = this.paginaService.saveIfNotExist(pgProcesso); |
134 | 134 | ||
135 | Menu menuCadastroProcesso = new Menu("Novo Processo", pgProcesso, menuProcesso, 2, 1, null, null, null, null, modulo, "NOVO_PROCESSO"); | 135 | Menu menuCadastroProcesso = new Menu("Novo Processo", pgProcesso, menuProcesso, 2, 1, null, null, null, null, modulo, "NOVO_PROCESSO"); |
@@ -218,6 +218,9 @@ public class InicializarEcmServiceImpl extends UtilStartup { | @@ -218,6 +218,9 @@ public class InicializarEcmServiceImpl extends UtilStartup { | ||
218 | filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/HistoricoAtribuicaoProcessoRepository.js", this.dominioJS, menuCadastroProcesso)); | 218 | filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/HistoricoAtribuicaoProcessoRepository.js", this.dominioJS, menuCadastroProcesso)); |
219 | filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/HistoricoAtribuicaoProcessoRepository.min.js", this.dominioJS, menuCadastroProcesso)); | 219 | filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/HistoricoAtribuicaoProcessoRepository.min.js", this.dominioJS, menuCadastroProcesso)); |
220 | 220 | ||
221 | + filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/MetadadoProcessoViewController.js", this.dominioJS, menuCadastroProcesso)); | ||
222 | + filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/MetadadoProcessoViewController.min.js", this.dominioJS, menuCadastroProcesso)); | ||
223 | + | ||
221 | menuCadastroProcesso.setIncludes(filesProcesso); | 224 | menuCadastroProcesso.setIncludes(filesProcesso); |
222 | this.menuService.mergeIfNotExist(menuCadastroProcesso); | 225 | this.menuService.mergeIfNotExist(menuCadastroProcesso); |
223 | 226 |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/ProcessoServiceImpl.java
@@ -19,6 +19,9 @@ import org.springframework.beans.factory.annotation.Qualifier; | @@ -19,6 +19,9 @@ import org.springframework.beans.factory.annotation.Qualifier; | ||
19 | import org.springframework.stereotype.Service; | 19 | import org.springframework.stereotype.Service; |
20 | import org.springframework.validation.Validator; | 20 | import org.springframework.validation.Validator; |
21 | 21 | ||
22 | +import com.googlecode.genericdao.search.ISearch; | ||
23 | +import com.googlecode.genericdao.search.SearchResult; | ||
24 | + | ||
22 | import br.com.centralit.api.dao.ProcessoDao; | 25 | import br.com.centralit.api.dao.ProcessoDao; |
23 | import br.com.centralit.api.model.DocumentoGed; | 26 | import br.com.centralit.api.model.DocumentoGed; |
24 | import br.com.centralit.api.model.EstruturaOrganizacionalECM; | 27 | import br.com.centralit.api.model.EstruturaOrganizacionalECM; |
@@ -33,6 +36,7 @@ import br.com.centralit.api.service.CredencialProcessoService; | @@ -33,6 +36,7 @@ import br.com.centralit.api.service.CredencialProcessoService; | ||
33 | import br.com.centralit.api.service.DocumentoGedService; | 36 | import br.com.centralit.api.service.DocumentoGedService; |
34 | import br.com.centralit.api.service.DominioService; | 37 | import br.com.centralit.api.service.DominioService; |
35 | import br.com.centralit.api.service.GrupoService; | 38 | import br.com.centralit.api.service.GrupoService; |
39 | +import br.com.centralit.api.service.HistoricoAlteracaoProcessoService; | ||
36 | import br.com.centralit.api.service.HistoricoAtribuicaoProcessoService; | 40 | import br.com.centralit.api.service.HistoricoAtribuicaoProcessoService; |
37 | import br.com.centralit.api.service.NotificacaoService; | 41 | import br.com.centralit.api.service.NotificacaoService; |
38 | import br.com.centralit.api.service.PlanoClassificacaoService; | 42 | import br.com.centralit.api.service.PlanoClassificacaoService; |
@@ -149,6 +153,9 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | @@ -149,6 +153,9 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | ||
149 | /** Atributo notificacaoService. */ | 153 | /** Atributo notificacaoService. */ |
150 | @Autowired | 154 | @Autowired |
151 | private NotificacaoService notificacaoService; | 155 | private NotificacaoService notificacaoService; |
156 | + | ||
157 | + @Autowired | ||
158 | + private HistoricoAlteracaoProcessoService historicoAlteracaoProcessoService; | ||
152 | 159 | ||
153 | @Autowired | 160 | @Autowired |
154 | public ProcessoServiceImpl( final ProcessoDao processoDao, @Qualifier("processoValidator") final Validator validator ) { | 161 | public ProcessoServiceImpl( final ProcessoDao processoDao, @Qualifier("processoValidator") final Validator validator ) { |
@@ -169,19 +176,25 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | @@ -169,19 +176,25 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | ||
169 | entity.setNivelAcessoOriginal(entity.getNivelAcesso()); | 176 | entity.setNivelAcessoOriginal(entity.getNivelAcesso()); |
170 | 177 | ||
171 | Processo processo = super.save(entity); | 178 | Processo processo = super.save(entity); |
172 | - | ||
173 | - this.unidadeProcessoService.saveUnidadeProcesso(processo); | ||
174 | - | 179 | + |
175 | if (processo.getTipoProtocolo().getCodigo().equals(1L)) { | 180 | if (processo.getTipoProtocolo().getCodigo().equals(1L)) { |
176 | this.gerarNUP(processo); | 181 | this.gerarNUP(processo); |
177 | } | 182 | } |
183 | + | ||
184 | + this.historicoAlteracaoProcessoService.gerarHistoricoIniciacaoProcesso(processo); | ||
178 | 185 | ||
186 | + this.unidadeProcessoService.saveUnidadeProcesso(processo); | ||
187 | + | ||
188 | + | ||
179 | this.saveSolr(processo); | 189 | this.saveSolr(processo); |
180 | 190 | ||
181 | // Verifica se o processo é sigiloso, verdadeiro sejá estarta o businessProcess, falso envia uma notificação para os grupos responsáeis. | 191 | // Verifica se o processo é sigiloso, verdadeiro sejá estarta o businessProcess, falso envia uma notificação para os grupos responsáeis. |
182 | if (!UtilObjeto.isReferencia(processo.getSigilo())) { | 192 | if (!UtilObjeto.isReferencia(processo.getSigilo())) { |
183 | - | 193 | + |
194 | + entity.setStatus(this.dominioService.findByChaveAndCodigo(Dominio.TIPO_STATUS_PROCESSO_ECM, Dominio.TIPO_STATUS_PROCESSO_ECM_EM_ANDAMENTO)); | ||
195 | + | ||
184 | this.startBusinessProcess(processo); | 196 | this.startBusinessProcess(processo); |
197 | + | ||
185 | } else { | 198 | } else { |
186 | 199 | ||
187 | this.enviarNotificacaoProcessoSigiloso(processo); | 200 | this.enviarNotificacaoProcessoSigiloso(processo); |
@@ -738,7 +751,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | @@ -738,7 +751,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | ||
738 | // Verifica se o usuario logado está lotado na unidade. | 751 | // Verifica se o usuario logado está lotado na unidade. |
739 | if (UtilObjeto.isReferencia(this.getUsuario().getUnidade())) { | 752 | if (UtilObjeto.isReferencia(this.getUsuario().getUnidade())) { |
740 | 753 | ||
741 | - UnidadeProcesso unidadeProcesso = this.unidadeProcessoService.obterPorUnidadeEProcesso(processo.getId(), this.getUsuario().getUnidade().getId()); | 754 | + UnidadeProcesso unidadeProcesso = this.unidadeProcessoService.obterPorUnidadeEProcessoEmExecucao(processo.getId(), this.getUsuario().getUnidade().getId()); |
742 | // Verifica se o processo foi enviado para essa unidade e se é o primeiro acesso | 755 | // Verifica se o processo foi enviado para essa unidade e se é o primeiro acesso |
743 | if (UtilObjeto.isReferencia(unidadeProcesso) && unidadeProcesso.getPrimeiroAcesso()) { | 756 | if (UtilObjeto.isReferencia(unidadeProcesso) && unidadeProcesso.getPrimeiroAcesso()) { |
744 | 757 | ||
@@ -746,6 +759,8 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | @@ -746,6 +759,8 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | ||
746 | unidadeProcesso.setPrimeiroAcesso(Boolean.FALSE); | 759 | unidadeProcesso.setPrimeiroAcesso(Boolean.FALSE); |
747 | 760 | ||
748 | this.historicoAtribuicaoProcessoService.saveHistorico(unidadeProcesso); | 761 | this.historicoAtribuicaoProcessoService.saveHistorico(unidadeProcesso); |
762 | + | ||
763 | + this.historicoAlteracaoProcessoService.gerarHistoricoCapturaDeProcesso(unidadeProcesso); | ||
749 | 764 | ||
750 | return Boolean.TRUE; | 765 | return Boolean.TRUE; |
751 | } | 766 | } |
@@ -1185,5 +1200,14 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | @@ -1185,5 +1200,14 @@ public class ProcessoServiceImpl extends GenericServiceImpl<Processo, Long> impl | ||
1185 | 1200 | ||
1186 | return this.processoDao.getProcessoByProtocolo(nup); | 1201 | return this.processoDao.getProcessoByProtocolo(nup); |
1187 | } | 1202 | } |
1203 | + | ||
1204 | + /** | ||
1205 | + * | ||
1206 | + */ | ||
1207 | + public Collection<Processo> autoCompleteProcessoEmAndametoByNup(String nup){ | ||
1208 | + | ||
1209 | + return this.processoDao.autoCompleteProcessoEmAndamentoByNup(nup ); | ||
1210 | + | ||
1211 | + } | ||
1188 | 1212 | ||
1189 | } | 1213 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/UnidadeProcessoServiceImpl.java
@@ -14,6 +14,7 @@ import br.com.centralit.api.model.UnidadeProcesso; | @@ -14,6 +14,7 @@ import br.com.centralit.api.model.UnidadeProcesso; | ||
14 | import br.com.centralit.api.service.DominioService; | 14 | import br.com.centralit.api.service.DominioService; |
15 | import br.com.centralit.api.service.GrupoService; | 15 | import br.com.centralit.api.service.GrupoService; |
16 | import br.com.centralit.api.service.GrupoUsuarioService; | 16 | import br.com.centralit.api.service.GrupoUsuarioService; |
17 | +import br.com.centralit.api.service.HistoricoAlteracaoProcessoService; | ||
17 | import br.com.centralit.api.service.HistoricoAtribuicaoProcessoService; | 18 | import br.com.centralit.api.service.HistoricoAtribuicaoProcessoService; |
18 | import br.com.centralit.api.service.NotificacaoService; | 19 | import br.com.centralit.api.service.NotificacaoService; |
19 | import br.com.centralit.api.service.NotificacaoUsuarioService; | 20 | import br.com.centralit.api.service.NotificacaoUsuarioService; |
@@ -105,6 +106,9 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces | @@ -105,6 +106,9 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces | ||
105 | /** Atributo historicoAtribuicaoProcessoService. */ | 106 | /** Atributo historicoAtribuicaoProcessoService. */ |
106 | @Autowired | 107 | @Autowired |
107 | private HistoricoAtribuicaoProcessoService historicoAtribuicaoProcessoService; | 108 | private HistoricoAtribuicaoProcessoService historicoAtribuicaoProcessoService; |
109 | + | ||
110 | + @Autowired | ||
111 | + private HistoricoAlteracaoProcessoService historicoAlteracaoProcessoService; | ||
108 | 112 | ||
109 | /** | 113 | /** |
110 | * Responsável pela criação de novas instâncias desta classe. | 114 | * Responsável pela criação de novas instâncias desta classe. |
@@ -204,7 +208,9 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces | @@ -204,7 +208,9 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces | ||
204 | unidadeProcesso.setUsuarioResponsavel(this.getUsuario()); | 208 | unidadeProcesso.setUsuarioResponsavel(this.getUsuario()); |
205 | 209 | ||
206 | unidadeProcesso = super.save(unidadeProcesso); | 210 | unidadeProcesso = super.save(unidadeProcesso); |
207 | - | 211 | + |
212 | + historicoAlteracaoProcessoService.gerarHistoricoAtribuicao(unidadeProcesso); | ||
213 | + | ||
208 | this.historicoAtribuicaoProcessoService.saveHistorico(unidadeProcesso); | 214 | this.historicoAtribuicaoProcessoService.saveHistorico(unidadeProcesso); |
209 | } | 215 | } |
210 | 216 | ||
@@ -227,7 +233,7 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces | @@ -227,7 +233,7 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces | ||
227 | */ | 233 | */ |
228 | public void executarConcluirProcessoNaUnidade(Long idTask, Processo processo) { | 234 | public void executarConcluirProcessoNaUnidade(Long idTask, Processo processo) { |
229 | 235 | ||
230 | - UnidadeProcesso unidadeProcesso = this.unidadeProcessoDao.obterPorUnidadeEProcesso(processo.getId(), this.getUsuario().getUnidade().getId()); | 236 | + UnidadeProcesso unidadeProcesso = this.unidadeProcessoDao.obterPorUnidadeEProcessoEmExecucao(processo.getId(), this.getUsuario().getUnidade().getId()); |
231 | 237 | ||
232 | if (UtilObjeto.isReferencia(unidadeProcesso)) { | 238 | if (UtilObjeto.isReferencia(unidadeProcesso)) { |
233 | 239 | ||
@@ -272,6 +278,17 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces | @@ -272,6 +278,17 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces | ||
272 | 278 | ||
273 | return this.unidadeProcessoDao.findByIdProcesso(idProcesso); | 279 | return this.unidadeProcessoDao.findByIdProcesso(idProcesso); |
274 | } | 280 | } |
281 | + | ||
282 | + /** | ||
283 | + * | ||
284 | + */ | ||
285 | + @Override | ||
286 | + public Collection<UnidadeProcesso> findByPorIdProcessoEmExecucao(Long idProcesso) { | ||
287 | + | ||
288 | + return this.unidadeProcessoDao.findByPorIdProcessoEmExecucao(idProcesso); | ||
289 | + } | ||
290 | + | ||
291 | + | ||
275 | 292 | ||
276 | /** | 293 | /** |
277 | * <p> | 294 | * <p> |
@@ -325,6 +342,15 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces | @@ -325,6 +342,15 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl<UnidadeProces | ||
325 | 342 | ||
326 | return this.unidadeProcessoDao.obterPorUnidadeEProcesso(idProcesso, idUnidade); | 343 | return this.unidadeProcessoDao.obterPorUnidadeEProcesso(idProcesso, idUnidade); |
327 | } | 344 | } |
345 | + | ||
346 | + /** | ||
347 | + * | ||
348 | + */ | ||
349 | + public UnidadeProcesso obterPorUnidadeEProcessoEmExecucao(Long idProcesso, Long idUnidade){ | ||
350 | + | ||
351 | + return this.unidadeProcessoDao.obterPorUnidadeEProcessoEmExecucao(idProcesso, idUnidade); | ||
352 | + | ||
353 | + } | ||
328 | 354 | ||
329 | /** | 355 | /** |
330 | * Método responsável por listar processos através da unidade do usuário | 356 | * Método responsável por listar processos através da unidade do usuário |
cit-ecm-web/src/main/java/br/com/centralit/controller/ProcessoController.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.RequestBody; | 7 | import org.springframework.web.bind.annotation.RequestBody; |
@@ -8,6 +10,8 @@ import org.springframework.web.bind.annotation.RequestMethod; | @@ -8,6 +10,8 @@ import org.springframework.web.bind.annotation.RequestMethod; | ||
8 | import org.springframework.web.bind.annotation.RequestParam; | 10 | import org.springframework.web.bind.annotation.RequestParam; |
9 | import org.springframework.web.bind.annotation.ResponseBody; | 11 | import org.springframework.web.bind.annotation.ResponseBody; |
10 | 12 | ||
13 | +import br.com.centralit.api.framework.json.ViewsEcm; | ||
14 | +import br.com.centralit.api.model.PlanoClassificacao; | ||
11 | import br.com.centralit.api.model.Processo; | 15 | import br.com.centralit.api.model.Processo; |
12 | import br.com.centralit.api.service.ProcessoService; | 16 | import br.com.centralit.api.service.ProcessoService; |
13 | import br.com.centralit.api.service.UsuarioService; | 17 | import br.com.centralit.api.service.UsuarioService; |
@@ -97,6 +101,28 @@ public class ProcessoController extends GenericController<Processo> { | @@ -97,6 +101,28 @@ public class ProcessoController extends GenericController<Processo> { | ||
97 | 101 | ||
98 | return responseBody; | 102 | return responseBody; |
99 | } | 103 | } |
104 | + | ||
105 | + | ||
106 | + /** | ||
107 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
108 | + * | ||
109 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
110 | + * | ||
111 | + * Método responsável por retornar apenas os atributos do metadado do processo. | ||
112 | + * | ||
113 | + * @author maycon.silva | ||
114 | + * | ||
115 | + * @param idProcesso | ||
116 | + * @return | ||
117 | + */ | ||
118 | + @RequestMapping(method = RequestMethod.GET, value = "/getMetadadoProcesso") | ||
119 | + @ResponseBody | ||
120 | + public ResponseBodyWrapper getMetadadoProcesso(@RequestParam(value = "idProcesso") Long idProcesso) { | ||
121 | + | ||
122 | + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.processoService.getReference(idProcesso), this.getMetadadoProcessoView()); | ||
123 | + | ||
124 | + return responseBody; | ||
125 | + } | ||
100 | 126 | ||
101 | /** | 127 | /** |
102 | * <p> | 128 | * <p> |
@@ -184,6 +210,18 @@ public class ProcessoController extends GenericController<Processo> { | @@ -184,6 +210,18 @@ public class ProcessoController extends GenericController<Processo> { | ||
184 | return responseBody; | 210 | return responseBody; |
185 | } | 211 | } |
186 | 212 | ||
213 | + | ||
214 | + @RequestMapping(value = "/autoCompleteProcessoEmAndametoByNup", method = RequestMethod.GET, produces = "application/json") | ||
215 | + @ResponseBody | ||
216 | + public ResponseBodyWrapper autoCompleteProcessoEmAndametoByNup(@RequestParam(value = "nup") String nup) { | ||
217 | + | ||
218 | + ResultResponseVH<Collection<Processo>> resultResponseVH = new ResultResponseVH<Collection<Processo>>(this.processoService.autoCompleteProcessoEmAndametoByNup(nup)); | ||
219 | + | ||
220 | + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(resultResponseVH, getMetadadoProcessoView()); | ||
221 | + | ||
222 | + return responseBody; | ||
223 | + } | ||
224 | + | ||
187 | @Override | 225 | @Override |
188 | public Class<Views.ProcessoEdit> getEditView() { | 226 | public Class<Views.ProcessoEdit> getEditView() { |
189 | 227 | ||
@@ -199,8 +237,12 @@ public class ProcessoController extends GenericController<Processo> { | @@ -199,8 +237,12 @@ public class ProcessoController extends GenericController<Processo> { | ||
199 | @Override | 237 | @Override |
200 | public Class<Views.ProcessoAutoCompleteView> getAutoCompleteView() { | 238 | public Class<Views.ProcessoAutoCompleteView> getAutoCompleteView() { |
201 | 239 | ||
202 | - // TODO Auto-generated method stub | ||
203 | return Views.ProcessoAutoCompleteView.class; | 240 | return Views.ProcessoAutoCompleteView.class; |
204 | } | 241 | } |
242 | + | ||
243 | + public Class<ViewsEcm.MetadadoProcessoView> getMetadadoProcessoView() { | ||
244 | + | ||
245 | + return ViewsEcm.MetadadoProcessoView.class; | ||
246 | + } | ||
205 | 247 | ||
206 | } | 248 | } |
cit-ecm-web/src/main/java/br/com/centralit/controller/UnidadeProcessoController.java
@@ -98,6 +98,29 @@ public class UnidadeProcessoController extends GenericController<UnidadeProcesso | @@ -98,6 +98,29 @@ public class UnidadeProcessoController extends GenericController<UnidadeProcesso | ||
98 | 98 | ||
99 | return responseBody; | 99 | return responseBody; |
100 | } | 100 | } |
101 | + | ||
102 | + /** | ||
103 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
104 | + * | ||
105 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
106 | + * | ||
107 | + * Método responsável por | ||
108 | + * | ||
109 | + * @author maycon.silva | ||
110 | + * | ||
111 | + * @param idProcesso | ||
112 | + * @return | ||
113 | + */ | ||
114 | + @RequestMapping(value = "/findByPorIdProcessoEmExecucao", method = RequestMethod.GET, produces = "application/json") | ||
115 | + @ResponseBody | ||
116 | + public ResponseBodyWrapper findByPorIdProcessoEmExecucao(@RequestParam(value = "idProcesso") Long idProcesso) { | ||
117 | + | ||
118 | + final Collection<UnidadeProcesso> list = this.unidadeProcessoService.findByPorIdProcessoEmExecucao(idProcesso); | ||
119 | + | ||
120 | + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(list, Views.EnviarProcessoView.class); | ||
121 | + | ||
122 | + return responseBody; | ||
123 | + } | ||
101 | 124 | ||
102 | /** | 125 | /** |
103 | * <p> | 126 | * <p> |
cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java
@@ -130,7 +130,6 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -130,7 +130,6 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
130 | list.add(new AcaoHistoricoAlteracaoProcesso("ANEXAR_PROCESSO_PRINCIPAL", "Anexar Processo principal", "Processo <<protocolo>> anexado a este processo.")); | 130 | list.add(new AcaoHistoricoAlteracaoProcesso("ANEXAR_PROCESSO_PRINCIPAL", "Anexar Processo principal", "Processo <<protocolo>> anexado a este processo.")); |
131 | list.add(new AcaoHistoricoAlteracaoProcesso("ANEXAR_PROCESSO_SECUNDARIO", "Anexar Processo secundário", "Processo anexado ao processo <<protocolo>>.")); | 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>>.")); | 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>>.")); | ||
134 | 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>>.")); | 133 | 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 | 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>>.")); | 134 | 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 | list.add(new AcaoHistoricoAlteracaoProcesso("CONCLUSAO_PROCESSO_UNIDADE", "Conclusão do Processo na Unidade", "Processo concluído na unidade <<unidade>>.")); | 135 | list.add(new AcaoHistoricoAlteracaoProcesso("CONCLUSAO_PROCESSO_UNIDADE", "Conclusão do Processo na Unidade", "Processo concluído na unidade <<unidade>>.")); |
@@ -142,6 +141,9 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -142,6 +141,9 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
142 | list.add(new AcaoHistoricoAlteracaoProcesso("VALIDAR_PROCESSO", "Validar Processo", "O processo <<protocolo>> foi validado e seus documentos.")); | 141 | list.add(new AcaoHistoricoAlteracaoProcesso("VALIDAR_PROCESSO", "Validar Processo", "O processo <<protocolo>> foi validado e seus documentos.")); |
143 | list.add(new AcaoHistoricoAlteracaoProcesso("ATRIBUICAO_PROCESSO", "Atribuição de processo", "O processo <<protocolo>> foi atribuido para <<usuario>>.")); | 142 | list.add(new AcaoHistoricoAlteracaoProcesso("ATRIBUICAO_PROCESSO", "Atribuição de processo", "O processo <<protocolo>> foi atribuido para <<usuario>>.")); |
144 | list.add(new AcaoHistoricoAlteracaoProcesso("ASSINAR_DOCUMENTO", "Assinatura de documento", "O documento <<tipo_documento>> <<numero_documento>> foi assinado por <<usuario>>.")); | 143 | list.add(new AcaoHistoricoAlteracaoProcesso("ASSINAR_DOCUMENTO", "Assinatura de documento", "O documento <<tipo_documento>> <<numero_documento>> foi assinado por <<usuario>>.")); |
144 | + list.add(new AcaoHistoricoAlteracaoProcesso("ATUALIZAR_ANDAMENTO_PROCESSO", "Atualização de Andamento do Processo", "Situação do processo alterada para <<situacao>>.")); | ||
145 | + list.add(new AcaoHistoricoAlteracaoProcesso("INICIAR_ATRIBUICAO_PROCESSO", "Atribuição do processo", "Processo atribuído a <<usuario>>.")); | ||
146 | + list.add(new AcaoHistoricoAlteracaoProcesso("ALTERAR_ATRIBUICAO_PROCESSO", "Atribuição do processo alterada", "Processo atribuído a <<usuario>>.")); | ||
145 | 147 | ||
146 | try { | 148 | try { |
147 | this.acaoHistoricoAlteracaoProcessoService.saveListIfNotExist(list); | 149 | this.acaoHistoricoAlteracaoProcessoService.saveListIfNotExist(list); |
@@ -206,6 +208,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -206,6 +208,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
206 | list.add(new Dominio("statusProcesso", "Em andamento", "EM_ANDAMENTO", 2L)); | 208 | list.add(new Dominio("statusProcesso", "Em andamento", "EM_ANDAMENTO", 2L)); |
207 | list.add(new Dominio("statusProcesso", "Aguardando Validação", "AGUARDANDO_VALIDACAO", 3L)); | 209 | list.add(new Dominio("statusProcesso", "Aguardando Validação", "AGUARDANDO_VALIDACAO", 3L)); |
208 | list.add(new Dominio("statusProcesso", "Validado", "VALIDADO", 4L)); | 210 | list.add(new Dominio("statusProcesso", "Validado", "VALIDADO", 4L)); |
211 | + list.add(new Dominio("statusProcesso", "Anexado", "ANEXADO", 5L)); | ||
209 | 212 | ||
210 | list.add(new Dominio("statusDocumentoGed", "Aguardando Validação", "AGUARDANDO_VALIDACAO", 0L)); | 213 | list.add(new Dominio("statusDocumentoGed", "Aguardando Validação", "AGUARDANDO_VALIDACAO", 0L)); |
211 | list.add(new Dominio("statusDocumentoGed", "Validado", "VALIDADO", 1L)); | 214 | list.add(new Dominio("statusDocumentoGed", "Validado", "VALIDADO", 1L)); |
@@ -454,6 +457,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -454,6 +457,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
454 | internacionalizacaoList.add(new Internacionalizacao("ECM.ASSINADO_SUCESSO", "Documento assinado com sucesso!", dominio, modulo)); | 457 | internacionalizacaoList.add(new Internacionalizacao("ECM.ASSINADO_SUCESSO", "Documento assinado com sucesso!", dominio, modulo)); |
455 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ASSINATURA_DO_DOCUMENTO", "Assinatura do Documento", dominio, modulo)); | 458 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ASSINATURA_DO_DOCUMENTO", "Assinatura do Documento", dominio, modulo)); |
456 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DOCUMENTO_SEM_ASSINATURA", "Documento sem assinaturas!", dominio, modulo)); | 459 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DOCUMENTO_SEM_ASSINATURA", "Documento sem assinaturas!", dominio, modulo)); |
460 | + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DADOS_PROCESSO_ANEXADO", "Dados do Processo Anexado", dominio, modulo)); | ||
457 | 461 | ||
458 | } | 462 | } |
459 | 463 | ||
@@ -530,7 +534,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -530,7 +534,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
530 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ANEXAR_PROCESSO_PRINCIPAL", "Anexar Processo principal", dominio, modulo)); | 534 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ANEXAR_PROCESSO_PRINCIPAL", "Anexar Processo principal", dominio, modulo)); |
531 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ANEXAR_PROCESSO_SECUNDARIO", "Anexar Processo secundário", dominio, modulo)); | 535 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ANEXAR_PROCESSO_SECUNDARIO", "Anexar Processo secundário", dominio, modulo)); |
532 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ATUALIZAR_ANDAMENTO_PROCESSO", "Atualização de Andamento do Processo", dominio, modulo)); | 536 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ATUALIZAR_ANDAMENTO_PROCESSO", "Atualização de Andamento do Processo", dominio, modulo)); |
533 | - internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ALTERACAO_ATRIBUICAO_PROCESSO", "Alteração ene atribuição de Processo", dominio, modulo)); | 537 | + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ALTERAR_ATRIBUICAO_PROCESSO", "Atribuição do processo alterada", dominio, modulo)); |
534 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.RESTAURACAO_VERSAO_DOCUMENTO", "Restauração de uma versão do documento", dominio, modulo)); | 538 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.RESTAURACAO_VERSAO_DOCUMENTO", "Restauração de uma versão do documento", dominio, modulo)); |
535 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.CONCLUSAO_PROCESSO_UNIDADE", "Conclusão do Processo na Unidade", dominio, modulo)); | 539 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.CONCLUSAO_PROCESSO_UNIDADE", "Conclusão do Processo na Unidade", dominio, modulo)); |
536 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.CANCELAR_DOCUMENTO", "Cancelar Documentos", dominio, modulo)); | 540 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.CANCELAR_DOCUMENTO", "Cancelar Documentos", dominio, modulo)); |
@@ -562,6 +566,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -562,6 +566,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
562 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.PROCESSO_CONCLUIDO_SUCESSO", "Processo concluído com sucesso!", dominio, modulo)); | 566 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.PROCESSO_CONCLUIDO_SUCESSO", "Processo concluído com sucesso!", dominio, modulo)); |
563 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.O_PROCESSO", "O processo", dominio, modulo)); | 567 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.O_PROCESSO", "O processo", dominio, modulo)); |
564 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.SALVO_SUCESSO", "Foi salvo com sucesso!", dominio, modulo)); | 568 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.SALVO_SUCESSO", "Foi salvo com sucesso!", dominio, modulo)); |
569 | + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.INICIAR_ATRIBUICAO_PROCESSO", "Atribuição do processo", dominio, modulo)); | ||
565 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.NAO_EXISTE_TAREFA_EXECUTAR", "Não existem tarefas a serem executadas!", dominio, modulo)); | 570 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.NAO_EXISTE_TAREFA_EXECUTAR", "Não existem tarefas a serem executadas!", dominio, modulo)); |
566 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CONFIRMA_SOBRESTAMENTO_TAREFA", "Confirma o sobrestamento da tarefa?", dominio, modulo)); | 571 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CONFIRMA_SOBRESTAMENTO_TAREFA", "Confirma o sobrestamento da tarefa?", dominio, modulo)); |
567 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.TAREFA_SOBRESTADA_SUCESSO", "Tarefa sobrestada com sucesso!", dominio, modulo)); | 572 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.TAREFA_SOBRESTADA_SUCESSO", "Tarefa sobrestada com sucesso!", dominio, modulo)); |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/AnexarProcessoController.js
@@ -34,6 +34,7 @@ citApp.controller('AnexarProcessoController', ['$scope', 'UnidadeProcessoReposit | @@ -34,6 +34,7 @@ citApp.controller('AnexarProcessoController', ['$scope', 'UnidadeProcessoReposit | ||
34 | AnexarProcessoRepository.findByIdProcesso($scope.$parent.$parent.processo.id).then(function(result) { | 34 | AnexarProcessoRepository.findByIdProcesso($scope.$parent.$parent.processo.id).then(function(result) { |
35 | angular.forEach(result, function(item, key) { | 35 | angular.forEach(result, function(item, key) { |
36 | if(item.originalElement.processo != null){ | 36 | if(item.originalElement.processo != null){ |
37 | + | ||
37 | $scope.anexarProcessoVH.listaProcessoAnexado.push(item.originalElement); | 38 | $scope.anexarProcessoVH.listaProcessoAnexado.push(item.originalElement); |
38 | 39 | ||
39 | } | 40 | } |
@@ -57,10 +58,9 @@ citApp.controller('AnexarProcessoController', ['$scope', 'UnidadeProcessoReposit | @@ -57,10 +58,9 @@ citApp.controller('AnexarProcessoController', ['$scope', 'UnidadeProcessoReposit | ||
57 | 58 | ||
58 | 59 | ||
59 | //Buscar processo através do nup | 60 | //Buscar processo através do nup |
60 | - $scope.findAutoCompleteProcesso = function(value){ | ||
61 | - return ProcessoRepository.findAutoComplete('nup', value).then(function(result) { | ||
62 | - | ||
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('AnexarProcessoController', ['$scope', 'UnidadeProcessoReposit | @@ -242,85 +242,4 @@ citApp.controller('AnexarProcessoController', ['$scope', 'UnidadeProcessoReposit | ||
242 | $scope.updateTask(true); | 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/GerenciarProcessoController.js
@@ -25,10 +25,10 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -25,10 +25,10 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
25 | $scope.isHistoricoJustificativa = false; | 25 | $scope.isHistoricoJustificativa = false; |
26 | $scope.isAnexarProcesso = false; | 26 | $scope.isAnexarProcesso = false; |
27 | $scope.widgetExemploIsCollapsed = true; | 27 | $scope.widgetExemploIsCollapsed = true; |
28 | - $scope.tratimitado(); | ||
29 | $scope.isGerenciarCredencialProcesso = false; | 28 | $scope.isGerenciarCredencialProcesso = false; |
30 | $scope.isClassificarProcessoDocumento = false; | 29 | $scope.isClassificarProcessoDocumento = false; |
31 | $scope.isAtribuirProcesso = false; | 30 | $scope.isAtribuirProcesso = false; |
31 | + $scope.isVisualizarMetadadoProcesso = false; | ||
32 | $scope.exibirAssinarDocAnexo = false; | 32 | $scope.exibirAssinarDocAnexo = false; |
33 | }; | 33 | }; |
34 | 34 | ||
@@ -82,20 +82,16 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -82,20 +82,16 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
82 | 82 | ||
83 | // ABRE ABA PARA CRIAR NOVO PROCESSO | 83 | // ABRE ABA PARA CRIAR NOVO PROCESSO |
84 | $scope.novoProcesso = function () { | 84 | $scope.novoProcesso = function () { |
85 | - | ||
86 | - var workspace = angular.element( '#editProcessoEcm' ).scope().workspace; | ||
87 | - if ( workspace ) { | ||
88 | - angular.element( "#citapp-controller" ).scope().removeWorkspace( workspace.id ); | ||
89 | - } | ||
90 | - | ||
91 | - $scope.openWorkspaceIfNotOpen( $translate.instant( 'ECM.LABEL.PROCESSO' ), '/cit-ecm-web/html/processo/processo.html', 'mod-orange' ); | ||
92 | - | ||
93 | - $timeout( function () { | ||
94 | - angular.element( '#editProcessoEcm' ).scope().$showPageEditWorkspace( angular.element( '#editProcessoEcm' ).scope().workspace ); | ||
95 | - angular.element( '#editProcessoEcm' ).scope().resetForm(); | ||
96 | - | ||
97 | - }, 600 ); | ||
98 | - | 85 | + $scope.openWorkspaceIfNotOpen($translate.instant('ECM.LABEL.NOVOPROCESSO'), '/cit-ecm-web/html/processo/processo.html', 'mod-orange'); |
86 | + $timeout(function() { | ||
87 | + angular.element('#newProcesso').scope().$showPageEditWorkspace(angular.element('#newProcesso').scope().workspace); | ||
88 | + $timeout(function(){ | ||
89 | + angular.element('#newProcesso').scope().resetForm(); | ||
90 | + }, 1000); | ||
91 | + | ||
92 | + }, 300); | ||
93 | + | ||
94 | + angular.element("#citapp-controller").scope().removeWorkspace($scope.workspace.id); | ||
99 | }; | 95 | }; |
100 | 96 | ||
101 | // Gerenciar as credenciais do processo | 97 | // Gerenciar as credenciais do processo |
@@ -135,6 +131,21 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -135,6 +131,21 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
135 | $scope.showAlert("success", $translate.instant('ECM.MSG.CAPTURADO_SUCESSO')); | 131 | $scope.showAlert("success", $translate.instant('ECM.MSG.CAPTURADO_SUCESSO')); |
136 | $scope.setLoading(false); | 132 | $scope.setLoading(false); |
137 | $scope.$modalConfirmInstance.dismiss( 'cancel' ); | 133 | $scope.$modalConfirmInstance.dismiss( 'cancel' ); |
134 | + | ||
135 | + var historicoAlteracaoProcesso = { | ||
136 | + documentoGed : $scope.documentoGed, | ||
137 | + descricaoAcao : $translate.instant('ECM.MSG_HISTORICO_ECM.ATRIBUICAO'), | ||
138 | + processo : $scope.processo, | ||
139 | + autor : $scope.usuarioLogado, | ||
140 | + acaoAlteracao : "ATRIBUICAO_PROCESSO" | ||
141 | + }; | ||
142 | + | ||
143 | + HistoricoAlteracaoProcessoRepository.saveParams(historicoAlteracaoProcesso).then(function(result){ | ||
144 | + $scope.atualizarAtribuicaoProcesso($scope.processo.id); | ||
145 | + angular.element( "#widget-historico" ).scope().atualizar(); | ||
146 | + $scope.setLoading(false); | ||
147 | + | ||
148 | + }); | ||
138 | 149 | ||
139 | }); | 150 | }); |
140 | 151 | ||
@@ -275,10 +286,8 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -275,10 +286,8 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
275 | $scope.isProcessoEdit = true; | 286 | $scope.isProcessoEdit = true; |
276 | $scope.isVersoesDocumento = false; | 287 | $scope.isVersoesDocumento = false; |
277 | 288 | ||
278 | - $timeout( function () { | ||
279 | - angular.element( '#editProcessoEcm' ).scope().getProcesso( $scope.processo, true ); | ||
280 | - angular.element( document.querySelector( '#topoMenu' ) ).remove(); | ||
281 | - angular.element( document.querySelector( '#cabecalhoProcesso' ) ).remove(); | 289 | + $timeout( function () { |
290 | + angular.element( '#editProcesso' ).scope().getProcesso( $scope.processo, true ); | ||
282 | } ); | 291 | } ); |
283 | 292 | ||
284 | }; | 293 | }; |
@@ -289,7 +298,6 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -289,7 +298,6 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
289 | $timeout( function () { | 298 | $timeout( function () { |
290 | ProcessoRepository.get( $scope.processo.id ).then( function ( result ) { | 299 | ProcessoRepository.get( $scope.processo.id ).then( function ( result ) { |
291 | $scope.processo = result.originalElement; | 300 | $scope.processo = result.originalElement; |
292 | - $scope.atualizarAtribuicaoProcesso($scope.processo.id); | ||
293 | } ); | 301 | } ); |
294 | }, 100 ); | 302 | }, 100 ); |
295 | 303 | ||
@@ -358,6 +366,8 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -358,6 +366,8 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
358 | 366 | ||
359 | // REMOVER DOCUMENTO | 367 | // REMOVER DOCUMENTO |
360 | $scope.removeDocumento = function ( documento, index ) { | 368 | $scope.removeDocumento = function ( documento, index ) { |
369 | + var documentoRemocao = documento; | ||
370 | + | ||
361 | $scope.$openModalConfirm( { | 371 | $scope.$openModalConfirm( { |
362 | message : $translate.instant( 'MSG.CONFIRMA_EXCLUSAO' ), | 372 | message : $translate.instant( 'MSG.CONFIRMA_EXCLUSAO' ), |
363 | callback : function () { | 373 | callback : function () { |
@@ -369,18 +379,22 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -369,18 +379,22 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
369 | $scope.processo.documentos.splice( index, 1 ); | 379 | $scope.processo.documentos.splice( index, 1 ); |
370 | 380 | ||
371 | var historicoAlteracaoProcesso = { | 381 | var historicoAlteracaoProcesso = { |
372 | - documentoGed : $scope.documentoGed, | 382 | + documentoGed : documentoRemocao, |
373 | descricaoAcao : $translate.instant( 'ECM.MSG_HISTORICO_ECM.REMOCAO_DOCUMENTO' ), | 383 | descricaoAcao : $translate.instant( 'ECM.MSG_HISTORICO_ECM.REMOCAO_DOCUMENTO' ), |
374 | processo : $scope.processo, | 384 | processo : $scope.processo, |
375 | autor : $scope.usuarioLogado, | 385 | autor : $scope.usuarioLogado, |
376 | idTask : $scope.task.id, | 386 | idTask : $scope.task.id, |
377 | - acaoAlteracao : "REMOCAO_DOCUMENTO" | 387 | + acaoAlteracao : "REMOCAO_DOCUMENTO", |
388 | + mapaAtributos : { | ||
389 | + "tipo_documento" : documentoRemocao.tipoDocumento.nome, | ||
390 | + "numero_documento" : documentoRemocao.numero | ||
391 | + } | ||
378 | }; | 392 | }; |
379 | HistoricoAlteracaoProcessoRepository.saveParams( historicoAlteracaoProcesso ).then( function ( result ) { | 393 | HistoricoAlteracaoProcessoRepository.saveParams( historicoAlteracaoProcesso ).then( function ( result ) { |
380 | - | 394 | + $scope.closeWidget(); |
381 | } ); | 395 | } ); |
382 | - } ); | ||
383 | - } | 396 | + } ); |
397 | + } | ||
384 | } ); | 398 | } ); |
385 | }; | 399 | }; |
386 | 400 | ||
@@ -441,7 +455,7 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -441,7 +455,7 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
441 | $scope.saveOrUpdateProcessoECM = function () { | 455 | $scope.saveOrUpdateProcessoECM = function () { |
442 | 456 | ||
443 | // CHAMA GRAVAR DO PROCESSOCONTROLLER.JS | 457 | // CHAMA GRAVAR DO PROCESSOCONTROLLER.JS |
444 | - angular.element( '#editProcessoEcm' ).scope().saveOrUpdate(); | 458 | + angular.element( '#editProcesso' ).scope().saveOrUpdate(); |
445 | 459 | ||
446 | $scope.closeWidget(); | 460 | $scope.closeWidget(); |
447 | $scope.atualizaProcesso(); | 461 | $scope.atualizaProcesso(); |
@@ -466,20 +480,12 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -466,20 +480,12 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
466 | // FECHA WIDGET E INICIA WIDGET PADRÃO | 480 | // FECHA WIDGET E INICIA WIDGET PADRÃO |
467 | $scope.closeWidget = function () { | 481 | $scope.closeWidget = function () { |
468 | angular.element( "#widget-historico" ).scope().atualizar(); | 482 | angular.element( "#widget-historico" ).scope().atualizar(); |
469 | - $scope.atualizarAtribuicaoProcesso($scope.idProcesso); | 483 | + $scope.atualizaProcesso(); |
470 | $scope.fecharPagina(); | 484 | $scope.fecharPagina(); |
471 | $scope.widgetExemploIsCollapsed = false; | 485 | $scope.widgetExemploIsCollapsed = false; |
472 | // WIDGET PRADAO | 486 | // WIDGET PRADAO |
473 | $scope.isHistoricoProcesso = true; | 487 | $scope.isHistoricoProcesso = true; |
474 | }; | 488 | }; |
475 | - | ||
476 | - $scope.tratimitado = function () { | ||
477 | - UnidadeProcessoRepository.existeVinculo( { 'joinClass' : 'processo.id', 'id' : $scope.processo.id } ).then( function ( result ) { | ||
478 | - if ( result ) { | ||
479 | - $scope.isTramitado = true; | ||
480 | - } | ||
481 | - } ); | ||
482 | - }; | ||
483 | 489 | ||
484 | // ------------------------------EXECUTA BPE------------------------------------ | 490 | // ------------------------------EXECUTA BPE------------------------------------ |
485 | 491 | ||
@@ -619,25 +625,24 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -619,25 +625,24 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
619 | 625 | ||
620 | ProcessoRepository.getProcessoGerenciamento($scope.idProcesso).then( function ( result ) { | 626 | ProcessoRepository.getProcessoGerenciamento($scope.idProcesso).then( function ( result ) { |
621 | $scope.processo = result.originalElement; | 627 | $scope.processo = result.originalElement; |
622 | - | ||
623 | - $scope.apresentarCabecalho = true; | ||
624 | - $scope.processo.idTask = $scope.task.id; | ||
625 | - | ||
626 | - $scope.atualizarAtribuicaoProcesso($scope.idProcesso); | ||
627 | - | ||
628 | - if ( $scope.$parent != undefined ) { | ||
629 | - $scope.$parent.idProcesso = $scope.idProcesso; | ||
630 | - } | ||
631 | - | ||
632 | - if ( angular.element( '#viewGerenciarProcesso' ).scope() != undefined ) { | ||
633 | - var workspace = angular.element( '#viewGerenciarProcesso' ).scope().workspace; | ||
634 | - angular.element( "#citapp-controller" ).scope().removeWorkspace( workspace.id ); | ||
635 | - } | ||
636 | - | ||
637 | - $scope.tratimitado(); | ||
638 | - | ||
639 | - $scope.setLoading( false ); | ||
640 | - | 628 | + $scope.apresentarCabecalho = true; |
629 | + $scope.processo.idTask = $scope.task.id; | ||
630 | + | ||
631 | + $scope.atualizarAtribuicaoProcesso($scope.idProcesso); | ||
632 | + | ||
633 | + if ( $scope.$parent != undefined ) { | ||
634 | + $scope.$parent.idProcesso = $scope.idProcesso; | ||
635 | + } | ||
636 | + | ||
637 | + if ( angular.element( '#viewGerenciarProcesso' ).scope() != undefined ) { | ||
638 | + var workspace = angular.element( '#viewGerenciarProcesso' ).scope().workspace; | ||
639 | + angular.element( "#citapp-controller" ).scope().removeWorkspace( workspace.id ); | ||
640 | + } | ||
641 | + | ||
642 | + angular.element( "#widget-historico" ).scope().atualizar(); | ||
643 | + $scope.isHistoricoProcesso = true; | ||
644 | + | ||
645 | + $scope.setLoading( false ); | ||
641 | } ); | 646 | } ); |
642 | 647 | ||
643 | }, 400 ); | 648 | }, 400 ); |
@@ -699,7 +704,7 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -699,7 +704,7 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
699 | } | 704 | } |
700 | if($scope.usuarioLogado.unidade){ | 705 | if($scope.usuarioLogado.unidade){ |
701 | 706 | ||
702 | - UnidadeProcessoRepository.findByIdProcesso($scope.idProcesso).then(function(result){ | 707 | + UnidadeProcessoRepository.findByPorIdProcessoEmExecucao($scope.idProcesso).then(function(result){ |
703 | 708 | ||
704 | $scope.processoUnidades = result; | 709 | $scope.processoUnidades = result; |
705 | 710 | ||
@@ -717,6 +722,14 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | @@ -717,6 +722,14 @@ citApp.controller('GerenciarProcessoController', [ '$scope', '$translate', '$tim | ||
717 | 722 | ||
718 | }); | 723 | }); |
719 | }; | 724 | }; |
725 | + | ||
726 | + $scope.visualizarMetadadosProcessoDocumento = function (processoDocumento){ | ||
727 | + $scope.fecharPagina(); | ||
728 | + $scope.isVisualizarMetadadoProcesso = true; | ||
729 | + $timeout( function () { | ||
730 | + angular.element( "#metadadoProcessoView" ).scope().getProcessoView(processoDocumento); | ||
731 | + } ); | ||
732 | + }; | ||
720 | 733 | ||
721 | $scope.abrirAssinarDocumento = function(documento) { | 734 | $scope.abrirAssinarDocumento = function(documento) { |
722 | $scope.fecharPagina(); | 735 | $scope.fecharPagina(); |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/GerenciarProcessoListUnidadeController.js
@@ -58,11 +58,11 @@ citApp.controller('GerenciarProcessoListUnidadeController', ['$scope', 'workflow | @@ -58,11 +58,11 @@ citApp.controller('GerenciarProcessoListUnidadeController', ['$scope', 'workflow | ||
58 | }; | 58 | }; |
59 | 59 | ||
60 | $scope.abrirNovoProcesso = function() { | 60 | $scope.abrirNovoProcesso = function() { |
61 | - $scope.openWorkspaceIfNotOpen($translate.instant('ECM.LABEL.NOVOPROCESSO'), '/cit-ecm-web/html/processo/processoEdit.html', 'mod-orange'); | 61 | + $scope.openWorkspaceIfNotOpen($translate.instant('ECM.LABEL.NOVOPROCESSO'), '/cit-ecm-web/html/processo/processoNew.html', 'mod-orange'); |
62 | $timeout(function() { | 62 | $timeout(function() { |
63 | - angular.element('#editProcessoEcm').scope().$showPageEditWorkspace(angular.element('#editProcessoEcm').scope().workspace); | 63 | + angular.element('#newProcesso').scope().$showPageEditWorkspace(angular.element('#newProcesso').scope().workspace); |
64 | $timeout(function(){ | 64 | $timeout(function(){ |
65 | - angular.element('#editProcessoEcm').scope().resetForm(); | 65 | + angular.element('#newProcesso').scope().resetForm(); |
66 | }, 1000); | 66 | }, 1000); |
67 | 67 | ||
68 | }, 300); | 68 | }, 300); |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/MetadadoProcessoViewController.js
0 → 100644
@@ -0,0 +1,17 @@ | @@ -0,0 +1,17 @@ | ||
1 | +'use strict'; | ||
2 | + | ||
3 | +citApp.controller('MetadadoProcessoViewController', ['$scope', 'ProcessoRepository', '$translate', '$timeout', '$filter', function ProcessoController($scope, ProcessoRepository, $translate, $timeout, $filter) { | ||
4 | + | ||
5 | + $scope.processo = {}; | ||
6 | + | ||
7 | + // Consulta entidade e mostra no formulario | ||
8 | + $scope.getProcessoView = function(processo){ | ||
9 | + | ||
10 | + $scope.setLoadingGet(true); | ||
11 | + | ||
12 | + ProcessoRepository.getMetadadoProcesso(processo.id).then(function(result) { | ||
13 | + $scope.processo = result.originalElement; | ||
14 | + $scope.setLoading(false); | ||
15 | + }); | ||
16 | + }; | ||
17 | +}]); |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ProcessoController.js
1 | 'use strict'; | 1 | 'use strict'; |
2 | 2 | ||
3 | -citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'DominioRepository', '$translate', '$timeout', 'TipoDocumentoRepository', 'EstruturaOrganizacionalRepository', 'PessoaRepository', 'NivelAcessoTipoProcessoRepository', 'TipoProcessoRepository', 'PlanoClassificacaoRepository', 'TipoProcessoPlanoClassificacaoRepository', '$filter', 'HipoteseLegalRepository', 'HistoricoAlteracaoProcessoRepository', function ProcessoController($scope, ProcessoRepository, DominioRepository, $translate, $timeout, TipoDocumentoRepository , EstruturaOrganizacionalRepository , PessoaRepository, NivelAcessoTipoProcessoRepository,TipoProcessoRepository ,PlanoClassificacaoRepository, TipoProcessoPlanoClassificacaoRepository, $filter, HipoteseLegalRepository, HistoricoAlteracaoProcessoRepository) { | 3 | +citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'DominioRepository', '$translate', '$timeout', 'TipoDocumentoRepository', 'EstruturaOrganizacionalRepository', 'PessoaRepository', 'NivelAcessoTipoProcessoRepository', 'TipoProcessoRepository', 'PlanoClassificacaoRepository', 'TipoProcessoPlanoClassificacaoRepository', '$filter', 'HipoteseLegalRepository', 'HistoricoAlteracaoProcessoRepository','InteressadoProcessoRepository', function ProcessoController($scope, ProcessoRepository, DominioRepository, $translate, $timeout, TipoDocumentoRepository , EstruturaOrganizacionalRepository , PessoaRepository, NivelAcessoTipoProcessoRepository,TipoProcessoRepository ,PlanoClassificacaoRepository, TipoProcessoPlanoClassificacaoRepository, $filter, HipoteseLegalRepository, HistoricoAlteracaoProcessoRepository, InteressadoProcessoRepository) { |
4 | 4 | ||
5 | $scope.processo = {}; | 5 | $scope.processo = {}; |
6 | $scope.assuntoPlanoClassificacao = null; | 6 | $scope.assuntoPlanoClassificacao = null; |
@@ -8,16 +8,22 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | @@ -8,16 +8,22 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | ||
8 | $scope.processo.tipoProtocolo = { | 8 | $scope.processo.tipoProtocolo = { |
9 | codigo : 1 | 9 | codigo : 1 |
10 | }; | 10 | }; |
11 | + | ||
12 | + $scope.setForm = function(scope){ | ||
13 | + this.processoForm = scope.processoForm; | ||
14 | + }; | ||
11 | 15 | ||
12 | // Limpa formulário para novo cadastro | 16 | // Limpa formulário para novo cadastro |
13 | $scope.resetForm = function() { | 17 | $scope.resetForm = function() { |
14 | - $scope.limparProcesso(); | ||
15 | - | 18 | + |
19 | + $scope.limparProcesso(); | ||
20 | + | ||
16 | $scope.edit = true; | 21 | $scope.edit = true; |
17 | $timeout(function(){ | 22 | $timeout(function(){ |
18 | $scope.processoForm.$submitted = false; | 23 | $scope.processoForm.$submitted = false; |
19 | $scope.processoForm.$setPristine(); | 24 | $scope.processoForm.$setPristine(); |
20 | }); | 25 | }); |
26 | + | ||
21 | }; | 27 | }; |
22 | 28 | ||
23 | // Atualiza pagina de pesquisa | 29 | // Atualiza pagina de pesquisa |
@@ -62,21 +68,17 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | @@ -62,21 +68,17 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | ||
62 | 68 | ||
63 | ProcessoRepository.save($scope.processo).then(function(result) { | 69 | ProcessoRepository.save($scope.processo).then(function(result) { |
64 | $scope.processo = result.originalElement; | 70 | $scope.processo = result.originalElement; |
65 | - $scope.showAlert("success", $translate.instant('ECM.MSG.SALVO_SUCESSO'), $translate.instant('ECM.MSG.O_PROCESSO') + " " + $scope.processo.nup); | ||
66 | 71 | ||
67 | if(isNew){ | 72 | if(isNew){ |
68 | - var historicoAlteracaoProcesso = { | ||
69 | - descricaoAcao : $translate.instant('ECM.MSG_HISTORICO_ECM.INCLUSAO_PROCESSO'), | ||
70 | - processo : $scope.processo, | ||
71 | - autor : $scope.usuarioLogado, | ||
72 | - acaoAlteracao : "INCLUSAO_PROCESSO" | ||
73 | - }; | ||
74 | - HistoricoAlteracaoProcessoRepository.saveParams(historicoAlteracaoProcesso).then(function(result){ | ||
75 | - | ||
76 | - $scope.setLoadingSalva(false); | ||
77 | - | ||
78 | - }); | 73 | + |
74 | + $scope.showAlert("success", $translate.instant('ECM.MSG.SALVO_SUCESSO'), $translate.instant('ECM.MSG.O_PROCESSO') + " " + $scope.processo.nup); | ||
75 | + | ||
76 | + $scope.setLoadingSalva(false); | ||
77 | + | ||
78 | + $scope.resetForm(); | ||
79 | + | ||
79 | } else { | 80 | } else { |
81 | + $scope.showAlert("success", $translate.instant('MSG.REGISTRO_SALVO')); | ||
80 | var historicoAlteracaoProcesso = { | 82 | var historicoAlteracaoProcesso = { |
81 | descricaoAcao : $translate.instant('ECM.MSG_HISTORICO_ECM.ALTERACAO_METADADO_PROCESSO'), | 83 | descricaoAcao : $translate.instant('ECM.MSG_HISTORICO_ECM.ALTERACAO_METADADO_PROCESSO'), |
82 | processo : $scope.processo, | 84 | processo : $scope.processo, |
@@ -88,9 +90,10 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | @@ -88,9 +90,10 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | ||
88 | $scope.setLoadingSalva(false); | 90 | $scope.setLoadingSalva(false); |
89 | 91 | ||
90 | }); | 92 | }); |
93 | + | ||
94 | + $scope.$parent.$parent.atualizaProcesso(); | ||
91 | } | 95 | } |
92 | - $scope.processoForm.$submitted = false; | ||
93 | - $scope.resetForm(); | 96 | + $scope.processoForm.$submitted = false; |
94 | }); | 97 | }); |
95 | 98 | ||
96 | }else{ | 99 | }else{ |
@@ -103,8 +106,12 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | @@ -103,8 +106,12 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | ||
103 | $scope.limparProcesso = function(){ | 106 | $scope.limparProcesso = function(){ |
104 | $scope.processo = {}; | 107 | $scope.processo = {}; |
105 | $scope.assuntoPlanoClassificacao = null; | 108 | $scope.assuntoPlanoClassificacao = null; |
106 | - $scope.sugestoes = null; | ||
107 | $scope.assuntoSelecionado = null; | 109 | $scope.assuntoSelecionado = null; |
110 | + $scope.sugestoes = null; | ||
111 | + $scope.assuntos = []; | ||
112 | + angular.element('#sugestoes').scope().sugestoes = null; | ||
113 | + angular.element('#assuntoSelecionado').scope().limparCampo(); | ||
114 | + | ||
108 | $scope.processo.tipoProtocolo = { | 115 | $scope.processo.tipoProtocolo = { |
109 | codigo : 1 | 116 | codigo : 1 |
110 | }; | 117 | }; |
@@ -113,33 +120,31 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | @@ -113,33 +120,31 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | ||
113 | 120 | ||
114 | // Consulta entidade e mostra no formulario | 121 | // Consulta entidade e mostra no formulario |
115 | $scope.getProcesso = function(processo, edit){ | 122 | $scope.getProcesso = function(processo, edit){ |
116 | - | 123 | + |
124 | + $scope.processoForm = $scope.processoEditController.processoForm; | ||
125 | + | ||
117 | $scope.setLoadingGet(true); | 126 | $scope.setLoadingGet(true); |
118 | 127 | ||
119 | ProcessoRepository.get(processo.id).then(function(result) { | 128 | ProcessoRepository.get(processo.id).then(function(result) { |
120 | $scope.processo = result.originalElement; | 129 | $scope.processo = result.originalElement; |
121 | $scope.edit = edit; | 130 | $scope.edit = edit; |
122 | $scope.setLoading(false); | 131 | $scope.setLoading(false); |
123 | - $scope.constroiRelacionamentoTipoProcesso($scope.processo.tipoProcesso); | 132 | + $scope.findSugestaoAssunto($scope.processo.tipoProcesso); |
133 | + $scope.findNivelAcessoTipoProcesso($scope.processo.tipoProcesso); | ||
124 | $scope.montarHipotese(); | 134 | $scope.montarHipotese(); |
125 | - $scope.setAssuntoModelByTipoAssunto(); | ||
126 | - | 135 | + $scope.setAssuntoModelByTipoAssunto(); |
127 | }); | 136 | }); |
128 | }; | 137 | }; |
129 | 138 | ||
130 | $scope.setAssuntoModelByTipoAssunto = function(){ | 139 | $scope.setAssuntoModelByTipoAssunto = function(){ |
131 | $scope.sugestoes = []; | 140 | $scope.sugestoes = []; |
132 | $scope.assuntos = []; | 141 | $scope.assuntos = []; |
133 | - TipoProcessoPlanoClassificacaoRepository.findByIdJoin('tipoProcesso.id', $scope.processo.tipoProcesso.id).then(function(result){ | ||
134 | - angular.forEach(result, function (item) { | ||
135 | - $scope.assuntos.push(item.planoClassificacao); | ||
136 | - }); | ||
137 | - if($scope.processo.tipoAssunto == 1){ | ||
138 | - $scope.sugestoes.push($scope.processo.assunto); | ||
139 | - }else if($scope.processo.tipoAssunto == 2 ) { | ||
140 | - $scope.assuntoSelecionado = $scope.processo.assunto; | ||
141 | - } | ||
142 | - }); | 142 | + |
143 | + if($scope.processo.tipoAssunto == 1){ | ||
144 | + $scope.sugestoes.push($scope.processo.assunto); | ||
145 | + }else if($scope.processo.tipoAssunto == 2 ) { | ||
146 | + $scope.assuntoSelecionado = $scope.processo.assunto; | ||
147 | + } | ||
143 | 148 | ||
144 | }; | 149 | }; |
145 | 150 | ||
@@ -177,6 +182,8 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | @@ -177,6 +182,8 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | ||
177 | 182 | ||
178 | $scope.findSugestaoAssunto = function(tipoProcesso){ | 183 | $scope.findSugestaoAssunto = function(tipoProcesso){ |
179 | 184 | ||
185 | + $scope.assuntos = []; | ||
186 | + | ||
180 | TipoProcessoPlanoClassificacaoRepository.findPorTipoProcesso(tipoProcesso.id).then(function(result){ | 187 | TipoProcessoPlanoClassificacaoRepository.findPorTipoProcesso(tipoProcesso.id).then(function(result){ |
181 | 188 | ||
182 | angular.forEach(result, function (item) { | 189 | angular.forEach(result, function (item) { |
@@ -186,21 +193,23 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | @@ -186,21 +193,23 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | ||
186 | }); | 193 | }); |
187 | }; | 194 | }; |
188 | 195 | ||
189 | - $scope.constroiRelacionamentoTipoProcesso = function(tipoProcesso){ | 196 | + $scope.findNivelAcessoTipoProcesso = function(tipoProcesso){ |
197 | + $scope.nivelAcessoList = []; | ||
190 | 198 | ||
191 | - $scope.nivelAcessoList = []; | ||
192 | - | ||
193 | - $scope.assuntos = []; | ||
194 | - | ||
195 | - NivelAcessoTipoProcessoRepository.findPorIdTipoProcesso(tipoProcesso.id).then(function(result) { | ||
196 | - | ||
197 | - $scope.nivelAcessoList = result; | ||
198 | - //Setar o nivelAcessoTipoProcesso público. | ||
199 | - $scope.processo.nivelAcesso = $.grep($scope.nivelAcessoList, function(e){ return e.nivelAcesso.codigo == 2; })[0].originalElement; | ||
200 | - | ||
201 | - $scope.findSugestaoAssunto(tipoProcesso); | ||
202 | - }); | ||
203 | - }; | 199 | + NivelAcessoTipoProcessoRepository.findPorIdTipoProcesso(tipoProcesso.id).then(function(result) { |
200 | + $scope.nivelAcessoList = result; | ||
201 | + | ||
202 | + /* $scope.processo.nivelAcesso = $.grep($scope.nivelAcessoList, function(e){ return e.nivelAcesso.codigo == 2; })[0].originalElement; */ | ||
203 | + }); | ||
204 | + }; | ||
205 | + | ||
206 | + $scope.constroiRelacionamentoTipoProcesso = function(tipoProcesso){ | ||
207 | + | ||
208 | + $scope.findSugestaoAssunto(tipoProcesso); | ||
209 | + | ||
210 | + $scope.findNivelAcessoTipoProcesso(tipoProcesso); | ||
211 | + | ||
212 | + }; | ||
204 | 213 | ||
205 | 214 | ||
206 | //SET HIPOTESE LEGAL #INICIO | 215 | //SET HIPOTESE LEGAL #INICIO |
@@ -236,22 +245,24 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | @@ -236,22 +245,24 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | ||
236 | 245 | ||
237 | //SET HIPOTESE LEGAL #INICIO | 246 | //SET HIPOTESE LEGAL #INICIO |
238 | $scope.montarHipotese = function(){ | 247 | $scope.montarHipotese = function(){ |
248 | + | ||
249 | + $scope.hipoteses = null; | ||
239 | 250 | ||
240 | - if($scope.processo.tipoSigiloProcesso && $scope.processo.tipoSigiloProcesso.id){ | ||
241 | - | ||
242 | - HipoteseLegalRepository.findPorNivelAcesso($scope.processo.tipoSigiloProcesso.id).then(function(result) { | ||
243 | - | ||
244 | - $scope.hipoteses = result; | ||
245 | - | ||
246 | - }); | ||
247 | - }else if($scope.processo.nivelAcesso.nivelAcesso.codigo === 1){ | ||
248 | - | ||
249 | - HipoteseLegalRepository.findPorNivelAcesso($scope.processo.nivelAcesso.nivelAcesso.id).then(function(result) { | ||
250 | - | ||
251 | - $scope.hipoteses = result; | ||
252 | - | ||
253 | - }); | ||
254 | - } | 251 | + if($scope.processo.sigilo && $scope.processo.sigilo.id){ |
252 | + | ||
253 | + HipoteseLegalRepository.findPorNivelAcesso($scope.processo.sigilo.id).then(function(result) { | ||
254 | + | ||
255 | + $scope.hipoteses = result; | ||
256 | + | ||
257 | + }); | ||
258 | + }else if($scope.processo.nivelAcesso && $scope.processo.nivelAcesso.nivelAcesso.codigo === 1){ | ||
259 | + | ||
260 | + HipoteseLegalRepository.findPorNivelAcesso($scope.processo.nivelAcesso.nivelAcesso.id).then(function(result) { | ||
261 | + | ||
262 | + $scope.hipoteses = result; | ||
263 | + | ||
264 | + }); | ||
265 | + } | ||
255 | }; | 266 | }; |
256 | 267 | ||
257 | $scope.setInteressados = function(item){ | 268 | $scope.setInteressados = function(item){ |
@@ -261,25 +272,46 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | @@ -261,25 +272,46 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | ||
261 | $scope.processo.interessados.push({ | 272 | $scope.processo.interessados.push({ |
262 | interessado : item | 273 | interessado : item |
263 | }); | 274 | }); |
275 | + //Limpa autoComplete de interessado | ||
264 | $timeout(function(){ | 276 | $timeout(function(){ |
265 | - $scope.interessado = null; | 277 | + if($scope.processoForm && $scope.processoForm['interessado']) { |
278 | + $scope.processoForm['interessado'].$setViewValue(''); | ||
279 | + $scope.processoForm['interessado'].$render(); | ||
280 | + }; | ||
266 | }); | 281 | }); |
267 | }; | 282 | }; |
268 | 283 | ||
269 | $scope.removerInteressados = function(){ | 284 | $scope.removerInteressados = function(){ |
270 | if($scope.interessadoChecked){ | 285 | if($scope.interessadoChecked){ |
271 | - $scope.$openModalConfirm({message: $translate.instant('MSG.DESEJA_EXCLUIR_ITENS'), callback: $scope.excluir, item: $scope.interessadoChecked}); | 286 | + $scope.$openModalConfirm({message: $translate.instant('MSG.DESEJA_EXCLUIR_ITENS'), callback: $scope.excluirInteressado, item: $scope.interessadoChecked}); |
287 | + }else{ | ||
288 | + $scope.showAlert('warning', $translate.instant('MSG.SELECIONE_ITEM_EXCLUIR'), " ", false); | ||
272 | } | 289 | } |
273 | }; | 290 | }; |
274 | - | ||
275 | - $scope.excluir = function() { | 291 | + |
292 | + //Setar o interessado para remoção. | ||
293 | + $scope.setInteressadoRemocao = function(interessadoRemocao, $index){ | ||
294 | + $scope.interessadoChecked = interessadoRemocao; | ||
295 | + $scope.interessadoChecked.$index = $index; | ||
296 | + }; | ||
297 | + | ||
298 | + //Remove o interessado | ||
299 | + $scope.excluirInteressado = function() { | ||
276 | var obj = this.item; | 300 | var obj = this.item; |
277 | if (obj.id) { | 301 | if (obj.id) { |
278 | - $scope.showAlertSucesso("success", $translate.instant('MSG.REGISTRO_EXCLUIDO')); | 302 | + InteressadoProcessoRepository.remove(obj).then(function() { |
303 | + | ||
304 | + }); | ||
279 | } | 305 | } |
306 | + $scope.showAlertSucesso("success", $translate.instant('MSG.REGISTRO_EXCLUIDO')); | ||
280 | $scope.processo.interessados.splice(obj.$index, 1); | 307 | $scope.processo.interessados.splice(obj.$index, 1); |
281 | $scope.$modalConfirmInstance.dismiss('cancel'); | 308 | $scope.$modalConfirmInstance.dismiss('cancel'); |
309 | + | ||
310 | + $scope.interessadoChecked = null; | ||
282 | }; | 311 | }; |
312 | + | ||
313 | + | ||
314 | + | ||
283 | 315 | ||
284 | DominioRepository.findAllDominio('tipoProtocoloNup').then(function(result) { | 316 | DominioRepository.findAllDominio('tipoProtocoloNup').then(function(result) { |
285 | $scope.dominiosTipoProtocoloNup = result; | 317 | $scope.dominiosTipoProtocoloNup = result; |
@@ -296,17 +328,14 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | @@ -296,17 +328,14 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | ||
296 | }, 600); | 328 | }, 600); |
297 | 329 | ||
298 | }; | 330 | }; |
299 | - | ||
300 | -/* $scope.update_select = function(sugestao) { | ||
301 | - console.log($scope.selection); | ||
302 | - };*/ | 331 | + |
303 | 332 | ||
304 | $scope.setAssunto = function(itens){ | 333 | $scope.setAssunto = function(itens){ |
305 | 334 | ||
335 | + $scope.processo.tipoAssunto = 1; | ||
306 | if(itens.length > 1){ | 336 | if(itens.length > 1){ |
307 | 337 | ||
308 | $scope.processo.assunto = itens[itens.length - 1]; | 338 | $scope.processo.assunto = itens[itens.length - 1]; |
309 | - $scope.processo.tipoAssunto = 1; | ||
310 | $scope.sugestoes = []; | 339 | $scope.sugestoes = []; |
311 | $scope.sugestoes.push($scope.assunto); | 340 | $scope.sugestoes.push($scope.assunto); |
312 | 341 | ||
@@ -321,5 +350,13 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | @@ -321,5 +350,13 @@ citApp.controller('ProcessoController', ['$scope', 'ProcessoRepository', 'Domini | ||
321 | $scope.processo.tipoAssunto = 2; | 350 | $scope.processo.tipoAssunto = 2; |
322 | $scope.processo.assunto = assuntoSelecionado; | 351 | $scope.processo.assunto = assuntoSelecionado; |
323 | }; | 352 | }; |
353 | + | ||
354 | + $scope.inicializarProcesso = function(){ | ||
355 | + | ||
356 | + $timeout(function() { | ||
357 | + $scope.processoForm = $scope.processoNewController.processoForm; | ||
358 | + }); | ||
359 | + }; | ||
360 | + | ||
324 | 361 | ||
325 | }]); | 362 | }]); |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ProcessoFinalizadoListController.js
@@ -4,7 +4,7 @@ citApp.controller('ProcessoFinalizadoListController', ['$scope', 'ProcessoReposi | @@ -4,7 +4,7 @@ citApp.controller('ProcessoFinalizadoListController', ['$scope', 'ProcessoReposi | ||
4 | $scope.$showAdvancedFilters = false; | 4 | $scope.$showAdvancedFilters = false; |
5 | 5 | ||
6 | $scope.resetForm = function() { | 6 | $scope.resetForm = function() { |
7 | - angular.element("#editProcessoEcm").scope().resetForm(); | 7 | + angular.element("#editProcesso").scope().resetForm(); |
8 | }; | 8 | }; |
9 | 9 | ||
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'}, | 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('ProcessoFinalizadoListController', ['$scope', 'ProcessoReposi | @@ -35,7 +35,7 @@ citApp.controller('ProcessoFinalizadoListController', ['$scope', 'ProcessoReposi | ||
35 | $scope.showAlert('warning', !edit ? $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_VISUALIZACAO') : $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_EDICAO')); | 35 | $scope.showAlert('warning', !edit ? $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_VISUALIZACAO') : $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_EDICAO')); |
36 | return; | 36 | return; |
37 | } | 37 | } |
38 | - angular.element('#editProcessoEcm').scope().getProcesso(processo, edit); | 38 | + angular.element('#editProcesso').scope().getProcesso(processo, edit); |
39 | $scope.$showPageEditWorkspace($scope.workspace); | 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('ProcessoListController', ['$scope', 'ProcessoRepository', '$t | @@ -4,7 +4,7 @@ citApp.controller('ProcessoListController', ['$scope', 'ProcessoRepository', '$t | ||
4 | $scope.$showAdvancedFilters = false; | 4 | $scope.$showAdvancedFilters = false; |
5 | 5 | ||
6 | $scope.resetForm = function() { | 6 | $scope.resetForm = function() { |
7 | - angular.element("#editProcessoEcm").scope().resetForm(); | 7 | + angular.element("#editProcesso").scope().resetForm(); |
8 | }; | 8 | }; |
9 | 9 | ||
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' }]; | 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('ProcessoListController', ['$scope', 'ProcessoRepository', '$t | @@ -26,7 +26,7 @@ citApp.controller('ProcessoListController', ['$scope', 'ProcessoRepository', '$t | ||
26 | $scope.showAlert('warning', !edit ? $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_VISUALIZACAO') : $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_EDICAO')); | 26 | $scope.showAlert('warning', !edit ? $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_VISUALIZACAO') : $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_EDICAO')); |
27 | return; | 27 | return; |
28 | } | 28 | } |
29 | - angular.element('#editProcessoEcm').scope().getProcesso(processo, edit); | 29 | + angular.element('#editProcesso').scope().getProcesso(processo, edit); |
30 | $scope.$showPageEditWorkspace($scope.workspace); | 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('UnidadeProcessoController', ['$scope', 'UnidadeProcessoReposi | @@ -163,7 +163,7 @@ citApp.controller('UnidadeProcessoController', ['$scope', 'UnidadeProcessoReposi | ||
163 | //Verifica se o processo está sendo concluido na unidade | 163 | //Verifica se o processo está sendo concluido na unidade |
164 | if($scope.enviarProcessoVH.concluirProcesso){ | 164 | if($scope.enviarProcessoVH.concluirProcesso){ |
165 | 165 | ||
166 | - var workspace = angular.element('#editProcessoEcm').scope().workspace; | 166 | + var workspace = angular.element('#editProcesso').scope().workspace; |
167 | if (workspace) { | 167 | if (workspace) { |
168 | $scope.$modalConfirmInstance.dismiss('cancel'); | 168 | $scope.$modalConfirmInstance.dismiss('cancel'); |
169 | angular.element("#citapp-controller").scope().removeWorkspace(workspace.id); | 169 | angular.element("#citapp-controller").scope().removeWorkspace(workspace.id); |
@@ -179,6 +179,7 @@ citApp.controller('UnidadeProcessoController', ['$scope', 'UnidadeProcessoReposi | @@ -179,6 +179,7 @@ citApp.controller('UnidadeProcessoController', ['$scope', 'UnidadeProcessoReposi | ||
179 | 179 | ||
180 | $timeout(function(){ | 180 | $timeout(function(){ |
181 | $scope.$parent.$parent.closeWidget(); | 181 | $scope.$parent.$parent.closeWidget(); |
182 | + $scope.$parent.$parent.atualizarAtribuicaoProcesso($scope.enviarProcessoVH.idProcesso); | ||
182 | },200); | 183 | },200); |
183 | 184 | ||
184 | } | 185 | } |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/ProcessoRepository.js
@@ -37,6 +37,16 @@ citApp.factory('ProcessoRepository', ['RestangularEcm', 'AbstractRepository', fu | @@ -37,6 +37,16 @@ citApp.factory('ProcessoRepository', ['RestangularEcm', 'AbstractRepository', fu | ||
37 | 37 | ||
38 | }; | 38 | }; |
39 | 39 | ||
40 | + this.getMetadadoProcesso = function (idProcesso){ | ||
41 | + return restangularEcm.one(this.route + '/getMetadadoProcesso').get({"idProcesso": idProcesso}); | ||
42 | + | ||
43 | + }; | ||
44 | + | ||
45 | + this.autoCompleteProcessoEmAndametoByNup = function (nup){ | ||
46 | + return restangularEcm.one(this.route + '/autoCompleteProcessoEmAndametoByNup').get({"nup": nup}).then(); | ||
47 | + | ||
48 | + }; | ||
49 | + | ||
40 | } | 50 | } |
41 | 51 | ||
42 | AbstractRepository.extend(ProcessoRepository); | 52 | AbstractRepository.extend(ProcessoRepository); |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/UnidadeProcessoRepository.js
@@ -18,6 +18,11 @@ citApp.factory('UnidadeProcessoRepository', ['RestangularEcm', 'AbstractReposito | @@ -18,6 +18,11 @@ citApp.factory('UnidadeProcessoRepository', ['RestangularEcm', 'AbstractReposito | ||
18 | 18 | ||
19 | }; | 19 | }; |
20 | 20 | ||
21 | + this.findByPorIdProcessoEmExecucao = function(idProcesso) { | ||
22 | + return restangularEcm.one(this.route).getList("findByPorIdProcessoEmExecucao", {"idProcesso": idProcesso}).then(); | ||
23 | + }; | ||
24 | + | ||
25 | + | ||
21 | } | 26 | } |
22 | 27 | ||
23 | AbstractRepository.extend(UnidadeProcessoRepository); | 28 | AbstractRepository.extend(UnidadeProcessoRepository); |
cit-ecm-web/src/main/webapp/html/anexarProcesso/anexarProcesso.html
@@ -34,7 +34,7 @@ | @@ -34,7 +34,7 @@ | ||
34 | <div class="row"> | 34 | <div class="row"> |
35 | 35 | ||
36 | <div class="col-md-8"> | 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 | </div> | 38 | </div> |
39 | 39 | ||
40 | 40 | ||
@@ -53,10 +53,6 @@ | @@ -53,10 +53,6 @@ | ||
53 | <translate>LABEL.ADICIONAR</translate> | 53 | <translate>LABEL.ADICIONAR</translate> |
54 | </a> | 54 | </a> |
55 | </button> | 55 | </button> |
56 | - <button class="btn btn-clear" type="button" ng-click="exibirDialogRemocao()"> | ||
57 | - <i class="fa fa-times red"></i> | ||
58 | - <translate>LABEL.REMOVER</translate> | ||
59 | - </button> | ||
60 | </div> | 56 | </div> |
61 | <table class="table table-striped table-bordered table-hover"> | 57 | <table class="table table-striped table-bordered table-hover"> |
62 | <thead> | 58 | <thead> |
cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeAcaoProcesso.html
@@ -26,32 +26,6 @@ | @@ -26,32 +26,6 @@ | ||
26 | <!-- Assinatura documento --> | 26 | <!-- Assinatura documento --> |
27 | <div ng-include src="'/cit-ecm-web/html/assinatura/documentoAssinaturaView.html'" ng-show="exibirAssinarDocAnexo" /> | 27 | <div ng-include src="'/cit-ecm-web/html/assinatura/documentoAssinaturaView.html'" ng-show="exibirAssinarDocAnexo" /> |
28 | 28 | ||
29 | -<div id="widget-processo" ng-show="isProcessoEdit" class="widget-box margin-bottom"> | ||
30 | - <div class="widget-header"> | ||
31 | - <h2 class="widget-title"> | ||
32 | - <translate>ECM.LABEL.PROCESSO</translate> | ||
33 | - </h2> | ||
34 | - | ||
35 | - <div class="widget-toolbar"> | ||
36 | - <a href="#void" ng-click="closeWidget('widget-processo')"> <i class="fa fa-close"></i> | ||
37 | - </a> | ||
38 | - </div> | ||
39 | - </div> | ||
40 | - <div class="widget-body"> | ||
41 | - <div class="widget-main clearfix"> | ||
42 | - <div ng-include src="'/cit-ecm-web/html/processo/processoEdit.html'" /> | ||
43 | - </div> | ||
44 | - </div> | ||
45 | - | ||
46 | - <div class="row"> | ||
47 | - <div style="margin-top: -38px; margin-left: 17px;" class="col-md-12"> | ||
48 | - <button class="btn btn-sm btn-primary" ng-click="saveOrUpdateProcessoECM()" ng-show="true"> | ||
49 | - <translate>LABEL.SALVAR</translate> | ||
50 | - </button> | ||
51 | - | ||
52 | - <button class="btn btn-sm btn-primary" ng-click="closeWidget('widget-processo')" ng-show="true"> | ||
53 | - <translate>LABEL.CANCELAR</translate> | ||
54 | - </button> | ||
55 | - </div> | ||
56 | - </div> | ||
57 | -</div> | ||
58 | \ No newline at end of file | 29 | \ No newline at end of file |
30 | +<div ng-include src="'/cit-ecm-web/html/processo/metadadoProcessoView.html'" ng-show="isVisualizarMetadadoProcesso" /> | ||
31 | + | ||
32 | +<div ng-include src="'/cit-ecm-web/html/processo/processoEdit.html'" ng-show="isProcessoEdit" /> | ||
59 | \ No newline at end of file | 33 | \ No newline at end of file |
cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeDocumentosProcesso.html
@@ -13,6 +13,8 @@ | @@ -13,6 +13,8 @@ | ||
13 | <div class="time hidden-md"> | 13 | <div class="time hidden-md"> |
14 | <i class="ace-icon fa fa-clock-o"></i> <span class="blue">{{documento.dataCriacao | date: 'dd/MM/yyyy HH:mm:ss'}} </span> | 14 | <i class="ace-icon fa fa-clock-o"></i> <span class="blue">{{documento.dataCriacao | date: 'dd/MM/yyyy HH:mm:ss'}} </span> |
15 | </div> | 15 | </div> |
16 | + | ||
17 | + <div ><a href="#void" ng-click = 'visualizarMetadadosProcessoDocumento(documento.origem)'>{{documento.origem.nup}}</a></div> | ||
16 | 18 | ||
17 | <div class="text ellipsis" tooltip="{{documento.assuntoComplementar}}">{{documento.assuntoComplementar}}</div> | 19 | <div class="text ellipsis" tooltip="{{documento.assuntoComplementar}}">{{documento.assuntoComplementar}}</div> |
18 | 20 | ||
@@ -36,12 +38,12 @@ | @@ -36,12 +38,12 @@ | ||
36 | 38 | ||
37 | <ul class="dropdown-menu-center dropdown-menu dropdown-caret" role="menu"> | 39 | <ul class="dropdown-menu-center dropdown-menu dropdown-caret" role="menu"> |
38 | <li ng-if='!documento.cancelado && documento.status.codigo != 0'><a href="#void" ng-click="editDocument(documento, true);"><translate>LABEL.EDITAR</translate></a></li> | 40 | <li ng-if='!documento.cancelado && documento.status.codigo != 0'><a href="#void" ng-click="editDocument(documento, true);"><translate>LABEL.EDITAR</translate></a></li> |
39 | - <li ng-if='!processo.isTramitado && (!documento.cancelado && documento.unidade.id === usuarioLogado.unidade.id)'><a href="#void" ng-click="removeDocumento(documento, $index);"><translate>LABEL.REMOVER</translate></a></li> | ||
40 | - <li ng-if='processo.isTramitado && (!documento.cancelado && documento.unidade.id === usuarioLogado.unidade.id)'><a href="#void" ng-click='cancelarDocumento(documento)'> <translate>ECM.LABEL.CANCELARDOCUMENTO</translate></a></li> | 41 | + <li ng-if='!processo.tramitado && (!documento.cancelado && documento.unidade.id === usuarioLogado.unidade.id)'><a href="#void" ng-click="removeDocumento(documento, $index);"><translate>LABEL.REMOVER</translate></a></li> |
42 | + <li ng-if='processo.tramitado && (!documento.cancelado && documento.unidade.id === usuarioLogado.unidade.id)'><a href="#void" ng-click='cancelarDocumento(documento)'> <translate>ECM.LABEL.CANCELARDOCUMENTO</translate></a></li> | ||
41 | <li ng-if='!documento.cancelado'><a href="#void" ng-click="visualizarVersoes(documento);"> <translate>ECM.LABEL.VERSOESDODOCUMENTO</translate></a></li> | 43 | <li ng-if='!documento.cancelado'><a href="#void" ng-click="visualizarVersoes(documento);"> <translate>ECM.LABEL.VERSOESDODOCUMENTO</translate></a></li> |
42 | <li ><a ng-if='documento.cancelado'href="#void" ng-click="getCancelamentoDocumento(documento);"> <translate>ECM.LABEL.JUSTIFICATIVA_CANCELAMENTO</translate></a></li> | 44 | <li ><a ng-if='documento.cancelado'href="#void" ng-click="getCancelamentoDocumento(documento);"> <translate>ECM.LABEL.JUSTIFICATIVA_CANCELAMENTO</translate></a></li> |
43 | - <li ><a href="#void" ng-click="abrirAssinarDocumento(documento)"> <translate>ECM.LABEL.ASSINARDOCUMENTO</translate></a></li> | ||
44 | - <li ><a href="#void" ng-click="visualizarAssinaturasDocumento(documento)"> <translate>ECM.LABEL.ASSINATURAS_DOCUMENTO</translate></a></li> | 45 | +<!-- <li ><a href="#void" ng-click="abrirAssinarDocumento(documento)"> <translate>ECM.LABEL.ASSINARDOCUMENTO</translate></a></li> |
46 | + <li ><a href="#void" ng-click="visualizarAssinaturasDocumento(documento)"> <translate>ECM.LABEL.ASSINATURAS_DOCUMENTO</translate></a></li> --> | ||
45 | </ul> | 47 | </ul> |
46 | 48 | ||
47 | </div> | 49 | </div> |
cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeInformacaoProcesso.html
cit-ecm-web/src/main/webapp/html/historicoAlteracaoProcesso/historicoAlteracaoProcesso.html
@@ -3,7 +3,7 @@ | @@ -3,7 +3,7 @@ | ||
3 | <h2 class="widget-title"> | 3 | <h2 class="widget-title"> |
4 | <translate>ECM.LABEL.HISTORICO_ALTERACAO_PROCESSO</translate> | 4 | <translate>ECM.LABEL.HISTORICO_ALTERACAO_PROCESSO</translate> |
5 | </h2> | 5 | </h2> |
6 | - <div class="col-sm-9 text-right"> | 6 | + <div class="widget-toolbar"> |
7 | <button class="btn btn-clear" title="{{$translate.instant('LABEL.ATUALIZAR')}}" alt="{{$translate.instant('LABEL.ATUALIZAR')}}" ng-click="closeWidget()"> | 7 | <button class="btn btn-clear" title="{{$translate.instant('LABEL.ATUALIZAR')}}" alt="{{$translate.instant('LABEL.ATUALIZAR')}}" ng-click="closeWidget()"> |
8 | <i class="fa fa-refresh purple"></i> | 8 | <i class="fa fa-refresh purple"></i> |
9 | <translate>LABEL.ATUALIZAR</translate> | 9 | <translate>LABEL.ATUALIZAR</translate> |
@@ -11,6 +11,7 @@ | @@ -11,6 +11,7 @@ | ||
11 | </div> | 11 | </div> |
12 | 12 | ||
13 | </div> | 13 | </div> |
14 | + | ||
14 | <div class="widget-body"> | 15 | <div class="widget-body"> |
15 | <div class="widget-main clearfix"> | 16 | <div class="widget-main clearfix"> |
16 | <div class="timeline" style="height: 420px; overflow: auto;"> | 17 | <div class="timeline" style="height: 420px; overflow: auto;"> |
cit-ecm-web/src/main/webapp/html/processo/metadadoProcesso.html
@@ -1,166 +0,0 @@ | @@ -1,166 +0,0 @@ | ||
1 | - <p> | ||
2 | - <small>( <span class="red">*</span> ) <translate>LABEL.CAMPOS_OBRIGATORIOS</translate></small> | ||
3 | - </p> | ||
4 | - | ||
5 | - <fieldset> | ||
6 | - | ||
7 | - <legend> | ||
8 | - <translate>LABEL.DADOS_PROCESSO</translate> | ||
9 | - </legend> | ||
10 | - | ||
11 | - <div class="row"> | ||
12 | - <div class="col-md-3"> | ||
13 | - <label-select ng-id="processo.tipoProtocolo" ng-disabled='!edit' ng-model="processo.tipoProtocolo" ng-label="LABEL.TIPOPROTOCOLO" ng-obrigatorio='true' form="processoForm" | ||
14 | - ng-list="dominiosTipoProtocoloNup" ng-custom-options="dominioTipoProtocoloNup.originalElement as dominioTipoProtocoloNup.descricao for dominioTipoProtocoloNup" | ||
15 | - track-by="track by dominioTipoProtocoloNup.id"> </label-select> | ||
16 | - </div> | ||
17 | - | ||
18 | - <div class="col-md-3" ng-show='processo.tipoProtocolo.codigo == 2'> | ||
19 | - <div class='form-group' ng-class="{'has-error': processoForm['protocolo'].$error.required && (!processoForm['protocolo'].$pristine || processoForm.$submitted)}"> | ||
20 | - <label class='control-label'> <translate>LABEL.PROTOCOLO</translate> <span class='red'>*</span> | ||
21 | - </label> <i ng-show="processoForm['protocolo'].$error.required && !processoForm['protocolo'].$pristine || processoForm.$submitted" class='fa fa-warning red' tooltip="{{$translate.instant('LABEL.PROTOCOLO') + ' ' +$translate.instant('LABEL.CAMPO_OBRIGATORIO')}}" tooltip-placement='top'></i> | ||
22 | - <input ng-required="processo.tipoProtocolo.codigo == 2" class="form-control" numbers-only id="protocolo" ng-show='processo.tipoProtocolo.codigo == 2' ng-label="LABEL.PROTOCOLO" ng-disabled='!edit' ng-model="processo.nup" form="processoForm" /> | ||
23 | - </div> | ||
24 | - </div> | ||
25 | - | ||
26 | - </div> | ||
27 | - | ||
28 | - <div class="row"> | ||
29 | - <div class="col-md-6"> | ||
30 | - <auto-complete ng-id="processo.tipoProcesso" ng-set-result="constroiRelacionamentoTipoProcesso(item)" ng-label="LABEL.TIPOPROCESSO" ng-model="processo.tipoProcesso" form="processoForm" | ||
31 | - ng-find="findAutoCompleteTipoProcesso(value)" ng-item="item.nome" ng-obrigatorio='true' ng-disabled='!edit' /> | ||
32 | - </div> | ||
33 | - </div> | ||
34 | - | ||
35 | - <div class="row" ng-show='processo.tipoProcesso.id'> | ||
36 | - <div class="col-md-6"> | ||
37 | - <auto-complete ng-id="assuntoSelecionado" ng-disabled='sugestoes' ng-label="LABEL.ASSUNTO" ng-set-result='setTipoAssunto(item)' ng-model="assuntoSelecionado" form="processoForm" | ||
38 | - ng-find="findAutoCompleteAssunto(value)" ng-item="item.assunto" ng-obrigatorio='{{!sugestoes}}' /> | ||
39 | - | ||
40 | - </div> | ||
41 | - </div> | ||
42 | - <div class="row" ng-show='processo.tipoProcesso.id'> | ||
43 | - <div class="col-md-6"> | ||
44 | - <div class="form-group"> | ||
45 | - <div class="input-group"> | ||
46 | - <select class="form-control typeahead-wide" ng-model="sugestoes" ng-change="setAssunto(sugestoes)" multiple ng-id="sugestao" ng-disabled='assuntoSelecionado.id' ng-multiple="true" | ||
47 | - ng-options="sugestao as sugestao.assunto for sugestao in assuntos" track-by="track by sugestao.id"> | ||
48 | - </select> <span ng-show="sugestoes" class="input-group-addon" ng-click="sugestoes = null" ng-class="{'hover-directive' : (($hover == true) && !disabled)}" ng-mouseover="$hover = true" | ||
49 | - ng-mouseout="$hover = false"> <i class="fa fa-eraser bigger-110"></i> | ||
50 | - </span> <span class="input-group-addon" style="visibility: hidden;"> <i class="fa fa-search bigger-110"></i> | ||
51 | - </span> | ||
52 | - </div> | ||
53 | - </div> | ||
54 | - </div> | ||
55 | - </div> | ||
56 | - <div class="row" ng-show='processo.tipoProcesso.id'> | ||
57 | - | ||
58 | - <div class="col-md-6"> | ||
59 | - <label-select ng-id="processo.nivelAcesso" ng-label="LABEL.NIVEL_ACESSO" ng-model="processo.nivelAcesso" ng-custom-change='setHipoteseLegal(processo.nivelAcesso.id)' form="processoForm" | ||
60 | - ng-obrigatorio="true" ng-disabled="!edit" ng-custom-options="nivelAcessoTipoProcesso.originalElement as nivelAcessoTipoProcesso.nivelAcesso.descricao for nivelAcessoTipoProcesso" | ||
61 | - track-by="track by nivelAcessoTipoProcesso.id" ng-list="nivelAcessoList" /> | ||
62 | - </div> | ||
63 | - | ||
64 | - <div class="col-md-6"> | ||
65 | - <div class="form-group" ng-show='processo.nivelAcesso.nivelAcesso.codigo == 0'> | ||
66 | - <label class="control-label block" ng-class="{'has-error': processoForm['processo.sigilo.id'].$error.required && (!processoForm['processo.sigilo.id'].$pristine || processoForm.$submitted)}"> | ||
67 | - <translate>LABEL.SIGILO</translate> <span class="red">*</span> <i | ||
68 | - ng-show="processoForm['processo.sigilo.id'].$error.required && (!processoForm['processo.sigilo.id'].$pristine || processoForm.$submitted)" class='fa fa-warning red' | ||
69 | - tooltip="{{$translate.instant('LABEL.SIGILO') + ' ' +$translate.instant('LABEL.CAMPO_OBRIGATORIO')}}" tooltip-placement='top'></i> | ||
70 | - </label> | ||
71 | - | ||
72 | - <div class="radio-inline" ng-repeat="sigilo in processo.nivelAcesso.sigilos"> | ||
73 | - <label> <input type="radio" required="processo.nivelAcesso.nivelAcesso.codigo == 1" name="processo.sigilo.id" id="processo.tipoSigilo.id" ng-disabled="!edit" | ||
74 | - ng-value="sigilo.tipoSigilo.id" ng-model="processo.tipoSigilo.id" ng-change='setHipoteseLegal(processo.nivelAcesso.sigilo.id)' /> {{sigilo.tipoSigilo.descricao}} | ||
75 | - </label> | ||
76 | - </div> | ||
77 | - </div> | ||
78 | - </div> | ||
79 | - | ||
80 | - </div> | ||
81 | - | ||
82 | - <div class="row"> | ||
83 | - <div class="col-sm-6" ng-show='processo.nivelAcesso.nivelAcesso.codigo == 1 || processo.tipoSigilo.id'> | ||
84 | - <label-select ng-id="processo.hipoteseLegal" ng-model="processo.hipoteseLegal" ng-label="LABEL.HIPOTESELEGAL" ng-obrigatorio='false' form="processoForm" ng-disabled="!edit" ng-list="hipoteses" | ||
85 | - ng-custom-options="hipoteseLegal.originalElement as hipoteseLegal.nome for hipoteseLegal" ng-obrigatorio='true' track-by="track by hipoteseLegal.id" ng-disabled='!edit'> </label-select> | ||
86 | - </div> | ||
87 | - </div> | ||
88 | - | ||
89 | - | ||
90 | - <div class="row"> | ||
91 | - | ||
92 | - <div class="col-md-6"> | ||
93 | - | ||
94 | - <label-text-area ng-id="processo.assuntoComplementar" ng-label="LABEL.ASSUNTOCOMPLEMENTAR" ng-model="processo.assuntoComplementar" ng-disabled="!edit" form="processoForm" /> | ||
95 | - | ||
96 | - </div> | ||
97 | - | ||
98 | - <div class="col-md-6"> | ||
99 | - | ||
100 | - <label-text-area ng-id="processo.observacaoGeral" ng-label="LABEL.OBSERVACAOGERAL" ng-model="processo.observacaoGeral" ng-disabled="!edit" form="processoForm" /> | ||
101 | - | ||
102 | - </div> | ||
103 | - | ||
104 | - </div> | ||
105 | - | ||
106 | - <fieldset> | ||
107 | - | ||
108 | - <legend> | ||
109 | - <translate>LABEL.INTERESSADOS</translate> | ||
110 | - </legend> | ||
111 | - | ||
112 | - <div class="row"> | ||
113 | - | ||
114 | - <div class="col-md-12"> | ||
115 | - | ||
116 | - <div class="row"> | ||
117 | - <div class="col-sm-6"> | ||
118 | - <auto-complete ng-id="interessado" ng-label="LABEL.INTERESSADO" ng-model="interessado" ng-disabled="!edit" ng-find="findAutoCompleteInteressados(value)" ng-item="item.nome" ng-set-result="setInteressados(item)" | ||
119 | - ng-show='!edit' button-new-show="true" button-new-action="novaPessoa();" /> | ||
120 | - </div> | ||
121 | - <!-- <div class="col-sm-6" style="margin-top:30px;"> | ||
122 | - <a href="#void" ng-show='edit'> | ||
123 | - <span class="tree-label" ng-click="novaPessoa();">Cadastro de Pessoa</span> | ||
124 | - </a> | ||
125 | - </div> --> | ||
126 | - </div> | ||
127 | - | ||
128 | - <div class="row"> | ||
129 | - <div class="col-sm-6"> | ||
130 | - <div class="panel panel-default"> | ||
131 | - <div class="panel-heading clearfix"> | ||
132 | - <button class="btn btn-clear" type="button" ng-hide="!edit" ng-click="removerInteressados()" ng-show='edit'> | ||
133 | - <i class="fa fa-times red"></i> | ||
134 | - <translate>LABEL.REMOVER</translate> | ||
135 | - </button> | ||
136 | - </div> | ||
137 | - <table class="table table-striped table-bordered table-hover"> | ||
138 | - <thead> | ||
139 | - <tr> | ||
140 | - <th width="5%" class="text-center"></th> | ||
141 | - | ||
142 | - <th class="text-center"><translate>LABEL.NOME</translate></th> | ||
143 | - | ||
144 | - </tr> | ||
145 | - </thead> | ||
146 | - <tbody> | ||
147 | - <tr ng-repeat="interessadoList in processo.interessados"> | ||
148 | - <td class="text-center"><input type="radio" name="interessadoChecked" ng-value="interessadoList" ng-model="$parent.interessadoChecked" ng-click="interessadoList.$index = $index" /></td> | ||
149 | - | ||
150 | - <td class="text-center">{{interessadoList.interessado.nome}}</td> | ||
151 | - | ||
152 | - | ||
153 | - </tr> | ||
154 | - <tr ng-hide="processo.interessados.length > 0"> | ||
155 | - <td colspan="3" class="text-center"><translate>LABEL.TABELA_VAZIA</translate></td> | ||
156 | - </tr> | ||
157 | - </tbody> | ||
158 | - </table> | ||
159 | - </div> | ||
160 | - </div> | ||
161 | - </div> | ||
162 | - </div> | ||
163 | - </div> | ||
164 | - </fieldset> | ||
165 | - </fieldset> | ||
166 | - |
cit-ecm-web/src/main/webapp/html/processo/metadadoProcessoView.html
0 → 100644
@@ -0,0 +1,130 @@ | @@ -0,0 +1,130 @@ | ||
1 | +<div id="metadadoProcessoView" class="page-content clearfix" ng-controller="MetadadoProcessoViewController"> | ||
2 | + | ||
3 | + <div id="widget-atribuirProcesso" class="widget-box margin-bottom"> | ||
4 | + | ||
5 | + <div class="widget-header"> | ||
6 | + <h2 class="widget-title"> | ||
7 | + <translate>ECM.LABEL.DADOS_PROCESSO_ANEXADO</translate> | ||
8 | + </h2> | ||
9 | + | ||
10 | + <div class="widget-toolbar"> | ||
11 | + <a href="#void" ng-click="closeWidget('widget-atribuirProcesso')"> <i class="fa fa-close"></i> | ||
12 | + </a> | ||
13 | + </div> | ||
14 | + </div> | ||
15 | + | ||
16 | + <fieldset> | ||
17 | + <div class="col-md-12"> | ||
18 | + | ||
19 | + <div class="profile-user-info"> | ||
20 | + | ||
21 | + <div class="profile-info-row"> | ||
22 | + <div class="profile-info-name"> | ||
23 | + <translate>ECM.LABEL.PROTOCOLO</translate> | ||
24 | + </div> | ||
25 | + <div class="profile-info-value"> | ||
26 | + <span>{{processo.nup}}</span> | ||
27 | + </div> | ||
28 | + </div> | ||
29 | + | ||
30 | + <div class="profile-info-row"> | ||
31 | + <div class="profile-info-name"> | ||
32 | + <translate>ECM.LABEL.DATACRIACAO</translate> | ||
33 | + </div> | ||
34 | + <div class="profile-info-value"> | ||
35 | + <span>{{processo.dataCriacao | date: 'dd/MM/yyyy HH:mm:ss' }}</span> | ||
36 | + </div> | ||
37 | + </div> | ||
38 | + | ||
39 | + <div class="profile-info-row"> | ||
40 | + <div class="profile-info-name"> | ||
41 | + <translate>ECM.LABEL.TIPOPROCESSO</translate> | ||
42 | + </div> | ||
43 | + <div class="profile-info-value"> | ||
44 | + <span>{{processo.tipoProcesso.nome}}</span> | ||
45 | + </div> | ||
46 | + </div> | ||
47 | + | ||
48 | + | ||
49 | + <div class="profile-info-row "> | ||
50 | + <div class="profile-info-name"> | ||
51 | + <translate>ECM.LABEL.ASSUNTO</translate> | ||
52 | + </div> | ||
53 | + | ||
54 | + <div class="profile-info-value"> | ||
55 | + <span>{{processo.assunto.assunto}}</span> | ||
56 | + </div> | ||
57 | + </div> | ||
58 | + | ||
59 | + <div class="profile-info-row"> | ||
60 | + <div class="profile-info-name"> | ||
61 | + <translate>ECM.LABEL.NIVELACESSO</translate> | ||
62 | + </div> | ||
63 | + <div class="profile-info-value"> | ||
64 | + <span class="label label-success" ng-show="processo.nivelAcesso.nivelAcesso.nome =='PUBLICO'">{{processo.nivelAcesso.nivelAcesso.descricao}}</span> <span class="label label-warning" | ||
65 | + ng-show="processo.nivelAcesso.nivelAcesso.nome =='RESTRITO'">{{processo.nivelAcesso.nivelAcesso.descricao}}</span> <span class="label label-danger" | ||
66 | + ng-show="processo.nivelAcesso.nivelAcesso.nome =='SIGILOSO'">{{processo.sigilo.tipoSigilo.descricao}}</span> | ||
67 | + | ||
68 | + </div> | ||
69 | + </div> | ||
70 | + | ||
71 | + <div class="profile-info-row "> | ||
72 | + <div class="profile-info-name"> | ||
73 | + <translate>ECM.LABEL.HIPOTESELEGAL</translate> | ||
74 | + </div> | ||
75 | + | ||
76 | + <div class="profile-info-value"> | ||
77 | + <span>{{processo.hipoteseLegal.nome}}</span> | ||
78 | + </div> | ||
79 | + </div> | ||
80 | + | ||
81 | + | ||
82 | + | ||
83 | + <div class="profile-info-row"> | ||
84 | + <div class="profile-info-name"> | ||
85 | + <translate>ECM.LABEL.DATAEDICAO</translate> | ||
86 | + </div> | ||
87 | + <div class="profile-info-value"> | ||
88 | + <span>{{processo.dataEdicao | date: 'dd/MM/yyyy'}}</span> | ||
89 | + </div> | ||
90 | + </div> | ||
91 | + | ||
92 | + <div class="profile-info-row hidden-md"> | ||
93 | + <div class="profile-info-name"> | ||
94 | + <translate>ECM.LABEL.ASSUNTOCOMPLEMENTAR</translate> | ||
95 | + </div> | ||
96 | + | ||
97 | + <div class="profile-info-value"> | ||
98 | + <span>{{processo.assuntoComplementar}}</span> | ||
99 | + </div> | ||
100 | + </div> | ||
101 | + | ||
102 | + <div class="profile-info-row hidden-md"> | ||
103 | + <div class="profile-info-name"> | ||
104 | + <translate>ECM.LABEL.OBSERVACAOGERAL</translate> | ||
105 | + </div> | ||
106 | + | ||
107 | + <div class="profile-info-value"> | ||
108 | + <span>{{processo.observacaoGeral}}</span> | ||
109 | + </div> | ||
110 | + </div> | ||
111 | + | ||
112 | + <div class="profile-info-row"> | ||
113 | + <div class="profile-info-name"> | ||
114 | + <translate>ECM.LABEL.INTERESSADOS</translate> | ||
115 | + </div> | ||
116 | + <div class="profile-info-value"> | ||
117 | + <ul style="margin-bottom: 1px; margin-left: -23px"> | ||
118 | + <li ng-repeat="interessadoList in processo.interessados">{{interessadoList.interessado.nome}}</li> | ||
119 | + | ||
120 | + </ul> | ||
121 | + </div> | ||
122 | + </div> | ||
123 | + | ||
124 | + </div> | ||
125 | + </div> | ||
126 | + | ||
127 | + </fieldset> | ||
128 | + | ||
129 | + </div> | ||
130 | +</div> |
cit-ecm-web/src/main/webapp/html/processo/metadadosProcesso.html
0 → 100644
@@ -0,0 +1,169 @@ | @@ -0,0 +1,169 @@ | ||
1 | + | ||
2 | +<p> | ||
3 | + <small>( <span class="red">*</span> ) <translate>LABEL.CAMPOS_OBRIGATORIOS</translate></small> | ||
4 | +</p> | ||
5 | + | ||
6 | +<fieldset> | ||
7 | + | ||
8 | + <legend> | ||
9 | + <translate>ECM.LABEL.DADOS_PROCESSO</translate> | ||
10 | + </legend> | ||
11 | + | ||
12 | + <div class="row"> | ||
13 | + <div class="col-md-6"> | ||
14 | + <div class="row"> | ||
15 | + <div class="col-md-6 "> | ||
16 | + | ||
17 | + <label-input-radio ng-id="processo.tipoProtocolo.codigo" ng-label="ECM.LABEL.TIPOPROTOCOLO" list="dominiosTipoProtocoloNup" ng-disabled='!edit || processo.id' text="descricao" value="codigo" | ||
18 | + ng-model="processo.tipoProtocolo.codigo" form="processoForm"></label-input-radio> | ||
19 | + | ||
20 | + </div> | ||
21 | + <div class="col-md-6" ng-show='processo.tipoProtocolo.codigo == 2 || processo.id'> | ||
22 | + <div class='form-group' ng-class="{'has-error': processoForm['protocolo'].$error.required && (!processoForm['protocolo'].$pristine || processoForm.$submitted)}"> | ||
23 | + <label class='control-label'> <translate>ECM.LABEL.PROTOCOLO</translate> <span class='red'>*</span></label> <i | ||
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> | ||
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 | + form="processoForm" /> | ||
28 | + </div> | ||
29 | + </div> | ||
30 | + </div> | ||
31 | + </div> | ||
32 | + </div> | ||
33 | + | ||
34 | + <div class="row"> | ||
35 | + <div class="col-md-6"> | ||
36 | + <auto-complete ng-id="processo.tipoProcesso" ng-set-result="constroiRelacionamentoTipoProcesso(item)" ng-label="ECM.LABEL.TIPOPROCESSO" ng-model="processo.tipoProcesso" form="processoForm" | ||
37 | + ng-find="findAutoCompleteTipoProcesso(value)" ng-item="item.nome" ng-obrigatorio='true' ng-disabled='!edit || processo.id' /> | ||
38 | + </div> | ||
39 | + </div> | ||
40 | + | ||
41 | + <div class="row" ng-show='processo.tipoProcesso.id'> | ||
42 | + <div class="col-md-6"> | ||
43 | + <auto-complete ng-id="assuntoSelecionado" ng-disabled='sugestoes.length > 0' ng-label="ECM.LABEL.ASSUNTO" ng-set-result='setTipoAssunto(item)' ng-model="assuntoSelecionado" form="processoForm" | ||
44 | + ng-find="findAutoCompleteAssunto(value)" ng-item="item.assunto" ng-obrigatorio='{{!sugestoes}}' /> | ||
45 | + | ||
46 | + </div> | ||
47 | + </div> | ||
48 | + | ||
49 | + <div class="row" ng-show='processo.tipoProcesso.id'> | ||
50 | + <div class="col-md-6"> | ||
51 | + <div class="form-group"> | ||
52 | + <div class="input-group"> | ||
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 | + ng-options="sugestao as sugestao.assunto for sugestao in assuntos track by sugestao.id"> | ||
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 | + ng-mouseout="$hover = false"> <i class="fa fa-eraser bigger-110"></i> | ||
57 | + </span> <span class="input-group-addon" style="visibility: hidden;"> <i class="fa fa-search bigger-110"></i></span> | ||
58 | + </div> | ||
59 | + | ||
60 | + </div> | ||
61 | + </div> | ||
62 | + </div> | ||
63 | + | ||
64 | + <div class="row" ng-show='processo.tipoProcesso.id'> | ||
65 | + <div class="col-md-6"> | ||
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" | ||
67 | + ng-obrigatorio="true" ng-disabled="!edit" ng-custom-options="nivelAcessoTipoProcesso.originalElement as nivelAcessoTipoProcesso.nivelAcesso.descricao for nivelAcessoTipoProcesso " | ||
68 | + track-by="track by nivelAcessoTipoProcesso.id" ng-list="nivelAcessoList" show-selecione='false' /> | ||
69 | + </div> | ||
70 | + | ||
71 | + <div class="col-md-6"> | ||
72 | + <div class="form-group" ng-show='processo.nivelAcesso.nivelAcesso.codigo == 0'> | ||
73 | + <label class="control-label block" ng-class="{'has-error': processoForm['processo.sigilo.id'].$error.required && (!processoForm['processo.sigilo.id'].$pristine || processoForm.$submitted)}"> | ||
74 | + <translate>ECM.LABEL.SIGILO</translate> <span class="red">*</span> <i | ||
75 | + ng-show="processoForm['processo.sigilo.id'].$error.required && (!processoForm['processo.sigilo.id'].$pristine || processoForm.$submitted)" class='fa fa-warning red' | ||
76 | + tooltip="{{$translate.instant('ECM.LABEL.SIGILO') + ' ' +$translate.instant('LABEL.CAMPO_OBRIGATORIO')}}" tooltip-placement='top'></i> | ||
77 | + </label> | ||
78 | + | ||
79 | + <div class="radio-inline" ng-repeat="sigiloTipoProcesso in processo.nivelAcesso.sigilos"> | ||
80 | + <label> <input type="radio" required="processo.nivelAcesso.nivelAcesso.codigo == 1" name="processo.sigilo.id" id="processo.tipoSigilo.id" ng-disabled="!edit" | ||
81 | + ng-value="sigiloTipoProcesso.sigilo.id" ng-model="processo.sigilo.id" ng-change='setHipoteseLegal(processo.sigilo.id)' /> {{sigiloTipoProcesso.sigilo.tipoSigilo.descricao}} | ||
82 | + </label> | ||
83 | + </div> | ||
84 | + </div> | ||
85 | + </div> | ||
86 | + | ||
87 | + </div> | ||
88 | + | ||
89 | + <div class="row"> | ||
90 | + <div class="col-sm-6" ng-show='processo.nivelAcesso.nivelAcesso.codigo == 1 || processo.sigilo.id'> | ||
91 | + <label-select ng-id="processo.hipoteseLegal" ng-model="processo.hipoteseLegal" ng-label="ECM.LABEL.HIPOTESELEGAL" ng-obrigatorio='false' form="processoForm" ng-list="hipoteses" | ||
92 | + ng-custom-options="hipoteseLegal.originalElement as hipoteseLegal.nome for hipoteseLegal" ng-obrigatorio='true' track-by="track by hipoteseLegal.id" ng-disabled='!edit'> </label-select> | ||
93 | + </div> | ||
94 | + </div> | ||
95 | + | ||
96 | + | ||
97 | + <div class="row"> | ||
98 | + | ||
99 | + <div class="col-md-6"> | ||
100 | + | ||
101 | + <label-text-area ng-id="processo.assuntoComplementar" ng-label="ECM.LABEL.ASSUNTOCOMPLEMENTAR" ng-model="processo.assuntoComplementar" form="processoForm" /> | ||
102 | + | ||
103 | + </div> | ||
104 | + | ||
105 | + <div class="col-md-6"> | ||
106 | + | ||
107 | + <label-text-area ng-id="processo.observacaoGeral" ng-label="ECM.LABEL.OBSERVACAOGERAL" ng-model="processo.observacaoGeral" form="processoForm" /> | ||
108 | + | ||
109 | + </div> | ||
110 | + | ||
111 | + </div> | ||
112 | + | ||
113 | + <fieldset> | ||
114 | + | ||
115 | + <legend> | ||
116 | + <translate>ECM.LABEL.INTERESSADOS</translate> | ||
117 | + </legend> | ||
118 | + | ||
119 | + <div class="row"> | ||
120 | + | ||
121 | + <div class="col-md-12"> | ||
122 | + | ||
123 | + <div class="row"> | ||
124 | + <div class="col-sm-6"> | ||
125 | + <auto-complete ng-id="interessado" ng-label="ECM.LABEL.INTERESSADO" ng-model="interessado" ng-find="findAutoCompleteInteressados(value)" ng-item="item.nome" ng-set-result="setInteressados(item)" | ||
126 | + ng-show='edit' button-new-show="true" button-new-action="novaPessoa();" /> | ||
127 | + </div> | ||
128 | + </div> | ||
129 | + | ||
130 | + <div class="row"> | ||
131 | + <div class="col-sm-6"> | ||
132 | + <div class="panel panel-default"> | ||
133 | + <div class="panel-heading clearfix"> | ||
134 | + <button class="btn btn-clear" type="button" ng-hide="!edit" ng-click="removerInteressados()" ng-show='edit'> | ||
135 | + <i class="fa fa-times red"></i> | ||
136 | + <translate>LABEL.REMOVER</translate> | ||
137 | + </button> | ||
138 | + </div> | ||
139 | + <table class="table table-striped table-bordered table-hover"> | ||
140 | + <thead> | ||
141 | + <tr> | ||
142 | + <th width="5%" class="text-center"></th> | ||
143 | + | ||
144 | + <th class="text-center"><translate>LABEL.NOME</translate></th> | ||
145 | + | ||
146 | + </tr> | ||
147 | + </thead> | ||
148 | + | ||
149 | + | ||
150 | + <tbody> | ||
151 | + <tr ng-repeat="interessado in processo.interessados"> | ||
152 | + <td class="text-center"><input type="radio" name="interessadoChecked" id="interessadoChecked" ng-value="interessado" ng-model="$parent.interessadoChecked" | ||
153 | + ng-click="setInteressadoRemocao(interessado, $index)" /></td> | ||
154 | + | ||
155 | + <td class="text-center">{{interessado.interessado.nome}}</td> | ||
156 | + | ||
157 | + </tr> | ||
158 | + <tr ng-hide="processo.interessados.length > 0"> | ||
159 | + <td colspan="3" class="text-center"><translate>LABEL.TABELA_VAZIA</translate></td> | ||
160 | + </tr> | ||
161 | + </tbody> | ||
162 | + </table> | ||
163 | + </div> | ||
164 | + </div> | ||
165 | + </div> | ||
166 | + </div> | ||
167 | + </div> | ||
168 | + </fieldset> | ||
169 | +</fieldset> |
cit-ecm-web/src/main/webapp/html/processo/processo.html
cit-ecm-web/src/main/webapp/html/processo/processoEdit.html
1 | -<div id="editProcessoEcm" class="page-content clearfix" ng-controller="ProcessoController"> | ||
2 | - <div id="topoMenu" class="bar-buttons-action fixed"> | ||
3 | - <div class="row"> | ||
4 | - <div class="col-sm-8 text-left"> | ||
5 | - | ||
6 | - <button class="btn btn-clear" ng-click="saveOrUpdate()" ng-show="edit"> | ||
7 | - <i class="fa fa-save green"></i> | ||
8 | - <translate>LABEL.SALVAR</translate> | ||
9 | - </button> | ||
10 | - | ||
11 | - <button class="btn btn-clear" ng-click="resetForm()" ng-show="edit"> | ||
12 | - <i class="fa fa-eraser yellow-dark"></i> | ||
13 | - <translate>LABEL.LIMPAR</translate> | ||
14 | - </button> | ||
15 | - | ||
16 | - <button class="btn btn-clear" ng-show="!edit" ng-click="edit = true"> | ||
17 | - <i class="fa fa-pencil blue"></i> | ||
18 | - <translate>LABEL.EDITAR</translate> | ||
19 | - </button> | ||
20 | - | ||
21 | - </div> | ||
22 | - <!-- .col --> | ||
23 | - | ||
24 | - <div class="col-sm-4 text-right"> | ||
25 | - | ||
26 | - <favorito /> | ||
27 | - | ||
28 | - <help-button workspace="workspace" /> | ||
29 | - | ||
30 | - </div> | ||
31 | - <!-- .col --> | ||
32 | - </div> | ||
33 | - <!-- .row --> | ||
34 | - </div> | ||
35 | - | ||
36 | - <breadcrumb ng-workspace="workspace"></breadcrumb> | ||
37 | - | ||
38 | - <form name="processoForm" autocomplete="off" novalidate> | ||
39 | - <p> | ||
40 | - <small>( <span class="red">*</span> ) <translate>LABEL.CAMPOS_OBRIGATORIOS</translate></small> | ||
41 | - </p> | ||
42 | - | ||
43 | - <fieldset> | ||
44 | - | ||
45 | - <legend> | ||
46 | - <translate>ECM.LABEL.DADOS_PROCESSO</translate> | ||
47 | - </legend> | ||
48 | - | ||
49 | - <div class="row"> | ||
50 | - <div class="col-md-6"> | ||
51 | - <div class="row"> | ||
52 | - <div class="col-md-4 "> | ||
53 | - | ||
54 | - <label-input-radio ng-id="processo.tipoProtocolo.codigo" ng-label="ECM.LABEL.TIPOPROTOCOLO" list="dominiosTipoProtocoloNup" ng-disabled='!edit' text="descricao" value="codigo" | ||
55 | - ng-model="processo.tipoProtocolo.codigo" form="processoForm" ></label-input-radio> | ||
56 | - | ||
57 | - </div> | ||
58 | - <div class="col-md-8" ng-show='processo.tipoProtocolo.codigo == 2'> | ||
59 | - <div class='form-group' ng-class="{'has-error': processoForm['protocolo'].$error.required && (!processoForm['protocolo'].$pristine || processoForm.$submitted)}"> | ||
60 | - <label class='control-label'> <translate>ECM.LABEL.PROTOCOLO</translate> <span class='red'>*</span> | ||
61 | - </label> <i ng-show="processoForm['protocolo'].$error.required && !processoForm['protocolo'].$pristine || processoForm.$submitted" class='fa fa-warning red' | ||
62 | - tooltip="{{$translate.instant('ECM.LABEL.PROTOCOLO') + ' ' +$translate.instant('LABEL.CAMPO_OBRIGATORIO')}}" tooltip-placement='top'></i> <input ng-required="processo.tipoProtocolo.codigo == 2" | ||
63 | - class="form-control" numbers-only id="protocolo" ng-show='processo.tipoProtocolo.codigo == 2' ng-label="LABEL.PROTOCOLO" ng-disabled='!edit' ng-model="processo.nup" form="processoForm" /> | ||
64 | - </div> | 1 | +<div id="editProcesso" class="page-content clearfix" ng-controller="ProcessoController as processoEditController"> |
2 | + <form id="processoEditController.processoForm" name="processoEditController.processoForm" autocomplete="off" novalidate> | ||
3 | + | ||
4 | + <div id="editProcesso" ng-if="processo.id"> | ||
5 | + <div id="widget-processo" class="widget-box margin-bottom"> | ||
6 | + <div class="widget-header"> | ||
7 | + <h2 class="widget-title"> | ||
8 | + <translate>ECM.LABEL.PROCESSO</translate> | ||
9 | + </h2> | ||
10 | + | ||
11 | + <div class="widget-toolbar"> | ||
12 | + <a href="#void" ng-click="closeWidget('widget-processo')"> <i class="fa fa-close"></i> | ||
13 | + </a> | ||
65 | </div> | 14 | </div> |
66 | </div> | 15 | </div> |
67 | - </div> | ||
68 | - </div> | ||
69 | - | ||
70 | - <div class="row"> | ||
71 | - <div class="col-md-6"> | ||
72 | - <auto-complete ng-id="processo.tipoProcesso" ng-set-result="constroiRelacionamentoTipoProcesso(item)" ng-label="ECM.LABEL.TIPOPROCESSO" ng-model="processo.tipoProcesso" form="processoForm" | ||
73 | - ng-find="findAutoCompleteTipoProcesso(value)" ng-item="item.nome" ng-obrigatorio='true' ng-disabled='!edit' /> | ||
74 | - </div> | ||
75 | - </div> | ||
76 | - | ||
77 | - <div class="row" ng-show='processo.tipoProcesso.id'> | ||
78 | - <div class="col-md-6"> | ||
79 | - <auto-complete ng-id="assuntoSelecionado" ng-disabled='sugestoes' ng-label="ECM.LABEL.ASSUNTO" ng-set-result='setTipoAssunto(item)' ng-model="assuntoSelecionado" form="processoForm" | ||
80 | - ng-find="findAutoCompleteAssunto(value)" ng-item="item.assunto" ng-obrigatorio='{{!sugestoes}}' /> | ||
81 | - | ||
82 | - </div> | ||
83 | - </div> | ||
84 | - | ||
85 | - <div class="row" ng-show='processo.tipoProcesso.id'> | ||
86 | - <div class="col-md-6"> | ||
87 | - <div class="form-group"> | ||
88 | - <div class="input-group"> | ||
89 | - <select class="form-control typeahead-wide" ng-model="sugestoes" ng-change="setAssunto(sugestoes)" multiple id="sugestoes" ng-disabled='assuntoSelecionado.id' ng-multiple="false" | ||
90 | - ng-options="sugestao as sugestao.assunto for sugestao in assuntos track by sugestao.id"> | ||
91 | - </select> <span ng-show="sugestoes" class="input-group-addon" ng-click="sugestoes = null" ng-class="{'hover-directive' : (($hover == true) && !disabled)}" ng-mouseover="$hover = true" | ||
92 | - ng-mouseout="$hover = false"> <i class="fa fa-eraser bigger-110"></i> | ||
93 | - </span> <span class="input-group-addon" style="visibility: hidden;"> <i class="fa fa-search bigger-110"></i></span> | ||
94 | - </div> | ||
95 | - | 16 | + <div class="widget-body"> |
17 | + <div class="widget-main clearfix"> | ||
18 | + <div ng-include src="'/cit-ecm-web/html/processo/metadadosProcesso.html'" /> | ||
96 | </div> | 19 | </div> |
97 | - </div> | ||
98 | - </div> | ||
99 | 20 | ||
100 | - <div class="row" ng-show='processo.tipoProcesso.id'> | 21 | + <div class="row" ng-if="processo.id"> |
22 | + <div style="margin-top: -38px; margin-left: 17px;" class="col-md-12"> | ||
23 | + <button class="btn btn-sm btn-primary" ng-click="saveOrUpdate()"> | ||
24 | + <translate>LABEL.SALVAR</translate> | ||
25 | + </button> | ||
101 | 26 | ||
102 | - <div class="col-md-6"> | ||
103 | - <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" | ||
104 | - ng-obrigatorio="true" ng-disabled="!edit" ng-custom-options="nivelAcessoTipoProcesso.originalElement as nivelAcessoTipoProcesso.nivelAcesso.descricao for nivelAcessoTipoProcesso " | ||
105 | - track-by="track by nivelAcessoTipoProcesso.id" ng-list="nivelAcessoList" show-selecione='false'/> | ||
106 | - </div> | ||
107 | - | ||
108 | - <div class="col-md-6"> | ||
109 | - <div class="form-group" ng-show='processo.nivelAcesso.nivelAcesso.codigo == 0'> | ||
110 | - <label class="control-label block" ng-class="{'has-error': processoForm['processo.sigilo.id'].$error.required && (!processoForm['processo.sigilo.id'].$pristine || processoForm.$submitted)}"> | ||
111 | - <translate>ECM.LABEL.SIGILO</translate> <span class="red">*</span> <i | ||
112 | - ng-show="processoForm['processo.sigilo.id'].$error.required && (!processoForm['processo.sigilo.id'].$pristine || processoForm.$submitted)" class='fa fa-warning red' | ||
113 | - tooltip="{{$translate.instant('ECM.LABEL.SIGILO') + ' ' +$translate.instant('LABEL.CAMPO_OBRIGATORIO')}}" tooltip-placement='top'></i> | ||
114 | - </label> | ||
115 | - | ||
116 | - <div class="radio-inline" ng-repeat="sigiloTipoProcesso in processo.nivelAcesso.sigilos"> | ||
117 | - <label> <input type="radio" required="processo.nivelAcesso.nivelAcesso.codigo == 1" name="processo.sigilo.id" id="processo.tipoSigilo.id" ng-disabled="!edit" | ||
118 | - ng-value="sigiloTipoProcesso.sigilo.id" ng-model="processo.sigilo.id" ng-change='setHipoteseLegal(processo.sigilo.id)' /> {{sigiloTipoProcesso.sigilo.tipoSigilo.descricao}} | ||
119 | - </label> | 27 | + <button class="btn btn-sm btn-primary" ng-click="closeWidget('widget-processo')"> |
28 | + <translate>LABEL.CANCELAR</translate> | ||
29 | + </button> | ||
120 | </div> | 30 | </div> |
121 | </div> | 31 | </div> |
122 | </div> | 32 | </div> |
123 | - | ||
124 | - </div> | ||
125 | - | ||
126 | - <div class="row"> | ||
127 | - <div class="col-sm-6" ng-show='processo.nivelAcesso.nivelAcesso.codigo == 1 || processo.sigilo.id'> | ||
128 | - <label-select ng-id="processo.hipoteseLegal" ng-model="processo.hipoteseLegal" ng-label="ECM.LABEL.HIPOTESELEGAL" ng-obrigatorio='processo.nivelAcesso.nivelAcesso.codigo == 1 || processo.sigilo.id' form="processoForm" ng-list="hipoteses" | ||
129 | - ng-custom-options="hipoteseLegal.originalElement as hipoteseLegal.nome for hipoteseLegal" ng-obrigatorio='true' track-by="track by hipoteseLegal.id" ng-disabled='!edit'> </label-select> | ||
130 | - </div> | ||
131 | - </div> | ||
132 | - | ||
133 | - | ||
134 | - <div class="row"> | ||
135 | - | ||
136 | - <div class="col-md-6"> | ||
137 | - | ||
138 | - <label-text-area ng-id="processo.assuntoComplementar" ng-label="ECM.LABEL.ASSUNTOCOMPLEMENTAR" ng-model="processo.assuntoComplementar" form="processoForm" /> | ||
139 | - | ||
140 | - </div> | ||
141 | - | ||
142 | - <div class="col-md-6"> | ||
143 | - | ||
144 | - <label-text-area ng-id="processo.observacaoGeral" ng-label="ECM.LABEL.OBSERVACAOGERAL" ng-model="processo.observacaoGeral" form="processoForm" /> | ||
145 | - | ||
146 | - </div> | ||
147 | - | ||
148 | </div> | 33 | </div> |
149 | - | ||
150 | - <fieldset> | ||
151 | - | ||
152 | - <legend> | ||
153 | - <translate>ECM.LABEL.INTERESSADOS</translate> | ||
154 | - </legend> | ||
155 | - | ||
156 | - <div class="row"> | ||
157 | - | ||
158 | - <div class="col-md-12"> | ||
159 | - | ||
160 | - <div class="row"> | ||
161 | - <div class="col-sm-6"> | ||
162 | - <auto-complete ng-id="interessado" ng-label="ECM.LABEL.INTERESSADO" ng-model="interessado" ng-find="findAutoCompleteInteressados(value)" ng-item="item.nome" | ||
163 | - ng-set-result="setInteressados(item)" ng-show='edit' button-new-show="true" button-new-action="novaPessoa();" /> | ||
164 | - </div> | ||
165 | - </div> | ||
166 | - | ||
167 | - <div class="row"> | ||
168 | - <div class="col-sm-6"> | ||
169 | - <div class="panel panel-default"> | ||
170 | - <div class="panel-heading clearfix"> | ||
171 | - <button class="btn btn-clear" type="button" ng-hide="!edit" ng-click="removerInteressados()" ng-show='edit'> | ||
172 | - <i class="fa fa-times red"></i> | ||
173 | - <translate>LABEL.REMOVER</translate> | ||
174 | - </button> | ||
175 | - </div> | ||
176 | - <table class="table table-striped table-bordered table-hover"> | ||
177 | - <thead> | ||
178 | - <tr> | ||
179 | - <th width="5%" class="text-center"></th> | ||
180 | - | ||
181 | - <th class="text-center"><translate>LABEL.NOME</translate></th> | ||
182 | - | ||
183 | - </tr> | ||
184 | - </thead> | ||
185 | - <tbody> | ||
186 | - <tr ng-repeat="interessadoList in processo.interessados"> | ||
187 | - <td class="text-center"><input type="radio" name="interessadoChecked" ng-value="interessadoList" ng-model="$parent.interessadoChecked" ng-click="interessadoList.$index = $index" /></td> | ||
188 | - | ||
189 | - <td class="text-center">{{interessadoList.interessado.nome}}</td> | ||
190 | - </tr> | ||
191 | - <tr ng-hide="processo.interessados.length > 0"> | ||
192 | - <td colspan="3" class="text-center"><translate>LABEL.TABELA_VAZIA</translate></td> | ||
193 | - </tr> | ||
194 | - </tbody> | ||
195 | - </table> | ||
196 | - </div> | ||
197 | - </div> | ||
198 | - </div> | ||
199 | - </div> | ||
200 | - </div> | ||
201 | - </fieldset> | ||
202 | - </fieldset> | 34 | + </div> |
203 | </form> | 35 | </form> |
204 | </div> | 36 | </div> |
205 | -<!-- .page-content --> | ||
206 | - | ||
207 | - | ||
208 | - | ||
209 | - | ||
210 | - | ||
211 | - | ||
212 | 37 | ||
38 | +<!-- .page-content --> |
cit-ecm-web/src/main/webapp/html/processo/processoNew.html
0 → 100644
@@ -0,0 +1,45 @@ | @@ -0,0 +1,45 @@ | ||
1 | +<div id="newProcesso" class="page-content clearfix" ng-controller="ProcessoController as processoNewController" ng-init="init(inicializarProcesso())"> | ||
2 | + | ||
3 | + <div id="newProcesso" ng-if="!processo.id"> | ||
4 | + <div class="bar-buttons-action fixed"> | ||
5 | + <div class="row"> | ||
6 | + <div class="col-sm-8 text-left"> | ||
7 | + | ||
8 | + <button class="btn btn-clear" ng-click="saveOrUpdate()" ng-show="edit"> | ||
9 | + <i class="fa fa-save green"></i> | ||
10 | + <translate>LABEL.SALVAR</translate> | ||
11 | + </button> | ||
12 | + | ||
13 | + <button class="btn btn-clear" ng-click="resetForm()" ng-show="edit"> | ||
14 | + <i class="fa fa-eraser yellow-dark"></i> | ||
15 | + <translate>LABEL.LIMPAR</translate> | ||
16 | + </button> | ||
17 | + | ||
18 | + <button class="btn btn-clear" ng-show="!edit" ng-click="edit = true"> | ||
19 | + <i class="fa fa-pencil blue"></i> | ||
20 | + <translate>LABEL.EDITAR</translate> | ||
21 | + </button> | ||
22 | + | ||
23 | + </div> | ||
24 | + | ||
25 | + <div class="col-sm-4 text-right"> | ||
26 | + | ||
27 | + <favorito /> | ||
28 | + | ||
29 | + <help-button workspace="workspace" /> | ||
30 | + | ||
31 | + </div> | ||
32 | + | ||
33 | + </div> | ||
34 | + | ||
35 | + </div> | ||
36 | + | ||
37 | + <breadcrumb ng-workspace="workspace"></breadcrumb> | ||
38 | + | ||
39 | + </div> | ||
40 | + | ||
41 | + <form id="processoNewController.processoForm" name="processoNewController.processoForm" autocomplete="off" novalidate> | ||
42 | + <div ng-include src="'/cit-ecm-web/html/processo/metadadosProcesso.html'" /> | ||
43 | + </form> | ||
44 | + | ||
45 | +</div> |