From fbbfa82f860a2cfa8514b2e47a04307db34f1225 Mon Sep 17 00:00:00 2001 From: juliana.barbosa Date: Fri, 1 Apr 2016 08:38:52 -0300 Subject: [PATCH] Redmine #3948 - alteracoes rma (merge branch 3498) --- cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/BaixaAlmoxarifado.java | 5 +++++ cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/MovimentoEstoqueService.java | 28 ++++++++++++++++++++++++++++ cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoItemServiceImpl.java | 9 +++++++++ cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoServiceImpl.java | 18 +++++++++++++++--- cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/BaixaAlmoxarifadoItemServiceImpl.java | 10 ++++++++-- cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/BaixaAlmoxarifadoServiceImpl.java | 3 ++- cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/DevolucaoItemServiceImpl.java | 36 ++++++++++++++++++++++++++++++++++++ cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/DevolucaoServiceImpl.java | 9 +++++++++ cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/MovimentoEstoqueServiceImpl.java | 68 +++++++++++++++++++++++++++++++++++++++++++++++--------------------- cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/RequisicaoConsumoServiceImpl.java | 2 +- cit-almoxarifado-web/src/main/java/br/com/centralit/controller/ContaContabilMovimentoAlmoxarifadoController.java | 4 ++-- 11 files changed, 162 insertions(+), 30 deletions(-) diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/BaixaAlmoxarifado.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/BaixaAlmoxarifado.java index 2cc2d0b..a67538b 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/BaixaAlmoxarifado.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/BaixaAlmoxarifado.java @@ -12,6 +12,9 @@ import javax.persistence.OneToMany; import javax.persistence.Temporal; import javax.persistence.TemporalType; +import org.hibernate.envers.Audited; +import org.hibernate.envers.NotAudited; + import br.com.centralit.api.framework.json.ViewsAdmMateriais; import br.com.centralit.framework.json.JsonCalendarSimpleDateDeserializer; import br.com.centralit.framework.json.JsonCalendarSimpleDateSerializer; @@ -53,6 +56,7 @@ import com.fasterxml.jackson.databind.annotation.JsonSerialize; * @author rogerio.costa * */ +@Audited @Entity public class BaixaAlmoxarifado extends Baixa { @@ -88,6 +92,7 @@ public class BaixaAlmoxarifado extends Baixa { public Parceiro destino; /** Atributo beixaItens. */ + @NotAudited @OneToMany(fetch = FetchType.LAZY, mappedBy = "baixaAlmoxarifado", cascade = CascadeType.ALL) @JsonView({ ViewsAdmMateriais.BaixaAlmoxarifadoListView.class }) private Collection baixaItens; diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/MovimentoEstoqueService.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/MovimentoEstoqueService.java index a39d8ac..e323410 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/MovimentoEstoqueService.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/MovimentoEstoqueService.java @@ -4,8 +4,10 @@ import java.math.BigDecimal; import java.util.Calendar; import br.com.centralit.api.model.AtendimentoRequisicaoConsumo; +import br.com.centralit.api.model.AtendimentoRequisicaoConsumoItem; import br.com.centralit.api.model.BaixaAlmoxarifado; import br.com.centralit.api.model.Devolucao; +import br.com.centralit.api.model.DevolucaoItem; import br.com.centralit.api.model.EntradaAlmoxarifado; import br.com.centralit.api.model.EstruturaOrganizacional; import br.com.centralit.api.model.MaterialConsumo; @@ -162,5 +164,31 @@ public interface MovimentoEstoqueService extends GenericServiceIniciativa(s): NUMERO_INICIATIVA

+ * + *

Regra(s) de negócio: NUMERO_REGRA_DE_NEGOCIO

+ * + * Método responsável por remover os movimentos de determinado atendimento item + * + * @author juliana.barbosa + * + * @param entity + */ + public void removerMovimentosAtendimentoItem(AtendimentoRequisicaoConsumoItem entity); + + /** + *

Iniciativa(s): NUMERO_INICIATIVA

+ * + *

Regra(s) de negócio: NUMERO_REGRA_DE_NEGOCIO

+ * + * Método responsável por remover movimentos de devolucao + * + * @author juliana.barbosa + * + * @param entity + */ + public void removerMovimentosDevolucao(DevolucaoItem entity); } diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoItemServiceImpl.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoItemServiceImpl.java index 50294d7..e48e6e9 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoItemServiceImpl.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoItemServiceImpl.java @@ -13,6 +13,7 @@ import br.com.centralit.api.model.AtendimentoRequisicaoConsumoItem; import br.com.centralit.api.model.RequisicaoConsumo; import br.com.centralit.api.model.RequisicaoConsumoItem; import br.com.centralit.api.service.AtendimentoRequisicaoConsumoItemService; +import br.com.centralit.api.service.ContaContabilMovimentoService; import br.com.centralit.api.service.MaterialConsumoService; import br.com.centralit.api.service.MovimentoEstoqueService; import br.com.centralit.api.service.RequisicaoConsumoItemService; @@ -62,6 +63,9 @@ public class AtendimentoRequisicaoConsumoItemServiceImpl extends GenericServiceI @Autowired private RequisicaoConsumoService requisicaoConsumoService; + + @Autowired + private ContaContabilMovimentoService contaContabilMovimentoService; /** * Responsável pela criação de novas instâncias desta classe. @@ -119,6 +123,11 @@ public class AtendimentoRequisicaoConsumoItemServiceImpl extends GenericServiceI throw new BusinessException(VALIDACAO_ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO, CodigoErro.REGRA_NEGOCIO.getValue()); } + + //Remove movimentos do estoque + this.movimentoEstoqueService.removerMovimentosAtendimentoItem(entity); + //Remove movimentos contacontabil + this.contaContabilMovimentoService.removerMovimentosAtendimento(entity.getId()); return super.remove(entity); } 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 32cb394..2c5a95b 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 @@ -17,6 +17,7 @@ import br.com.centralit.api.model.AtendimentoRequisicaoConsumoItem; import br.com.centralit.api.model.DominioAlmoxarifado; import br.com.centralit.api.service.AtendimentoRequisicaoConsumoItemService; import br.com.centralit.api.service.AtendimentoRequisicaoConsumoService; +import br.com.centralit.api.service.ContaContabilMovimentoService; import br.com.centralit.api.service.DominioService; import br.com.centralit.api.service.MaterialConsumoService; import br.com.centralit.api.service.MovimentoEstoqueService; @@ -94,6 +95,9 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl< @Autowired private ConfiguracaoParametroSistemaService configuracaoParametroSistemaService; + + @Autowired + private ContaContabilMovimentoService contaContabilMovimentoService; /** * Responsável pela criação de novas instâncias desta classe. @@ -175,11 +179,15 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl< AtendimentoRequisicaoConsumo atendimentoRequisicaoConsumo = super.merge(atendimento); + //Apaga movimentos de estoque this.movimentoEstoqueService.removerMovimentosAtendimento(atendimentoRequisicaoConsumo); - + + //Apaga movimentos contabeis + for (AtendimentoRequisicaoConsumoItem atendimentoItem : entity.getAtendimentoRequisicaoConsumoItems()){ + this.contaContabilMovimentoService.removerMovimentosAtendimento(atendimentoItem.getId()); + } this.movimentoEstoqueService.gerarMovimentoAtendimento(atendimentoRequisicaoConsumo); - - } + } } @@ -328,6 +336,9 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl< prontaParaAtendimento = Boolean.FALSE; } + + //Remove movimentos contacontabil + this.contaContabilMovimentoService.removerMovimentosAtendimento(atendimentoRequisicaoConsumoItem.getId()); } if (prontaParaAtendimento) { @@ -339,6 +350,7 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl< entity.getRequisicaoConsumo().setTipoStatusRequisicao(this.dominioService.findByChaveAndCodigo(DominioAlmoxarifado.TIPO_STATUS_REQUISICAO, DominioAlmoxarifado.TIPO_STATUS_ATENDIDA_PARCIALMENTE)); } + //Remove movimentos estoque this.movimentoEstoqueService.removerMovimentosAtendimento(entity); return super.remove(entity); diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/BaixaAlmoxarifadoItemServiceImpl.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/BaixaAlmoxarifadoItemServiceImpl.java index ee27686..e3975e5 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/BaixaAlmoxarifadoItemServiceImpl.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/BaixaAlmoxarifadoItemServiceImpl.java @@ -16,6 +16,7 @@ import br.com.centralit.api.model.DominioAlmoxarifado; import br.com.centralit.api.model.MovimentoEstoque; import br.com.centralit.api.service.BaixaAlmoxarifadoItemService; import br.com.centralit.api.service.BaixaAlmoxarifadoService; +import br.com.centralit.api.service.ContaContabilMovimentoService; import br.com.centralit.api.service.DominioService; import br.com.centralit.api.service.MaterialConsumoService; import br.com.centralit.api.service.MovimentoEstoqueService; @@ -78,6 +79,9 @@ public class BaixaAlmoxarifadoItemServiceImpl extends GenericServiceImpl) baixaAlmoxarifadoItem.getMovimentos()); } + this.contaContabilMovimentoService.removerMovimentosBaixa(baixaAlmoxarifadoItem.getId()); } else { throw new BusinessException(MSG_INFORME_DATA_ESTORNO, CodigoErro.REGRA_NEGOCIO.getValue()); @@ -198,8 +203,8 @@ public class BaixaAlmoxarifadoItemServiceImpl extends GenericServiceImpl) baixaAlmoxarifadoItem.getMovimentos()); - } + this.contaContabilMovimentoService.removerMovimentosBaixa(baixaAlmoxarifadoItem.getId()); } super.removeList(listEntity); @@ -213,8 +218,9 @@ public class BaixaAlmoxarifadoItemServiceImpl extends GenericServiceImpl) baixaAlmoxarifadoItem.getMovimentos()); - } + + this.contaContabilMovimentoService.removerMovimentosBaixa(id); baixaAlmoxarifadoItem.setBaixaRemocao(baixaAlmoxarifadoItem.getBaixaAlmoxarifado()); diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/BaixaAlmoxarifadoServiceImpl.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/BaixaAlmoxarifadoServiceImpl.java index 98d2a80..7bcec71 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/BaixaAlmoxarifadoServiceImpl.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/BaixaAlmoxarifadoServiceImpl.java @@ -132,13 +132,14 @@ public class BaixaAlmoxarifadoServiceImpl extends GenericServiceImpl implements DevolucaoItemService { private DevolucaoItemDao devolucaoItemDao; + + @Autowired + public MovimentoEstoqueService movimentoEstoqueService; + + @Autowired + public ContaContabilMovimentoService contaContabilMovimentoService; @Autowired public DevolucaoItemServiceImpl(DevolucaoItemDao devolucaoItemDao, @Qualifier("devolucaoItemValidator") Validator validator) { @@ -73,4 +86,27 @@ public class DevolucaoItemServiceImpl extends GenericServiceImpl im @Autowired private ConfiguracaoParametroSistemaService configuracaoParametroSistemaService; + + @Autowired + private ContaContabilMovimentoService contaContabilMovimentoService; @Autowired public DevolucaoServiceImpl( DevolucaoDao devolucaoDao, @Qualifier("devolucaoValidator") Validator validator ) { @@ -188,6 +192,11 @@ public class DevolucaoServiceImpl extends GenericServiceImpl im public boolean remove(Devolucao entity) { this.devolucaoItemService.calcularQuantidadeDevolvida(entity, Boolean.FALSE); + + for (DevolucaoItem devolucaoItem : entity.getDevolucaoItens()) { + this.movimentoEstoqueService.removerMovimentosDevolucao(devolucaoItem); + this.contaContabilMovimentoService.removerMovimentosDevolucao(devolucaoItem.getId()); + } return super.remove(entity); } diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/MovimentoEstoqueServiceImpl.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/MovimentoEstoqueServiceImpl.java index 6f724ea..04dae7a 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/MovimentoEstoqueServiceImpl.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/MovimentoEstoqueServiceImpl.java @@ -110,7 +110,8 @@ public class MovimentoEstoqueServiceImpl extends GenericServiceImpl movimentosDevolucao = this.movimentoEstoqueDao.listarMovimentos(entity, "devolucaoItem.id"); + + this.removeList(movimentosDevolucao); + } /** *

@@ -196,7 +213,7 @@ public class MovimentoEstoqueServiceImpl extends GenericServiceImpl movimentos = new ArrayList(); @@ -218,9 +235,9 @@ public class MovimentoEstoqueServiceImpl extends GenericServiceImpl movimentos = new ArrayList(); @@ -266,15 +283,16 @@ public class MovimentoEstoqueServiceImpl extends GenericServiceImpl listEntity) { @@ -291,17 +309,17 @@ public class MovimentoEstoqueServiceImpl extends GenericServiceImpl movimentos = new ArrayList(); @@ -360,9 +378,9 @@ public class MovimentoEstoqueServiceImpl extends GenericServiceImpl movimentosAtendimento = this.movimentoEstoqueDao.listarMovimentos(entity, "atendimentoRequisicaoConsumoItem.id"); + + this.removeList(movimentosAtendimento); + + } /** * {@inheritDoc} diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/RequisicaoConsumoServiceImpl.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/RequisicaoConsumoServiceImpl.java index 0fc687c..38f2f30 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/RequisicaoConsumoServiceImpl.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/RequisicaoConsumoServiceImpl.java @@ -284,7 +284,7 @@ public class RequisicaoConsumoServiceImpl extends GenericServiceImpl