Commit 56ee39eeb2f5abed920a34dac782fd2204f006ab
1 parent
b89d7cdd
Exists in
master
Assinar documento digital
Showing
9 changed files
with
216 additions
and
68 deletions
Show diff stats
cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/ProcessoDaoHibernate.java
1 | package br.com.centralit.api.dao.impl; | 1 | package br.com.centralit.api.dao.impl; |
2 | 2 | ||
3 | +import java.util.ArrayList; | ||
3 | import java.util.Calendar; | 4 | import java.util.Calendar; |
4 | import java.util.Collection; | 5 | import java.util.Collection; |
6 | +import java.util.List; | ||
5 | 7 | ||
6 | import javax.persistence.FetchType; | 8 | import javax.persistence.FetchType; |
7 | 9 | ||
@@ -17,12 +19,14 @@ import org.springframework.security.core.context.SecurityContextHolder; | @@ -17,12 +19,14 @@ import org.springframework.security.core.context.SecurityContextHolder; | ||
17 | import org.springframework.stereotype.Repository; | 19 | import org.springframework.stereotype.Repository; |
18 | 20 | ||
19 | import br.com.centralit.api.dao.ProcessoDao; | 21 | import br.com.centralit.api.dao.ProcessoDao; |
22 | +import br.com.centralit.api.model.CredencialProcesso; | ||
20 | import br.com.centralit.api.model.Processo; | 23 | import br.com.centralit.api.model.Processo; |
21 | import br.com.centralit.api.model.SigiloPrivilegio; | 24 | import br.com.centralit.api.model.SigiloPrivilegio; |
22 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; | 25 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; |
23 | import br.com.centralit.framework.dao.arquitetura.SearchSeven; | 26 | import br.com.centralit.framework.dao.arquitetura.SearchSeven; |
24 | import br.com.centralit.framework.model.Dominio; | 27 | import br.com.centralit.framework.model.Dominio; |
25 | import br.com.centralit.framework.model.Usuario; | 28 | import br.com.centralit.framework.model.Usuario; |
29 | +import br.com.centralit.framework.model.arquitetura.PersistentObject; | ||
26 | import br.com.centralit.framework.util.UtilObjeto; | 30 | import br.com.centralit.framework.util.UtilObjeto; |
27 | 31 | ||
28 | import com.googlecode.genericdao.search.Filter; | 32 | import com.googlecode.genericdao.search.Filter; |
@@ -63,6 +67,7 @@ import com.googlecode.genericdao.search.SearchResult; | @@ -63,6 +67,7 @@ import com.googlecode.genericdao.search.SearchResult; | ||
63 | * | 67 | * |
64 | */ | 68 | */ |
65 | @Repository("processoDao") | 69 | @Repository("processoDao") |
70 | +@SuppressWarnings("unchecked") | ||
66 | public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoDao { | 71 | public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoDao { |
67 | 72 | ||
68 | /** | 73 | /** |
@@ -198,10 +203,45 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | @@ -198,10 +203,45 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | ||
198 | */ | 203 | */ |
199 | public <RT> SearchResult<RT> searchAndCountPorSigilo(ISearch search) { | 204 | public <RT> SearchResult<RT> searchAndCountPorSigilo(ISearch search) { |
200 | 205 | ||
201 | - Long idUsuario = ( (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal() ).getId(); | ||
202 | - | ||
203 | Criteria criteria = this.newCriteria(); | 206 | Criteria criteria = this.newCriteria(); |
204 | 207 | ||
208 | + DetachedCriteria detachedPrivilegio = getDetachedPorPermissaoEmSigilo(); | ||
209 | + | ||
210 | + // Joins | ||
211 | + criteria.createAlias("documentos", "documentos", JoinType.LEFT_OUTER_JOIN); | ||
212 | + | ||
213 | + criteria.createAlias("documentos.status", "statusDocumento", JoinType.LEFT_OUTER_JOIN); | ||
214 | + // Filtros | ||
215 | + criteria.add(Restrictions.or(Restrictions.eq("statusDocumento.codigo", 0L), Restrictions.isNull("validado"), Restrictions.eq("validado", false))); | ||
216 | + | ||
217 | + criteria.add(Restrictions.or(Subqueries.propertyIn("sigilo.id", detachedPrivilegio), Subqueries.propertyIn("documentos.sigilo.id", detachedPrivilegio))); | ||
218 | + | ||
219 | + criteria.setProjection(Projections.distinct(Projections.property("id"))); | ||
220 | + | ||
221 | + search.getFilters().add(Filter.in("id", criteria.list())); | ||
222 | + | ||
223 | + return super.searchAndCount(search); | ||
224 | + } | ||
225 | + | ||
226 | + /** | ||
227 | + * <p> | ||
228 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
229 | + * </p> | ||
230 | + * | ||
231 | + * <p> | ||
232 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
233 | + * </p> | ||
234 | + * | ||
235 | + * Método responsável por filtrar o sigilo que o usuario logado tem permissão através do(s) grupo(s) que o mesmo pertence | ||
236 | + * | ||
237 | + * @author rogerio.costa | ||
238 | + * | ||
239 | + * @return DetachedCriteria/ ids dos sigilos | ||
240 | + */ | ||
241 | + private DetachedCriteria getDetachedPorPermissaoEmSigilo() { | ||
242 | + | ||
243 | + Long idUsuario = ( (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal() ).getId(); | ||
244 | + | ||
205 | DetachedCriteria detachedCriteriaPrivilegio = DetachedCriteria.forClass(SigiloPrivilegio.class); | 245 | DetachedCriteria detachedCriteriaPrivilegio = DetachedCriteria.forClass(SigiloPrivilegio.class); |
206 | 246 | ||
207 | detachedCriteriaPrivilegio.setProjection(Projections.property("sigilo.id")); | 247 | detachedCriteriaPrivilegio.setProjection(Projections.property("sigilo.id")); |
@@ -218,19 +258,7 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | @@ -218,19 +258,7 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | ||
218 | 258 | ||
219 | detachedCriteriaPrivilegio.add(Restrictions.eq("grupoUsuario.usuario.id", idUsuario)); | 259 | detachedCriteriaPrivilegio.add(Restrictions.eq("grupoUsuario.usuario.id", idUsuario)); |
220 | 260 | ||
221 | - criteria.add(Subqueries.propertyIn("sigilo.id", detachedCriteriaPrivilegio)); | ||
222 | - | ||
223 | - criteria.createAlias("documentos", "documentos", JoinType.LEFT_OUTER_JOIN); | ||
224 | - | ||
225 | - criteria.createAlias("documentos.status", "statusDocumento", JoinType.LEFT_OUTER_JOIN); | ||
226 | - | ||
227 | - criteria.add(Restrictions.or(Restrictions.eq("statusDocumento.codigo", 0L), Restrictions.isNull("validado"), Restrictions.eq("validado", false))); | ||
228 | - | ||
229 | - criteria.setProjection(Projections.distinct(Projections.property("id"))); | ||
230 | - | ||
231 | - search.getFilters().add(Filter.in("id", criteria.list())); | ||
232 | - | ||
233 | - return super.searchAndCount(search); | 261 | + return detachedCriteriaPrivilegio; |
234 | } | 262 | } |
235 | 263 | ||
236 | @Override | 264 | @Override |
@@ -248,17 +276,17 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | @@ -248,17 +276,17 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | ||
248 | 276 | ||
249 | return UtilObjeto.isReferencia(criteria.uniqueResult()); | 277 | return UtilObjeto.isReferencia(criteria.uniqueResult()); |
250 | } | 278 | } |
251 | - | ||
252 | - public Collection<Processo> autoCompleteProcessoByNupAndStatus(String nup, Dominio dominio){ | ||
253 | - | 279 | + |
280 | + public Collection<Processo> autoCompleteProcessoByNupAndStatus(String nup, Dominio dominio) { | ||
281 | + | ||
254 | Search search = new SearchSeven(this.persistentClass); | 282 | Search search = new SearchSeven(this.persistentClass); |
255 | 283 | ||
256 | search.addFilterOr(Filter.ilike("nup", "%" + nup + "%"), Filter.ilike("nup", "%" + nup + "%")); | 284 | search.addFilterOr(Filter.ilike("nup", "%" + nup + "%"), Filter.ilike("nup", "%" + nup + "%")); |
257 | - | 285 | + |
258 | search.addFilterEqual("status.id", dominio.getId()); | 286 | search.addFilterEqual("status.id", dominio.getId()); |
259 | - | 287 | + |
260 | search.addSortDesc("id"); | 288 | search.addSortDesc("id"); |
261 | - | 289 | + |
262 | search.setMaxResults(10); | 290 | search.setMaxResults(10); |
263 | 291 | ||
264 | return this.search(search); | 292 | return this.search(search); |
@@ -271,17 +299,138 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | @@ -271,17 +299,138 @@ public class ProcessoDaoHibernate extends CitGenericDAOImpl implements ProcessoD | ||
271 | Search search = new SearchSeven(this.persistentClass); | 299 | Search search = new SearchSeven(this.persistentClass); |
272 | 300 | ||
273 | search.addFilterOr(Filter.ilike("nup", "%" + nup + "%"), Filter.ilike("nup", "%" + nup + "%")); | 301 | search.addFilterOr(Filter.ilike("nup", "%" + nup + "%"), Filter.ilike("nup", "%" + nup + "%")); |
274 | - | 302 | + |
275 | search.getFilters().add(Filter.notEqual("status.codigo", 1L)); | 303 | search.getFilters().add(Filter.notEqual("status.codigo", 1L)); |
276 | - | 304 | + |
277 | search.getFilters().add(Filter.notEqual("status.codigo", 5L)); | 305 | search.getFilters().add(Filter.notEqual("status.codigo", 5L)); |
278 | - | 306 | + |
279 | search.getFilters().add(Filter.notEqual("status.codigo", 3L)); | 307 | search.getFilters().add(Filter.notEqual("status.codigo", 3L)); |
280 | - | 308 | + |
281 | search.addSortDesc("id"); | 309 | search.addSortDesc("id"); |
282 | - | 310 | + |
283 | search.setMaxResults(10); | 311 | search.setMaxResults(10); |
284 | 312 | ||
285 | return this.search(search); | 313 | return this.search(search); |
286 | } | 314 | } |
315 | + | ||
316 | + @Override | ||
317 | + public List<PersistentObject> findAutoComplete(String chave, String valor) { | ||
318 | + | ||
319 | + Criteria criteriaProcesso = this.newCriteria(Processo.class); | ||
320 | + | ||
321 | + this.filterProcessoPermissaoUsuario(criteriaProcesso); | ||
322 | + | ||
323 | + criteriaProcesso.add(Restrictions.ilike(chave, "%" + valor + "%")); | ||
324 | + | ||
325 | + return criteriaProcesso.list(); | ||
326 | + } | ||
327 | + | ||
328 | + /** | ||
329 | + * <p> | ||
330 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
331 | + * </p> | ||
332 | + * | ||
333 | + * <p> | ||
334 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
335 | + * </p> | ||
336 | + * | ||
337 | + * Método responsável por realizar os filtros em que o usuario logado tem permissão. | ||
338 | + * | ||
339 | + * @author rogerio.costa | ||
340 | + * | ||
341 | + * @param criteriaProcesso | ||
342 | + */ | ||
343 | + private void filterProcessoPermissaoUsuario(Criteria criteriaProcesso) { | ||
344 | + | ||
345 | + Usuario usuario = ( (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal() ); | ||
346 | + | ||
347 | + // Verifica se o usuario está lotado na unidade | ||
348 | + if (UtilObjeto.isReferencia(usuario.getUnidade())) { | ||
349 | + | ||
350 | + // Filtro de permissões herdadas através de grupos | ||
351 | + DetachedCriteria detachedCriteriaPrivilegio = findSigiloUsuarioContemPermissaoAtravesDosGrupos(usuario); | ||
352 | + | ||
353 | + // Filtro da credencial do processo | ||
354 | + DetachedCriteria detachedCredencialProcesso = findProcessoSigilosoPorCredencial(usuario); | ||
355 | + | ||
356 | + criteriaProcesso.add(Restrictions.eq("unidade.id", usuario.getUnidade().getId())); | ||
357 | + | ||
358 | + criteriaProcesso.add(Restrictions.or(Subqueries.propertyIn("sigilo.id", detachedCriteriaPrivilegio), Subqueries.propertyIn("id", detachedCredencialProcesso), Restrictions.or(Restrictions.eq("autor.id", usuario.getId()), Restrictions.isNull("sigilo")))); | ||
359 | + | ||
360 | + criteriaProcesso.add(Restrictions.isNotNull("idProcessInstance")); | ||
361 | + | ||
362 | + } | ||
363 | + } | ||
364 | + | ||
365 | + /** | ||
366 | + * <p> | ||
367 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
368 | + * </p> | ||
369 | + * | ||
370 | + * <p> | ||
371 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
372 | + * </p> | ||
373 | + * | ||
374 | + * Método responsável por retornar um detachedCriteria com os ids dos sigilos que o usuário tem permissão. O mesmo é consultado através dos grupos que o usuário pertence. | ||
375 | + * | ||
376 | + * @author rogerio.costa | ||
377 | + * | ||
378 | + * @param usuario | ||
379 | + * @return DetachedCriteria/Sigilo.id | ||
380 | + */ | ||
381 | + private DetachedCriteria findSigiloUsuarioContemPermissaoAtravesDosGrupos(Usuario usuario) { | ||
382 | + | ||
383 | + DetachedCriteria detachedCriteriaPrivilegio = DetachedCriteria.forClass(SigiloPrivilegio.class); | ||
384 | + | ||
385 | + detachedCriteriaPrivilegio.setProjection(Projections.property("sigilo.id")); | ||
386 | + | ||
387 | + detachedCriteriaPrivilegio.createAlias("privilegio", "privilegio"); | ||
388 | + | ||
389 | + detachedCriteriaPrivilegio.createAlias("privilegio.grupoPrivilegios", "grupoPrivilegio"); | ||
390 | + | ||
391 | + detachedCriteriaPrivilegio.add(Restrictions.isNull("grupoPrivilegio.dataInativo")); | ||
392 | + | ||
393 | + detachedCriteriaPrivilegio.createCriteria("grupoPrivilegio.grupo").createAlias("grupoUsuarios", "grupoUsuario"); | ||
394 | + | ||
395 | + detachedCriteriaPrivilegio.add(Restrictions.isNull("grupoUsuario.dataInativo")); | ||
396 | + | ||
397 | + detachedCriteriaPrivilegio.add(Restrictions.eq("grupoUsuario.usuario.id", usuario.getId())); | ||
398 | + | ||
399 | + return detachedCriteriaPrivilegio; | ||
400 | + } | ||
401 | + | ||
402 | + /** | ||
403 | + * <p> | ||
404 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
405 | + * </p> | ||
406 | + * | ||
407 | + * <p> | ||
408 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
409 | + * </p> | ||
410 | + * | ||
411 | + * Método responsável por retornar os ids dos processo sigilosos que o usuário tem permissão, adicionado diretamente para o usuário e grupo que o mesmo está vinculado. | ||
412 | + * | ||
413 | + * @author rogerio.costa | ||
414 | + * | ||
415 | + * @param usuario | ||
416 | + * @return DetachedCriteria/ Processo.id | ||
417 | + */ | ||
418 | + private DetachedCriteria findProcessoSigilosoPorCredencial(Usuario usuario) { | ||
419 | + | ||
420 | + DetachedCriteria detachedCredencialProcesso = DetachedCriteria.forClass(CredencialProcesso.class); | ||
421 | + | ||
422 | + detachedCredencialProcesso.setProjection(Projections.property("processo.id")); | ||
423 | + | ||
424 | + detachedCredencialProcesso.createAlias("grupo", "grupo", JoinType.LEFT_OUTER_JOIN); | ||
425 | + | ||
426 | + detachedCredencialProcesso.createAlias("grupo.grupoUsuarios", "grupoUsuario", JoinType.LEFT_OUTER_JOIN); | ||
427 | + | ||
428 | + detachedCredencialProcesso.add(Restrictions.isNull("grupoUsuario.dataInativo")); | ||
429 | + | ||
430 | + detachedCredencialProcesso.add(Restrictions.or(Restrictions.eq("grupoUsuario.usuario.id", usuario.getId()), Restrictions.eq("usuario.id", usuario.getId()))); | ||
431 | + | ||
432 | + detachedCredencialProcesso.add(Restrictions.isNull("dataInativo")); | ||
433 | + | ||
434 | + return detachedCredencialProcesso; | ||
435 | + } | ||
287 | } | 436 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/dao/impl/UnidadeProcessoDaoHibernate.java
@@ -93,7 +93,7 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | @@ -93,7 +93,7 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | ||
93 | return this.search(searchSeven); | 93 | return this.search(searchSeven); |
94 | 94 | ||
95 | } | 95 | } |
96 | - | 96 | + |
97 | /** | 97 | /** |
98 | * | 98 | * |
99 | * <p> | 99 | * <p> |
@@ -203,7 +203,7 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | @@ -203,7 +203,7 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | ||
203 | searchSeven.addFilterEqual("processo.id", idProcesso); | 203 | searchSeven.addFilterEqual("processo.id", idProcesso); |
204 | 204 | ||
205 | searchSeven.addFilterEqual("unidade.id", idUnidade); | 205 | searchSeven.addFilterEqual("unidade.id", idUnidade); |
206 | - | 206 | + |
207 | searchSeven.setMaxResults(1); | 207 | searchSeven.setMaxResults(1); |
208 | 208 | ||
209 | return this.searchUnique(searchSeven); | 209 | return this.searchUnique(searchSeven); |
@@ -222,34 +222,38 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | @@ -222,34 +222,38 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | ||
222 | @Override | 222 | @Override |
223 | public <RT> SearchResult<RT> searchAndCountPorUnidade(ISearch search, Usuario usuario, Long idStatus) { | 223 | public <RT> SearchResult<RT> searchAndCountPorUnidade(ISearch search, Usuario usuario, Long idStatus) { |
224 | 224 | ||
225 | - // Filtro de permissões herdadas através de grupos | ||
226 | - DetachedCriteria detachedCriteriaPrivilegio = findSigiloUsuarioContemPermissaoAtravesDosGrupos(usuario); | 225 | + // Verifica se o usuario está lotado na unidade |
226 | + if (UtilObjeto.isReferencia(usuario.getUnidade())) { | ||
227 | 227 | ||
228 | - // Filtro da credencial do processo | ||
229 | - DetachedCriteria detachedCredencialProcesso = findProcessoSigilosoPorCredencial(usuario); | 228 | + // Filtro de permissões herdadas através de grupos |
229 | + DetachedCriteria detachedCriteriaPrivilegio = findSigiloUsuarioContemPermissaoAtravesDosGrupos(usuario); | ||
230 | 230 | ||
231 | - // Filtro da unidade, para processos públicos e restritos. | ||
232 | - search.getFilters().add(Filter.or(Filter.not(Filter.equal("processo.status.id", idStatus)), Filter.isEmpty("processo.status.id"))); | ||
233 | - | ||
234 | - search.getFilters().add(Filter.notEqual("processo.status.codigo", 5L)); | 231 | + // Filtro da credencial do processo |
232 | + DetachedCriteria detachedCredencialProcesso = findProcessoSigilosoPorCredencial(usuario); | ||
235 | 233 | ||
236 | - // Verifica se o usuario está lotado na unidade | ||
237 | - if (UtilObjeto.isReferencia(usuario.getUnidade())) { | 234 | + // Filtro da unidade, para processos públicos e restritos. |
235 | + search.getFilters().add(Filter.or(Filter.not(Filter.equal("processo.status.id", idStatus)), Filter.isEmpty("processo.status.id"))); | ||
236 | + | ||
237 | + search.getFilters().add(Filter.notEqual("processo.status.codigo", 5L)); | ||
238 | 238 | ||
239 | search.getFilters().add(Filter.equal("unidade.id", usuario.getUnidade().getId())); | 239 | search.getFilters().add(Filter.equal("unidade.id", usuario.getUnidade().getId())); |
240 | - } | ||
241 | 240 | ||
242 | - Criteria criteriaProcessoSigiloso = this.newCriteria(Processo.class); | 241 | + search.getFilters().add(Filter.or(Filter.equal("concluido", false), Filter.isNull("concluido"))); |
243 | 242 | ||
244 | - criteriaProcessoSigiloso.setProjection(Projections.property("id")); | 243 | + Criteria criteriaProcessoSigiloso = this.newCriteria(Processo.class); |
245 | 244 | ||
246 | - criteriaProcessoSigiloso.add(Restrictions.or(Subqueries.propertyIn("sigilo.id", detachedCriteriaPrivilegio), Subqueries.propertyIn("id", detachedCredencialProcesso))); | 245 | + criteriaProcessoSigiloso.setProjection(Projections.property("id")); |
247 | 246 | ||
248 | - search.getFilters().add(Filter.isNotNull("processo.idProcessInstance")); | 247 | + criteriaProcessoSigiloso.add(Restrictions.or(Subqueries.propertyIn("sigilo.id", detachedCriteriaPrivilegio), Subqueries.propertyIn("id", detachedCredencialProcesso))); |
249 | 248 | ||
250 | - search.getFilters().add(Filter.or(Filter.equal("processo.autor.id", usuario.getId()), Filter.isNull("processo.sigilo"), Filter.in("processo.id", criteriaProcessoSigiloso.list()))); | 249 | + search.getFilters().add(Filter.isNotNull("processo.idProcessInstance")); |
251 | 250 | ||
252 | - return super.searchAndCount(search); | 251 | + search.getFilters().add(Filter.or(Filter.equal("processo.autor.id", usuario.getId()), Filter.isNull("processo.sigilo"), Filter.in("processo.id", criteriaProcessoSigiloso.list()))); |
252 | + | ||
253 | + return super.searchAndCount(search); | ||
254 | + } | ||
255 | + | ||
256 | + return new SearchResult<RT>(); | ||
253 | } | 257 | } |
254 | 258 | ||
255 | /** | 259 | /** |
@@ -323,38 +327,37 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | @@ -323,38 +327,37 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | ||
323 | 327 | ||
324 | return detachedCriteriaPrivilegio; | 328 | return detachedCriteriaPrivilegio; |
325 | } | 329 | } |
326 | - | 330 | + |
327 | /** | 331 | /** |
328 | * | 332 | * |
329 | */ | 333 | */ |
330 | public Collection<UnidadeProcesso> findByPorIdProcessoEmExecucao(Long idProcesso) { | 334 | public Collection<UnidadeProcesso> findByPorIdProcessoEmExecucao(Long idProcesso) { |
331 | - | 335 | + |
332 | SearchSeven searchSeven = new SearchSeven(); | 336 | SearchSeven searchSeven = new SearchSeven(); |
333 | 337 | ||
334 | searchSeven.addFilterEqual("processo.id", idProcesso); | 338 | searchSeven.addFilterEqual("processo.id", idProcesso); |
335 | - | 339 | + |
336 | searchSeven.addFilterOr(Filter.equal("concluido", false), Filter.isNull("concluido")); | 340 | searchSeven.addFilterOr(Filter.equal("concluido", false), Filter.isNull("concluido")); |
337 | 341 | ||
338 | return this.search(searchSeven); | 342 | return this.search(searchSeven); |
339 | - | 343 | + |
340 | } | 344 | } |
341 | 345 | ||
342 | public UnidadeProcesso obterPorUnidadeEProcessoEmExecucao(Long idProcesso, Long idUnidade) { | 346 | public UnidadeProcesso obterPorUnidadeEProcessoEmExecucao(Long idProcesso, Long idUnidade) { |
343 | - | 347 | + |
344 | SearchSeven searchSeven = new SearchSeven(); | 348 | SearchSeven searchSeven = new SearchSeven(); |
345 | 349 | ||
346 | searchSeven.addFilterEqual("processo.id", idProcesso); | 350 | searchSeven.addFilterEqual("processo.id", idProcesso); |
347 | 351 | ||
348 | searchSeven.addFilterEqual("unidade.id", idUnidade); | 352 | searchSeven.addFilterEqual("unidade.id", idUnidade); |
349 | - | ||
350 | - searchSeven.addFilterOr( Filter.isNull("concluido")); | 353 | + |
354 | + searchSeven.addFilterOr(Filter.isNull("concluido")); | ||
351 | 355 | ||
352 | searchSeven.setMaxResults(1); | 356 | searchSeven.setMaxResults(1); |
353 | 357 | ||
354 | return this.searchUnique(searchSeven); | 358 | return this.searchUnique(searchSeven); |
355 | } | 359 | } |
356 | 360 | ||
357 | - | ||
358 | /** | 361 | /** |
359 | * <p> | 362 | * <p> |
360 | * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | 363 | * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> |
@@ -384,6 +387,5 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | @@ -384,6 +387,5 @@ public class UnidadeProcessoDaoHibernate extends CitGenericDAOImpl implements Un | ||
384 | 387 | ||
385 | return UtilObjeto.isReferencia(criteria.uniqueResult()); | 388 | return UtilObjeto.isReferencia(criteria.uniqueResult()); |
386 | 389 | ||
387 | - | ||
388 | } | 390 | } |
389 | } | 391 | } |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/DocumentoGedServiceImpl.java
@@ -334,7 +334,7 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl<DocumentoGed, Lo | @@ -334,7 +334,7 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl<DocumentoGed, Lo | ||
334 | } | 334 | } |
335 | } | 335 | } |
336 | 336 | ||
337 | - if (UtilObjeto.isReferencia(entity.getProcesso().getSigilo())) { | 337 | + if (UtilObjeto.isReferencia(entity.getProcesso().getSigilo()) && UtilObjeto.isReferencia(entity.getSigilo())) { |
338 | if (entity.getProcesso().getSigilo().getTipoSigilo().getCodigo() == 1L) { | 338 | if (entity.getProcesso().getSigilo().getTipoSigilo().getCodigo() == 1L) { |
339 | if (entity.getSigilo().getTipoSigilo().getCodigo() == 0L) { | 339 | if (entity.getSigilo().getTipoSigilo().getCodigo() == 0L) { |
340 | throw new BusinessException(DocumentoGedServiceImpl.VALIDAR_NIVEL_ACESSO, CodigoErro.REGRA_NEGOCIO.getValue()); | 340 | throw new BusinessException(DocumentoGedServiceImpl.VALIDAR_NIVEL_ACESSO, CodigoErro.REGRA_NEGOCIO.getValue()); |
@@ -344,6 +344,8 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl<DocumentoGed, Lo | @@ -344,6 +344,8 @@ public class DocumentoGedServiceImpl extends GenericServiceImpl<DocumentoGed, Lo | ||
344 | throw new BusinessException(DocumentoGedServiceImpl.VALIDAR_NIVEL_ACESSO, CodigoErro.REGRA_NEGOCIO.getValue()); | 344 | throw new BusinessException(DocumentoGedServiceImpl.VALIDAR_NIVEL_ACESSO, CodigoErro.REGRA_NEGOCIO.getValue()); |
345 | } | 345 | } |
346 | } | 346 | } |
347 | + }else{ | ||
348 | + throw new BusinessException(DocumentoGedServiceImpl.VALIDAR_NIVEL_ACESSO, CodigoErro.REGRA_NEGOCIO.getValue()); | ||
347 | } | 349 | } |
348 | } | 350 | } |
349 | 351 |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/InicializarEcmServiceImpl.java
@@ -240,10 +240,10 @@ public class InicializarEcmServiceImpl extends UtilStartup { | @@ -240,10 +240,10 @@ public class InicializarEcmServiceImpl extends UtilStartup { | ||
240 | menuPesquisaProcesso.setIncludes(filesPesquisaProcesso); | 240 | menuPesquisaProcesso.setIncludes(filesPesquisaProcesso); |
241 | this.menuService.mergeIfNotExist(menuPesquisaProcesso); | 241 | this.menuService.mergeIfNotExist(menuPesquisaProcesso); |
242 | 242 | ||
243 | - Pagina pgProcessoFinalizado = new Pagina("Processo Arquivado", "/cit-ecm-web/html/processoFinalizado/processoFinalizadoList.html"); | 243 | + Pagina pgProcessoFinalizado = new Pagina("Processos Arquivados", "/cit-ecm-web/html/processoFinalizado/processoFinalizadoList.html"); |
244 | pgProcessoFinalizado = this.paginaService.saveIfNotExist(pgProcessoFinalizado); | 244 | pgProcessoFinalizado = this.paginaService.saveIfNotExist(pgProcessoFinalizado); |
245 | 245 | ||
246 | - Menu menuProcessoFinalizado = new Menu("Processo Arquivado", pgProcessoFinalizado, menuProcesso, 2, 4, null, null, null, null, modulo, "PROCESSO_FINALIZADO"); | 246 | + Menu menuProcessoFinalizado = new Menu("Processos Arquivados", pgProcessoFinalizado, menuProcesso, 2, 4, null, null, null, null, modulo, "PROCESSO_FINALIZADO"); |
247 | menuProcessoFinalizado.setIncludes(this.gerarArquivosMenu(menuProcessoFinalizado, this.CIT_ECM_WEB_ANGULAR, "ProcessoFinalizado", false, true, false)); | 247 | menuProcessoFinalizado.setIncludes(this.gerarArquivosMenu(menuProcessoFinalizado, this.CIT_ECM_WEB_ANGULAR, "ProcessoFinalizado", false, true, false)); |
248 | this.menuService.mergeIfNotExist(menuProcessoFinalizado); | 248 | this.menuService.mergeIfNotExist(menuProcessoFinalizado); |
249 | 249 |
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/ProcessoServiceImpl.java
@@ -19,9 +19,6 @@ import org.springframework.beans.factory.annotation.Qualifier; | @@ -19,9 +19,6 @@ import org.springframework.beans.factory.annotation.Qualifier; | ||
19 | import org.springframework.stereotype.Service; | 19 | import org.springframework.stereotype.Service; |
20 | import org.springframework.validation.Validator; | 20 | import org.springframework.validation.Validator; |
21 | 21 | ||
22 | -import com.googlecode.genericdao.search.ISearch; | ||
23 | -import com.googlecode.genericdao.search.SearchResult; | ||
24 | - | ||
25 | import br.com.centralit.api.dao.ProcessoDao; | 22 | import br.com.centralit.api.dao.ProcessoDao; |
26 | import br.com.centralit.api.model.DocumentoGed; | 23 | import br.com.centralit.api.model.DocumentoGed; |
27 | import br.com.centralit.api.model.EstruturaOrganizacionalECM; | 24 | import br.com.centralit.api.model.EstruturaOrganizacionalECM; |
cit-ecm-web/src/main/java/br/com/centralit/controller/ProcessoController.java
@@ -11,7 +11,6 @@ import org.springframework.web.bind.annotation.RequestParam; | @@ -11,7 +11,6 @@ import org.springframework.web.bind.annotation.RequestParam; | ||
11 | import org.springframework.web.bind.annotation.ResponseBody; | 11 | import org.springframework.web.bind.annotation.ResponseBody; |
12 | 12 | ||
13 | import br.com.centralit.api.framework.json.ViewsEcm; | 13 | import br.com.centralit.api.framework.json.ViewsEcm; |
14 | -import br.com.centralit.api.model.PlanoClassificacao; | ||
15 | import br.com.centralit.api.model.Processo; | 14 | import br.com.centralit.api.model.Processo; |
16 | import br.com.centralit.api.service.ProcessoService; | 15 | import br.com.centralit.api.service.ProcessoService; |
17 | import br.com.centralit.api.service.UsuarioService; | 16 | import br.com.centralit.api.service.UsuarioService; |
cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java
@@ -138,7 +138,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -138,7 +138,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
138 | list.add(new AcaoHistoricoAlteracaoProcesso("ENVIAR_PROCESSO", "Enviar Processo", "O processo foi enviado para a <<unidade>>.")); | 138 | list.add(new AcaoHistoricoAlteracaoProcesso("ENVIAR_PROCESSO", "Enviar Processo", "O processo foi enviado para a <<unidade>>.")); |
139 | list.add(new AcaoHistoricoAlteracaoProcesso("JUSTIFICATIVA_ACAO_PROCESSO", "Justificativa", "<<acao>> , protocolo <<protocolo>>. Justificativa: <<justificativa>>.")); | 139 | list.add(new AcaoHistoricoAlteracaoProcesso("JUSTIFICATIVA_ACAO_PROCESSO", "Justificativa", "<<acao>> , protocolo <<protocolo>>. Justificativa: <<justificativa>>.")); |
140 | list.add(new AcaoHistoricoAlteracaoProcesso("ACAO_PROCESSO", "Ação", "<<acao>> , protocolo <<protocolo>>.")); | 140 | list.add(new AcaoHistoricoAlteracaoProcesso("ACAO_PROCESSO", "Ação", "<<acao>> , protocolo <<protocolo>>.")); |
141 | - list.add(new AcaoHistoricoAlteracaoProcesso("VALIDAR_PROCESSO", "Validar Processo", "O processo <<protocolo>> foi validado e seus documentos.")); | 141 | + list.add(new AcaoHistoricoAlteracaoProcesso("VALIDAR_PROCESSO", "Validar Processo", "O processo <<protocolo>> e seus documentos foram validados de acordo com seu nível de acesso.")); |
142 | list.add(new AcaoHistoricoAlteracaoProcesso("ATRIBUICAO_PROCESSO", "Atribuição de processo", "O processo <<protocolo>> foi atribuido para <<usuario>>.")); | 142 | list.add(new AcaoHistoricoAlteracaoProcesso("ATRIBUICAO_PROCESSO", "Atribuição de processo", "O processo <<protocolo>> foi atribuido para <<usuario>>.")); |
143 | list.add(new AcaoHistoricoAlteracaoProcesso("ASSINAR_DOCUMENTO", "Assinatura de documento", "O documento <<tipo_documento>> <<numero_documento>> foi assinado por <<usuario>>.")); | 143 | list.add(new AcaoHistoricoAlteracaoProcesso("ASSINAR_DOCUMENTO", "Assinatura de documento", "O documento <<tipo_documento>> <<numero_documento>> foi assinado por <<usuario>>.")); |
144 | list.add(new AcaoHistoricoAlteracaoProcesso("ATUALIZAR_ANDAMENTO_PROCESSO", "Atualização de Andamento do Processo", "Situação do processo alterada para <<situacao>>.")); | 144 | list.add(new AcaoHistoricoAlteracaoProcesso("ATUALIZAR_ANDAMENTO_PROCESSO", "Atualização de Andamento do Processo", "Situação do processo alterada para <<situacao>>.")); |
@@ -298,7 +298,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -298,7 +298,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
298 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.NOVOPROCESSO", " Novo Processo", dominio, modulo)); | 298 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.NOVOPROCESSO", " Novo Processo", dominio, modulo)); |
299 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.TIPOPROTOCOLO", "Tipo de Protocolo", dominio, modulo)); | 299 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.TIPOPROTOCOLO", "Tipo de Protocolo", dominio, modulo)); |
300 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.TOTAL_ITENS_HISTORICO", "Total de históricos", dominio, modulo)); | 300 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.TOTAL_ITENS_HISTORICO", "Total de históricos", dominio, modulo)); |
301 | - internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.VERSAO_ATUAL", "Versão Atual", dominio, modulo)); | 301 | + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.VERSAO_ATUAL", "Versão atual", dominio, modulo)); |
302 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.VERSAO_DOCUMENTO", "Versões do documento", dominio, modulo)); | 302 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.VERSAO_DOCUMENTO", "Versões do documento", dominio, modulo)); |
303 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.VERSAO_INTERMEDIARIA", "Versão Intermediária", dominio, modulo)); | 303 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.VERSAO_INTERMEDIARIA", "Versão Intermediária", dominio, modulo)); |
304 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.VERSOESDODOCUMENTO", "Versões do Documento", dominio, modulo)); | 304 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.VERSOESDODOCUMENTO", "Versões do Documento", dominio, modulo)); |
@@ -378,7 +378,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -378,7 +378,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
378 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.OBJETO", "Objeto", dominio, modulo)); | 378 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.OBJETO", "Objeto", dominio, modulo)); |
379 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ATRIBUIDOA", "Atribuído a", dominio, modulo)); | 379 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ATRIBUIDOA", "Atribuído a", dominio, modulo)); |
380 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.UNIDADE_GERADORA", "Unidade gestora", dominio, modulo)); | 380 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.UNIDADE_GERADORA", "Unidade gestora", dominio, modulo)); |
381 | - internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.PRAZO_TEMPORALIDADE", "Unidade gestora", dominio, modulo)); | 381 | + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.PRAZO_TEMPORALIDADE", "Prazo temporalidade", dominio, modulo)); |
382 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CLASSIFICACAO_ARQUIVISTICA", "Classificação Arquivística (Assunto)", dominio, modulo)); | 382 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CLASSIFICACAO_ARQUIVISTICA", "Classificação Arquivística (Assunto)", dominio, modulo)); |
383 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CRIADO_EM", "Criado em", dominio, modulo)); | 383 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CRIADO_EM", "Criado em", dominio, modulo)); |
384 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DATA_CONCLUSAO", "Data conclusão", dominio, modulo)); | 384 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DATA_CONCLUSAO", "Data conclusão", dominio, modulo)); |
@@ -414,7 +414,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -414,7 +414,7 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
414 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CAPTURAR", "Capturar", dominio, modulo)); | 414 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CAPTURAR", "Capturar", dominio, modulo)); |
415 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.HISTORICO_DE_ATRIBUICAO", "Histórico de atribuição", dominio, modulo)); | 415 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.HISTORICO_DE_ATRIBUICAO", "Histórico de atribuição", dominio, modulo)); |
416 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DATA_ATRIBUICAO", "Data da atribuição", dominio, modulo)); | 416 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DATA_ATRIBUICAO", "Data da atribuição", dominio, modulo)); |
417 | - internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ATRIBUIDO_NOME", "Atribuído", dominio, modulo)); | 417 | + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ATRIBUIDO_NOME", "Atribuído a", dominio, modulo)); |
418 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ATRIBUIDO_POR", "Atribuído por", dominio, modulo)); | 418 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ATRIBUIDO_POR", "Atribuído por", dominio, modulo)); |
419 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.REMOVIDO_POR", "Removido por", dominio, modulo)); | 419 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.REMOVIDO_POR", "Removido por", dominio, modulo)); |
420 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DATA_REMOCAO", "Data remoção", dominio, modulo)); | 420 | internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DATA_REMOCAO", "Data remoção", dominio, modulo)); |
@@ -556,7 +556,6 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | @@ -556,7 +556,6 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen | ||
556 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.PROCESSO_SEM_DOCUMENTO_ENVIO_UNIDADE", "Para enviar o processo é necessário incluir documento ao mesmo", dominio, modulo)); | 556 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.PROCESSO_SEM_DOCUMENTO_ENVIO_UNIDADE", "Para enviar o processo é necessário incluir documento ao mesmo", dominio, modulo)); |
557 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.UNIDADE_SEM_GRUPO_PADRAO", "Não é possível enviar o processo para unidade selecionada. Motivo: Grupo padrão não contém usuário(s)!", dominio, modulo)); | 557 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.UNIDADE_SEM_GRUPO_PADRAO", "Não é possível enviar o processo para unidade selecionada. Motivo: Grupo padrão não contém usuário(s)!", dominio, modulo)); |
558 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CONFIRMA_CONCLUIR_UNIDADE", "Concluir processo nesta unidade?", dominio, modulo)); | 558 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CONFIRMA_CONCLUIR_UNIDADE", "Concluir processo nesta unidade?", dominio, modulo)); |
559 | - internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.PROCESSO_ENVIADO_SUCESSO", "Processo enviado com sucesso!", dominio, modulo)); | ||
560 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.VALIDAR_PROCESSO", "Validar Processo", dominio, modulo)); | 559 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG_HISTORICO_ECM.VALIDAR_PROCESSO", "Validar Processo", dominio, modulo)); |
561 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.EXISTE_PROCESSO_ABERTO", "Existe um processo aberto, deseja fechá-lo?", dominio, modulo)); | 560 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.EXISTE_PROCESSO_ABERTO", "Existe um processo aberto, deseja fechá-lo?", dominio, modulo)); |
562 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.ATRIBUICAO_PRIMEIRO_ACESSO", "Esté processo foi atribuido para você", dominio, modulo)); | 561 | internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.ATRIBUICAO_PRIMEIRO_ACESSO", "Esté processo foi atribuido para você", dominio, modulo)); |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ClassificarDocumentoProcessoListController.js
@@ -17,7 +17,7 @@ citApp.controller('ClassificarDocumentoProcessoListController', ['$scope', 'Proc | @@ -17,7 +17,7 @@ citApp.controller('ClassificarDocumentoProcessoListController', ['$scope', 'Proc | ||
17 | fields: ['id', 'nup', 'sigiloOriginal.tipoSigilo.descricao', 'sigilo.tipoSigilo.descricao', 'prazoSigilo'], | 17 | fields: ['id', 'nup', 'sigiloOriginal.tipoSigilo.descricao', 'sigilo.tipoSigilo.descricao', 'prazoSigilo'], |
18 | filters : [{type : 'string', field : 'nup' }, | 18 | filters : [{type : 'string', field : 'nup' }, |
19 | {type : 'string', field : 'sigiloOriginal.tipoSigilo.descricao' } , | 19 | {type : 'string', field : 'sigiloOriginal.tipoSigilo.descricao' } , |
20 | - {type : 'string', field : 'sigilo.tipoSigilo.descricao', comparison : 'nn'}, | 20 | + {type : 'string', field : 'sigilo.tipoSigilo.descricao'}, |
21 | {type : 'date', field : 'prazoSigilo' }] | 21 | {type : 'date', field : 'prazoSigilo' }] |
22 | }; | 22 | }; |
23 | 23 |
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/ProcessoFinalizadoListController.js
@@ -14,7 +14,7 @@ citApp.controller('ProcessoFinalizadoListController', ['$scope', 'ProcessoReposi | @@ -14,7 +14,7 @@ citApp.controller('ProcessoFinalizadoListController', ['$scope', 'ProcessoReposi | ||
14 | $scope.filterCriteria = { | 14 | $scope.filterCriteria = { |
15 | start : 1, | 15 | start : 1, |
16 | dir : 'asc', | 16 | dir : 'asc', |
17 | - sort : 'id', | 17 | + sort : 'dataConclusao', |
18 | limit : 10, | 18 | limit : 10, |
19 | fields: ['nup', 'tipoProcesso.nome', 'assunto.nome', 'nivelAcesso.nivelAcesso.descricao', 'dataCriacao', 'dataConclusao', 'temporalidade.dataFimTemporalidade', 'temporalidade.tipoDestinacao.descricao'], | 19 | fields: ['nup', 'tipoProcesso.nome', 'assunto.nome', 'nivelAcesso.nivelAcesso.descricao', 'dataCriacao', 'dataConclusao', 'temporalidade.dataFimTemporalidade', 'temporalidade.tipoDestinacao.descricao'], |
20 | filters : [{type : 'string', field : 'nup' }, | 20 | filters : [{type : 'string', field : 'nup' }, |