Commit c8a25f32ae2ac3b3d519f1a6b9c932cf402d81bb

Authored by geovane.filho
1 parent bdffa2a4
Exists in master

Redmine #4483 Bloqueando estorno de baixa e baixa realizada pelo inventário enqu…

…anto o mês de referência é fechado.
citgrp-patrimonio-web/src/main/java/br/com/centralit/controller/BaixaItemController.java
... ... @@ -8,11 +8,15 @@ import org.springframework.web.bind.annotation.RequestMethod;
8 8 import org.springframework.web.bind.annotation.ResponseBody;
9 9  
10 10 import br.com.centralit.api.model.BaixaPatrimonioItem;
  11 +import br.com.centralit.api.model.MyMensagemRetorno;
  12 +import br.com.centralit.api.model.MyRetornoStatus;
11 13 import br.com.centralit.api.service.BaixaItemService;
  14 +import br.com.centralit.api.service.OrganizacaoService;
12 15 import br.com.centralit.api.viewHelper.EstornoBaixaItemVH;
13 16 import br.com.centralit.framework.controller.GenericController;
14 17 import br.com.centralit.framework.json.ResponseBodyWrapper;
15 18 import br.com.centralit.framework.json.Views;
  19 +import br.com.centralit.framework.model.Organizacao;
16 20  
17 21 /**
18 22 * <p>
... ... @@ -43,6 +47,9 @@ import br.com.centralit.framework.json.Views;
43 47 public class BaixaItemController extends GenericController<BaixaPatrimonioItem> {
44 48  
45 49 private BaixaItemService baixaItemService;
  50 +
  51 + @Autowired
  52 + private OrganizacaoService organizacaoService;
46 53  
47 54 public BaixaItemController() {
48 55 super();
... ... @@ -74,10 +81,22 @@ public class BaixaItemController extends GenericController&lt;BaixaPatrimonioItem&gt;
74 81 @RequestMapping(method = RequestMethod.POST, value = "/estornarListaBaixaItem")
75 82 @ResponseBody
76 83 public ResponseBodyWrapper estornarListaBaixaItem(@RequestBody EstornoBaixaItemVH estornoBaixaItemVH) throws Exception {
  84 +
  85 + Organizacao organizacao = this.organizacaoService.find(this.getUsuario().getOrganizacao().getId());
  86 +
  87 + if (!organizacao.getEmFechamento()) {
  88 + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.baixaItemService.estornarItensBaixa(estornoBaixaItemVH), getEditView());
  89 +
  90 + return responseBody;
  91 + } else {
  92 + MyRetornoStatus retorno = new MyRetornoStatus();
  93 + retorno.data = estornoBaixaItemVH;
  94 + retorno.mensagens.add(new MyMensagemRetorno(MyMensagemRetorno.TipoMensagemRetorno.warning, "MSG.ORGANIZACAO_EM_FECHAMENTO_MES"));
77 95  
78   - ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.baixaItemService.estornarItensBaixa(estornoBaixaItemVH), getEditView());
  96 + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(retorno, getEditView());
79 97  
80   - return responseBody;
  98 + return responseBody;
  99 + }
81 100 }
82 101  
83 102 /**
... ...
citgrp-patrimonio-web/src/main/java/br/com/centralit/listener/StartupListenerPatrimonio.java
... ... @@ -648,6 +648,7 @@ public class StartupListenerPatrimonio extends UtilStartup implements Applicatio
648 648 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.VALIDACAO.NUMERO_BEM_PATRIMONIAL_REPETIDO", "Já existe um bem patrimonial com esse número!", dominio, modulo));
649 649 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.VALIDACAO.DATA_CONTABIL_DATA_RECEBIMENTO", "A data de contabilização não pode ser menor que a data de recebimento!", dominio, modulo));
650 650 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.VALIDACAO.DATA_CONTABIL_ALTERADA_TRANSFERENCIA", "Você não pode alterar a data de contabilização após realizar movimentações nos bens da mesma!", dominio, modulo));
  651 + internacionalizacaoList.add(new Internacionalizacao("VALIDACAO.EXCLUSAO_BAIXA", "A baixa ou um dos seus itens só pode ser excluído se a situação for 'EM ANDAMENTO'", dominio, modulo));
651 652  
652 653 }
653 654  
... ...
citgrp-patrimonio-web/src/main/webapp/assets/js/angular/custom/controller/BaixaListController.js
... ... @@ -196,11 +196,18 @@ citApp.controller(&#39;BaixaListController&#39;, [&#39;$scope&#39;, &#39;BaixaRepository&#39;, &#39;$transla
196 196 $scope.setLoadingGet(true);
197 197 // realiza estorno da baixa
198 198 BaixaItemRepository.estornarItens(estornoBaixaItemVH).then(function(result) {
199   - baixa.baixaItens = result;
200   - $scope.showAlert('success', $translate.instant('MSG.ESTORNADO_COM_SUCESSO'));
201   - $scope.$modalConfirmInstance.dismiss('cancel');
202   - $scope.$dataEstorno = null;
203   - $scope.setLoading(false);
  199 + if (result.originalElement && result.originalElement.status != undefined && !result.originalElement.status && result.originalElement.mensagens) {
  200 + $scope.setLoading(false);
  201 + angular.forEach(result.originalElement.mensagens, function (mensagem) {
  202 + $scope.showAlert(mensagem.tipoMensagem, $translate.instant(mensagem.mensagem));
  203 + });
  204 + } else {
  205 + baixa.baixaItens = result;
  206 + $scope.showAlert('success', $translate.instant('MSG.ESTORNADO_COM_SUCESSO'));
  207 + $scope.$modalConfirmInstance.dismiss('cancel');
  208 + $scope.$dataEstorno = null;
  209 + $scope.setLoading(false);
  210 + }
204 211 });
205 212  
206 213 };
... ...
citgrp-patrimonio-web/src/main/webapp/assets/js/angular/custom/controller/InventarioController.js
... ... @@ -2882,20 +2882,27 @@ citApp.controller(&#39;InventarioController&#39;, [&#39;$scope&#39;, &#39;$filter&#39;, &#39;$translate&#39;, &#39;$
2882 2882 // Salva a baixa
2883 2883 BaixaRepository.save($scope.baixaBem).then(function(result) {
2884 2884  
2885   - $timeout(function(){
2886   - // Salva a alteração do dominío inconsistência - Data tratamento
2887   - DominioRepository.buscaDominioByCodigoAndChave(2, 'tipoTratamentoInconsistencia').then(function(result) {
2888   - $scope.dominioInconsistencia.dominioTrataInconsistencia = result.originalElement;
2889   - alterarDominioInconsistencia($scope.dominioInconsistencia);
  2885 + if (result.originalElement && result.originalElement.status != undefined && !result.originalElement.status && result.originalElement.mensagens) {
  2886 + $scope.setLoading(false);
  2887 + angular.forEach(result.originalElement.mensagens, function (mensagem) {
  2888 + $scope.showAlert(mensagem.tipoMensagem, $translate.instant(mensagem.mensagem));
  2889 + });
  2890 + } else {
  2891 + $timeout(function(){
  2892 + // Salva a alteração do dominío inconsistência - Data tratamento
  2893 + DominioRepository.buscaDominioByCodigoAndChave(2, 'tipoTratamentoInconsistencia').then(function(result) {
  2894 + $scope.dominioInconsistencia.dominioTrataInconsistencia = result.originalElement;
  2895 + alterarDominioInconsistencia($scope.dominioInconsistencia);
  2896 + });
2890 2897 });
2891   - });
2892 2898  
2893   - if($scope.executarBaixaModalConfirm){
2894   - $scope.$modalConfirmInstance.dismiss('cancel');
2895   - $scope.tratarInconsistenciasAutomaticamente();
2896   - } else {
2897   - $scope.$modalInstance.dismiss('cancel');
2898   - $scope.setLoading(false);
  2899 + if($scope.executarBaixaModalConfirm){
  2900 + $scope.$modalConfirmInstance.dismiss('cancel');
  2901 + $scope.tratarInconsistenciasAutomaticamente();
  2902 + } else {
  2903 + $scope.$modalInstance.dismiss('cancel');
  2904 + $scope.setLoading(false);
  2905 + }
2899 2906 }
2900 2907  
2901 2908 });
... ...