Commit 9fc18a5e1cfd0d08ccedc225f0be9ced32cd99ac

Authored by rogerio.costa
2 parents 145fbec5 13909af9
Exists in master

Merge branch 'tarefa-4199' into desenvolvimento

Conflicts:
	cit-ecm-api/src/main/java/br/com/centralit/api/framework/json/ViewsEcm.java
	cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/DocumentoGedServiceImpl.java
	cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/InicializarEcmServiceImpl.java
	cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeCabecalhoGerenciarProcesso.jsp
Showing 40 changed files with 1583 additions and 185 deletions   Show diff stats
cit-ecm-api/src/main/java/br/com/centralit/api/dao/ConfiguracaoUsuarioUnidadeDao.java
@@ -59,17 +59,40 @@ public interface ConfiguracaoUsuarioUnidadeDao extends CitGenericDAO { @@ -59,17 +59,40 @@ public interface ConfiguracaoUsuarioUnidadeDao extends CitGenericDAO {
59 Collection<ConfiguracaoUsuarioUnidade> findPorUsuarioOrganizacao(Usuario usuario); 59 Collection<ConfiguracaoUsuarioUnidade> findPorUsuarioOrganizacao(Usuario usuario);
60 60
61 /** 61 /**
62 - * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p>  
63 - *  
64 - * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p>  
65 - * 62 + * <p>
  63 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  64 + * </p>
  65 + *
  66 + * <p>
  67 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  68 + * </p>
  69 + *
66 * Método responsável por 70 * Método responsável por
67 - * 71 + *
68 * @author rogerio.costa 72 * @author rogerio.costa
69 - * 73 + *
70 * @param id 74 * @param id
71 * @return 75 * @return
72 */ 76 */
73 Collection<ConfiguracaoUsuarioUnidade> findPorIdEstruturaOrganizacionalECM(Long id); 77 Collection<ConfiguracaoUsuarioUnidade> findPorIdEstruturaOrganizacionalECM(Long id);
74 78
  79 + /**
  80 + * <p>
  81 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  82 + * </p>
  83 + *
  84 + * <p>
  85 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  86 + * </p>
  87 + *
  88 + * Método responsável por listar usuarios através da unidade e username
  89 + *
  90 + * @author rogerio.costa
  91 + *
  92 + * @param username
  93 + * @param idUnidade
  94 + * @return Collection<Usuario>
  95 + */
  96 + Collection<ConfiguracaoUsuarioUnidade> findPorUsernameUsuarioAndUnidade(String username, Long idUnidade);
  97 +
75 } 98 }
cit-ecm-api/src/main/java/br/com/centralit/api/dao/HistoricoAtribuicaoProcessoDao.java 0 → 100644
@@ -0,0 +1,58 @@ @@ -0,0 +1,58 @@
  1 +package br.com.centralit.api.dao;
  2 +
  3 +import br.com.centralit.api.model.HistoricoAtribuicaoProcesso;
  4 +import br.com.centralit.framework.dao.arquitetura.CitGenericDAO;
  5 +
  6 +/**
  7 + * <p>
  8 + * <img src="http://centralit.com.br/images/logo_central.png">
  9 + * </p>
  10 + *
  11 + * <p>
  12 + * <b>Company: </b> Central IT - Governança Corporativa -
  13 + * </p>
  14 + *
  15 + * <p>
  16 + * <b>Title: </b>
  17 + * </p>
  18 + *
  19 + * <p>
  20 + * <b>Description: </b>
  21 + * </p>
  22 + *
  23 + * <p>
  24 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  25 + * </p>
  26 + *
  27 + * <p>
  28 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  29 + * </p>
  30 + *
  31 + * @since 02/04/2016 - 10:40:14
  32 + *
  33 + * @version 1.0.0
  34 + *
  35 + * @author rogerio.costa
  36 + *
  37 + */
  38 +public interface HistoricoAtribuicaoProcessoDao extends CitGenericDAO {
  39 +
  40 + /**
  41 + * <p>
  42 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  43 + * </p>
  44 + *
  45 + * <p>
  46 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  47 + * </p>
  48 + *
  49 + * Método responsável por obter utima atribuição através do id da unidadeProcesso
  50 + *
  51 + * @author rogerio.costa
  52 + *
  53 + * @param idUnidadeProcesso
  54 + * @return HistoricoAtribuicaoProcesso
  55 + */
  56 + HistoricoAtribuicaoProcesso obterAtualPorUnidadeProcesso(Long idUnidadeProcesso);
  57 +
  58 +}
cit-ecm-api/src/main/java/br/com/centralit/api/dao/UnidadeProcessoDao.java
@@ -76,20 +76,43 @@ public interface UnidadeProcessoDao extends CitGenericDAO { @@ -76,20 +76,43 @@ public interface UnidadeProcessoDao extends CitGenericDAO {
76 * @return Boolean 76 * @return Boolean
77 */ 77 */
78 Boolean isProcessoConcluidoEmTodasUnidades(Long idProcesso); 78 Boolean isProcessoConcluidoEmTodasUnidades(Long idProcesso);
79 - 79 +
80 /** 80 /**
81 * 81 *
82 - * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p>  
83 - *  
84 - * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p>  
85 - * 82 + * <p>
  83 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  84 + * </p>
  85 + *
  86 + * <p>
  87 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  88 + * </p>
  89 + *
86 * Método responsável por 90 * Método responsável por
87 - * 91 + *
88 * @author andre.silva 92 * @author andre.silva
89 - * 93 + *
90 * @param processo 94 * @param processo
91 * @return 95 * @return
92 */ 96 */
93 Collection<UnidadeProcesso> findProcesso(Processo processo); 97 Collection<UnidadeProcesso> findProcesso(Processo processo);
94 98
  99 + /**
  100 + * <p>
  101 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  102 + * </p>
  103 + *
  104 + * <p>
  105 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  106 + * </p>
  107 + *
  108 + * Método responsável por obter através da unidade e processo
  109 + *
  110 + * @author rogerio.costa
  111 + *
  112 + * @param idProcesso
  113 + * @param idUnidade
  114 + * @return UnidadeProcesso
  115 + */
  116 + UnidadeProcesso obterPorUnidadeEProcesso(Long idProcesso, Long idUnidade);
  117 +
95 } 118 }
cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/ConfiguracaoUsuarioUnidadeDaoHibernate.java
@@ -100,4 +100,32 @@ public class ConfiguracaoUsuarioUnidadeDaoHibernate extends CitGenericDAOImpl im @@ -100,4 +100,32 @@ public class ConfiguracaoUsuarioUnidadeDaoHibernate extends CitGenericDAOImpl im
100 return this.search(searchSeven, this.persistentClass); 100 return this.search(searchSeven, this.persistentClass);
101 } 101 }
102 102
  103 + /**
  104 + * <p>
  105 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  106 + * </p>
  107 + *
  108 + * <p>
  109 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  110 + * </p>
  111 + *
  112 + * Método responsável por listar usuarios através da unidade e username
  113 + *
  114 + * @author rogerio.costa
  115 + *
  116 + * @param username
  117 + * @param idUnidade
  118 + * @return Collection<Usuario>
  119 + */
  120 + public Collection<ConfiguracaoUsuarioUnidade> findPorUsernameUsuarioAndUnidade(String username, Long idUnidade) {
  121 +
  122 + SearchSeven searchSeven = new SearchSeven();
  123 +
  124 + searchSeven.addFilterILike("usuario.username", "%" + username + "%");
  125 +
  126 + searchSeven.addFilterEqual("estruturaOrganizacionalECM.id", idUnidade);
  127 +
  128 + return this.search(searchSeven);
  129 + }
  130 +
103 } 131 }
cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/HistoricoAtribuicaoProcessoDaoHibernate.java 0 → 100644
@@ -0,0 +1,81 @@ @@ -0,0 +1,81 @@
  1 +package br.com.centralit.api.dao.impl;
  2 +
  3 +import org.springframework.stereotype.Repository;
  4 +
  5 +import br.com.centralit.api.dao.HistoricoAtribuicaoProcessoDao;
  6 +import br.com.centralit.api.model.HistoricoAtribuicaoProcesso;
  7 +import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl;
  8 +import br.com.centralit.framework.dao.arquitetura.SearchSeven;
  9 +
  10 +/**
  11 + * <p>
  12 + * <img src="http://centralit.com.br/images/logo_central.png">
  13 + * </p>
  14 + *
  15 + * <p>
  16 + * <b>Company: </b> Central IT - Governança Corporativa -
  17 + * </p>
  18 + *
  19 + * <p>
  20 + * <b>Title: </b>
  21 + * </p>
  22 + *
  23 + * <p>
  24 + * <b>Description: </b>
  25 + * </p>
  26 + *
  27 + * <p>
  28 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  29 + * </p>
  30 + *
  31 + * <p>
  32 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  33 + * </p>
  34 + *
  35 + * @since 02/04/2016 - 10:41:26
  36 + *
  37 + * @version 1.0.0
  38 + *
  39 + * @author rogerio.costa
  40 + *
  41 + */
  42 +@Repository("historicoAtribuicaoProcessoDao")
  43 +public class HistoricoAtribuicaoProcessoDaoHibernate extends CitGenericDAOImpl implements HistoricoAtribuicaoProcessoDao {
  44 +
  45 + /**
  46 + * Responsável pela criação de novas instâncias desta classe.
  47 + */
  48 + public HistoricoAtribuicaoProcessoDaoHibernate() {
  49 +
  50 + super(HistoricoAtribuicaoProcesso.class);
  51 + }
  52 +
  53 + /**
  54 + * <p>
  55 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  56 + * </p>
  57 + *
  58 + * <p>
  59 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  60 + * </p>
  61 + *
  62 + * Método responsável por obter utima atribuição através do id da unidadeProcesso
  63 + *
  64 + * @author rogerio.costa
  65 + *
  66 + * @param idUnidadeProcesso
  67 + * @return HistoricoAtribuicaoProcesso
  68 + */
  69 + public HistoricoAtribuicaoProcesso obterAtualPorUnidadeProcesso(Long idUnidadeProcesso) {
  70 +
  71 + SearchSeven searchSeven = new SearchSeven();
  72 +
  73 + searchSeven.addFilterEqual("unidadeProcesso.id", idUnidadeProcesso);
  74 +
  75 + searchSeven.addFilterEmpty("dataRemocao");
  76 +
  77 + searchSeven.setMaxResults(1);
  78 +
  79 + return this.searchUnique(searchSeven);
  80 + }
  81 +}
cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/UnidadeProcessoDaoHibernate.java
@@ -82,14 +82,18 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un @@ -82,14 +82,18 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un
82 82
83 /** 83 /**
84 * 84 *
85 - * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p>  
86 - *  
87 - * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p>  
88 - * 85 + * <p>
  86 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  87 + * </p>
  88 + *
  89 + * <p>
  90 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  91 + * </p>
  92 + *
89 * Método responsável por 93 * Método responsável por
90 - * 94 + *
91 * @author andre.silva 95 * @author andre.silva
92 - * 96 + *
93 * @param processo 97 * @param processo
94 * @return 98 * @return
95 */ 99 */
@@ -132,4 +136,35 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un @@ -132,4 +136,35 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un
132 return UtilColecao.isVazio(this.search(searchSeven)); 136 return UtilColecao.isVazio(this.search(searchSeven));
133 } 137 }
134 138
  139 + /**
  140 + * <p>
  141 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  142 + * </p>
  143 + *
  144 + * <p>
  145 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  146 + * </p>
  147 + *
  148 + * Método responsável por obter através da unidade e processo
  149 + *
  150 + * @author rogerio.costa
  151 + *
  152 + * @param idProcesso
  153 + * @param idUnidade
  154 + * @return UnidadeProcesso
  155 + */
  156 + public UnidadeProcesso obterPorUnidadeEProcesso(Long idProcesso, Long idUnidade) {
  157 +
  158 + SearchSeven searchSeven = new SearchSeven();
  159 +
  160 + searchSeven.addFilterEqual("processo.id", idProcesso);
  161 +
  162 + searchSeven.addFilterEqual("unidade.id", idUnidade);
  163 +
  164 + searchSeven.setMaxResults(1);
  165 +
  166 + return this.searchUnique(searchSeven);
  167 +
  168 + }
  169 +
135 } 170 }
cit-ecm-api/src/main/java/br/com/centralit/api/framework/json/ViewsEcm.java
@@ -97,8 +97,10 @@ public class ViewsEcm extends Views { @@ -97,8 +97,10 @@ public class ViewsEcm extends Views {
97 public static class RodapeAutoCompleteView extends Views.GenericView{}; 97 public static class RodapeAutoCompleteView extends Views.GenericView{};
98 98
99 public static class TipoDocumentoPlanoClassificacaoAutoCompleteView extends Views.GenericView{}; 99 public static class TipoDocumentoPlanoClassificacaoAutoCompleteView extends Views.GenericView{};
100 - 100 +
101 public static class ClassificacaoDocumentoGedView extends Views.GenericView{}; 101 public static class ClassificacaoDocumentoGedView extends Views.GenericView{};
  102 +
  103 + public static class HistoricoAtribuicaoProcessoView extends Views.GenericView{};
102 104
103 105
104 } 106 }
cit-ecm-api/src/main/java/br/com/centralit/api/model/ConfiguracaoUsuarioUnidade.java
@@ -67,7 +67,7 @@ public class ConfiguracaoUsuarioUnidade extends PersistentObjectAuditOrganizacao @@ -67,7 +67,7 @@ public class ConfiguracaoUsuarioUnidade extends PersistentObjectAuditOrganizacao
67 67
68 /** Atributo usuarioOrganizacao. */ 68 /** Atributo usuarioOrganizacao. */
69 @ManyToOne(fetch = FetchType.LAZY) 69 @ManyToOne(fetch = FetchType.LAZY)
70 - @JsonView({ Views.ConfiguracaoUsuarioUnidadeListView.class, Views.EstruturaOrganizacionalECMEditView.class }) 70 + @JsonView({ Views.ConfiguracaoUsuarioUnidadeListView.class, Views.EstruturaOrganizacionalECMEditView.class, Views.UsuarioAutoCompleteView.class })
71 private Usuario usuario; 71 private Usuario usuario;
72 72
73 /** Atributo estruturaOrganizacional. */ 73 /** Atributo estruturaOrganizacional. */
cit-ecm-api/src/main/java/br/com/centralit/api/model/EstruturaOrganizacionalECM.java
@@ -9,7 +9,6 @@ import javax.persistence.OneToMany; @@ -9,7 +9,6 @@ import javax.persistence.OneToMany;
9 import javax.persistence.OneToOne; 9 import javax.persistence.OneToOne;
10 10
11 import br.com.centralit.framework.json.Views; 11 import br.com.centralit.framework.json.Views;
12 -import br.com.centralit.framework.json.Views.ConfiguracaoUsuarioUnidadeListView;  
13 import br.com.centralit.framework.model.GrupoUnidade; 12 import br.com.centralit.framework.model.GrupoUnidade;
14 import br.com.centralit.framework.model.Unidade; 13 import br.com.centralit.framework.model.Unidade;
15 14
cit-ecm-api/src/main/java/br/com/centralit/api/model/HistoricoAtribuicaoProcesso.java 0 → 100644
@@ -0,0 +1,220 @@ @@ -0,0 +1,220 @@
  1 +package br.com.centralit.api.model;
  2 +
  3 +import java.util.Calendar;
  4 +
  5 +import javax.persistence.Entity;
  6 +import javax.persistence.FetchType;
  7 +import javax.persistence.GeneratedValue;
  8 +import javax.persistence.GenerationType;
  9 +import javax.persistence.Id;
  10 +import javax.persistence.ManyToOne;
  11 +import javax.persistence.Temporal;
  12 +import javax.persistence.TemporalType;
  13 +
  14 +import br.com.centralit.api.framework.json.ViewsEcm;
  15 +import br.com.centralit.framework.json.JsonCalendarSimpleDateDeserializer;
  16 +import br.com.centralit.framework.json.JsonCalendarSimpleDateSerializer;
  17 +import br.com.centralit.framework.json.Views;
  18 +import br.com.centralit.framework.model.arquitetura.PersistentObjectAudit;
  19 +
  20 +import com.fasterxml.jackson.annotation.JsonView;
  21 +import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
  22 +import com.fasterxml.jackson.databind.annotation.JsonSerialize;
  23 +
  24 +/**
  25 + * <p>
  26 + * <img src="http://centralit.com.br/images/logo_central.png">
  27 + * </p>
  28 + *
  29 + * <p>
  30 + * <b>Company: </b> Central IT - Governança Corporativa -
  31 + * </p>
  32 + *
  33 + * <p>
  34 + * <b>Title: </b>
  35 + * </p>
  36 + *
  37 + * <p>
  38 + * <b>Description: </b>
  39 + * </p>
  40 + *
  41 + * <p>
  42 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  43 + * </p>
  44 + *
  45 + * <p>
  46 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  47 + * </p>
  48 + *
  49 + * @since 02/04/2016 - 10:11:50
  50 + *
  51 + * @version 1.0.0
  52 + *
  53 + * @author rogerio.costa
  54 + *
  55 + */
  56 +@Entity
  57 +public class HistoricoAtribuicaoProcesso extends PersistentObjectAudit {
  58 +
  59 + /** Atributo serialVersionUID. */
  60 + private static final long serialVersionUID = 7132743441754771336L;
  61 +
  62 + /** Atributo id. */
  63 + @Id
  64 + @GeneratedValue(strategy = GenerationType.AUTO)
  65 + @JsonView({ Views.GenericView.class })
  66 + private Long id;
  67 +
  68 + /** Atributo nomeUsuarioAtribuido. */
  69 + @JsonView({ ViewsEcm.HistoricoAtribuicaoProcessoView.class })
  70 + private String nomeUsuarioAtribuido;
  71 +
  72 + /** Atributo nomeUsuarioRemocao. */
  73 + @JsonView({ ViewsEcm.HistoricoAtribuicaoProcessoView.class })
  74 + private String nomeUsuarioRemocao;
  75 +
  76 + /** Atributo dataAtribuicao. */
  77 + @Temporal(TemporalType.TIMESTAMP)
  78 + @JsonSerialize(using = JsonCalendarSimpleDateSerializer.class)
  79 + @JsonDeserialize(using = JsonCalendarSimpleDateDeserializer.class)
  80 + @JsonView({ ViewsEcm.HistoricoAtribuicaoProcessoView.class })
  81 + private Calendar dataAtribuicao;
  82 +
  83 + /** Atributo dataRemocao. */
  84 + @Temporal(TemporalType.TIMESTAMP)
  85 + @JsonSerialize(using = JsonCalendarSimpleDateSerializer.class)
  86 + @JsonDeserialize(using = JsonCalendarSimpleDateDeserializer.class)
  87 + @JsonView({ ViewsEcm.HistoricoAtribuicaoProcessoView.class })
  88 + private Calendar dataRemocao;
  89 +
  90 + /** Atributo unidadeProcesso. */
  91 + @ManyToOne(fetch = FetchType.LAZY)
  92 + private UnidadeProcesso unidadeProcesso;
  93 +
  94 + /**
  95 + * Retorna o valor do atributo <code>nomeUsuarioAtribuido</code>
  96 + *
  97 + * @return <code>String</code>
  98 + */
  99 + public String getNomeUsuarioAtribuido() {
  100 +
  101 + return nomeUsuarioAtribuido;
  102 + }
  103 +
  104 + /**
  105 + * Define o valor do atributo <code>nomeUsuarioAtribuido</code>.
  106 + *
  107 + * @param nomeUsuarioAtribuido
  108 + */
  109 + public void setNomeUsuarioAtribuido(String nomeUsuarioAtribuido) {
  110 +
  111 + this.nomeUsuarioAtribuido = nomeUsuarioAtribuido;
  112 + }
  113 +
  114 + /**
  115 + * Retorna o valor do atributo <code>nomeUsuarioRemocao</code>
  116 + *
  117 + * @return <code>String</code>
  118 + */
  119 + public String getNomeUsuarioRemocao() {
  120 +
  121 + return nomeUsuarioRemocao;
  122 + }
  123 +
  124 + /**
  125 + * Define o valor do atributo <code>nomeUsuarioRemocao</code>.
  126 + *
  127 + * @param nomeUsuarioRemocao
  128 + */
  129 + public void setNomeUsuarioRemocao(String nomeUsuarioRemocao) {
  130 +
  131 + this.nomeUsuarioRemocao = nomeUsuarioRemocao;
  132 + }
  133 +
  134 + /**
  135 + * Retorna o valor do atributo <code>dataAtribuicao</code>
  136 + *
  137 + * @return <code>Calendar</code>
  138 + */
  139 + public Calendar getDataAtribuicao() {
  140 +
  141 + return dataAtribuicao;
  142 + }
  143 +
  144 + /**
  145 + * Define o valor do atributo <code>dataAtribuicao</code>.
  146 + *
  147 + * @param dataAtribuicao
  148 + */
  149 + public void setDataAtribuicao(Calendar dataAtribuicao) {
  150 +
  151 + this.dataAtribuicao = dataAtribuicao;
  152 + }
  153 +
  154 + /**
  155 + * Retorna o valor do atributo <code>dataRemocao</code>
  156 + *
  157 + * @return <code>Calendar</code>
  158 + */
  159 + public Calendar getDataRemocao() {
  160 +
  161 + return dataRemocao;
  162 + }
  163 +
  164 + /**
  165 + * Define o valor do atributo <code>dataRemocao</code>.
  166 + *
  167 + * @param dataRemocao
  168 + */
  169 + public void setDataRemocao(Calendar dataRemocao) {
  170 +
  171 + this.dataRemocao = dataRemocao;
  172 + }
  173 +
  174 + /**
  175 + * Retorna o valor do atributo <code>id</code>
  176 + *
  177 + * @return <code>Long</code>
  178 + */
  179 + public Long getId() {
  180 +
  181 + return id;
  182 + }
  183 +
  184 + /**
  185 + * Define o valor do atributo <code>id</code>.
  186 + *
  187 + * @param id
  188 + */
  189 + public void setId(Long id) {
  190 +
  191 + this.id = id;
  192 + }
  193 +
  194 + /**
  195 + * Retorna o valor do atributo <code>unidadeProcesso</code>
  196 + *
  197 + * @return <code>UnidadeProcesso</code>
  198 + */
  199 + public UnidadeProcesso getUnidadeProcesso() {
  200 +
  201 + return unidadeProcesso;
  202 + }
  203 +
  204 + /**
  205 + * Define o valor do atributo <code>unidadeProcesso</code>.
  206 + *
  207 + * @param unidadeProcesso
  208 + */
  209 + public void setUnidadeProcesso(UnidadeProcesso unidadeProcesso) {
  210 +
  211 + this.unidadeProcesso = unidadeProcesso;
  212 + }
  213 +
  214 + @JsonView({ ViewsEcm.HistoricoAtribuicaoProcessoView.class })
  215 + public String getAtribuidoPor() {
  216 +
  217 + return this.autor.getUsername();
  218 + }
  219 +
  220 +}
cit-ecm-api/src/main/java/br/com/centralit/api/model/UnidadeProcesso.java
@@ -66,6 +66,10 @@ public class UnidadeProcesso extends PersistentObjectAudit { @@ -66,6 +66,10 @@ public class UnidadeProcesso extends PersistentObjectAudit {
66 @JsonView({ Views.EnviarProcessoView.class }) 66 @JsonView({ Views.EnviarProcessoView.class })
67 private Boolean concluido; 67 private Boolean concluido;
68 68
  69 + /** Atributo primeiroAcesso. */
  70 + @JsonView({ Views.EnviarProcessoView.class })
  71 + private Boolean primeiroAcesso;
  72 +
69 /** Atributo processo. */ 73 /** Atributo processo. */
70 @ManyToOne(fetch = FetchType.LAZY) 74 @ManyToOne(fetch = FetchType.LAZY)
71 @JsonView({ Views.EnviarProcessoView.class }) 75 @JsonView({ Views.EnviarProcessoView.class })
@@ -181,4 +185,44 @@ public class UnidadeProcesso extends PersistentObjectAudit { @@ -181,4 +185,44 @@ public class UnidadeProcesso extends PersistentObjectAudit {
181 this.concluido = concluido; 185 this.concluido = concluido;
182 } 186 }
183 187
  188 + /**
  189 + * Retorna o valor do atributo <code>primeiroAcesso</code>
  190 + *
  191 + * @return <code>Boolean</code>
  192 + */
  193 + public Boolean getPrimeiroAcesso() {
  194 +
  195 + return primeiroAcesso;
  196 + }
  197 +
  198 + /**
  199 + * Define o valor do atributo <code>primeiroAcesso</code>.
  200 + *
  201 + * @param primeiroAcesso
  202 + */
  203 + public void setPrimeiroAcesso(Boolean primeiroAcesso) {
  204 +
  205 + this.primeiroAcesso = primeiroAcesso;
  206 + }
  207 +
  208 + /**
  209 + * Retorna o valor do atributo <code>usuarioResponsavel</code>
  210 + *
  211 + * @return <code>Usuario</code>
  212 + */
  213 + public Usuario getUsuarioResponsavel() {
  214 +
  215 + return usuarioResponsavel;
  216 + }
  217 +
  218 + /**
  219 + * Define o valor do atributo <code>usuarioResponsavel</code>.
  220 + *
  221 + * @param usuarioResponsavel
  222 + */
  223 + public void setUsuarioResponsavel(Usuario usuarioResponsavel) {
  224 +
  225 + this.usuarioResponsavel = usuarioResponsavel;
  226 + }
  227 +
184 } 228 }
cit-ecm-api/src/main/java/br/com/centralit/api/service/ConfiguracaoUsuarioUnidadeService.java
@@ -112,4 +112,23 @@ public interface ConfiguracaoUsuarioUnidadeService extends GenericService&lt;Config @@ -112,4 +112,23 @@ public interface ConfiguracaoUsuarioUnidadeService extends GenericService&lt;Config
112 */ 112 */
113 Collection<ConfiguracaoUsuarioUnidade> findPorIdEstruturaOrganizacionalECM(Long idEstruturaECM); 113 Collection<ConfiguracaoUsuarioUnidade> findPorIdEstruturaOrganizacionalECM(Long idEstruturaECM);
114 114
  115 + /**
  116 + * <p>
  117 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  118 + * </p>
  119 + *
  120 + * <p>
  121 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  122 + * </p>
  123 + *
  124 + * Método responsável por listar usuarios através da unidade e username
  125 + *
  126 + * @author rogerio.costa
  127 + *
  128 + * @param username
  129 + * @param idUnidade
  130 + * @return Collection<Usuario>
  131 + */
  132 + Collection<ConfiguracaoUsuarioUnidade> findPorUsernameUsuarioAndUnidade(String username, Long idUnidade);
  133 +
115 } 134 }
cit-ecm-api/src/main/java/br/com/centralit/api/service/HistoricoAtribuicaoProcessoService.java 0 → 100644
@@ -0,0 +1,58 @@ @@ -0,0 +1,58 @@
  1 +package br.com.centralit.api.service;
  2 +
  3 +import br.com.centralit.api.model.HistoricoAtribuicaoProcesso;
  4 +import br.com.centralit.api.model.UnidadeProcesso;
  5 +import br.com.centralit.framework.service.arquitetura.GenericService;
  6 +
  7 +/**
  8 + * <p>
  9 + * <img src="http://centralit.com.br/images/logo_central.png">
  10 + * </p>
  11 + *
  12 + * <p>
  13 + * <b>Company: </b> Central IT - Governança Corporativa -
  14 + * </p>
  15 + *
  16 + * <p>
  17 + * <b>Title: </b>
  18 + * </p>
  19 + *
  20 + * <p>
  21 + * <b>Description: </b>
  22 + * </p>
  23 + *
  24 + * <p>
  25 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  26 + * </p>
  27 + *
  28 + * <p>
  29 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  30 + * </p>
  31 + *
  32 + * @since 02/04/2016 - 10:43:07
  33 + *
  34 + * @version 1.0.0
  35 + *
  36 + * @author rogerio.costa
  37 + *
  38 + */
  39 +public interface HistoricoAtribuicaoProcessoService extends GenericService<HistoricoAtribuicaoProcesso, Long> {
  40 +
  41 + /**
  42 + * <p>
  43 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  44 + * </p>
  45 + *
  46 + * <p>
  47 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  48 + * </p>
  49 + *
  50 + * Método responsável por salvar o historico de atribuição
  51 + *
  52 + * @author rogerio.costa
  53 + *
  54 + * @param entity
  55 + */
  56 + void saveHistorico(UnidadeProcesso entity);
  57 +
  58 +}
cit-ecm-api/src/main/java/br/com/centralit/api/service/ProcessoService.java
@@ -5,24 +5,36 @@ import br.com.centralit.api.model.Processo; @@ -5,24 +5,36 @@ import br.com.centralit.api.model.Processo;
5 import br.com.centralit.framework.service.arquitetura.GenericService; 5 import br.com.centralit.framework.service.arquitetura.GenericService;
6 6
7 /** 7 /**
8 - * <p><img src="http://centralit.com.br/images/logo_central.png"></p>  
9 - *  
10 - * <p><b>Company: </b> Central IT - Governança Corporativa - </p>  
11 - *  
12 - * <p><b>Title: </b></p>  
13 - *  
14 - * <p><b>Description: </b></p> 8 + * <p>
  9 + * <img src="http://centralit.com.br/images/logo_central.png">
  10 + * </p>
  11 + *
  12 + * <p>
  13 + * <b>Company: </b> Central IT - Governança Corporativa -
  14 + * </p>
  15 + *
  16 + * <p>
  17 + * <b>Title: </b>
  18 + * </p>
  19 + *
  20 + * <p>
  21 + * <b>Description: </b>
  22 + * </p>
  23 + *
  24 + * <p>
  25 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  26 + * </p>
  27 + *
  28 + * <p>
  29 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  30 + * </p>
15 * 31 *
16 - * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p>  
17 - *  
18 - * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p>  
19 - *  
20 * @since 28/03/2016 - 09:15:34 32 * @since 28/03/2016 - 09:15:34
21 - * 33 + *
22 * @version 1.0.0 34 * @version 1.0.0
23 - * 35 + *
24 * @author maycon.silva 36 * @author maycon.silva
25 - * 37 + *
26 */ 38 */
27 public interface ProcessoService extends GenericService<Processo, Long> { 39 public interface ProcessoService extends GenericService<Processo, Long> {
28 40
@@ -101,49 +113,91 @@ public interface ProcessoService extends GenericService&lt;Processo, Long&gt; { @@ -101,49 +113,91 @@ public interface ProcessoService extends GenericService&lt;Processo, Long&gt; {
101 113
102 /** 114 /**
103 * 115 *
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 - * 116 + * <p>
  117 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  118 + * </p>
  119 + *
  120 + * <p>
  121 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  122 + * </p>
  123 + *
108 * Método responsável por 124 * Método responsável por
109 - * 125 + *
110 * @author andre.silva 126 * @author andre.silva
111 - * 127 + *
112 * @param entity 128 * @param entity
113 * @return Processo 129 * @return Processo
114 */ 130 */
115 Processo atualizarSigiloProcesso(Processo entity); 131 Processo atualizarSigiloProcesso(Processo entity);
116 -  
117 132
118 /** 133 /**
119 - * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p>  
120 - *  
121 - * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p>  
122 - * 134 + * <p>
  135 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  136 + * </p>
  137 + *
  138 + * <p>
  139 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  140 + * </p>
  141 + *
123 * Método responsável por devolver o processoSigad passando como parametro o id da instancia do BPE 142 * Método responsável por devolver o processoSigad passando como parametro o id da instancia do BPE
124 - * 143 + *
125 * @author maycon.silva 144 * @author maycon.silva
126 - * 145 + *
127 * @param idProcessInstance 146 * @param idProcessInstance
128 * @return 147 * @return
129 */ 148 */
130 Processo getProcessoByIdProcessInstance(Long idProcessInstance); 149 Processo getProcessoByIdProcessInstance(Long idProcessInstance);
131 150
132 /** 151 /**
133 - * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p>  
134 - *  
135 - * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p>  
136 - * 152 + * <p>
  153 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  154 + * </p>
  155 + *
  156 + * <p>
  157 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  158 + * </p>
  159 + *
137 * Método responsável por 160 * Método responsável por
138 - * 161 + *
139 * @author maycon.silva 162 * @author maycon.silva
140 - * 163 + *
141 * @param nup 164 * @param nup
142 * @return 165 * @return
143 */ 166 */
144 Processo getProcessoByProtocolo(String nup); 167 Processo getProcessoByProtocolo(String nup);
145 -  
146 -  
147 - 168 +
  169 + /**
  170 + * <p>
  171 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  172 + * </p>
  173 + *
  174 + * <p>
  175 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  176 + * </p>
  177 + *
  178 + * Método responsável por iniciar o gerenciamento do processo
  179 + *
  180 + * @author rogerio.costa
  181 + *
  182 + * @return Processo
  183 + */
  184 + Processo getProcessoGerenciamento(Long id);
  185 +
  186 + /**
  187 + * <p>
  188 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  189 + * </p>
  190 + *
  191 + * <p>
  192 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  193 + * </p>
  194 + *
  195 + * Método responsável por atribuir processo para o usuario logado no primeiro acesso
  196 + *
  197 + * @author rogerio.costa
  198 + *
  199 + * @param idProcesso
  200 + */
  201 + Boolean verificarAtribuicaoProcessoPrimeiroAcesso(Long idProcesso);
148 202
149 } 203 }
cit-ecm-api/src/main/java/br/com/centralit/api/service/UnidadeProcessoService.java
@@ -113,20 +113,60 @@ public interface UnidadeProcessoService extends GenericService&lt;UnidadeProcesso, @@ -113,20 +113,60 @@ public interface UnidadeProcessoService extends GenericService&lt;UnidadeProcesso,
113 * @param processo 113 * @param processo
114 */ 114 */
115 void executarConcluirProcessoNaUnidade(Long idTask, Processo processo); 115 void executarConcluirProcessoNaUnidade(Long idTask, Processo processo);
116 - 116 +
117 /** 117 /**
118 * 118 *
119 - * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p>  
120 - *  
121 - * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p>  
122 - * 119 + * <p>
  120 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  121 + * </p>
  122 + *
  123 + * <p>
  124 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  125 + * </p>
  126 + *
123 * Método responsável por 127 * Método responsável por
124 - * 128 + *
125 * @author andre.silva 129 * @author andre.silva
126 - * 130 + *
127 * @param processo 131 * @param processo
128 * @return 132 * @return
129 */ 133 */
130 Collection<UnidadeProcesso> findProcesso(Processo processo); 134 Collection<UnidadeProcesso> findProcesso(Processo processo);
131 135
  136 + /**
  137 + * <p>
  138 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  139 + * </p>
  140 + *
  141 + * <p>
  142 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  143 + * </p>
  144 + *
  145 + * Método responsável por obter através da unidade e processo
  146 + *
  147 + * @author rogerio.costa
  148 + *
  149 + * @param idProcesso
  150 + * @param idUnidade
  151 + * @return UnidadeProcesso
  152 + */
  153 + UnidadeProcesso obterPorUnidadeEProcesso(Long idProcesso, Long idUnidade);
  154 +
  155 + /**
  156 + * <p>
  157 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  158 + * </p>
  159 + *
  160 + * <p>
  161 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  162 + * </p>
  163 + *
  164 + * Método responsável por salvar unidadeProcesso
  165 + *
  166 + * @author rogerio.costa
  167 + *
  168 + * @param processo
  169 + */
  170 + void saveUnidadeProcesso(Processo processo);
  171 +
132 } 172 }
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/AnexoGedServiceImpl.java
@@ -108,7 +108,7 @@ public class AnexoGedServiceImpl extends GenericServiceImpl&lt;AnexoGed, Long&gt; impl @@ -108,7 +108,7 @@ public class AnexoGedServiceImpl extends GenericServiceImpl&lt;AnexoGed, Long&gt; impl
108 documentoGed.setConteudo(this.gedFileService.doOcr(anexo)); 108 documentoGed.setConteudo(this.gedFileService.doOcr(anexo));
109 109
110 110
111 - this.solrService.addDocumento(documentoGed); 111 +// this.solrService.addDocumento(documentoGed);
112 112
113 anexo.setDocumentoGed(documentoGed); 113 anexo.setDocumentoGed(documentoGed);
114 114
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/ConfiguracaoUsuarioUnidadeServiceImpl.java
@@ -232,4 +232,26 @@ public class ConfiguracaoUsuarioUnidadeServiceImpl extends GenericServiceImpl&lt;Co @@ -232,4 +232,26 @@ public class ConfiguracaoUsuarioUnidadeServiceImpl extends GenericServiceImpl&lt;Co
232 return this.configuracaoUsuarioUnidadeDao.findPorIdEstruturaOrganizacionalECM(idEstruturaECM); 232 return this.configuracaoUsuarioUnidadeDao.findPorIdEstruturaOrganizacionalECM(idEstruturaECM);
233 } 233 }
234 234
  235 + /**
  236 + * <p>
  237 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  238 + * </p>
  239 + *
  240 + * <p>
  241 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  242 + * </p>
  243 + *
  244 + * Método responsável por listar usuarios através da unidade e username
  245 + *
  246 + * @author rogerio.costa
  247 + *
  248 + * @param username
  249 + * @param idUnidade
  250 + * @return Collection<Usuario>
  251 + */
  252 + public Collection<ConfiguracaoUsuarioUnidade> findPorUsernameUsuarioAndUnidade(String username, Long idUnidade) {
  253 +
  254 + return this.configuracaoUsuarioUnidadeDao.findPorUsernameUsuarioAndUnidade(username, idUnidade);
  255 + }
  256 +
235 } 257 }
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/DocumentoGedServiceImpl.java
@@ -176,9 +176,7 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl&lt;DocumentoGed, Lo @@ -176,9 +176,7 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl&lt;DocumentoGed, Lo
176 entity.setConteudo(this.decrypted(entity.getConteudoCriptografado())); 176 entity.setConteudo(this.decrypted(entity.getConteudoCriptografado()));
177 } 177 }
178 178
179 -  
180 -// this.saveSolr(entity);  
181 - 179 + this.saveSolr(entity);
182 180
183 this.verificaTemporalidadeProcesso(entity); 181 this.verificaTemporalidadeProcesso(entity);
184 182
@@ -780,13 +778,13 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl&lt;DocumentoGed, Lo @@ -780,13 +778,13 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl&lt;DocumentoGed, Lo
780 DocumentoGed entity = (DocumentoGed) this.documentoGedDao.getReference(documento.getId()); 778 DocumentoGed entity = (DocumentoGed) this.documentoGedDao.getReference(documento.getId());
781 if (documento.getSigilo() == null) { 779 if (documento.getSigilo() == null) {
782 entity.setAprovado(Boolean.TRUE); 780 entity.setAprovado(Boolean.TRUE);
783 - }else{ 781 + } else {
784 entity.setSigiloOriginal(documento.getSigilo()); 782 entity.setSigiloOriginal(documento.getSigilo());
785 entity.setNivelAcessoOriginal(documento.getNivelAcesso()); 783 entity.setNivelAcessoOriginal(documento.getNivelAcesso());
786 entity.setSigilo(documento.getSigilo()); 784 entity.setSigilo(documento.getSigilo());
787 - entity.setNivelAcesso(documento.getNivelAcesso()); 785 + entity.setNivelAcesso(documento.getNivelAcesso());
788 } 786 }
789 - 787 +
790 super.merge(entity); 788 super.merge(entity);
791 } 789 }
792 790
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/HistoricoAlteracaoProcessoServiceImpl.java
@@ -52,8 +52,7 @@ import br.com.centralit.framework.util.UtilObjeto; @@ -52,8 +52,7 @@ import br.com.centralit.framework.util.UtilObjeto;
52 * 52 *
53 */ 53 */
54 @Service("historicoAlteracaoProcessoService") 54 @Service("historicoAlteracaoProcessoService")
55 -public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl<HistoricoAlteracaoProcesso, Long> implements  
56 - HistoricoAlteracaoProcessoService { 55 +public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl<HistoricoAlteracaoProcesso, Long> implements HistoricoAlteracaoProcessoService {
57 56
58 HistoricoAlteracaoProcessoDao historicoAlteracaoProcessoDao; 57 HistoricoAlteracaoProcessoDao historicoAlteracaoProcessoDao;
59 58
@@ -96,9 +95,9 @@ public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl&lt;Hi @@ -96,9 +95,9 @@ public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl&lt;Hi
96 AcaoHistoricoAlteracaoProcesso acao = acaoHistoricoAlteracaoProcessoService.findByChave(historicoView.getAcaoAlteracao()); 95 AcaoHistoricoAlteracaoProcesso acao = acaoHistoricoAlteracaoProcessoService.findByChave(historicoView.getAcaoAlteracao());
97 96
98 toSave.setNomeUsuario(historicoView.getAutor().getUsername()); 97 toSave.setNomeUsuario(historicoView.getAutor().getUsername());
99 -  
100 - if(UtilObjeto.isReferencia(historicoView.getAutor().getUnidade())){  
101 - 98 +
  99 + if (UtilObjeto.isReferencia(historicoView.getAutor().getUnidade())) {
  100 +
102 toSave.setNomeUnidadeVigente(historicoView.getAutor().getUnidade().getSigla()); 101 toSave.setNomeUnidadeVigente(historicoView.getAutor().getUnidade().getSigla());
103 } 102 }
104 toSave.setDescricaoAcao(historicoView.getDescricaoAcao()); 103 toSave.setDescricaoAcao(historicoView.getDescricaoAcao());
@@ -117,14 +116,14 @@ public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl&lt;Hi @@ -117,14 +116,14 @@ public class HistoricoAlteracaoProcessoServiceImpl extends GenericServiceImpl&lt;Hi
117 e.printStackTrace(); 116 e.printStackTrace();
118 } 117 }
119 118
120 - return ((HistoricoAlteracaoProcesso) historicoAlteracaoProcessoDao.save(toSave)) != null ? true : false; 119 + return ( (HistoricoAlteracaoProcesso) historicoAlteracaoProcessoDao.save(toSave) ) != null ? true : false;
121 } 120 }
122 121
123 private void produceViewParams(HistoricoAlteracaoProcesso historico, HistoricoAlteracaoProcesso toSave) { 122 private void produceViewParams(HistoricoAlteracaoProcesso historico, HistoricoAlteracaoProcesso toSave) {
124 123
125 Map<String, String> mapaAtributos; 124 Map<String, String> mapaAtributos;
126 - if (historico.getMapaAtributos() != null) {  
127 - mapaAtributos = historico.getMapaAtributos(); 125 + if (historico.getMapaAtributos() != null) {
  126 + mapaAtributos = historico.getMapaAtributos();
128 } else { 127 } else {
129 mapaAtributos = new HashMap<String, String>(); 128 mapaAtributos = new HashMap<String, String>();
130 } 129 }
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/HistoricoAtribuicaoProcessoServiceImpl.java 0 → 100644
@@ -0,0 +1,97 @@ @@ -0,0 +1,97 @@
  1 +package br.com.centralit.api.service.impl;
  2 +
  3 +import org.springframework.beans.factory.annotation.Autowired;
  4 +import org.springframework.stereotype.Service;
  5 +
  6 +import br.com.centralit.api.dao.HistoricoAtribuicaoProcessoDao;
  7 +import br.com.centralit.api.model.HistoricoAtribuicaoProcesso;
  8 +import br.com.centralit.api.model.UnidadeProcesso;
  9 +import br.com.centralit.api.service.HistoricoAtribuicaoProcessoService;
  10 +import br.com.centralit.framework.service.arquitetura.GenericServiceImpl;
  11 +import br.com.centralit.framework.util.UtilDate;
  12 +import br.com.centralit.framework.util.UtilObjeto;
  13 +
  14 +/**
  15 + * <p>
  16 + * <img src="http://centralit.com.br/images/logo_central.png">
  17 + * </p>
  18 + *
  19 + * <p>
  20 + * <b>Company: </b> Central IT - Governança Corporativa -
  21 + * </p>
  22 + *
  23 + * <p>
  24 + * <b>Title: </b>
  25 + * </p>
  26 + *
  27 + * <p>
  28 + * <b>Description: </b>
  29 + * </p>
  30 + *
  31 + * <p>
  32 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  33 + * </p>
  34 + *
  35 + * <p>
  36 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  37 + * </p>
  38 + *
  39 + * @since 02/04/2016 - 10:45:13
  40 + *
  41 + * @version 1.0.0
  42 + *
  43 + * @author rogerio.costa
  44 + *
  45 + */
  46 +@Service("historicoAtribuicaoProcessoService")
  47 +public class HistoricoAtribuicaoProcessoServiceImpl extends GenericServiceImpl<HistoricoAtribuicaoProcesso, Long> implements HistoricoAtribuicaoProcessoService {
  48 +
  49 + /** Atributo historicoAtribuicaoProcessoDao. */
  50 + private HistoricoAtribuicaoProcessoDao historicoAtribuicaoProcessoDao;
  51 +
  52 + /**
  53 + * Responsável pela criação de novas instâncias desta classe.
  54 + *
  55 + * @param historicoAlteracaoProcessoDao
  56 + */
  57 + @Autowired
  58 + public HistoricoAtribuicaoProcessoServiceImpl( HistoricoAtribuicaoProcessoDao historicoAtribuicaoProcessoDao ) {
  59 +
  60 + this.dao = historicoAtribuicaoProcessoDao;
  61 + this.historicoAtribuicaoProcessoDao = historicoAtribuicaoProcessoDao;
  62 +
  63 + }
  64 +
  65 + /**
  66 + * <p>
  67 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  68 + * </p>
  69 + *
  70 + * <p>
  71 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  72 + * </p>
  73 + *
  74 + * Método responsável por salvar o historico de atribuição
  75 + *
  76 + * @author rogerio.costa
  77 + *
  78 + * @param entity
  79 + */
  80 + public void saveHistorico(UnidadeProcesso entity) {
  81 +
  82 + HistoricoAtribuicaoProcesso historicoAtual = this.historicoAtribuicaoProcessoDao.obterAtualPorUnidadeProcesso(entity.getId());
  83 +
  84 + if (UtilObjeto.isReferencia(historicoAtual)) {
  85 +
  86 + historicoAtual.setNomeUsuarioRemocao(this.getUsuario().getUsername());
  87 + historicoAtual.setDataRemocao(UtilDate.getDataAtualCalendar());
  88 +
  89 + }
  90 +
  91 + HistoricoAtribuicaoProcesso historicoAtribuicaoProcesso = new HistoricoAtribuicaoProcesso();
  92 + historicoAtribuicaoProcesso.setNomeUsuarioAtribuido(entity.getUsuarioResponsavel().getUsername());
  93 + historicoAtribuicaoProcesso.setUnidadeProcesso(entity);
  94 + historicoAtribuicaoProcesso.setDataAtribuicao(UtilDate.getCalendarDaDataAtual());
  95 + this.historicoAtribuicaoProcessoDao.save(historicoAtribuicaoProcesso);
  96 + }
  97 +}
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/InicializarEcmServiceImpl.java
@@ -70,9 +70,23 @@ public class InicializarEcmServiceImpl extends UtilStartup { @@ -70,9 +70,23 @@ public class InicializarEcmServiceImpl extends UtilStartup {
70 @Autowired 70 @Autowired
71 private ModuloService moduloService; 71 private ModuloService moduloService;
72 72
  73 + /**
  74 + * <p>
  75 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  76 + * </p>
  77 + *
  78 + * <p>
  79 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  80 + * </p>
  81 + *
  82 + * Método responsável por gerar a carga inicial
  83 + *
  84 + * @author rogerio.costa
  85 + *
  86 + */
73 public void gerarCarga() { 87 public void gerarCarga() {
74 88
75 - criarPaginasMenus(); 89 + this.criarPaginasMenus();
76 } 90 }
77 91
78 /** 92 /**
@@ -92,17 +106,17 @@ public class InicializarEcmServiceImpl extends UtilStartup { @@ -92,17 +106,17 @@ public class InicializarEcmServiceImpl extends UtilStartup {
92 */ 106 */
93 private void criarPaginasMenus() { 107 private void criarPaginasMenus() {
94 108
95 - dominioJS = this.dominioService.findByChaveAndNome(TIPO_FILE, TIPO_FILE_JS);  
96 - moduloSelecionado = this.moduloService.getModuloPorBaseUrl(BASE_URL_ECM, null); 109 + this.dominioJS = this.dominioService.findByChaveAndNome(UtilStartup.TIPO_FILE, UtilStartup.TIPO_FILE_JS);
  110 + this.moduloSelecionado = this.moduloService.getModuloPorBaseUrl(UtilStartup.BASE_URL_ECM, null);
97 111
98 // Menu pai ECM 112 // Menu pai ECM
99 - this.menuECM = new Menu("SIGAD", null, null, null, 4, this.corEcm, this.cssMenuEcm, this.opacidadeMenuEcm, this.classeEcm, ICONE_MENU_ECM, moduloSelecionado); 113 + this.menuECM = new Menu("IDGS", null, null, null, 4, this.corEcm, this.cssMenuEcm, this.opacidadeMenuEcm, this.classeEcm, this.ICONE_MENU_ECM, this.moduloSelecionado);
100 114
101 this.menuECM = this.menuService.mergeIfNotExist(this.menuECM); 115 this.menuECM = this.menuService.mergeIfNotExist(this.menuECM);
102 116
103 - this.iniciarMenuCadastroBasico(moduloSelecionado); 117 + this.iniciarMenuCadastroBasico(this.moduloSelecionado);
104 118
105 - this.iniciarMenuCadastroProcesso(moduloSelecionado); 119 + this.iniciarMenuCadastroProcesso(this.moduloSelecionado);
106 120
107 Logger.getLogger(InicializarEcmServiceImpl.class).info("Menu executado - InicializarEcmServiceImpl!"); 121 Logger.getLogger(InicializarEcmServiceImpl.class).info("Menu executado - InicializarEcmServiceImpl!");
108 122
@@ -197,7 +211,12 @@ public class InicializarEcmServiceImpl extends UtilStartup { @@ -197,7 +211,12 @@ public class InicializarEcmServiceImpl extends UtilStartup {
197 filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/HistoricoCredencialProcessoRepository.min.js", this.dominioJS, menuCadastroProcesso)); 211 filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/HistoricoCredencialProcessoRepository.min.js", this.dominioJS, menuCadastroProcesso));
198 filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/SigiloRepository.js", this.dominioJS, menuCadastroProcesso)); 212 filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/SigiloRepository.js", this.dominioJS, menuCadastroProcesso));
199 filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/SigiloRepository.min.js", this.dominioJS, menuCadastroProcesso)); 213 filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/SigiloRepository.min.js", this.dominioJS, menuCadastroProcesso));
  214 + filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/controller/AtribuirProcessoController.min.js", this.dominioJS, menuCadastroProcesso));
  215 + filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/controller/AtribuirProcessoController.js", this.dominioJS, menuCadastroProcesso));
  216 + filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/HistoricoAtribuicaoProcessoRepository.js", this.dominioJS, menuCadastroProcesso));
  217 + filesProcesso.add(new MenuFile("/cit-ecm-web/assets/js/angular/custom/repository/HistoricoAtribuicaoProcessoRepository.min.js", this.dominioJS, menuCadastroProcesso));
200 218
  219 +
201 menuCadastroProcesso.setIncludes(filesProcesso); 220 menuCadastroProcesso.setIncludes(filesProcesso);
202 this.menuService.mergeIfNotExist(menuCadastroProcesso); 221 this.menuService.mergeIfNotExist(menuCadastroProcesso);
203 222
@@ -236,7 +255,7 @@ public class InicializarEcmServiceImpl extends UtilStartup { @@ -236,7 +255,7 @@ public class InicializarEcmServiceImpl extends UtilStartup {
236 private void iniciarMenuCadastroBasico(Modulo modulo) { 255 private void iniciarMenuCadastroBasico(Modulo modulo) {
237 256
238 // Submenu Cadastros Básico #INICIO 257 // Submenu Cadastros Básico #INICIO
239 - Menu menuCadastroBasico = new Menu("Gerenciar SIGAD", null, this.menuECM, 0, 1, null, null, null, null, modulo); 258 + Menu menuCadastroBasico = new Menu("Gerenciar IDGS", null, this.menuECM, 0, 1, null, null, null, null, modulo);
240 menuCadastroBasico = this.menuService.mergeIfNotExist(menuCadastroBasico); 259 menuCadastroBasico = this.menuService.mergeIfNotExist(menuCadastroBasico);
241 260
242 // Submenu Cadastro Plano de classificação, temporalidade e destinação #INICIO 261 // Submenu Cadastro Plano de classificação, temporalidade e destinação #INICIO
@@ -252,7 +271,7 @@ public class InicializarEcmServiceImpl extends UtilStartup { @@ -252,7 +271,7 @@ public class InicializarEcmServiceImpl extends UtilStartup {
252 pgHipoteseLegal = this.paginaService.saveIfNotExist(pgHipoteseLegal); 271 pgHipoteseLegal = this.paginaService.saveIfNotExist(pgHipoteseLegal);
253 272
254 Menu menuHipoteseLegal = new Menu("Hipóteses Legais", pgHipoteseLegal, menuCadastroBasico, 0, 2, null, null, null, null, modulo); 273 Menu menuHipoteseLegal = new Menu("Hipóteses Legais", pgHipoteseLegal, menuCadastroBasico, 0, 2, null, null, null, null, modulo);
255 - menuHipoteseLegal.setIncludes(this.gerarArquivosMenu(menuHipoteseLegal, CIT_ECM_WEB_ANGULAR, "HipoteseLegal", true, true, true)); 274 + menuHipoteseLegal.setIncludes(this.gerarArquivosMenu(menuHipoteseLegal, this.CIT_ECM_WEB_ANGULAR, "HipoteseLegal", true, true, true));
256 this.menuService.mergeIfNotExist(menuHipoteseLegal); 275 this.menuService.mergeIfNotExist(menuHipoteseLegal);
257 276
258 // Submenu Tipos de Documento #INICIO 277 // Submenu Tipos de Documento #INICIO
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/ProcessoServiceImpl.java
@@ -33,6 +33,7 @@ import br.com.centralit.api.service.CredencialProcessoService; @@ -33,6 +33,7 @@ import br.com.centralit.api.service.CredencialProcessoService;
33 import br.com.centralit.api.service.DocumentoGedService; 33 import br.com.centralit.api.service.DocumentoGedService;
34 import br.com.centralit.api.service.DominioService; 34 import br.com.centralit.api.service.DominioService;
35 import br.com.centralit.api.service.GrupoService; 35 import br.com.centralit.api.service.GrupoService;
  36 +import br.com.centralit.api.service.HistoricoAtribuicaoProcessoService;
36 import br.com.centralit.api.service.PlanoClassificacaoService; 37 import br.com.centralit.api.service.PlanoClassificacaoService;
37 import br.com.centralit.api.service.ProcessoService; 38 import br.com.centralit.api.service.ProcessoService;
38 import br.com.centralit.api.service.SigiloService; 39 import br.com.centralit.api.service.SigiloService;
@@ -129,6 +130,10 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -129,6 +130,10 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
129 @Autowired 130 @Autowired
130 private CredencialProcessoService credencialProcessoService; 131 private CredencialProcessoService credencialProcessoService;
131 132
  133 + /** Atributo historicoAtribuicaoProcessoService. */
  134 + @Autowired
  135 + private HistoricoAtribuicaoProcessoService historicoAtribuicaoProcessoService;
  136 +
132 /** Atributo request. */ 137 /** Atributo request. */
133 @Autowired 138 @Autowired
134 private HttpServletRequest request; 139 private HttpServletRequest request;
@@ -142,7 +147,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -142,7 +147,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
142 } 147 }
143 148
144 @Override 149 @Override
145 - public Processo save(final Processo entity) { 150 + public Processo save(Processo entity) {
146 151
147 this.validarEntidade(entity, this.validator); 152 this.validarEntidade(entity, this.validator);
148 153
@@ -150,9 +155,9 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -150,9 +155,9 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
150 entity.setSigiloOriginal(entity.getSigilo()); 155 entity.setSigiloOriginal(entity.getSigilo());
151 entity.setNivelAcessoOriginal(entity.getNivelAcesso()); 156 entity.setNivelAcessoOriginal(entity.getNivelAcesso());
152 157
153 - final Processo processo = super.save(entity); 158 + Processo processo = super.save(entity);
154 159
155 -// this.credencialProcessoService.saveCredenciais(processo); 160 + this.unidadeProcessoService.saveUnidadeProcesso(processo);
156 161
157 if (processo.getTipoProtocolo().getCodigo().equals(1L)) { 162 if (processo.getTipoProtocolo().getCodigo().equals(1L)) {
158 this.gerarNUP(processo); 163 this.gerarNUP(processo);
@@ -204,11 +209,10 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -204,11 +209,10 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
204 processo.setNivelAcesso(entity.getNivelAcesso()); 209 processo.setNivelAcesso(entity.getNivelAcesso());
205 processo.setAprovado(entity.getAprovado()); 210 processo.setAprovado(entity.getAprovado());
206 211
207 -  
208 processo = super.merge(processo); 212 processo = super.merge(processo);
209 -  
210 - documentoGedService.atualizarSigiloDocumentos(entity.getDocumentos());  
211 - 213 +
  214 + this.documentoGedService.atualizarSigiloDocumentos(entity.getDocumentos());
  215 +
212 return processo; 216 return processo;
213 } 217 }
214 218
@@ -220,7 +224,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -220,7 +224,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
220 this.montarEntidade(processo); 224 this.montarEntidade(processo);
221 225
222 try { 226 try {
223 - solrService.addProcesso(processo); 227 + this.solrService.addProcesso(processo);
224 } catch (Exception e) { 228 } catch (Exception e) {
225 e.printStackTrace(); 229 e.printStackTrace();
226 } 230 }
@@ -237,33 +241,6 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -237,33 +241,6 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
237 * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> 241 * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
238 * </p> 242 * </p>
239 * 243 *
240 - * Método responsável por gerar as credenciais do processo  
241 - *  
242 - * @author rogerio.costa  
243 - *  
244 - * @param processo  
245 - */  
246 - private void gerarCredenciais(final Processo processo) {  
247 -  
248 - // Verifica se o processo é sigiloso  
249 - if (UtilObjeto.isReferencia(processo.getSigilo())) {  
250 -  
251 - this.credencialProcessoService.saveCredenciais(processo);  
252 - } else {  
253 - this.startBusinessProcess(processo);  
254 - }  
255 -  
256 - }  
257 -  
258 - /**  
259 - * <p>  
260 - * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>  
261 - * </p>  
262 - *  
263 - * <p>  
264 - * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>  
265 - * </p>  
266 - *  
267 * Método responsável por startar o BusinessProcess 244 * Método responsável por startar o BusinessProcess
268 * 245 *
269 * @author rogerio.costa 246 * @author rogerio.costa
@@ -295,7 +272,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -295,7 +272,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
295 List<Grupo> gruposPadraoSigilo = (List<Grupo>) this.findGrupoPorSigilo(processo.getSigilo()); 272 List<Grupo> gruposPadraoSigilo = (List<Grupo>) this.findGrupoPorSigilo(processo.getSigilo());
296 273
297 if (!UtilColecao.isVazio(gruposPadraoSigilo)) { 274 if (!UtilColecao.isVazio(gruposPadraoSigilo)) {
298 - //No momento o sistema está aceitando somente um grupo para gerenciar cada nivel de sigilo. 275 + // No momento o sistema está aceitando somente um grupo para gerenciar cada nivel de sigilo.
299 variaveis.add(new EnvironmentVariable("grupoPadrao", VariableTypeEnum.TEXT, gruposPadraoSigilo.get(0).getSigla(), false)); 276 variaveis.add(new EnvironmentVariable("grupoPadrao", VariableTypeEnum.TEXT, gruposPadraoSigilo.get(0).getSigla(), false));
300 } 277 }
301 278
@@ -314,9 +291,9 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -314,9 +291,9 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
314 } 291 }
315 292
316 EnvironmentOutput environmentOutput = this.startBusinessProcess(processo.getTipoProcesso().getProcessoNegocio(), variaveis); 293 EnvironmentOutput environmentOutput = this.startBusinessProcess(processo.getTipoProcesso().getProcessoNegocio(), variaveis);
317 - 294 +
318 processo.setIdProcessInstance(environmentOutput.getProcessInstanceId()); 295 processo.setIdProcessInstance(environmentOutput.getProcessInstanceId());
319 - 296 +
320 } 297 }
321 298
322 /** 299 /**
@@ -511,7 +488,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -511,7 +488,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
511 } 488 }
512 489
513 nup += unidadeVigenteUsuario.getCodigoSiorg() + "."; 490 nup += unidadeVigenteUsuario.getCodigoSiorg() + ".";
514 - nup += gerarSequencia() + "/"; 491 + nup += this.gerarSequencia() + "/";
515 nup += new GregorianCalendar().get(Calendar.YEAR) + "-"; 492 nup += new GregorianCalendar().get(Calendar.YEAR) + "-";
516 processo.setNup(nup + this.calculaDvNupNovo(nup)); 493 processo.setNup(nup + this.calculaDvNupNovo(nup));
517 494
@@ -556,7 +533,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -556,7 +533,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
556 } 533 }
557 534
558 @Override 535 @Override
559 - public boolean remove(final Processo processo) { 536 + public boolean remove(Processo processo) {
560 537
561 // Regra de negócio, ao excluir um processo, excluir também os 538 // Regra de negócio, ao excluir um processo, excluir também os
562 // documentos vinculados logicamente 539 // documentos vinculados logicamente
@@ -569,11 +546,36 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -569,11 +546,36 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
569 } 546 }
570 547
571 @Override 548 @Override
572 - public Processo getReference(final Long id) { 549 + public Processo getReference(Long id) {
  550 +
  551 + Processo processo = super.getReference(id);
  552 +
  553 + processo.setDocumentos(this.documentoGedService.findByIdProcessoUltimaVersao(id));
  554 +
  555 + return processo;
  556 + }
  557 +
  558 + /**
  559 + * <p>
  560 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  561 + * </p>
  562 + *
  563 + * <p>
  564 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  565 + * </p>
  566 + *
  567 + * Método responsável por iniciar o gerenciamento do processo
  568 + *
  569 + * @author rogerio.costa
  570 + *
  571 + * @return Processo
  572 + */
  573 + @Override
  574 + public Processo getProcessoGerenciamento(Long id) {
573 575
574 - final Processo processo = super.getReference(id); 576 + this.request.getSession().setAttribute("idProcesso", id);
575 577
576 - request.getSession().setAttribute("idProcesso", id); 578 + Processo processo = super.getReference(id);
577 579
578 processo.setDocumentos(this.documentoGedService.findByIdProcessoUltimaVersao(id)); 580 processo.setDocumentos(this.documentoGedService.findByIdProcessoUltimaVersao(id));
579 581
@@ -589,6 +591,47 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -589,6 +591,47 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
589 * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> 591 * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
590 * </p> 592 * </p>
591 * 593 *
  594 + * Método responsável por atribuir processo para o usuario logado no primeiro acesso
  595 + *
  596 + * @author rogerio.costa
  597 + *
  598 + * @param processo
  599 + */
  600 + @Override
  601 + public Boolean verificarAtribuicaoProcessoPrimeiroAcesso(Long idProcesso) {
  602 +
  603 + Processo processo = super.getReference(idProcesso);
  604 +
  605 + // Verifica se o usuario logado está lotado na unidade.
  606 + if (UtilObjeto.isReferencia(this.getUsuario().getUnidade())) {
  607 +
  608 + UnidadeProcesso unidadeProcesso = this.unidadeProcessoService.obterPorUnidadeEProcesso(processo.getId(), this.getUsuario().getUnidade().getId());
  609 + // Verifica se o processo foi enviado para essa unidade e se é o primeiro acesso
  610 + if (UtilObjeto.isReferencia(unidadeProcesso) && unidadeProcesso.getPrimeiroAcesso()) {
  611 +
  612 + unidadeProcesso.setUsuarioResponsavel(this.getUsuario());
  613 + unidadeProcesso.setPrimeiroAcesso(Boolean.FALSE);
  614 +
  615 + this.historicoAtribuicaoProcessoService.saveHistorico(unidadeProcesso);
  616 +
  617 + return Boolean.TRUE;
  618 + }
  619 +
  620 + }
  621 +
  622 + return Boolean.FALSE;
  623 +
  624 + }
  625 +
  626 + /**
  627 + * <p>
  628 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  629 + * </p>
  630 + *
  631 + * <p>
  632 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  633 + * </p>
  634 + *
592 * Método responsável por concluír o processo na unidade 635 * Método responsável por concluír o processo na unidade
593 * 636 *
594 * @author rogerio.costa 637 * @author rogerio.costa
@@ -672,6 +715,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -672,6 +715,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
672 * 715 *
673 * @param planoClassificacao 716 * @param planoClassificacao
674 */ 717 */
  718 + @Override
675 public void atualizarTemporalidadeDestinacao(PlanoClassificacao planoClassificacao) { 719 public void atualizarTemporalidadeDestinacao(PlanoClassificacao planoClassificacao) {
676 720
677 this.atualizarTemporalidadeProcesso(planoClassificacao); 721 this.atualizarTemporalidadeProcesso(planoClassificacao);
@@ -748,6 +792,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -748,6 +792,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
748 * @param processo 792 * @param processo
749 * @param processoAnexo 793 * @param processoAnexo
750 */ 794 */
  795 + @Override
751 public void atualizarTemporalidadeProcessoAnexado(Processo processo, Processo processoAnexo) { 796 public void atualizarTemporalidadeProcessoAnexado(Processo processo, Processo processoAnexo) {
752 797
753 this.verificarAtualizacaoTemporalidadeAtravesDaTemporalidadeDoProcesso(processoAnexo.getTemporalidade(), processo); 798 this.verificarAtualizacaoTemporalidadeAtravesDaTemporalidadeDoProcesso(processoAnexo.getTemporalidade(), processo);
@@ -945,6 +990,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -945,6 +990,7 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
945 * 990 *
946 * @param entity 991 * @param entity
947 */ 992 */
  993 + @Override
948 public void verificaTemporalidadeProcessoAtravesDoPlanoClassificacacao(PlanoClassificacao planoClassificacao, Processo processo) { 994 public void verificaTemporalidadeProcessoAtravesDoPlanoClassificacacao(PlanoClassificacao planoClassificacao, Processo processo) {
949 995
950 planoClassificacao = this.planoClassificacaoService.getReference(planoClassificacao.getId()); 996 planoClassificacao = this.planoClassificacaoService.getReference(planoClassificacao.getId());
@@ -976,18 +1022,13 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl @@ -976,18 +1022,13 @@ public class ProcessoServiceImpl extends GenericServiceImpl&lt;Processo, Long&gt; impl
976 @Override 1022 @Override
977 public Processo getProcessoByIdProcessInstance(Long idProcessInstance) { 1023 public Processo getProcessoByIdProcessInstance(Long idProcessInstance) {
978 1024
979 - // TODO Auto-generated method stub  
980 return this.processoDao.getProcessoByIdProcessInstance(idProcessInstance); 1025 return this.processoDao.getProcessoByIdProcessInstance(idProcessInstance);
981 } 1026 }
982 1027
983 @Override 1028 @Override
984 public Processo getProcessoByProtocolo(String nup) { 1029 public Processo getProcessoByProtocolo(String nup) {
985 1030
986 - // TODO Auto-generated method stub  
987 return this.processoDao.getProcessoByProtocolo(nup); 1031 return this.processoDao.getProcessoByProtocolo(nup);
988 } 1032 }
989 -  
990 -  
991 -  
992 1033
993 } 1034 }
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/UnidadeProcessoServiceImpl.java
@@ -13,13 +13,14 @@ import br.com.centralit.api.model.UnidadeProcesso; @@ -13,13 +13,14 @@ import br.com.centralit.api.model.UnidadeProcesso;
13 import br.com.centralit.api.service.DominioService; 13 import br.com.centralit.api.service.DominioService;
14 import br.com.centralit.api.service.GrupoService; 14 import br.com.centralit.api.service.GrupoService;
15 import br.com.centralit.api.service.GrupoUsuarioService; 15 import br.com.centralit.api.service.GrupoUsuarioService;
  16 +import br.com.centralit.api.service.HistoricoAtribuicaoProcessoService;
16 import br.com.centralit.api.service.NotificacaoService; 17 import br.com.centralit.api.service.NotificacaoService;
17 import br.com.centralit.api.service.NotificacaoUsuarioService; 18 import br.com.centralit.api.service.NotificacaoUsuarioService;
18 import br.com.centralit.api.service.ProcessoService; 19 import br.com.centralit.api.service.ProcessoService;
19 import br.com.centralit.api.service.UnidadeProcessoService; 20 import br.com.centralit.api.service.UnidadeProcessoService;
20 import br.com.centralit.api.service.UnidadeService; 21 import br.com.centralit.api.service.UnidadeService;
  22 +import br.com.centralit.api.service.UsuarioService;
21 import br.com.centralit.api.viewHelper.EnviarProcessoVH; 23 import br.com.centralit.api.viewHelper.EnviarProcessoVH;
22 -import br.com.centralit.framework.esi.environment.EnvironmentOutput;  
23 import br.com.centralit.framework.model.Unidade; 24 import br.com.centralit.framework.model.Unidade;
24 import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; 25 import br.com.centralit.framework.service.arquitetura.GenericServiceImpl;
25 import br.com.centralit.framework.util.UtilColecao; 26 import br.com.centralit.framework.util.UtilColecao;
@@ -91,6 +92,14 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;UnidadeProces @@ -91,6 +92,14 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;UnidadeProces
91 /** Atributo unidadeService. */ 92 /** Atributo unidadeService. */
92 private UnidadeService unidadeService; 93 private UnidadeService unidadeService;
93 94
  95 + /** Atributo usuarioService. */
  96 + @Autowired
  97 + private UsuarioService usuarioService;
  98 +
  99 + /** Atributo historicoAtribuicaoProcessoService. */
  100 + @Autowired
  101 + private HistoricoAtribuicaoProcessoService historicoAtribuicaoProcessoService;
  102 +
94 /** 103 /**
95 * Responsável pela criação de novas instâncias desta classe. 104 * Responsável pela criação de novas instâncias desta classe.
96 * 105 *
@@ -130,6 +139,7 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;UnidadeProces @@ -130,6 +139,7 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;UnidadeProces
130 139
131 for (UnidadeProcesso unidadeProcesso : enviarProcessoVH.getUnidadesProcessoList()) { 140 for (UnidadeProcesso unidadeProcesso : enviarProcessoVH.getUnidadesProcessoList()) {
132 141
  142 + unidadeProcesso.setPrimeiroAcesso(Boolean.TRUE);
133 unidadeProcesso.setProcesso(processo); 143 unidadeProcesso.setProcesso(processo);
134 // Adiciona os grupos para qual sera enviado. 144 // Adiciona os grupos para qual sera enviado.
135 groups.add(this.grupoService.getReference(unidadeProcesso.getUnidade().getGrupo().getId()).getSigla()); 145 groups.add(this.grupoService.getReference(unidadeProcesso.getUnidade().getGrupo().getId()).getSigla());
@@ -145,12 +155,53 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;UnidadeProces @@ -145,12 +155,53 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;UnidadeProces
145 155
146 enviarProcessoVH.setUnidadesProcessoList(this.saveList(enviarProcessoVH.getUnidadesProcessoList())); 156 enviarProcessoVH.setUnidadesProcessoList(this.saveList(enviarProcessoVH.getUnidadesProcessoList()));
147 // Enviar o processo para os grupos padrão das unidades. 157 // Enviar o processo para os grupos padrão das unidades.
148 - EnvironmentOutput output = this.delegateUserTask(enviarProcessoVH.getIdTask(), groups, null); 158 + this.delegateUserTask(enviarProcessoVH.getIdTask(), groups, null);
149 } 159 }
150 160
151 return enviarProcessoVH; 161 return enviarProcessoVH;
152 } 162 }
153 163
  164 + @Override
  165 + public UnidadeProcesso merge(UnidadeProcesso entity) {
  166 +
  167 + if (UtilObjeto.isReferencia(entity.getUsuarioResponsavel())) {
  168 +
  169 + entity.setUsuarioResponsavel(this.usuarioService.getReference(entity.getUsuarioResponsavel().getId()));
  170 +
  171 + this.historicoAtribuicaoProcessoService.saveHistorico(entity);
  172 +
  173 + }
  174 + return super.merge(entity);
  175 + }
  176 +
  177 + /**
  178 + * <p>
  179 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  180 + * </p>
  181 + *
  182 + * <p>
  183 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  184 + * </p>
  185 + *
  186 + * Método responsável por salvar unidadeProcesso
  187 + *
  188 + * @author rogerio.costa
  189 + *
  190 + * @param processo
  191 + */
  192 + public void saveUnidadeProcesso(Processo processo) {
  193 +
  194 + UnidadeProcesso unidadeProcesso = new UnidadeProcesso();
  195 + unidadeProcesso.setProcesso(processo);
  196 + unidadeProcesso.setPrimeiroAcesso(Boolean.FALSE);
  197 + unidadeProcesso.setUnidade(this.unidadeService.getReference(this.getUsuario().getUnidade().getId()));
  198 + unidadeProcesso.setUsuarioResponsavel(this.getUsuario());
  199 +
  200 + unidadeProcesso = super.save(unidadeProcesso);
  201 +
  202 + this.historicoAtribuicaoProcessoService.saveHistorico(unidadeProcesso);
  203 + }
  204 +
154 /** 205 /**
155 * <p> 206 * <p>
156 * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> 207 * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
@@ -176,20 +227,19 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;UnidadeProces @@ -176,20 +227,19 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;UnidadeProces
176 unidadeProcesso.setConcluido(Boolean.TRUE); 227 unidadeProcesso.setConcluido(Boolean.TRUE);
177 228
178 List<String> grupos = new ArrayList<String>(); 229 List<String> grupos = new ArrayList<String>();
179 - 230 +
180 List<String> users = new ArrayList<String>(); 231 List<String> users = new ArrayList<String>();
181 -  
182 - 232 +
183 users.add(processo.getAutor().getUsername()); 233 users.add(processo.getAutor().getUsername());
184 234
185 Unidade unidade = this.unidadeService.getReference(this.getUsuario().getUnidade().getId()); 235 Unidade unidade = this.unidadeService.getReference(this.getUsuario().getUnidade().getId());
186 236
187 grupos.add(unidade.getGrupo().getSigla()); 237 grupos.add(unidade.getGrupo().getSigla());
188 -  
189 - this.removeUserTaskDelegation(idTask, grupos, null);  
190 - this.removeUserTaskDelegation(idTask, null, users);  
191 238
192 - this.save(unidadeProcesso); 239 + this.removeUserTaskDelegation(idTask, grupos, null);
  240 + this.removeUserTaskDelegation(idTask, null, users);
  241 +
  242 + this.save(unidadeProcesso);
193 } 243 }
194 244
195 /** 245 /**
@@ -244,7 +294,27 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;UnidadeProces @@ -244,7 +294,27 @@ public class UnidadeProcessoServiceImpl extends GenericServiceImpl&lt;UnidadeProces
244 294
245 return this.unidadeProcessoDao.findProcesso(processo); 295 return this.unidadeProcessoDao.findProcesso(processo);
246 } 296 }
247 -  
248 - 297 +
  298 + /**
  299 + * <p>
  300 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  301 + * </p>
  302 + *
  303 + * <p>
  304 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  305 + * </p>
  306 + *
  307 + * Método responsável por obter através da unidade e processo
  308 + *
  309 + * @author rogerio.costa
  310 + *
  311 + * @param idProcesso
  312 + * @param idUnidade
  313 + * @return UnidadeProcesso
  314 + */
  315 + public UnidadeProcesso obterPorUnidadeEProcesso(Long idProcesso, Long idUnidade) {
  316 +
  317 + return this.unidadeProcessoDao.obterPorUnidadeEProcesso(idProcesso, idUnidade);
  318 + }
249 319
250 } 320 }
cit-ecm-web/src/main/java/br/com/centralit/controller/ConfiguracaoUsuarioUnidadeController.java
@@ -112,6 +112,34 @@ public class ConfiguracaoUsuarioUnidadeController extends GenericController&lt;Conf @@ -112,6 +112,34 @@ public class ConfiguracaoUsuarioUnidadeController extends GenericController&lt;Conf
112 return responseBody; 112 return responseBody;
113 } 113 }
114 114
  115 + /**
  116 + * <p>
  117 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  118 + * </p>
  119 + *
  120 + * <p>
  121 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  122 + * </p>
  123 + *
  124 + * Método responsável por listar usuarios através da unidade e username
  125 + *
  126 + * @author rogerio.costa
  127 + *
  128 + * @param username
  129 + * @param idUnidade
  130 + * @return Collection<Usuario>
  131 + */
  132 + @RequestMapping(value = "/findPorUsernameUsuarioAndUnidade", method = RequestMethod.GET, produces = "application/json")
  133 + @ResponseBody
  134 + public ResponseBodyWrapper findPorUsernameUsuarioAndUnidade(@RequestParam(value = "username") String username, @RequestParam(value = "idUnidade") Long idUnidade) {
  135 +
  136 + Collection<ConfiguracaoUsuarioUnidade> configuracoes = this.configuracaoUsuarioUnidadeService.findPorUsernameUsuarioAndUnidade(username, idUnidade);
  137 +
  138 + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(configuracoes, Views.UsuarioAutoCompleteView.class);
  139 +
  140 + return responseBody;
  141 + }
  142 +
115 @Override 143 @Override
116 public Class<Views.ConfiguracaoUsuarioUnidadeEditView> getEditView() { 144 public Class<Views.ConfiguracaoUsuarioUnidadeEditView> getEditView() {
117 145
cit-ecm-web/src/main/java/br/com/centralit/controller/HistoricoAtribuicaoProcessoController.java 0 → 100644
@@ -0,0 +1,71 @@ @@ -0,0 +1,71 @@
  1 +package br.com.centralit.controller;
  2 +
  3 +import org.springframework.beans.factory.annotation.Autowired;
  4 +import org.springframework.stereotype.Controller;
  5 +import org.springframework.web.bind.annotation.RequestMapping;
  6 +
  7 +import br.com.centralit.api.framework.json.ViewsEcm;
  8 +import br.com.centralit.api.model.HistoricoAtribuicaoProcesso;
  9 +import br.com.centralit.api.service.HistoricoAtribuicaoProcessoService;
  10 +import br.com.centralit.framework.controller.GenericController;
  11 +
  12 +/**
  13 + * <p>
  14 + * <img src="http://centralit.com.br/images/logo_central.png">
  15 + * </p>
  16 + *
  17 + * <p>
  18 + * <b>Company: </b> Central IT - Governança Corporativa -
  19 + * </p>
  20 + *
  21 + * <p>
  22 + * <b>Title: </b>
  23 + * </p>
  24 + *
  25 + * <p>
  26 + * <b>Description: </b>
  27 + * </p>
  28 + *
  29 + * <p>
  30 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  31 + * </p>
  32 + *
  33 + * <p>
  34 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  35 + * </p>
  36 + *
  37 + * @since 02/04/2016 - 10:49:18
  38 + *
  39 + * @version 1.0.0
  40 + *
  41 + * @author rogerio.costa
  42 + *
  43 + */
  44 +@Controller
  45 +@RequestMapping("/rest/historicoAtribuicaoProcesso")
  46 +public class HistoricoAtribuicaoProcessoController extends GenericController<HistoricoAtribuicaoProcesso> {
  47 +
  48 + /** Atributo historicoAtribuicaoProcessoService. */
  49 + private HistoricoAtribuicaoProcessoService historicoAtribuicaoProcessoService;
  50 +
  51 + /**
  52 + * Responsável pela criação de novas instâncias desta classe.
  53 + *
  54 + * @param historicoAtribuicaoProcessoService
  55 + */
  56 + @Autowired
  57 + public HistoricoAtribuicaoProcessoController( HistoricoAtribuicaoProcessoService historicoAtribuicaoProcessoService ) {
  58 +
  59 + super(historicoAtribuicaoProcessoService);
  60 +
  61 + this.historicoAtribuicaoProcessoService = historicoAtribuicaoProcessoService;
  62 +
  63 + }
  64 +
  65 + @Override
  66 + public Class<ViewsEcm.HistoricoAtribuicaoProcessoView> getEditView() {
  67 +
  68 + return ViewsEcm.HistoricoAtribuicaoProcessoView.class;
  69 + }
  70 +
  71 +}
cit-ecm-web/src/main/java/br/com/centralit/controller/ProcessoController.java
@@ -56,17 +56,16 @@ public class ProcessoController extends GenericController&lt;Processo&gt; { @@ -56,17 +56,16 @@ public class ProcessoController extends GenericController&lt;Processo&gt; {
56 56
57 return responseBody; 57 return responseBody;
58 } 58 }
59 -  
60 - 59 +
61 @RequestMapping(method = RequestMethod.POST, value = "atualizarSigiloProcesso") 60 @RequestMapping(method = RequestMethod.POST, value = "atualizarSigiloProcesso")
62 @ResponseBody 61 @ResponseBody
63 public ResponseBodyWrapper atualizarSigiloProcesso(@RequestBody Processo processo) throws Exception { 62 public ResponseBodyWrapper atualizarSigiloProcesso(@RequestBody Processo processo) throws Exception {
64 63
65 ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.processoService.atualizarSigiloProcesso(processo), GenericView.class); 64 ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.processoService.atualizarSigiloProcesso(processo), GenericView.class);
66 - 65 +
67 return responseBody; 66 return responseBody;
68 } 67 }
69 - 68 +
70 @RequestMapping(method = RequestMethod.GET, value = "/getProcessoByIdProcessInstance") 69 @RequestMapping(method = RequestMethod.GET, value = "/getProcessoByIdProcessInstance")
71 @ResponseBody 70 @ResponseBody
72 public ResponseBodyWrapper getProcessoByIdProcessInstance(@RequestParam(value = "idProcessInstance") Long idProcessInstance) { 71 public ResponseBodyWrapper getProcessoByIdProcessInstance(@RequestParam(value = "idProcessInstance") Long idProcessInstance) {
@@ -75,7 +74,7 @@ public class ProcessoController extends GenericController&lt;Processo&gt; { @@ -75,7 +74,7 @@ public class ProcessoController extends GenericController&lt;Processo&gt; {
75 74
76 return responseBody; 75 return responseBody;
77 } 76 }
78 - 77 +
79 @RequestMapping(method = RequestMethod.GET, value = "/getProcessoByProtocolo") 78 @RequestMapping(method = RequestMethod.GET, value = "/getProcessoByProtocolo")
80 @ResponseBody 79 @ResponseBody
81 public ResponseBodyWrapper getProcessoByProtocolo(@RequestParam(value = "nup") String nup) { 80 public ResponseBodyWrapper getProcessoByProtocolo(@RequestParam(value = "nup") String nup) {
@@ -84,7 +83,55 @@ public class ProcessoController extends GenericController&lt;Processo&gt; { @@ -84,7 +83,55 @@ public class ProcessoController extends GenericController&lt;Processo&gt; {
84 83
85 return responseBody; 84 return responseBody;
86 } 85 }
87 - 86 +
  87 + /**
  88 + * <p>
  89 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  90 + * </p>
  91 + *
  92 + * <p>
  93 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  94 + * </p>
  95 + *
  96 + * Método responsável por iniciar o gerenciamento do processo
  97 + *
  98 + * @author rogerio.costa
  99 + *
  100 + * @return Processo
  101 + */
  102 + @RequestMapping(method = RequestMethod.GET, value = "/getProcessoGerenciamento")
  103 + @ResponseBody
  104 + public ResponseBodyWrapper getProcessoGerenciamento(@RequestParam(value = "idProcesso") Long idProcesso) {
  105 +
  106 + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.processoService.getProcessoGerenciamento(idProcesso), this.getListView());
  107 +
  108 + return responseBody;
  109 + }
  110 +
  111 + /**
  112 + * <p>
  113 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  114 + * </p>
  115 + *
  116 + * <p>
  117 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  118 + * </p>
  119 + *
  120 + * Método responsável por atribuir processo para o usuario logado no primeiro acesso
  121 + *
  122 + * @author rogerio.costa
  123 + *
  124 + * @param idProcesso
  125 + * @return
  126 + */
  127 + @RequestMapping(method = RequestMethod.GET, value = "/verificarAtribuicaoProcessoPrimeiroAcesso")
  128 + @ResponseBody
  129 + public ResponseBodyWrapper verificarAtribuicaoProcessoPrimeiroAcesso(@RequestParam(value = "idProcesso") Long idProcesso) {
  130 +
  131 + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.processoService.verificarAtribuicaoProcessoPrimeiroAcesso(idProcesso), this.getListView());
  132 +
  133 + return responseBody;
  134 + }
88 135
89 @Override 136 @Override
90 public Class<Views.ProcessoEdit> getEditView() { 137 public Class<Views.ProcessoEdit> getEditView() {
@@ -97,10 +144,10 @@ public class ProcessoController extends GenericController&lt;Processo&gt; { @@ -97,10 +144,10 @@ public class ProcessoController extends GenericController&lt;Processo&gt; {
97 144
98 return Views.ProcessoList.class; 145 return Views.ProcessoList.class;
99 } 146 }
100 - 147 +
101 @Override 148 @Override
102 public Class<Views.ProcessoAutoCompleteView> getAutoCompleteView() { 149 public Class<Views.ProcessoAutoCompleteView> getAutoCompleteView() {
103 - 150 +
104 // TODO Auto-generated method stub 151 // TODO Auto-generated method stub
105 return Views.ProcessoAutoCompleteView.class; 152 return Views.ProcessoAutoCompleteView.class;
106 } 153 }
cit-ecm-web/src/main/java/br/com/centralit/controller/UnidadeProcessoController.java
@@ -16,6 +16,7 @@ import br.com.centralit.api.viewHelper.EnviarProcessoVH; @@ -16,6 +16,7 @@ import br.com.centralit.api.viewHelper.EnviarProcessoVH;
16 import br.com.centralit.framework.controller.GenericController; 16 import br.com.centralit.framework.controller.GenericController;
17 import br.com.centralit.framework.json.ResponseBodyWrapper; 17 import br.com.centralit.framework.json.ResponseBodyWrapper;
18 import br.com.centralit.framework.json.Views; 18 import br.com.centralit.framework.json.Views;
  19 +import br.com.centralit.framework.view.ResultResponseVH;
19 20
20 /** 21 /**
21 * <p> 22 * <p>
@@ -89,4 +90,37 @@ public class UnidadeProcessoController extends GenericController&lt;UnidadeProcesso @@ -89,4 +90,37 @@ public class UnidadeProcessoController extends GenericController&lt;UnidadeProcesso
89 return responseBody; 90 return responseBody;
90 } 91 }
91 92
  93 + /**
  94 + * <p>
  95 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  96 + * </p>
  97 + *
  98 + * <p>
  99 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  100 + * </p>
  101 + *
  102 + * Método responsável por
  103 + *
  104 + * @author rogerio.costa
  105 + *
  106 + * @param idProcesso
  107 + * @param idUnidade
  108 + * @return
  109 + */
  110 + @RequestMapping(value = "/obterPorUnidadeEProcesso", method = RequestMethod.GET, produces = "application/json")
  111 + @ResponseBody
  112 + public ResponseBodyWrapper obterPorUnidadeEProcesso(@RequestParam(value = "idProcesso") Long idProcesso, @RequestParam(value = "idUnidade") Long idUnidade) {
  113 +
  114 + ResultResponseVH<UnidadeProcesso> resultResponseVH = new ResultResponseVH<UnidadeProcesso>(this.unidadeProcessoService.obterPorUnidadeEProcesso(idProcesso, idUnidade));
  115 +
  116 + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(resultResponseVH, Views.EnviarProcessoView.class);
  117 +
  118 + return responseBody;
  119 + }
  120 +
  121 + @Override
  122 + public Class<Views.EnviarProcessoView> getEditView() {
  123 +
  124 + return Views.EnviarProcessoView.class;
  125 + }
92 } 126 }
cit-ecm-web/src/main/java/br/com/centralit/controller/UsuarioECMController.java
@@ -9,8 +9,8 @@ import org.springframework.web.bind.annotation.RequestMapping; @@ -9,8 +9,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
9 import org.springframework.web.bind.annotation.RequestMethod; 9 import org.springframework.web.bind.annotation.RequestMethod;
10 import org.springframework.web.bind.annotation.ResponseBody; 10 import org.springframework.web.bind.annotation.ResponseBody;
11 11
12 -import br.com.centralit.api.service.EstruturaOrganizacionalECMService;  
13 import br.com.centralit.api.service.OrganizacaoService; 12 import br.com.centralit.api.service.OrganizacaoService;
  13 +import br.com.centralit.api.service.UnidadeService;
14 import br.com.centralit.framework.json.ResponseBodyWrapper; 14 import br.com.centralit.framework.json.ResponseBodyWrapper;
15 import br.com.centralit.framework.json.Views; 15 import br.com.centralit.framework.json.Views;
16 import br.com.centralit.framework.model.Organizacao; 16 import br.com.centralit.framework.model.Organizacao;
@@ -55,10 +55,10 @@ public class UsuarioECMController { @@ -55,10 +55,10 @@ public class UsuarioECMController {
55 55
56 @Autowired 56 @Autowired
57 private OrganizacaoService organizacaoService; 57 private OrganizacaoService organizacaoService;
58 - 58 +
59 /** Atributo estruturaOrganizacional. */ 59 /** Atributo estruturaOrganizacional. */
60 @Autowired 60 @Autowired
61 - private EstruturaOrganizacionalECMService estruturaOrganizacionalECMService; 61 + private UnidadeService unidadeService;
62 62
63 /** 63 /**
64 * <p> 64 * <p>
@@ -87,29 +87,30 @@ public class UsuarioECMController { @@ -87,29 +87,30 @@ public class UsuarioECMController {
87 87
88 return responseBody; 88 return responseBody;
89 } 89 }
90 - 90 +
91 @RequestMapping(value = "/atualizarScopoUnidadeUsuario", method = RequestMethod.POST) 91 @RequestMapping(value = "/atualizarScopoUnidadeUsuario", method = RequestMethod.POST)
92 @ResponseBody 92 @ResponseBody
93 public ResponseBodyWrapper atualizarScopoUnidadeUsuario(@RequestBody Unidade unidade) { 93 public ResponseBodyWrapper atualizarScopoUnidadeUsuario(@RequestBody Unidade unidade) {
94 94
95 - ( (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal() ).setUnidade(this.estruturaOrganizacionalECMService.getReference(unidade.getId())); 95 + ( (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal() ).setUnidade(this.unidadeService.find(unidade.getId()));
96 96
97 ResponseBodyWrapper responseBody = new ResponseBodyWrapper(Boolean.TRUE, Views.GenericView.class); 97 ResponseBodyWrapper responseBody = new ResponseBodyWrapper(Boolean.TRUE, Views.GenericView.class);
98 98
99 return responseBody; 99 return responseBody;
100 } 100 }
101 - 101 +
102 /** 102 /**
103 * Método responsável por reativar a sessao do modulo de almoxarifado 103 * Método responsável por reativar a sessao do modulo de almoxarifado
104 - * 104 + *
105 * @author iago.almeida 105 * @author iago.almeida
106 - * 106 + *
107 * @param Modulo 107 * @param Modulo
108 */ 108 */
109 @RequestMapping(value = "/keepSessionAlive", method = RequestMethod.POST) 109 @RequestMapping(value = "/keepSessionAlive", method = RequestMethod.POST)
110 @ResponseBody 110 @ResponseBody
111 public void keepSessionAlive() { 111 public void keepSessionAlive() {
112 - Logger.getLogger(UsuarioECMController.class).info("Restaurando sess\u00e3o do modulo ECM."); 112 +
  113 + Logger.getLogger(UsuarioECMController.class).info("Restaurando sess\u00e3o do modulo ECM.");
113 } 114 }
114 115
115 } 116 }
cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java
@@ -140,6 +140,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen @@ -140,6 +140,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen
140 list.add(new AcaoHistoricoAlteracaoProcesso("JUSTIFICATIVA_ACAO_PROCESSO", "Justificativa", "<<acao>> , protocolo <<protocolo>>. Justificativa: <<justificativa>>.")); 140 list.add(new AcaoHistoricoAlteracaoProcesso("JUSTIFICATIVA_ACAO_PROCESSO", "Justificativa", "<<acao>> , protocolo <<protocolo>>. Justificativa: <<justificativa>>."));
141 list.add(new AcaoHistoricoAlteracaoProcesso("ACAO_PROCESSO", "Ação", "<<acao>> , protocolo <<protocolo>>.")); 141 list.add(new AcaoHistoricoAlteracaoProcesso("ACAO_PROCESSO", "Ação", "<<acao>> , protocolo <<protocolo>>."));
142 list.add(new AcaoHistoricoAlteracaoProcesso("VALIDAR_PROCESSO", "Validar Processo", "O processo <<protocolo>> foi validado e seus documentos.")); 142 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>>."));
143 144
144 try { 145 try {
145 this.acaoHistoricoAlteracaoProcessoService.saveListIfNotExist(list); 146 this.acaoHistoricoAlteracaoProcessoService.saveListIfNotExist(list);
@@ -245,7 +246,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen @@ -245,7 +246,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen
245 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.VER_MAIS", "Ver mais", dominio, modulo)); 246 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.VER_MAIS", "Ver mais", dominio, modulo));
246 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ACAODEPROCESSO", " Ações de Processo", dominio, modulo)); 247 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ACAODEPROCESSO", " Ações de Processo", dominio, modulo));
247 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ASSINARDOCUMENTO", " Assinar Documento", dominio, modulo)); 248 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ASSINARDOCUMENTO", " Assinar Documento", dominio, modulo));
248 - internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ATRIBUIDO", " Atribuido a", dominio, modulo)); 249 + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ATRIBUIDO", " Atribuído a", dominio, modulo));
249 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CANCELARDOCUMENTO", " Cancelar Documento", dominio, modulo)); 250 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CANCELARDOCUMENTO", " Cancelar Documento", dominio, modulo));
250 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CONFIGURACAO_TEMPORALIDADE", "Configuração temporalidade", dominio, modulo)); 251 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CONFIGURACAO_TEMPORALIDADE", "Configuração temporalidade", dominio, modulo));
251 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DADOS_HIPOTESELEGAL", "Dados da tabela de hipótese legais", dominio, modulo)); 252 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DADOS_HIPOTESELEGAL", "Dados da tabela de hipótese legais", dominio, modulo));
@@ -379,6 +380,16 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen @@ -379,6 +380,16 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen
379 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.APROVAR", "Aprovar", dominio, modulo)); 380 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.APROVAR", "Aprovar", dominio, modulo));
380 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.AVANCAR_FLUXO", "Avançar no Fluxo", dominio, modulo)); 381 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.AVANCAR_FLUXO", "Avançar no Fluxo", dominio, modulo));
381 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.JUSTIFICATIVA_CANCELAMENTO", "Justificativa Cancelado", dominio, modulo)); 382 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.JUSTIFICATIVA_CANCELAMENTO", "Justificativa Cancelado", dominio, modulo));
  383 + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ATRIBUIR_PROCESSO", "Atribuir processo", dominio, modulo));
  384 + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CAPTURAR", "Capturar", dominio, modulo));
  385 + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.HISTORICO_DE_ATRIBUICAO", "Histórico de atribuição", dominio, modulo));
  386 + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DATA_ATRIBUICAO", "Data da atribuição", dominio, modulo));
  387 + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ATRIBUIDO_NOME", "Atribuído", dominio, modulo));
  388 + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ATRIBUIDO_POR", "Atribuído por", dominio, modulo));
  389 + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.REMOVIDO_POR", "Removido por", dominio, modulo));
  390 + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DATA_REMOCAO", "Data remoção", dominio, modulo));
  391 +
  392 +
382 } 393 }
383 394
384 /** 395 /**
@@ -435,6 +446,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen @@ -435,6 +446,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen
435 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CONFIRMA_CONCLUIR_PROCESSO", "Deseja concluir o processo?", dominio, modulo)); 446 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CONFIRMA_CONCLUIR_PROCESSO", "Deseja concluir o processo?", dominio, modulo));
436 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.ITEM_EXCLUIDO", "Item(ns) excluído(s) com sucesso!", dominio, modulo)); 447 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.ITEM_EXCLUIDO", "Item(ns) excluído(s) com sucesso!", dominio, modulo));
437 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.REMOCAO_DOCUMENTO", "Remoção de documento no processo", dominio, modulo)); 448 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.REMOCAO_DOCUMENTO", "Remoção de documento no processo", dominio, modulo));
  449 + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.ATRIBUICAO", "Atribuição de processo", dominio, modulo));
438 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.EDICAO_HIPOTESE_LEGAL", "Não é possível editar pois o mesmo encontra-se em uso por outro cadastro no sistema!", dominio, modulo)); 450 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.EDICAO_HIPOTESE_LEGAL", "Não é possível editar pois o mesmo encontra-se em uso por outro cadastro no sistema!", dominio, modulo));
439 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.NOME_TIPO_DOCUMENTO_EM_USO", "Tipo de documento já existe!", dominio, modulo)); 451 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.NOME_TIPO_DOCUMENTO_EM_USO", "Tipo de documento já existe!", dominio, modulo));
440 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.NOME_TIPO_PROCESSO_EM_USO", "Tipo de processo já existe!", dominio, modulo)); 452 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.NOME_TIPO_PROCESSO_EM_USO", "Tipo de processo já existe!", dominio, modulo));
@@ -474,6 +486,10 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen @@ -474,6 +486,10 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen
474 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.PROCESSO_ENVIADO_SUCESSO", "Processo enviado com sucesso!", dominio, modulo)); 486 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.PROCESSO_ENVIADO_SUCESSO", "Processo enviado com sucesso!", dominio, modulo));
475 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.VALIDAR_PROCESSO", "Validar Processo", dominio, modulo)); 487 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.VALIDAR_PROCESSO", "Validar Processo", dominio, modulo));
476 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.EXISTE_PROCESSO_ABERTO", "Existe um processo aberto, deseja fechá-lo?", dominio, modulo)); 488 internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.EXISTE_PROCESSO_ABERTO", "Existe um processo aberto, deseja fechá-lo?", dominio, modulo));
  489 + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.ATRIBUICAO_PRIMEIRO_ACESSO", "Esté processo foi atribuido para você", dominio, modulo));
  490 + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.DESEJA_CAPTURAR", "Desejá capturar o processo?", dominio, modulo));
  491 + internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CAPTURADO_SUCESSO", "Processo capturado com sucesso!", dominio, modulo));
  492 +
477 493
478 494
479 } 495 }
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/AtribuirProcessoController.js 0 → 100644
@@ -0,0 +1,79 @@ @@ -0,0 +1,79 @@
  1 +citApp.controller('AtribuirProcessoController', ['$scope', 'ProcessoRepository', '$translate', '$timeout','$filter', 'ConfiguracaoUsuarioUnidadeRepository', 'UnidadeProcessoRepository', 'HistoricoAtribuicaoProcessoRepository', 'HistoricoAlteracaoProcessoRepository', function ProcessoController($scope, ProcessoRepository, $translate, $timeout, $filter, ConfiguracaoUsuarioUnidadeRepository, UnidadeProcessoRepository, HistoricoAtribuicaoProcessoRepository, HistoricoAlteracaoProcessoRepository) {
  2 +
  3 + //Iniciar atribuição
  4 + $scope.iniciar = function(){
  5 + $scope.usuarioSelecionado = null;
  6 + this.atribuirProcessoForm = $scope.atribuirProcessoController.atribuirProcessoForm;
  7 + $scope.findHistorico();
  8 +
  9 + $timeout(function(){
  10 + $scope.atribuirProcessoForm.$submitted = false;
  11 + $scope.atribuirProcessoForm.$setPristine();
  12 + });
  13 +
  14 + };
  15 +
  16 + $scope.findAutoCompleteUsuario = function(value){
  17 + return ConfiguracaoUsuarioUnidadeRepository.findPorUsernameUsuarioAndUnidade(value, $scope.usuarioLogado.unidade.id).then(function(result) {
  18 + var usuarios = [];
  19 + angular.forEach(result, function (item) {
  20 + usuarios.push({originalElement :item.usuario, username : item.usuario.username, id : item.usuario.id});
  21 + });
  22 + var filtroUsuarioLogado = $filter('idNotObject')(usuarios, $scope.usuarioLogado);
  23 +
  24 + return $filter('idNotObject')(filtroUsuarioLogado, $scope.unidadeProcesso.usuarioResponsavel);
  25 + });
  26 + };
  27 +
  28 +
  29 + //Listar o historico de credenciais
  30 + $scope.findHistorico = function(){
  31 +
  32 + $scope.historicos = [];
  33 +
  34 + HistoricoAtribuicaoProcessoRepository.findByIdJoin("unidadeProcesso.id", $scope.unidadeProcesso.id).then(function(result) {
  35 + result.forEach(function (historico) {
  36 +
  37 + $scope.historicos.push(historico.originalElement);
  38 + });
  39 + });
  40 + };
  41 +
  42 +
  43 + $scope.saveOrUpdate = function(){
  44 +
  45 + $scope.atribuirProcessoForm.$submitted = true;
  46 +
  47 + //verifica se o formulario está valido para salvar
  48 + if($scope.atribuirProcessoForm.$valid){
  49 +
  50 + $scope.setLoadingSalva(true);
  51 +
  52 + $scope.unidadeProcesso.usuarioResponsavel = $scope.usuarioSelecionado;
  53 +
  54 + UnidadeProcessoRepository.update($scope.unidadeProcesso).then(function(result) {
  55 + $scope.unidadeProcesso = result.originalElement;
  56 + $scope.showAlert("success", $translate.instant('MSG.REGISTRO_SALVO'));
  57 + $scope.findHistorico();
  58 + var historicoAlteracaoProcesso = {
  59 + documentoGed : $scope.documentoGed,
  60 + descricaoAcao : $translate.instant('ECM.MSG_HISTORICO_ECM.ATRIBUICAO'),
  61 + processo : $scope.processo,
  62 + autor : $scope.usuarioLogado,
  63 + acaoAlteracao : "ATRIBUICAO_PROCESSO"
  64 + };
  65 + HistoricoAlteracaoProcessoRepository.saveParams(historicoAlteracaoProcesso).then(function(result){
  66 +
  67 + $scope.setLoading(false);
  68 + });
  69 +
  70 +
  71 + });
  72 + }else{
  73 + //Mensagem de erro de campos obrigatorios não preenchidos
  74 + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false);
  75 + }
  76 + };
  77 +
  78 +
  79 +}]);
0 \ No newline at end of file 80 \ No newline at end of file
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/GerenciarProcessoController.js
@@ -29,6 +29,7 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -29,6 +29,7 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim
29 $scope.tratimitado(); 29 $scope.tratimitado();
30 $scope.isGerenciarCredencialProcesso = false; 30 $scope.isGerenciarCredencialProcesso = false;
31 $scope.isClassificarProcessoDocumento = false; 31 $scope.isClassificarProcessoDocumento = false;
  32 + $scope.isAtribuirProcesso = false;
32 }; 33 };
33 34
34 // CRIAR RELACIONAMENTO DE PROCESSO 35 // CRIAR RELACIONAMENTO DE PROCESSO
@@ -107,6 +108,37 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -107,6 +108,37 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim
107 angular.element( "#credencialProcessoEdit" ).scope().iniciarCredencial( $scope.processo); 108 angular.element( "#credencialProcessoEdit" ).scope().iniciarCredencial( $scope.processo);
108 } ); 109 } );
109 }; 110 };
  111 +
  112 + //Atribuir processo
  113 + $scope.atribuirProcesso = function () {
  114 +
  115 + $scope.fecharPagina();
  116 + $scope.isAtribuirProcesso = true;
  117 +
  118 + $timeout( function () {
  119 + angular.element( "#atribuirProcessoEdit" ).scope().iniciar();
  120 + } );
  121 + };
  122 +
  123 + $scope.exibirAlertaCapturar = function(){
  124 +
  125 + $scope.$openModalConfirm({message : $translate.instant( 'ECM.MSG.DESEJA_CAPTURAR' ), callback : $scope.capturar} );
  126 + };
  127 +
  128 + //Atribui o processo para o usuario logado
  129 + $scope.capturar = function(){
  130 +
  131 + $scope.unidadeProcesso.usuarioResponsavel = $scope.usuarioLogado;
  132 +
  133 + UnidadeProcessoRepository.update($scope.unidadeProcesso).then(function(result) {
  134 + $scope.unidadeProcesso = result.originalElement;
  135 + $scope.showAlert("success", $translate.instant('ECM.MSG.CAPTURADO_SUCESSO'));
  136 + $scope.setLoading(false);
  137 + $scope.$modalConfirmInstance.dismiss( 'cancel' );
  138 +
  139 + });
  140 +
  141 + };
110 142
111 // EXECUÇÃO PROCESSO 143 // EXECUÇÃO PROCESSO
112 $scope.executarProcesso = function ( action ) { 144 $scope.executarProcesso = function ( action ) {
@@ -567,10 +599,36 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim @@ -567,10 +599,36 @@ citApp.controller(&#39;GerenciarProcessoController&#39;, [ &#39;$scope&#39;, &#39;$translate&#39;, &#39;$tim
567 // CARREGA O PROCESSO VINCULADO A TAREFA 599 // CARREGA O PROCESSO VINCULADO A TAREFA
568 $timeout( function () { 600 $timeout( function () {
569 601
570 - ProcessoRepository.get( $scope.idProcesso ).then( function ( result ) { 602 + ProcessoRepository.getProcessoGerenciamento($scope.idProcesso).then( function ( result ) {
571 $scope.processo = result.originalElement; 603 $scope.processo = result.originalElement;
572 $scope.apresentarCabecalho = true; 604 $scope.apresentarCabecalho = true;
573 $scope.processo.idTask = $scope.task.id; 605 $scope.processo.idTask = $scope.task.id;
  606 +
  607 + ProcessoRepository.verificarAtribuicaoProcessoPrimeiroAcesso($scope.idProcesso).then( function ( result ) {
  608 +
  609 + if(result){
  610 +
  611 + $scope.showAlert('warning', $translate.instant('ECM.MSG.ATRIBUICAO_PRIMEIRO_ACESSO'));
  612 + }
  613 + if($scope.usuarioLogado.unidade){
  614 +
  615 + UnidadeProcessoRepository.findByIdProcesso($scope.idProcesso).then(function(result){
  616 +
  617 + $scope.processoUnidades = result;
  618 +
  619 + angular.forEach(result, function (item) {
  620 +
  621 + if($scope.usuarioLogado.unidade && item.unidade.id === $scope.usuarioLogado.unidade.id){
  622 +
  623 + $scope.unidadeProcesso = item.originalElement;
  624 + }
  625 +
  626 + });
  627 +
  628 + });
  629 + }
  630 +
  631 + });
574 632
575 if ( $scope.$parent != undefined ) { 633 if ( $scope.$parent != undefined ) {
576 $scope.$parent.idProcesso = $scope.idProcesso; 634 $scope.$parent.idProcesso = $scope.idProcesso;
cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/ConfiguracaoUsuarioUnidadeRepository.js
@@ -16,6 +16,10 @@ citApp.factory(&#39;ConfiguracaoUsuarioUnidadeRepository&#39;, [&#39;RestangularEcm&#39;, &#39;Abstr @@ -16,6 +16,10 @@ citApp.factory(&#39;ConfiguracaoUsuarioUnidadeRepository&#39;, [&#39;RestangularEcm&#39;, &#39;Abstr
16 this.findPorEstruturaOrganizacionalECM = function(idUnidade) { 16 this.findPorEstruturaOrganizacionalECM = function(idUnidade) {
17 return restangularEcm.one(this.route).getList("findPorEstruturaOrganizacionalECM", {"idUnidade": idUnidade}).then(); 17 return restangularEcm.one(this.route).getList("findPorEstruturaOrganizacionalECM", {"idUnidade": idUnidade}).then();
18 }; 18 };
  19 +
  20 + this.findPorUsernameUsuarioAndUnidade = function(username, idUnidade){
  21 + return restangularEcm.one(this.route + "/findPorUsernameUsuarioAndUnidade").get({"username": username, "idUnidade" : idUnidade}).then();
  22 + };
19 } 23 }
20 24
21 AbstractRepository.extend(ConfiguracaoUsuarioUnidadeRepository); 25 AbstractRepository.extend(ConfiguracaoUsuarioUnidadeRepository);
cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/HistoricoAtribuicaoProcessoRepository.js 0 → 100644
@@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
  1 +'use strict';
  2 +
  3 +citApp.factory('HistoricoAtribuicaoProcessoRepository', ['RestangularEcm', 'AbstractRepository', function (restangularEcm, AbstractRepository) {
  4 +
  5 + function HistoricoAtribuicaoProcessoRepository() {
  6 + AbstractRepository.call(this, restangularEcm, 'rest/historicoAtribuicaoProcesso');
  7 +
  8 + }
  9 +
  10 + AbstractRepository.extend(HistoricoAtribuicaoProcessoRepository);
  11 +
  12 + return new HistoricoAtribuicaoProcessoRepository();
  13 +}]);
cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/ProcessoRepository.js
@@ -26,6 +26,17 @@ citApp.factory(&#39;ProcessoRepository&#39;, [&#39;RestangularEcm&#39;, &#39;AbstractRepository&#39;, fu @@ -26,6 +26,17 @@ citApp.factory(&#39;ProcessoRepository&#39;, [&#39;RestangularEcm&#39;, &#39;AbstractRepository&#39;, fu
26 return restangularEcm.one(this.route + '/getProcessoByProtocolo').get({"nup": nup}).then(); 26 return restangularEcm.one(this.route + '/getProcessoByProtocolo').get({"nup": nup}).then();
27 27
28 }; 28 };
  29 +
  30 + this.getProcessoGerenciamento = function (idProcesso){
  31 + return restangularEcm.one(this.route + '/getProcessoGerenciamento').get({"idProcesso": idProcesso});
  32 +
  33 + };
  34 +
  35 + this.verificarAtribuicaoProcessoPrimeiroAcesso = function (idProcesso){
  36 + return restangularEcm.one(this.route + '/verificarAtribuicaoProcessoPrimeiroAcesso').get({"idProcesso": idProcesso});
  37 +
  38 + };
  39 +
29 } 40 }
30 41
31 AbstractRepository.extend(ProcessoRepository); 42 AbstractRepository.extend(ProcessoRepository);
cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/UnidadeProcessoRepository.js
@@ -12,6 +12,12 @@ citApp.factory(&#39;UnidadeProcessoRepository&#39;, [&#39;RestangularEcm&#39;, &#39;AbstractReposito @@ -12,6 +12,12 @@ citApp.factory(&#39;UnidadeProcessoRepository&#39;, [&#39;RestangularEcm&#39;, &#39;AbstractReposito
12 this.findByIdProcesso = function(idProcesso) { 12 this.findByIdProcesso = function(idProcesso) {
13 return restangularEcm.one(this.route).getList("findByIdProcesso", {"idProcesso": idProcesso}).then(); 13 return restangularEcm.one(this.route).getList("findByIdProcesso", {"idProcesso": idProcesso}).then();
14 }; 14 };
  15 +
  16 + this.obterPorUnidadeEProcesso = function(idUnidade, idProcesso) {
  17 + return restangularEcm.one(this.route + "/obterPorUnidadeEProcesso").get({"idProcesso" : idProcesso, "idUnidade" : idUnidade});
  18 +
  19 + };
  20 +
15 } 21 }
16 22
17 AbstractRepository.extend(UnidadeProcessoRepository); 23 AbstractRepository.extend(UnidadeProcessoRepository);
cit-ecm-web/src/main/webapp/html/atribuirProcesso/atribuir.html 0 → 100644
@@ -0,0 +1,86 @@ @@ -0,0 +1,86 @@
  1 +<div ng-controller="AtribuirProcessoController as atribuirProcessoController">
  2 + <form name="atribuirProcessoController.atribuirProcessoForm" novalidate autocomplete="off">
  3 +
  4 + <div id="widget-atribuirProcesso" class="widget-box margin-bottom">
  5 + <div class="widget-header">
  6 + <h2 class="widget-title">
  7 + <translate>ECM.LABEL.ATRIBUIR_PROCESSO</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 + <div class="widget-main clearfix">
  16 + <div id="atribuirProcessoEdit" class="page-content clearfix">
  17 +
  18 + <p>
  19 + <small>( <span class="red">*</span> ) <translate>LABEL.CAMPOS_OBRIGATORIOS</translate></small>
  20 + </p>
  21 +
  22 + <div class="row">
  23 + <div class="col-md-8">
  24 + <auto-complete form="atribuirProcessoController.atribuirProcessoForm" ng-id="usuario" ng-label="LABEL.USUARIO" ng-obrigatorio="true" ng-model="usuarioSelecionado"
  25 + ng-find="findAutoCompleteUsuario(value)" ng-item="item.username" ng-set-result="setUsuario(item)" />
  26 + </div>
  27 + </div>
  28 + </div>
  29 +
  30 + <fieldset>
  31 +
  32 + <legend>
  33 + <translate>ECM.LABEL.HISTORICO_DE_ATRIBUICAO</translate>
  34 + </legend>
  35 +
  36 + <div class="col-md-12">
  37 + <div class="row">
  38 + <div class="col-sm-12">
  39 + <div class="panel panel-default">
  40 + <div class="panel-heading clearfix"></div>
  41 + <table class="table table-striped table-bordered table-hover">
  42 + <thead>
  43 + <tr>
  44 + <th class="text-center"><translate>ECM.LABEL.ATRIBUIDO_NOME</translate></th>
  45 + <th class="text-center"><translate>ECM.LABEL.ATRIBUIDO_POR</translate></th>
  46 + <th class="text-center"><translate>ECM.LABEL.DATA_ATRIBUICAO</translate></th>
  47 + <th class="text-center"><translate>ECM.LABEL.REMOVIDO_POR</translate></th>
  48 + <th class="text-center"><translate>ECM.LABEL.DATA_REMOCAO</translate></th>
  49 + </tr>
  50 + </thead>
  51 + <tbody>
  52 + <tr ng-repeat="historico in historicos | orderBy:'-id'">
  53 +
  54 + <td class="text-center">{{historico.nomeUsuarioAtribuido}}</td>
  55 + <td class="text-center">{{historico.atribuidoPor}}</td>
  56 + <td class="text-center">{{historico.dataAtribuicao | date:'dd-MM-yyyy HH:mm'}}</td>
  57 + <td class="text-center">{{historico.nomeUsuarioRemocao}}</td>
  58 + <td class="text-center">{{historico.dataRemocao | date:'dd-MM-yyyy HH:mm'}}</td>
  59 +
  60 + </tr>
  61 + <tr ng-hide="historicos.length > 0">
  62 + <td colspan="5" class="text-center"><translate>LABEL.TABELA_VAZIA</translate></td>
  63 + </tr>
  64 + </tbody>
  65 + </table>
  66 + </div>
  67 + </div>
  68 + </div>
  69 + </div>
  70 + </fieldset>
  71 +
  72 + <div class="row">
  73 + <div class="col-md-12">
  74 + <button class="btn btn-sm btn-primary" ng-click="saveOrUpdate()" type="button">
  75 + <translate>LABEL.SALVAR</translate>
  76 + </button>
  77 +
  78 + <button class="btn btn-sm btn-primary" ng-click="closeWidget('widget-atribuirProcesso')" type="button">
  79 + <translate>LABEL.CANCELAR</translate>
  80 + </button>
  81 + </div>
  82 + </div>
  83 + </div>
  84 + </div>
  85 + </form>
  86 +</div>
cit-ecm-web/src/main/webapp/html/gerenciarProcesso/gerenciarProcessoList.html
@@ -40,7 +40,6 @@ @@ -40,7 +40,6 @@
40 40
41 <div class="row"> 41 <div class="row">
42 <div class="col-md-4"> 42 <div class="col-md-4">
43 -  
44 <div class="widget-box documentos margin-bottom"> 43 <div class="widget-box documentos margin-bottom">
45 <div class="widget-header"> 44 <div class="widget-header">
46 <h2 class="widget-title"> 45 <h2 class="widget-title">
@@ -58,7 +57,6 @@ @@ -58,7 +57,6 @@
58 </div> 57 </div>
59 </div> 58 </div>
60 </div> 59 </div>
61 -  
62 </div> 60 </div>
63 61
64 <div id="content-container" class="col-md-8"> 62 <div id="content-container" class="col-md-8">
cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeAcaoProcesso.html
@@ -21,6 +21,8 @@ @@ -21,6 +21,8 @@
21 21
22 <div ng-include src="'/cit-ecm-web/html/classificarProcessoDocumento/classificarProcessoDocumento.html'" ng-show="isClassificarProcessoDocumento" /> 22 <div ng-include src="'/cit-ecm-web/html/classificarProcessoDocumento/classificarProcessoDocumento.html'" ng-show="isClassificarProcessoDocumento" />
23 23
  24 +<div ng-include src="'/cit-ecm-web/html/atribuirProcesso/atribuir.html'" ng-show="isAtribuirProcesso" />
  25 +
24 26
25 27
26 <div id="widget-processo" ng-show="isProcessoEdit" class="widget-box margin-bottom"> 28 <div id="widget-processo" ng-show="isProcessoEdit" class="widget-box margin-bottom">
cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeCabecalhoGerenciarProcesso.jsp
@@ -44,6 +44,11 @@ @@ -44,6 +44,11 @@
44 <translate>ECM.LABEL.INCLUIRDOCUMENTO</translate> 44 <translate>ECM.LABEL.INCLUIRDOCUMENTO</translate>
45 </button> 45 </button>
46 46
  47 +<button type="button" ng-if="unidadeProcesso.usuarioResponsavel.id != usuarioLogado.id" class="btn btn-clear" ng-click="exibirAlertaCapturar()">
  48 + <i class="fa fa-thumb-tack"></i>
  49 + <translate>ECM.LABEL.CAPTURAR</translate>
  50 +</button>
  51 +
47 <span class="divider-vertical"></span> 52 <span class="divider-vertical"></span>
48 53
49 <div class="btn-group dropdown" role="group" dropdown> 54 <div class="btn-group dropdown" role="group" dropdown>
@@ -65,7 +70,10 @@ @@ -65,7 +70,10 @@
65 <sec:authorize access="permiteRenunciar()"> 70 <sec:authorize access="permiteRenunciar()">
66 <li><a href="javascript: return false;" ng-click='exibirDialogConfirmacaoRemoverCredencial()'><i class="fa fa-user-times">&nbsp </i> <translate>ECM.LABEL.RENUNCIAR_CREDENCIAL</translate> </a></li> 71 <li><a href="javascript: return false;" ng-click='exibirDialogConfirmacaoRemoverCredencial()'><i class="fa fa-user-times">&nbsp </i> <translate>ECM.LABEL.RENUNCIAR_CREDENCIAL</translate> </a></li>
67 </sec:authorize> 72 </sec:authorize>
68 - <!-- <li><a href="#void" ng-click='classificarDocumentoProceso();'><i class="fa fa fa-eye">&nbsp </i> <translate>ECM.LABEL.VALIDAR_NIVEL_ACESSO</translate> </a></li> --> 73 +
  74 + <li><a href="#void" ng-click='classificarDocumentoProceso();'><i class="fa fa fa-eye">&nbsp </i> <translate>ECM.LABEL.VALIDAR_NIVEL_ACESSO</translate> </a></li>
  75 +
  76 + <li><a href="javascript: return false;" ng-click='atribuirProcesso()' ng-if="unidadeProcesso.id"><i class="fa fa-male">&nbsp </i> <translate>ECM.LABEL.ATRIBUIR_PROCESSO</translate> </a></li>
69 77
70 </ul> 78 </ul>
71 </div> 79 </div>
cit-ecm-web/src/main/webapp/html/gerenciarProcesso/includeInformacaoProcesso.html
@@ -44,16 +44,6 @@ @@ -44,16 +44,6 @@
44 </div> 44 </div>
45 </div> 45 </div>
46 46
47 - <div class="profile-info-row">  
48 - <div class="profile-info-name">  
49 - <translate>ECM.LABEL.ATRIBUIDO</translate>  
50 - </div>  
51 -  
52 - <div class="profile-info-value">  
53 - <span> {{task.owner.id}}</span>  
54 - </div>  
55 -  
56 - </div>  
57 </div> 47 </div>
58 </div> 48 </div>
59 49
@@ -106,9 +96,9 @@ @@ -106,9 +96,9 @@
106 <translate>ECM.LABEL.NIVELACESSO</translate> 96 <translate>ECM.LABEL.NIVELACESSO</translate>
107 </div> 97 </div>
108 <div class="profile-info-value"> 98 <div class="profile-info-value">
109 - <span class="label label-success" ng-show="processo.nivelAcesso.nivelAcesso.nome =='PUBLICO'">{{processo.nivelAcesso.nivelAcesso.descricao}}</span>  
110 - <span class="label label-warning" ng-show="processo.nivelAcesso.nivelAcesso.nome =='RESTRITO'">{{processo.nivelAcesso.nivelAcesso.descricao}}</span>  
111 - <span class="label label-danger" ng-show="processo.nivelAcesso.nivelAcesso.nome =='SIGILOSO'">{{processo.sigilo.tipoSigilo.descricao}}</span> 99 + <span class="label label-success" ng-show="processo.nivelAcesso.nivelAcesso.nome =='PUBLICO'">{{processo.nivelAcesso.nivelAcesso.descricao}}</span> <span class="label label-warning"
  100 + ng-show="processo.nivelAcesso.nivelAcesso.nome =='RESTRITO'">{{processo.nivelAcesso.nivelAcesso.descricao}}</span> <span class="label label-danger"
  101 + ng-show="processo.nivelAcesso.nivelAcesso.nome =='SIGILOSO'">{{processo.sigilo.tipoSigilo.descricao}}</span>
112 102
113 </div> 103 </div>
114 </div> 104 </div>
@@ -142,10 +132,26 @@ @@ -142,10 +132,26 @@
142 </div> 132 </div>
143 133
144 <div class="profile-info-value"> 134 <div class="profile-info-value">
145 - <span class="label" style="background-color: {{task.processInstance.flowStatus.backgroundColor}}">{{task.processInstance.flowStatus.name}}</span> 135 + <span class="label" style="background-color: {{task.processInstance.flowStatus.backgroundColor">{{task.processInstance.flowStatus.name}}</span>
  136 + </div>
  137 + </div>
  138 +
  139 + <div class="profile-info-row">
  140 + <div class="profile-info-name">
  141 + <translate>LABEL.UNIDADES</translate>
  142 + </div>
  143 + <div class="profile-info-value">
  144 + <br>
  145 + <div class="row">
  146 + <ul style="list-style-type: disc; margin-bottom: 3px" ng-repeat="processoUnidade in processoUnidades">
  147 + <li>{{processoUnidade.unidade.nome}} <span ng-if="processoUnidade.usuarioResponsavel">- {{processoUnidade.usuarioResponsavel.username}}</span></li>
  148 + </ul>
  149 +
  150 + </div>
146 </div> 151 </div>
147 </div> 152 </div>
148 153
149 - </div>  
150 -</div>  
151 154
  155 +
  156 + </div>
  157 +</div>
152 \ No newline at end of file 158 \ No newline at end of file