From 9130d51b0b97421c5a3f337922de9fa32d0ce5c1 Mon Sep 17 00:00:00 2001 From: erick.sato Date: Wed, 25 May 2016 18:01:00 -0300 Subject: [PATCH] Redmine #5043 Alteração item requisição consumo --- cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/AtendimentoRequisicaoConsumo.java | 2 +- cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/RequisicaoConsumo.java | 2 +- cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoServiceImpl.java | 11 ++++++++++- cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/RequisicaoConsumoItemServiceImpl.java | 4 ++++ cit-almoxarifado-web/src/main/java/br/com/centralit/listener/StartupListenerAlmoxarifado.java | 1 + 5 files changed, 17 insertions(+), 3 deletions(-) diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/AtendimentoRequisicaoConsumo.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/AtendimentoRequisicaoConsumo.java index 3ed73db..4d3debf 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/AtendimentoRequisicaoConsumo.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/AtendimentoRequisicaoConsumo.java @@ -99,7 +99,7 @@ public class AtendimentoRequisicaoConsumo extends PersistentObjectAuditOrganizac private RequisicaoConsumo requisicaoConsumo; /** Atributo atendimentoRequisicaoConsumoItems. */ - @OneToMany(fetch = FetchType.LAZY, mappedBy = "atendimentoRequisicaoConsumo", cascade = CascadeType.ALL, orphanRemoval = true) + @OneToMany(fetch = FetchType.LAZY, mappedBy = "atendimentoRequisicaoConsumo", cascade = CascadeType.ALL) @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class }) private Collection atendimentoRequisicaoConsumoItems; diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/RequisicaoConsumo.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/RequisicaoConsumo.java index fe0f7e0..be419b7 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/RequisicaoConsumo.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/RequisicaoConsumo.java @@ -130,7 +130,7 @@ public class RequisicaoConsumo extends PersistentObjectAuditOrganizacao { private Calendar dataFinalizacaoAtendimento; /** Atributo materiais. */ - @OneToMany(fetch = FetchType.LAZY, mappedBy = "requisicaoConsumo", cascade = CascadeType.ALL, orphanRemoval = true) + @OneToMany(fetch = FetchType.LAZY, mappedBy = "requisicaoConsumo", cascade = CascadeType.ALL) @JsonView({ ViewsAdmMateriais.RequisicaoConsumoEditView.class, ViewsAlmoxarifado.RequisicaoConsumoAutoCompleteView.class, ViewsAlmoxarifado.DevolucaoEditView.class, Views.MaterialConsultaInfo.class, ViewsAdmMateriais.RequisicaoConsumo.class }) diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoServiceImpl.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoServiceImpl.java index 9644d53..f49ac7e 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoServiceImpl.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoServiceImpl.java @@ -354,6 +354,7 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl< entity.setRequisicaoConsumo(this.requisicaoConsumoService.find(entity.getRequisicaoConsumo().getId())); + boolean todosItensSemQuantidade = true; for (AtendimentoRequisicaoConsumoItem atendimentoItem : entity.getAtendimentoRequisicaoConsumoItems()) { RequisicaoConsumoItem requisicaoConsumoItem = this.requisicaoConsumoItemService.find(atendimentoItem.getRequisicaoConsumoItem().getId()); @@ -362,15 +363,23 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl< atendimentoItem.setAtendimentoRequisicaoConsumo(entity); atendimentoItem.setOrganizacao(getUsuario().getOrganizacao()); atendimentoItem.setRequisicaoConsumoItem(requisicaoConsumoItem); + for (AtendimentoRequisicaoConsumoItemEndereco atendimentoRequisicaoConsumoItemEndereco : atendimentoItem.getAtendimentoRequisicaoConsumoItemEnderecos()) { + atendimentoRequisicaoConsumoItemEndereco.setAtendimentoRequisicaoConsumoItem(atendimentoItem); - if(atendimentoRequisicaoConsumoItemEndereco.getQuantidade() == null){ + if(atendimentoRequisicaoConsumoItemEndereco.getQuantidade() == null || atendimentoRequisicaoConsumoItemEndereco.getQuantidade().compareTo(new BigDecimal("0")) == 0){ atendimentoRequisicaoConsumoItemEndereco.setQuantidade(new BigDecimal(0)); + }else{ + todosItensSemQuantidade = false; } + } this.requisicaoConsumoItemService.merge(requisicaoConsumoItem); } + if(todosItensSemQuantidade){ + throw new BusinessException("ALMOXARIFADO.VALIDACAO.TODAS_QUANTIDADE_ATENDIDA_EM_BRANCO", CodigoErro.REGRA_NEGOCIO.getValue()); + } } /** diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/RequisicaoConsumoItemServiceImpl.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/RequisicaoConsumoItemServiceImpl.java index e3218f2..058a1f5 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/RequisicaoConsumoItemServiceImpl.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/RequisicaoConsumoItemServiceImpl.java @@ -116,6 +116,10 @@ public class RequisicaoConsumoItemServiceImpl extends GenericServiceImpl internacionalizacaoList) { -- libgit2 0.21.2