Commit 538e988c544571fef5f611ac186065c3d4f7db36
1 parent
1f0bb11a
Exists in
master
redmine #4583 busca permissao documento
Showing
16 changed files
with
127 additions
and
9 deletions
Show diff stats
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/dao/ColaboradorDao.java
... | ... | @@ -141,4 +141,11 @@ public interface ColaboradorDao extends CitGenericDAO { |
141 | 141 | */ |
142 | 142 | Collection<Colaborador> findPessoaColaboradorUsuarioPorNome(String nome); |
143 | 143 | |
144 | + /** | |
145 | + * Método responsável por obter permissão para assinatura de documento | |
146 | + * @author rogerio.cassimiro | |
147 | + * @param idUsuario | |
148 | + * @return {@link Boolean} | |
149 | + */ | |
150 | + boolean getPermissaoAssinaturaDocumento(Long idUsuario); | |
144 | 151 | } | ... | ... |
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/dao/PessoaDao.java
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/dao/TerceirizadoDao.java
... | ... | @@ -25,4 +25,11 @@ import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; |
25 | 25 | */ |
26 | 26 | public interface TerceirizadoDao extends CitGenericDAO { |
27 | 27 | |
28 | + /** | |
29 | + * Método responsável por obter permissão para assinatura de documento | |
30 | + * @author rogerio.cassimiro | |
31 | + * @param idUsuario | |
32 | + * @return {@link Boolean} | |
33 | + */ | |
34 | + boolean getPermissaoAssinaturaDocumento(Long idUsuario); | |
28 | 35 | } | ... | ... |
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/dao/impl/ColaboradorDaoHibernate.java
... | ... | @@ -10,6 +10,7 @@ import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; |
10 | 10 | import br.com.centralit.framework.dao.arquitetura.SearchSeven; |
11 | 11 | import br.com.centralit.framework.model.Dominio; |
12 | 12 | import br.com.centralit.framework.model.Usuario; |
13 | +import br.com.centralit.framework.util.UtilObjeto; | |
13 | 14 | |
14 | 15 | import com.googlecode.genericdao.search.Sort; |
15 | 16 | |
... | ... | @@ -183,4 +184,19 @@ public class ColaboradorDaoHibernate extends CitGenericDAOImpl implements Colabo |
183 | 184 | |
184 | 185 | return this.search(search, Colaborador.class); |
185 | 186 | } |
187 | + | |
188 | + /** | |
189 | + * Método responsável por obter permissão para assinatura de documento | |
190 | + * @author rogerio.cassimiro | |
191 | + * @param idUsuario | |
192 | + * @return {@link Boolean} | |
193 | + */ | |
194 | + @Override | |
195 | + public boolean getPermissaoAssinaturaDocumento(Long idUsuario) { | |
196 | + SearchSeven searchSeven = new SearchSeven(); | |
197 | + searchSeven.addFilterEqual("pessoa.usuario.id", idUsuario); | |
198 | + searchSeven.addFilterEqual("classeParceiro.dominioTipoParceiro.codigo", Dominio.TIPO_PARCEIRO_COLABORADOR_SERVIDOR); | |
199 | + searchSeven.addFilterNotEmpty("funcao.id"); | |
200 | + return UtilObjeto.isReferencia(this.searchUnique(searchSeven)); | |
201 | + } | |
186 | 202 | } | ... | ... |
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/dao/impl/PessoaDaoHibernate.java
... | ... | @@ -9,6 +9,8 @@ import org.springframework.stereotype.Repository; |
9 | 9 | import br.com.centralit.api.dao.PessoaDao; |
10 | 10 | import br.com.centralit.api.model.Pessoa; |
11 | 11 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; |
12 | +import br.com.centralit.framework.dao.arquitetura.SearchSeven; | |
13 | +import br.com.centralit.framework.util.UtilObjeto; | |
12 | 14 | |
13 | 15 | /** |
14 | 16 | * <p> | ... | ... |
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/dao/impl/TerceirizadoDaoHibernate.java
... | ... | @@ -5,6 +5,9 @@ import org.springframework.stereotype.Repository; |
5 | 5 | import br.com.centralit.api.dao.TerceirizadoDao; |
6 | 6 | import br.com.centralit.api.model.Terceirizado; |
7 | 7 | import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; |
8 | +import br.com.centralit.framework.dao.arquitetura.SearchSeven; | |
9 | +import br.com.centralit.framework.model.Dominio; | |
10 | +import br.com.centralit.framework.util.UtilObjeto; | |
8 | 11 | |
9 | 12 | |
10 | 13 | /** |
... | ... | @@ -40,4 +43,18 @@ public class TerceirizadoDaoHibernate extends CitGenericDAOImpl implements Terce |
40 | 43 | super(Terceirizado.class); |
41 | 44 | } |
42 | 45 | |
46 | + /** | |
47 | + * Método responsável por obter permissão para assinatura de documento | |
48 | + * @author rogerio.cassimiro | |
49 | + * @param idUsuario | |
50 | + * @return {@link Boolean} | |
51 | + */ | |
52 | + @Override | |
53 | + public boolean getPermissaoAssinaturaDocumento(Long idUsuario) { | |
54 | + SearchSeven searchSeven = new SearchSeven(); | |
55 | + searchSeven.addFilterEqual("pessoa.usuario.id", idUsuario); | |
56 | + searchSeven.addFilterEqual("classeParceiro.dominioTipoParceiro.codigo", Dominio.TIPO_PARCEIRO_TERCEIRIZADO); | |
57 | + searchSeven.addFilterNotEmpty("funcao.id"); | |
58 | + return UtilObjeto.isReferencia(this.searchUnique(searchSeven)); | |
59 | + } | |
43 | 60 | } | ... | ... |
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/service/ColaboradorService.java
... | ... | @@ -141,5 +141,11 @@ public interface ColaboradorService extends GenericService<Colaborador, Long> { |
141 | 141 | */ |
142 | 142 | Collection<Colaborador> findPessoaColaboradorUsuarioPorNome(String nome); |
143 | 143 | |
144 | + /** | |
145 | + * Método responsável por obter permissão para assinatura de documento | |
146 | + * @author rogerio.cassimiro | |
147 | + * @return {@link Boolean} | |
148 | + */ | |
149 | + boolean getPermissaoAssinaturaDocumento(); | |
144 | 150 | |
145 | 151 | } | ... | ... |
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/service/PessoaService.java
... | ... | @@ -2,9 +2,6 @@ package br.com.centralit.api.service; |
2 | 2 | |
3 | 3 | import java.util.Collection; |
4 | 4 | |
5 | -import org.springframework.security.access.annotation.Secured; | |
6 | -import org.springframework.security.access.prepost.PreAuthorize; | |
7 | - | |
8 | 5 | import br.com.centralit.api.model.Colaborador; |
9 | 6 | import br.com.centralit.api.model.Pessoa; |
10 | 7 | import br.com.centralit.api.viewHelper.PessoaVH; |
... | ... | @@ -302,4 +299,11 @@ public interface PessoaService extends GenericService<Pessoa, Long> { |
302 | 299 | boolean removeTerceirizado(Long id); |
303 | 300 | |
304 | 301 | Pessoa buscaPessoaPorUsuarioId(Long idUsuario); |
302 | + | |
303 | + /** | |
304 | + * Método responsável por obter permissão para assinatura de documento | |
305 | + * @author rogerio.cassimiro | |
306 | + * @return {@link Boolean} | |
307 | + */ | |
308 | + boolean getPermissaoAssinaturaDocumento(); | |
305 | 309 | } |
306 | 310 | \ No newline at end of file | ... | ... |
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/service/TerceirizadoService.java
... | ... | @@ -26,4 +26,11 @@ import br.com.centralit.framework.service.arquitetura.GenericService; |
26 | 26 | */ |
27 | 27 | public interface TerceirizadoService extends GenericService<Terceirizado, Long> { |
28 | 28 | |
29 | + /** | |
30 | + * Método responsável por obter permissão para assinatura de documento | |
31 | + * @author rogerio.cassimiro | |
32 | + * @return {@link Boolean} | |
33 | + */ | |
34 | + boolean getPermissaoAssinaturaDocumento(); | |
35 | + | |
29 | 36 | } | ... | ... |
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/service/impl/ColaboradorServiceImpl.java
... | ... | @@ -4,6 +4,7 @@ import java.util.Collection; |
4 | 4 | |
5 | 5 | import org.springframework.beans.factory.annotation.Autowired; |
6 | 6 | import org.springframework.beans.factory.annotation.Qualifier; |
7 | +import org.springframework.security.core.context.SecurityContextHolder; | |
7 | 8 | import org.springframework.stereotype.Service; |
8 | 9 | import org.springframework.validation.Validator; |
9 | 10 | |
... | ... | @@ -195,5 +196,16 @@ public class ColaboradorServiceImpl extends GenericServiceImpl<Colaborador, Long |
195 | 196 | |
196 | 197 | return this.colaboradorDao.findPessoaColaboradorUsuarioPorNome(nome); |
197 | 198 | } |
199 | + | |
200 | + /** | |
201 | + * Método responsável por obter permissão para assinatura de documento | |
202 | + * @author rogerio.cassimiro | |
203 | + * @return {@link Boolean} | |
204 | + */ | |
205 | + @Override | |
206 | + public boolean getPermissaoAssinaturaDocumento() { | |
207 | + Usuario usuario = (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); | |
208 | + return this.colaboradorDao.getPermissaoAssinaturaDocumento(usuario.getId()); | |
209 | + } | |
198 | 210 | |
199 | 211 | } | ... | ... |
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/service/impl/PessoaServiceImpl.java
... | ... | @@ -1256,4 +1256,16 @@ public class PessoaServiceImpl extends GenericServiceImpl<Pessoa, Long> implemen |
1256 | 1256 | return this.pessoaDao.buscaPessoaPorUsuarioId(idUsuario); |
1257 | 1257 | |
1258 | 1258 | } |
1259 | + | |
1260 | + /** | |
1261 | + * Método responsável por obter permissão para assinatura de documento | |
1262 | + * @author rogerio.cassimiro | |
1263 | + * @return {@link Boolean} | |
1264 | + */ | |
1265 | + @Override | |
1266 | + public boolean getPermissaoAssinaturaDocumento() { | |
1267 | + if(this.colaboradorService.getPermissaoAssinaturaDocumento()) | |
1268 | + return this.terceirizadoService.getPermissaoAssinaturaDocumento(); | |
1269 | + return Boolean.FALSE; | |
1270 | + } | |
1259 | 1271 | } | ... | ... |
cit-tabelas-corp-api/src/main/java/br/com/centralit/api/service/impl/TerceirizadoServiceImp.java
... | ... | @@ -2,6 +2,7 @@ package br.com.centralit.api.service.impl; |
2 | 2 | |
3 | 3 | import org.springframework.beans.factory.annotation.Autowired; |
4 | 4 | import org.springframework.beans.factory.annotation.Qualifier; |
5 | +import org.springframework.security.core.context.SecurityContextHolder; | |
5 | 6 | import org.springframework.stereotype.Service; |
6 | 7 | import org.springframework.validation.Validator; |
7 | 8 | |
... | ... | @@ -10,6 +11,7 @@ import br.com.centralit.api.model.Terceirizado; |
10 | 11 | import br.com.centralit.api.service.ClasseParceiroService; |
11 | 12 | import br.com.centralit.api.service.TerceirizadoService; |
12 | 13 | import br.com.centralit.framework.model.Dominio; |
14 | +import br.com.centralit.framework.model.Usuario; | |
13 | 15 | import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; |
14 | 16 | |
15 | 17 | |
... | ... | @@ -36,7 +38,6 @@ import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; |
36 | 38 | @Service("terceirizadoService") |
37 | 39 | public class TerceirizadoServiceImp extends GenericServiceImpl<Terceirizado, Long> implements TerceirizadoService { |
38 | 40 | |
39 | - @SuppressWarnings("unused") | |
40 | 41 | private TerceirizadoDao terceirizadoDao; |
41 | 42 | |
42 | 43 | /** Atributo classeParceiroService. */ |
... | ... | @@ -68,5 +69,16 @@ public class TerceirizadoServiceImp extends GenericServiceImpl<Terceirizado, Lon |
68 | 69 | |
69 | 70 | return super.save(entity); |
70 | 71 | } |
72 | + | |
73 | + /** | |
74 | + * Método responsável por obter permissão para assinatura de documento | |
75 | + * @author rogerio.cassimiro | |
76 | + * @return {@link Boolean} | |
77 | + */ | |
78 | + @Override | |
79 | + public boolean getPermissaoAssinaturaDocumento() { | |
80 | + Usuario usuario = (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); | |
81 | + return this.terceirizadoDao.getPermissaoAssinaturaDocumento(usuario.getId()); | |
82 | + } | |
71 | 83 | |
72 | 84 | } | ... | ... |
cit-tabelas-corp-web/src/main/java/br/com/centralit/controller/ColaboradorController.java
cit-tabelas-corp-web/src/main/java/br/com/centralit/controller/PessoaController.java
... | ... | @@ -18,7 +18,6 @@ import br.com.centralit.api.viewHelper.PessoaVH; |
18 | 18 | import br.com.centralit.framework.controller.GenericController; |
19 | 19 | import br.com.centralit.framework.json.ResponseBodyWrapper; |
20 | 20 | import br.com.centralit.framework.json.Views; |
21 | -import br.com.centralit.framework.json.Views.GenericView; | |
22 | 21 | |
23 | 22 | /** |
24 | 23 | * <p> |
... | ... | @@ -449,6 +448,18 @@ public class PessoaController extends GenericController<Pessoa> { |
449 | 448 | |
450 | 449 | return responseBody; |
451 | 450 | } |
451 | + | |
452 | + /** | |
453 | + * Método responsável por obter permissão para assinatura de documento | |
454 | + * @author rogerio.cassimiro | |
455 | + * @return {@link Boolean} | |
456 | + */ | |
457 | + @RequestMapping(value = "/getPermissaoAssinaturaDocumento", method = RequestMethod.GET) | |
458 | + @ResponseBody | |
459 | + public ResponseBodyWrapper getPermissaoAssinaturaDocumento() { | |
460 | + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.getPessoaService().getPermissaoAssinaturaDocumento(), this.getEditView()); | |
461 | + return responseBody; | |
462 | + } | |
452 | 463 | |
453 | 464 | @Override |
454 | 465 | public Class<Views.PessoaAutoCompeteView> getAutoCompleteView() { | ... | ... |
cit-tabelas-corp-web/src/main/webapp/assets/js/angular/custom/repository/ColaboradorRepository.js
... | ... | @@ -11,7 +11,8 @@ citApp.factory('ColaboradorRepository', ['RestangularTabelasCorp', 'AbstractRepo |
11 | 11 | |
12 | 12 | this.findPorNomeAndOrganizacao = function(nome, idOrganizacao) { |
13 | 13 | return restangularTabelasCorp.one('rest/colaborador').getList("findPorNomeAndOrganizacao", {"nome": nome, "idOrganizacao" : idOrganizacao}).then(); |
14 | - }; | |
14 | + }; | |
15 | + | |
15 | 16 | } |
16 | 17 | |
17 | 18 | AbstractRepository.extend(ColaboradorRepository); | ... | ... |
cit-tabelas-corp-web/src/main/webapp/assets/js/angular/custom/repository/PessoaRepository.js
... | ... | @@ -80,7 +80,11 @@ citApp.factory('PessoaRepository', ['RestangularTabelasCorp','AbstractRepository |
80 | 80 | this.findPessoaColaboradorUsuarioPorNome = function(nome) { |
81 | 81 | return restangularTabelasCorp.one('rest/pessoa').getList("findPessoaColaboradorUsuarioPorNome", {"nome": nome}).then(); |
82 | 82 | }; |
83 | - | |
83 | + | |
84 | + this.getPermissaoAssinaturaDocumento = function() { | |
85 | + return restangularTabelasCorp.one(this.route + "/getPermissaoAssinaturaDocumento").get().then(); | |
86 | + }; | |
87 | + | |
84 | 88 | } |
85 | 89 | |
86 | 90 | AbstractRepository.extend(PessoaRepository); | ... | ... |