Commit 8f9d0607ca81de5d81ef7a60e4751797d46e3164

Authored by ROGERIO CASSIMIRO DE SOUZA
1 parent 91416358
Exists in master

redmine #4583 validacao usuario ldap ao assinar

cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/AssinaturaServiceImpl.java
... ... @@ -35,10 +35,13 @@ import br.com.centralit.framework.service.arquitetura.GenericServiceImpl;
35 35 import br.com.centralit.framework.util.UtilObjeto;
36 36 import br.com.centralit.framework.util.UtilString;
37 37  
38   -
39 38 /**
40   - * <p><b>Title: </b></p>
41   - * <p><b>Description: </b></p>
  39 + * <p>
  40 + * <b>Title: </b>
  41 + * </p>
  42 + * <p>
  43 + * <b>Description: </b>
  44 + * </p>
42 45 * <p>
43 46 * <b>Title: </b>
44 47 * </p>
... ... @@ -56,39 +59,30 @@ public class AssinaturaServiceImpl extends GenericServiceImpl&lt;Assinatura, Long&gt;
56 59  
57 60 @Autowired
58 61 private AssinaturaDao assinaturaDao;
59   -
60 62  
61 63 @Autowired
62 64 private DocumentoGedService documentoGedService;
63   -
64 65  
65 66 @Autowired
66 67 private UsuarioService usuarioService;
67   -
68 68  
69 69 @Autowired
70 70 private DominioService dominioService;
71   -
72 71  
73 72 @Autowired
74 73 private FuncaoService funcaoService;
75   -
76 74  
77 75 @Autowired
78 76 private PessoaService pessoaService;
79   -
80 77  
81 78 @Autowired
82 79 private HistoricoAlteracaoProcessoService historicoAlteracaoProcessoService;
83   -
84 80  
85 81 @Autowired
86 82 private TarjaAssinaturaService tarjaAssinaturaService;
87   -
88 83  
89 84 @Value("${metodo.autenticacao.ldap}")
90 85 private String ldap;
91   -
92 86  
93 87 @Value("${ldap.host.name}")
94 88 public String ldapHostName;
... ... @@ -103,12 +97,10 @@ public class AssinaturaServiceImpl extends GenericServiceImpl&lt;Assinatura, Long&gt;
103 97 public String ldapSearchDC;
104 98  
105 99 @Autowired
106   - public AssinaturaServiceImpl( AssinaturaDao assinaturaDao) {
107 100 public AssinaturaServiceImpl( AssinaturaDao assinaturaDao ) {
108 101  
109 102 this.dao = assinaturaDao;
110 103 }
111   -
112 104  
113 105 /**
114 106 * Salva assinatura do documento e gera histórico
... ... @@ -120,7 +112,7 @@ public class AssinaturaServiceImpl extends GenericServiceImpl&lt;Assinatura, Long&gt;
120 112 validarSenha(assinatura.getPassword(), usuario);
121 113 montarTransients(assinatura, usuario);
122 114 historicoAlteracaoProcessoService.gerarHistoricoAssinatura(assinatura);
123   - tarjaAssinaturaService.gerarAssinaturaInternaUsuario(assinatura,assinatura.getDocumentoGed().getFormaCriacao().getCodigo());
  115 + tarjaAssinaturaService.gerarAssinaturaInternaUsuario(assinatura, assinatura.getDocumentoGed().getFormaCriacao().getCodigo());
124 116 tarjaAssinaturaService.gerarAssinaturaInternaUsuario(assinatura, assinatura.getDocumentoGed().getFormaCriacao().getCodigo());
125 117 alterarEstadoDocumento(assinatura.getDocumentoGed());
126 118 return super.save(assinatura);
... ... @@ -133,10 +125,11 @@ public class AssinaturaServiceImpl extends GenericServiceImpl&lt;Assinatura, Long&gt;
133 125 * @param documentoGed
134 126 */
135 127 private void alterarEstadoDocumento(DocumentoGed documentoGed) {
136   - if(documentoGed.getFormaCriacao().getCodigo().equals(1L) && !documentoGed.getEstado().getCodigo().equals(2L))
137 128  
138 129 if (documentoGed.getFormaCriacao().getCodigo().equals(1L) && !documentoGed.getEstado().getCodigo().equals(2L))
139   - documentoGed.setEstado(dominioService.findByChaveAndCodigo("estadoDocumentoGed", 2L));
  130 +
  131 + if (documentoGed.getFormaCriacao().getCodigo().equals(1L) && !documentoGed.getEstado().getCodigo().equals(2L))
  132 + documentoGed.setEstado(dominioService.findByChaveAndCodigo("estadoDocumentoGed", 2L));
140 133 }
141 134  
142 135 /**
... ... @@ -154,7 +147,6 @@ public class AssinaturaServiceImpl extends GenericServiceImpl&lt;Assinatura, Long&gt;
154 147 assinatura.setTipoAssinatura(dominioService.findByChaveAndCodigo(Dominio.TIPO_ASSINATURA, Dominio.TIPO_ASSINATURA_INTERNA));
155 148 assinatura.setFuncao(funcaoService.getReference(assinatura.getFuncao().getId()));
156 149 }
157   -
158 150  
159 151 /**
160 152 * Método responsável por validar senha para assinar o documento
... ... @@ -164,24 +156,25 @@ public class AssinaturaServiceImpl extends GenericServiceImpl&lt;Assinatura, Long&gt;
164 156 * @param usuario
165 157 */
166 158 private void validarSenha(String password, Usuario usuario) {
167   -
168   - if(!UtilString.isNullOrEmpty(ldap) && ldap.equals("false")) {
169 159  
170   - if(UtilString.isNullOrEmpty(password))
171   - if (!UtilString.isNullOrEmpty(ldap) && !Boolean.parseBoolean(ldap)) {
  160 + if (!UtilString.isNullOrEmpty(ldap) && ldap.equals("false")) {
172 161  
173 162 if (UtilString.isNullOrEmpty(password))
174   - throw new BusinessException("ECM.VALIDACAO.SENHA_ASSINATURA", CodigoErro.REGRA_NEGOCIO.getValue(), "");
175   -
176   - if(!UtilObjeto.isReferencia(this.usuarioService.loadUserByUsernamePasswordMobile(usuario.getUsername(), password)))
  163 + if (!UtilString.isNullOrEmpty(ldap) && !Boolean.parseBoolean(ldap)) {
  164 +
  165 + if (UtilString.isNullOrEmpty(password))
  166 + throw new BusinessException("ECM.VALIDACAO.SENHA_ASSINATURA", CodigoErro.REGRA_NEGOCIO.getValue(), "");
  167 +
  168 + if (!UtilObjeto.isReferencia(this.usuarioService.loadUserByUsernamePasswordMobile(usuario.getUsername(), password)))
177 169  
178   - if (!UtilObjeto.isReferencia(this.usuarioService.loadUserByUsernamePasswordMobile(usuario.getUsername(), password)))
179   - throw new BusinessException("ECM.VALIDACAO.SENHA_ASSINATURA_INVALIDA", CodigoErro.REGRA_NEGOCIO.getValue(), "");
180   -
  170 + if (!UtilObjeto.isReferencia(this.usuarioService.loadUserByUsernamePasswordMobile(usuario.getUsername(), password)))
  171 + throw new BusinessException("ECM.VALIDACAO.SENHA_ASSINATURA_INVALIDA", CodigoErro.REGRA_NEGOCIO.getValue(), "");
181 172  
182   - } else if (!UtilString.isNullOrEmpty(ldap) && Boolean.parseBoolean(ldap)) {
  173 + } else if (!UtilString.isNullOrEmpty(ldap) && Boolean.parseBoolean(ldap)) {
  174 +
  175 + autenticarMaster(password, usuario.getUsername());
  176 + }
183 177  
184   - autenticarMaster(password, usuario.getUsername());
185 178 }
186 179 }
187 180  
... ... @@ -211,11 +204,10 @@ public class AssinaturaServiceImpl extends GenericServiceImpl&lt;Assinatura, Long&gt;
211 204 if (autenticarUser(result.getName() + "," + ldapSearchDC, password)) {
212 205 return Boolean.TRUE;
213 206 } else {
214   - //TODO LDAP validação
215 207 throw new BusinessException("ECM.VALIDACAO.SENHA_ASSINATURA_INVALIDA", CodigoErro.REGRA_NEGOCIO.getValue(), "");
216 208 }
217 209 }
218   -
  210 +
219 211 } catch (AuthenticationException authEx) {
220 212 throw new BusinessException("ECM.VALIDACAO.SENHA_ASSINATURA_INVALIDA", CodigoErro.REGRA_NEGOCIO.getValue(), "");
221 213 } catch (NamingException namEx) {
... ... @@ -250,7 +242,6 @@ public class AssinaturaServiceImpl extends GenericServiceImpl&lt;Assinatura, Long&gt;
250 242 */
251 243 @Override
252 244 public Boolean validarAssinaturaPorUsuario(Long idDocumento) {
253   - return this.assinaturaDao.validarAssinaturaPorUsuario(idDocumento, ((Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal()).getId());
254 245  
255 246 return this.assinaturaDao.validarAssinaturaPorUsuario(idDocumento, ( (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal() ).getId());
256 247 }
... ... @@ -260,10 +251,9 @@ public class AssinaturaServiceImpl extends GenericServiceImpl&lt;Assinatura, Long&gt;
260 251  
261 252 Assinatura assinatura = (Assinatura) this.assinaturaDao.getReference(id);
262 253 assinatura.getConteudoTarja().setConteudo(tarjaAssinaturaService.decrypted(assinatura.getConteudoTarja().getConteudoCriptografado()));
263   - if(UtilObjeto.isReferencia(assinatura.getDocumentoGed().getConteudoTarja())){
264 254 if (UtilObjeto.isReferencia(assinatura.getDocumentoGed().getConteudoTarja())) {
265 255 assinatura.getDocumentoGed().getConteudoTarja().setConteudo(tarjaAssinaturaService.decrypted(assinatura.getDocumentoGed().getConteudoTarja().getConteudoCriptografado()));
266 256 }
267 257 return assinatura;
268 258 }
269   -}
270 259 \ No newline at end of file
  260 +}
... ...