Commit 3675952cedb4a200d9b5ed348e8aac90cb6ec0f9

Authored by Ronan Tavares Camargo
1 parent b9072cb6
Exists in master

Redmine #4207 - Criando método sincronizado para salvar a transferencia e garant…

…ir que não será gerado 2 transferencias com o mesmo codigo.
citgrp-patrimonio-api/src/main/java/br/com/centralit/api/service/impl/TransferenciaServiceImpl.java
... ... @@ -202,7 +202,7 @@ public class TransferenciaServiceImpl extends GenericServiceImpl<Transferencia,
202 202 } else {
203 203 // SALVA A TRANSFERÊNCIA
204 204 Transferencia transferenciaSave = geraTransferenciaInterna(transferencia, transferenciaItemListTemp);
205   - this.transferenciaDao.save(transferenciaSave);
  205 + geraCodigoAndSave(transferenciaSave);
206 206 this.salvarTermo(transferenciaSave, this.estruturaOrganizacionalService.getReference(idUltimaEstrutura));
207 207 if (listaTransferenciaSalva != null) {
208 208 listaTransferenciaSalva.add(transferenciaSave);
... ... @@ -229,18 +229,21 @@ public class TransferenciaServiceImpl extends GenericServiceImpl<Transferencia,
229 229 }
230 230 }
231 231 transferencia.setSaidaTemporariaItens(transferenciaItemListTemp);
232   - this.transferenciaDao.save(transferencia);
233   - configurarCodigo(transferencia);
  232 + geraCodigoAndSave(transferencia);
234 233 this.salvarTermo(transferencia, this.estruturaOrganizacionalService.getReference(idUltimaEstrutura));
235 234 if (listaTransferenciaSalva != null) {
236 235 listaTransferenciaSalva.add(transferencia);
237 236 }
238 237 }
  238 +
  239 + private synchronized void geraCodigoAndSave(Transferencia transferencia){
  240 + configurarCodigo(transferencia);
  241 + this.transferenciaDao.save(transferencia);
  242 + }
239 243  
240 244 private Transferencia geraTransferenciaInterna(Transferencia transferencia, List<TransferenciaItem> transferenciaItemListTemp) {
241 245  
242 246 Transferencia transferenciaSave = new Transferencia();
243   - configurarCodigo(transferenciaSave);
244 247 transferenciaSave.setAutor(transferencia.getAutor());
245 248 transferenciaSave.setDataCriacao(transferencia.getDataCriacao());
246 249 transferenciaSave.setDataTransferencia(transferencia.getDataTransferencia());
... ...