Commit b5aa385d5f65e7440fb80daaa7747220ea253129

Authored by maycon.silva
2 parents 2b0dc333 da69d4bb
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&lt;Histor @@ -102,4 +104,33 @@ public interface HistoricoAlteracaoProcessoService extends GenericService&lt;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&lt;Processo, Long&gt; { @@ -221,5 +223,19 @@ public interface ProcessoService extends GenericService&lt;Processo, Long&gt; {
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&lt;UnidadeProcesso, @@ -78,6 +78,20 @@ public interface UnidadeProcessoService extends GenericService&lt;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&lt;UnidadeProcesso, @@ -171,6 +185,21 @@ public interface UnidadeProcessoService extends GenericService&lt;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&lt;AnexoProcesso, @@ -83,6 +82,9 @@ public class AnexarProcessoServiceImpl extends GenericServiceImpl&lt;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&lt;AnexoProcesso, @@ -127,6 +129,8 @@ public class AnexarProcessoServiceImpl extends GenericServiceImpl&lt;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&lt;AnexoProcesso, @@ -348,9 +352,6 @@ public class AnexarProcessoServiceImpl extends GenericServiceImpl&lt;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&lt;DocumentoGed, Lo @@ -669,6 +669,7 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl&lt;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&lt;DocumentoGed, Lo @@ -884,6 +885,7 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl&lt;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&lt;Hi @@ -218,4 +240,76 @@ public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl&lt;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&lt;Processo, Long&gt; impl @@ -149,6 +153,9 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; 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&lt;Processo, Long&gt; impl @@ -169,19 +176,25 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; 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&lt;Processo, Long&gt; impl @@ -738,7 +751,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; 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&lt;Processo, Long&gt; impl @@ -746,6 +759,8 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; 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&lt;Processo, Long&gt; impl @@ -1185,5 +1200,14 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; 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&lt;UnidadeProces @@ -105,6 +106,9 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;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&lt;UnidadeProces @@ -204,7 +208,9 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;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&lt;UnidadeProces @@ -227,7 +233,7 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;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&lt;UnidadeProces @@ -272,6 +278,17 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;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&lt;UnidadeProces @@ -325,6 +342,15 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;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&lt;Processo&gt; { @@ -97,6 +101,28 @@ public class ProcessoController extends GenericController&lt;Processo&gt; {
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&lt;Processo&gt; { @@ -184,6 +210,18 @@ public class ProcessoController extends GenericController&lt;Processo&gt; {
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&lt;Processo&gt; { @@ -199,8 +237,12 @@ public class ProcessoController extends GenericController&lt;Processo&gt; {
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&lt;UnidadeProcesso @@ -98,6 +98,29 @@ public class UnidadeProcessoController extends GenericController&lt;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(&#39;AnexarProcessoController&#39;, [&#39;$scope&#39;, &#39;UnidadeProcessoReposit @@ -34,6 +34,7 @@ citApp.controller(&#39;AnexarProcessoController&#39;, [&#39;$scope&#39;, &#39;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(&#39;AnexarProcessoController&#39;, [&#39;$scope&#39;, &#39;UnidadeProcessoReposit @@ -57,10 +58,9 @@ citApp.controller(&#39;AnexarProcessoController&#39;, [&#39;$scope&#39;, &#39;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(&#39;AnexarProcessoController&#39;, [&#39;$scope&#39;, &#39;UnidadeProcessoReposit @@ -242,85 +242,4 @@ citApp.controller(&#39;AnexarProcessoController&#39;, [&#39;$scope&#39;, &#39;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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -25,10 +25,10 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -82,20 +82,16 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -135,6 +131,21 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -275,10 +286,8 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -289,7 +298,6 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -358,6 +366,8 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -369,18 +379,22 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -441,7 +455,7 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -466,20 +480,12 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -619,25 +625,24 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -699,7 +704,7 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -717,6 +722,14 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$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(&#39;GerenciarProcessoListUnidadeController&#39;, [&#39;$scope&#39;, &#39;workflow @@ -58,11 +58,11 @@ citApp.controller(&#39;GerenciarProcessoListUnidadeController&#39;, [&#39;$scope&#39;, &#39;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(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini @@ -8,16 +8,22 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;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(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini @@ -62,21 +68,17 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;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(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini @@ -88,9 +90,10 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;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(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini @@ -103,8 +106,12 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;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(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini @@ -113,33 +120,31 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;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(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini @@ -177,6 +182,8 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;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(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini @@ -186,21 +193,23 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;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(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini @@ -236,22 +245,24 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;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(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini @@ -261,25 +272,46 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;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(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini @@ -296,17 +328,14 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;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(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;Domini @@ -321,5 +350,13 @@ citApp.controller(&#39;ProcessoController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;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(&#39;ProcessoFinalizadoListController&#39;, [&#39;$scope&#39;, &#39;ProcessoReposi @@ -4,7 +4,7 @@ citApp.controller(&#39;ProcessoFinalizadoListController&#39;, [&#39;$scope&#39;, &#39;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(&#39;ProcessoFinalizadoListController&#39;, [&#39;$scope&#39;, &#39;ProcessoReposi @@ -35,7 +35,7 @@ citApp.controller(&#39;ProcessoFinalizadoListController&#39;, [&#39;$scope&#39;, &#39;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(&#39;ProcessoListController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;$t @@ -4,7 +4,7 @@ citApp.controller(&#39;ProcessoListController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;$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(&#39;ProcessoListController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;$t @@ -26,7 +26,7 @@ citApp.controller(&#39;ProcessoListController&#39;, [&#39;$scope&#39;, &#39;ProcessoRepository&#39;, &#39;$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(&#39;UnidadeProcessoController&#39;, [&#39;$scope&#39;, &#39;UnidadeProcessoReposi @@ -163,7 +163,7 @@ citApp.controller(&#39;UnidadeProcessoController&#39;, [&#39;$scope&#39;, &#39;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(&#39;UnidadeProcessoController&#39;, [&#39;$scope&#39;, &#39;UnidadeProcessoReposi @@ -179,6 +179,7 @@ citApp.controller(&#39;UnidadeProcessoController&#39;, [&#39;$scope&#39;, &#39;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(&#39;ProcessoRepository&#39;, [&#39;RestangularEcm&#39;, &#39;AbstractRepository&#39;, fu @@ -37,6 +37,16 @@ citApp.factory(&#39;ProcessoRepository&#39;, [&#39;RestangularEcm&#39;, &#39;AbstractRepository&#39;, 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(&#39;UnidadeProcessoRepository&#39;, [&#39;RestangularEcm&#39;, &#39;AbstractReposito @@ -18,6 +18,11 @@ citApp.factory(&#39;UnidadeProcessoRepository&#39;, [&#39;RestangularEcm&#39;, &#39;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
1 1
2 -  
3 <div class="widget-main clearfix"> 2 <div class="widget-main clearfix">
4 3
5 <div class="col-md-4"> 4 <div class="col-md-4">
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
1 -<div ng-include src="'/cit-ecm-web/html/processo/processoEdit.html'"></div> 1 +<div ng-include src="'/cit-ecm-web/html/processo/processoNew.html'"></div>
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>