Commit c46f18f654621f54ef55836d98c0e56c80a74bd7

Authored by erick.sato
1 parent a65a9496
Exists in master

[Redmine Atendimento #4709]Permitir alterar status bem patrimonial pelo tratamen…

…to de inconstencia do inventario
citgrp-patrimonio-api/src/main/java/br/com/centralit/api/service/BemPatrimonialService.java
... ... @@ -903,4 +903,6 @@ public interface BemPatrimonialService extends GenericService<BemPatrimonial, Lo
903 903 * @return
904 904 */
905 905 List<Long> buscaIdBensPorEntradaItem(Long entradaItemId);
  906 +
  907 + void alterarStatusBemPatrimonialInventario(Dominio novoStatus, Long idBem);
906 908 }
... ...
citgrp-patrimonio-api/src/main/java/br/com/centralit/api/service/impl/BemPatrimonialServiceImpl.java
... ... @@ -206,7 +206,7 @@ public class BemPatrimonialServiceImpl extends GenericServiceImpl&lt;BemPatrimonial
206 206  
207 207 @Autowired
208 208 private ConfiguracaoParametroSistemaService configuracaoParametroSistemaService;
209   -
  209 +
210 210 @Autowired
211 211 public BemPatrimonialServiceImpl( BemPatrimonialDao bemPatrimonialDao ) {
212 212  
... ... @@ -2683,7 +2683,7 @@ public class BemPatrimonialServiceImpl extends GenericServiceImpl&lt;BemPatrimonial
2683 2683  
2684 2684 if (tratamentoInconsistenciaVH.getSaidaTemporaria() != null) {
2685 2685 this.saidaTemporariaService.save(tratamentoInconsistenciaVH.getSaidaTemporaria());
2686   - } else {
  2686 + } else if(tratamentoInconsistenciaVH.getBaixa() != null){
2687 2687 try {
2688 2688 this.baixaService.save(tratamentoInconsistenciaVH.getBaixa());
2689 2689  
... ... @@ -2699,8 +2699,14 @@ public class BemPatrimonialServiceImpl extends GenericServiceImpl&lt;BemPatrimonial
2699 2699 dominioInconsistencia.setDataTratamento(Calendar.getInstance());
2700 2700 if (tratamentoInconsistenciaVH.getSaidaTemporaria() != null) {
2701 2701 dominioInconsistencia.setDominioTrataInconsistencia(this.dominioService.findByChaveAndCodigo(Dominio.TIPO_TRATAMENTO_INCONSISTENCIA, Dominio.TIPO_TRATAMENTO_SAIDA_TEMPORARIA));
2702   - } else {
  2702 + } else if(tratamentoInconsistenciaVH.getBaixa() != null){
2703 2703 dominioInconsistencia.setDominioTrataInconsistencia(this.dominioService.findByChaveAndCodigo(Dominio.TIPO_TRATAMENTO_INCONSISTENCIA, Dominio.TIPO_TRATAMENTO_BAIXA));
  2704 + } else if(tratamentoInconsistenciaVH.getNovoStatusBem() != null){
  2705 + dominioInconsistencia.setDominioTrataInconsistencia(this.dominioService.findByChaveAndCodigo(Dominio.TIPO_TRATAMENTO_INCONSISTENCIA, Dominio.TIPO_TRATAMENTO_STATUS_PATRIMONIO));
  2706 +
  2707 + DadosBemPatrimonial dadosBemPatrimonial = this.dadosBemPatrimonialService.find(inventarioBemPatrimonial.getDadosBemPatrimonial().getId());
  2708 + alterarStatusBemPatrimonialInventario(tratamentoInconsistenciaVH.getNovoStatusBem(), dadosBemPatrimonial.getBemPatrimonial().getId());
  2709 +
2704 2710 }
2705 2711 dominioInconsistencia.setInventarioBemPatrimonial(inventarioBemPatrimonial);
2706 2712 this.dominioInconsistenciaService.merge(dominioInconsistencia);
... ... @@ -2712,6 +2718,18 @@ public class BemPatrimonialServiceImpl extends GenericServiceImpl&lt;BemPatrimonial
2712 2718  
2713 2719 }
2714 2720  
  2721 + public void alterarStatusBemPatrimonialInventario(Dominio novoStatus, Long idBem) {
  2722 + BemPatrimonial bemPatrimonial = this.getReference(idBem);
  2723 + AlteracaoBemVH alteracaoBemVH = new AlteracaoBemVH();
  2724 + alteracaoBemVH.setDataAlteracao(UtilDate.getDataAtualCalendar());
  2725 + alteracaoBemVH.setDominioMotivoAlteracao(this.dominioService.findByChaveAndCodigo(Dominio.TIPO_MOTIVO_ALTERACAO_BEM, Dominio.TIPO_MOTIVO_ALTERACAO_BEM_INVENTARIO_CODIGO));
  2726 + alteracaoBemVH.setDominioStatus(novoStatus);
  2727 + this.historicoBempatrimonialService.gerarHistoricoStatusBem(alteracaoBemVH, bemPatrimonial);
  2728 +
  2729 + bemPatrimonial.setDominioStatus(novoStatus);
  2730 + this.merge(bemPatrimonial);
  2731 + }
  2732 +
2715 2733 @Override
2716 2734 public InventarioEstruturaOrganizacional alterarListaBemInconsistenciaTipo10(TratamentoInconsistenciaVH tratamentoInconsistenciaVH) {
2717 2735  
... ...
citgrp-patrimonio-api/src/main/java/br/com/centralit/api/viewHelper/TratamentoInconsistenciaVH.java
... ... @@ -11,22 +11,34 @@ import br.com.centralit.api.model.InventarioBemPatrimonial;
11 11 import br.com.centralit.api.model.SaidaTemporaria;
12 12 import br.com.centralit.api.model.Transferencia;
13 13 import br.com.centralit.framework.json.Views;
  14 +import br.com.centralit.framework.model.Dominio;
14 15  
15 16 import com.fasterxml.jackson.annotation.JsonView;
16 17  
17   -
18 18 /**
19   - * <p><img src="http://centralit.com.br/images/logo_central.png"></p>
  19 + * <p>
  20 + * <img src="http://centralit.com.br/images/logo_central.png">
  21 + * </p>
20 22 *
21   - * <p><b>Company: </b> Central IT - Governança Corporativa - </p>
  23 + * <p>
  24 + * <b>Company: </b> Central IT - Governança Corporativa -
  25 + * </p>
22 26 *
23   - * <p><b>Title: </b></p>
  27 + * <p>
  28 + * <b>Title: </b>
  29 + * </p>
24 30 *
25   - * <p><b>Description: </b></p>
  31 + * <p>
  32 + * <b>Description: </b>
  33 + * </p>
26 34 *
27   - * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p>
  35 + * <p>
  36 + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a>
  37 + * </p>
28 38 *
29   - * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p>
  39 + * <p>
  40 + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a>
  41 + * </p>
30 42 *
31 43 * @since 13/11/2015 - 13:16:22
32 44 *
... ... @@ -70,6 +82,9 @@ public class TratamentoInconsistenciaVH implements Serializable {
70 82 @JsonView({ Views.DadosBemPatrimonialEditView.class })
71 83 private Inventario inventario;
72 84  
  85 + @JsonView({ Views.InventarioBemPatrimonialInconsistenciaMapView.class })
  86 + private Dominio novoStatusBem;
  87 +
73 88 /**
74 89 * Retorna o valor do atributo <code>transferencia</code>
75 90 *
... ... @@ -80,7 +95,6 @@ public class TratamentoInconsistenciaVH implements Serializable {
80 95 return transferencia;
81 96 }
82 97  
83   -
84 98 /**
85 99 * Define o valor do atributo <code>transferencia</code>.
86 100 *
... ... @@ -91,7 +105,6 @@ public class TratamentoInconsistenciaVH implements Serializable {
91 105 this.transferencia = transferencia;
92 106 }
93 107  
94   -
95 108 /**
96 109 * Retorna o valor do atributo <code>listaInventarioBem</code>
97 110 *
... ... @@ -102,7 +115,6 @@ public class TratamentoInconsistenciaVH implements Serializable {
102 115 return listaInventarioBem;
103 116 }
104 117  
105   -
106 118 /**
107 119 * Define o valor do atributo <code>listaInventarioBem</code>.
108 120 *
... ... @@ -113,7 +125,6 @@ public class TratamentoInconsistenciaVH implements Serializable {
113 125 this.listaInventarioBem = listaInventarioBem;
114 126 }
115 127  
116   -
117 128 /**
118 129 * Retorna o valor do atributo <code>idEstruturaOrganizacional</code>
119 130 *
... ... @@ -124,7 +135,6 @@ public class TratamentoInconsistenciaVH implements Serializable {
124 135 return idEstruturaOrganizacional;
125 136 }
126 137  
127   -
128 138 /**
129 139 * Define o valor do atributo <code>idEstruturaOrganizacional</code>.
130 140 *
... ... @@ -135,8 +145,6 @@ public class TratamentoInconsistenciaVH implements Serializable {
135 145 this.idEstruturaOrganizacional = idEstruturaOrganizacional;
136 146 }
137 147  
138   -
139   -
140 148 /**
141 149 * Retorna o valor do atributo <code>saidaTemporaria</code>
142 150 *
... ... @@ -147,8 +155,6 @@ public class TratamentoInconsistenciaVH implements Serializable {
147 155 return saidaTemporaria;
148 156 }
149 157  
150   -
151   -
152 158 /**
153 159 * Define o valor do atributo <code>saidaTemporaria</code>.
154 160 *
... ... @@ -159,8 +165,6 @@ public class TratamentoInconsistenciaVH implements Serializable {
159 165 this.saidaTemporaria = saidaTemporaria;
160 166 }
161 167  
162   -
163   -
164 168 /**
165 169 * Retorna o valor do atributo <code>baixa</code>
166 170 *
... ... @@ -171,8 +175,6 @@ public class TratamentoInconsistenciaVH implements Serializable {
171 175 return baixa;
172 176 }
173 177  
174   -
175   -
176 178 /**
177 179 * Define o valor do atributo <code>baixa</code>.
178 180 *
... ... @@ -183,8 +185,6 @@ public class TratamentoInconsistenciaVH implements Serializable {
183 185 this.baixa = baixa;
184 186 }
185 187  
186   -
187   -
188 188 /**
189 189 * Retorna o valor do atributo <code>bemPatrimonial</code>
190 190 *
... ... @@ -195,8 +195,6 @@ public class TratamentoInconsistenciaVH implements Serializable {
195 195 return bemPatrimonial;
196 196 }
197 197  
198   -
199   -
200 198 /**
201 199 * Define o valor do atributo <code>bemPatrimonial</code>.
202 200 *
... ... @@ -207,47 +205,44 @@ public class TratamentoInconsistenciaVH implements Serializable {
207 205 this.bemPatrimonial = bemPatrimonial;
208 206 }
209 207  
210   -
211 208 public Long getCodigoDominioTratamentoEscolhido() {
212 209 return codigoDominioTratamentoEscolhido;
213 210 }
214 211  
215   -
216   - public void setCodigoDominioTratamentoEscolhido(
217   - Long codigoDominioTratamentoEscolhido) {
  212 + public void setCodigoDominioTratamentoEscolhido(Long codigoDominioTratamentoEscolhido) {
218 213 this.codigoDominioTratamentoEscolhido = codigoDominioTratamentoEscolhido;
219 214 }
220 215  
221   -
222 216 public List<DadosBemPatrimonial> getListaDadosBemPatrimonial() {
223 217 return listaDadosBemPatrimonial;
224 218 }
225 219  
226   -
227   - public void setListaDadosBemPatrimonial(
228   - List<DadosBemPatrimonial> listaDadosBemPatrimonial) {
  220 + public void setListaDadosBemPatrimonial(List<DadosBemPatrimonial> listaDadosBemPatrimonial) {
229 221 this.listaDadosBemPatrimonial = listaDadosBemPatrimonial;
230 222 }
231 223  
232   -
233 224 public DadosBemPatrimonial getDadosBemPatrimonialSelecionado() {
234 225 return dadosBemPatrimonialSelecionado;
235 226 }
236 227  
237   -
238   - public void setDadosBemPatrimonialSelecionado(
239   - DadosBemPatrimonial dadosBemPatrimonialSelecionado) {
  228 + public void setDadosBemPatrimonialSelecionado(DadosBemPatrimonial dadosBemPatrimonialSelecionado) {
240 229 this.dadosBemPatrimonialSelecionado = dadosBemPatrimonialSelecionado;
241 230 }
242 231  
243   -
244 232 public Inventario getInventario() {
245 233 return inventario;
246 234 }
247 235  
248   -
249 236 public void setInventario(Inventario inventario) {
250 237 this.inventario = inventario;
251 238 }
252 239  
  240 + public Dominio getNovoStatusBem() {
  241 + return novoStatusBem;
  242 + }
  243 +
  244 + public void setNovoStatusBem(Dominio novoStatusBem) {
  245 + this.novoStatusBem = novoStatusBem;
  246 + }
  247 +
253 248 }
... ...
citgrp-patrimonio-web/src/main/java/br/com/centralit/controller/BemPatrimonialController.java
... ... @@ -25,6 +25,7 @@ import br.com.centralit.api.model.MyRetornoStatus;
25 25 import br.com.centralit.api.model.Transferencia;
26 26 import br.com.centralit.api.service.AdicaoBemPrincipalService;
27 27 import br.com.centralit.api.service.BemPatrimonialService;
  28 +import br.com.centralit.api.service.DominioService;
28 29 import br.com.centralit.api.service.EntradaItemService;
29 30 import br.com.centralit.api.service.OrganizacaoService;
30 31 import br.com.centralit.api.service.TransferenciaService;
... ... @@ -60,6 +61,9 @@ public class BemPatrimonialController extends GenericController&lt;BemPatrimonial&gt;
60 61 @Autowired
61 62 private TransferenciaService transferenciaService;
62 63  
  64 + @Autowired
  65 + private DominioService dominioService;
  66 +
63 67 public BemPatrimonialController() {
64 68  
65 69 super();
... ... @@ -573,7 +577,8 @@ public class BemPatrimonialController extends GenericController&lt;BemPatrimonial&gt;
573 577  
574 578 Organizacao organizacao = this.organizacaoService.find(this.getUsuario().getOrganizacao().getId());
575 579  
576   - if (!organizacao.getEmFechamento() && UtilObjeto.isReferencia(tratamentoInconsistenciaVH.getBaixa())) {
  580 + if (!organizacao.getEmFechamento() && (UtilObjeto.isReferencia(tratamentoInconsistenciaVH.getBaixa()) || UtilObjeto.isReferencia(tratamentoInconsistenciaVH.getNovoStatusBem()))
  581 + || UtilObjeto.isReferencia(tratamentoInconsistenciaVH.getSaidaTemporaria()) ) {
577 582  
578 583 ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.bemPatrimonialService.alterarListaBemInconsistenciaTipo1(tratamentoInconsistenciaVH), getEditView());
579 584  
... ... @@ -705,4 +710,12 @@ public class BemPatrimonialController extends GenericController&lt;BemPatrimonial&gt;
705 710 }
706 711 }
707 712  
  713 + @RequestMapping(value = "/alterarStatusBemPatrimonialInventario", method = RequestMethod.GET, produces = "application/json")
  714 + @ResponseBody
  715 + public Boolean alterarStatusBemPatrimonialInventario(@RequestParam(value = "idDominioStatusBem") Long idDominioStatusBem, @RequestParam(value = "idBemPatrimonial") Long idBemPatrimonial) {
  716 + this.bemPatrimonialService.alterarStatusBemPatrimonialInventario(this.dominioService.find(idDominioStatusBem), idBemPatrimonial);
  717 + return true;
  718 + }
  719 +
  720 +
708 721 }
... ...
citgrp-patrimonio-web/src/main/java/br/com/centralit/listener/StartupListenerPatrimonio.java
... ... @@ -591,6 +591,7 @@ public class StartupListenerPatrimonio extends UtilStartup implements Applicatio
591 591 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.LABEL.TITULO_INVENTARIO_GERAL_RESUMO_CONTA_CONTABIL", "Relatório Inventário Geral – Resumo por Contas", dominio, modulo));
592 592 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.LABEL.TITULO_INVENTARIO_QUANTITATIVO_LEVANTAMENTO", "Relatório Quantitativo Por Levantamento", dominio, modulo));
593 593 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.LABEL.TRANSFERENCIA_CANCELADA", "Transferência cancelada", dominio, modulo));
  594 + internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.LABEL.ALTERAR_STATUS", "Alteração de status", dominio, modulo));
594 595  
595 596 }
596 597  
... ... @@ -755,6 +756,7 @@ public class StartupListenerPatrimonio extends UtilStartup implements Applicatio
755 756 internacionalizacaoList.add(new Internacionalizacao("HISTORICO_SAIDA_COM_PREVISAO" , "Bem está em saída temporária com o objetivo: :OBJETIVOSAIDA:. Data Prevista para Retorno: :DATARETORNO:.", dominio, modulo));
756 757 internacionalizacaoList.add(new Internacionalizacao("VALIDACAO.DATA_FORA_REFERENCIA_EXCLUSAO_ENTRADA" , "Essa entrada não pode ser excluída porque ela não foi contabilizada na referência vigente.", dominio, modulo));
757 758 internacionalizacaoList.add(new Internacionalizacao("VALIDACAO.EXCLUSAO_TRANSFERENCIA_IMPOSSIVEL" , "Não é possível excluir a transferência, pois houve movimentação após a transferência!", dominio, modulo));
  759 + internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.MSG.ACAO_ALTERAR_STATUS", "Esta ação irá realizar uma alteração de status do bem patrimonial", dominio, modulo));
758 760 }
759 761  
760 762 }
... ...
citgrp-patrimonio-web/src/main/webapp/assets/js/angular/custom/controller/InventarioController.js
... ... @@ -2812,7 +2812,7 @@ citApp.controller(&#39;InventarioController&#39;, [&#39;$scope&#39;, &#39;$filter&#39;, &#39;$translate&#39;, &#39;$
2812 2812 }
2813 2813  
2814 2814 };
2815   -
  2815 +
2816 2816 $scope.baixa = function(desfazimentoComissao, dataBaixa) {
2817 2817  
2818 2818 $scope.desfazimentoComissao = desfazimentoComissao;
... ... @@ -3839,6 +3839,41 @@ citApp.controller(&#39;InventarioController&#39;, [&#39;$scope&#39;, &#39;$filter&#39;, &#39;$translate&#39;, &#39;$
3839 3839  
3840 3840  
3841 3841 };
  3842 +
  3843 + $scope.alterarStatusBemMultipla = function(dominioStatusBem) {
  3844 +
  3845 + $scope.codigoDominioTratamentoEscolhido = 3;
  3846 + $scope.dominioStatusBem = dominioStatusBem.originalElement;
  3847 + $scope.setLoadingSalva(true);
  3848 +
  3849 + var listaIds = [];
  3850 + var idInventarioEstrutura = 0;
  3851 +
  3852 + angular.forEach($scope.inconsistenciaTipo1, function(item){
  3853 + idInventarioEstrutura = item.dadosBemPatrimonial.inventarioEstruturaOrganizacional.id;
  3854 + listaIds.push(item.dadosBemPatrimonial.bemPatrimonial.id);
  3855 + });
  3856 +
  3857 + DadosBemPatrimonialRepository.existeBemAguardandoTratamentoList(listaIds, $scope.inventario.id, idInventarioEstrutura).then(function(result) {
  3858 + if(result){
  3859 + $scope.$openModalConfirm({
  3860 + message: $translate.instant("PATRIMONIO.MSG.EXISTE_BEM_EXISTENTE_OUTRA_ESTRUTURA_INVENTARIO_TRATAMENTO"),
  3861 + callback: function () {
  3862 + $scope.executarSaidaTemporariaModalConfirm = true;
  3863 + $scope.$modalConfirmInstance.dismiss('cancel');
  3864 + $scope.$modalInstance.dismiss('cancel');
  3865 + $scope.alteracaoBemPatrimonialTipo1ListaAlteracaoStatus();
  3866 + }
  3867 + });
  3868 + }else{
  3869 + $scope.$modalInstance.dismiss('cancel');
  3870 + $scope.alteracaoBemPatrimonialTipo1ListaAlteracaoStatus();
  3871 + }
  3872 + });
  3873 +
  3874 + $scope.setLoading(false);
  3875 +
  3876 + };
3842 3877  
3843 3878 $scope.alteracaoBemPatrimonialTipo1ListaSaida = function() {
3844 3879  
... ... @@ -3893,6 +3928,36 @@ citApp.controller(&#39;InventarioController&#39;, [&#39;$scope&#39;, &#39;$filter&#39;, &#39;$translate&#39;, &#39;$
3893 3928 });
3894 3929  
3895 3930 };
  3931 +
  3932 + $scope.alteracaoBemPatrimonialTipo1ListaAlteracaoStatus = function() {
  3933 +
  3934 + $scope.setLoadingSalva(true);
  3935 +
  3936 + var tratamentoInconsistencia = {
  3937 + novoStatusBem : $scope.dominioStatusBem,
  3938 + listaInventarioBem : $scope.inconsistenciaTipo1,
  3939 + idEstruturaOrganizacional : getIdInventarioEstruturaOrganizacionalPorEstruturaSelecionada(),
  3940 + codigoDominioTratamentoEscolhido : $scope.codigoDominioTratamentoEscolhido
  3941 + };
  3942 +
  3943 + BemPatrimonialRepository.alterarListaBemInconsistenciaTipo1(tratamentoInconsistencia).then(function(result){
  3944 + if (result.originalElement && result.originalElement.status != undefined && !result.originalElement.status && result.originalElement.mensagens) {
  3945 + $scope.setLoading(false);
  3946 + angular.forEach(result.originalElement.mensagens, function (mensagem) {
  3947 + $scope.showAlert(mensagem.tipoMensagem, $translate.instant(mensagem.mensagem));
  3948 + });
  3949 + } else {
  3950 + alterarDominioStatusInventarioEstrutura(result);
  3951 + $scope.setLoading(false);
  3952 + $scope.scrollToCadastro('#atualizarMultiplosBensPatrimoniais');
  3953 + $scope.showAlert("success", $translate.instant("MSG.MG001"));
  3954 + $scope.getBensPatrimoniaisEstruturaOrganizacional($scope.estruturaOrganizacional);
  3955 + $scope.$modalInstance.dismiss('cancel');
  3956 + $scope.irParaFim();
  3957 + }
  3958 + });
  3959 +
  3960 + };
3896 3961  
3897 3962 $scope.abrirModalEntradaSalvaMultipla = function(item) {
3898 3963 $scope.itemSelecionado = item;
... ... @@ -3963,6 +4028,22 @@ citApp.controller(&#39;InventarioController&#39;, [&#39;$scope&#39;, &#39;$filter&#39;, &#39;$translate&#39;, &#39;$
3963 4028 $scope.$openModal('modal-baixa.html', 'md');
3964 4029  
3965 4030 };
  4031 +
  4032 + $scope.abrirModalAlterarStatus = function(dominioInconsistencia){
  4033 +
  4034 + $scope.dominioInconsistencia = dominioInconsistencia;
  4035 +
  4036 + DominioRepository.findAllDominio('tipoStatusBem').then(function(result) {
  4037 + $scope.dominiosStatusBem = [];
  4038 + angular.forEach(result, function (dominio) {
  4039 + if(dominio.codigo == 7 || dominio.codigo == 10 || dominio.codigo == 9){
  4040 + $scope.dominiosStatusBem.push(dominio);
  4041 + }
  4042 + });
  4043 + });
  4044 +
  4045 + $scope.$openModal('modal-alterar-status.html', 'md');
  4046 + };
3966 4047  
3967 4048 $scope.desabilitaCampoFisicaStatus = function(){
3968 4049 $scope.desabilitaBemNaoEncontrado = $scope.bemNaoEncontradoModel;
... ... @@ -4080,7 +4161,61 @@ citApp.controller(&#39;InventarioController&#39;, [&#39;$scope&#39;, &#39;$filter&#39;, &#39;$translate&#39;, &#39;$
4080 4161 $scope.getBensPatrimoniaisEstruturaOrganizacional($scope.estruturaOrganizacional);
4081 4162 $scope.irParaFim();
4082 4163 });
  4164 + };
  4165 +
  4166 + $scope.alterarStatusBemUnico = function(dominioStatusBem) {
  4167 +
  4168 + var idInventarioEstrutura = $scope.dadosBemPatrimonialSelecionado['inventarioEstruturaOrganizacional.id'] ? $scope.dadosBemPatrimonialSelecionado['inventarioEstruturaOrganizacional.id'] : $scope.dadosBemPatrimonialSelecionado.inventarioEstruturaOrganizacional.id;
  4169 + var idBem = $scope.dadosBemPatrimonialSelecionado['bemPatrimonial.id'] ? $scope.dadosBemPatrimonialSelecionado['bemPatrimonial.id'] : $scope.dadosBemPatrimonialSelecionado.bemPatrimonial.id;
  4170 + // Obtem DadosBemPatrimonial aguardado tratamento para o mesmo bem
  4171 + DadosBemPatrimonialRepository.existeBemAguardandoTratamento(idBem, $scope.inventario.id, idInventarioEstrutura).then(function(result) {
  4172 +
  4173 + $scope.obterNomeEstruturasDoBemInventariado(result);
  4174 + $scope.resultDadosBemPatrimonial = result;
  4175 + $scope.executarAlteracaoStatusBemModalConfirm = false;
  4176 +
  4177 + // HA ESTRUTURAS QUE ESTAO AGUARDANDO TRATAMENTO PARA O MESMO BEM
  4178 + if($scope.nomesEstruturasBemInventariado !== "") {
  4179 + $scope.$modalInstance.dismiss('cancel');
  4180 + $scope.$openModalConfirm({
  4181 + message: $translate.instant("PATRIMONIO.MSG.BEM_EXISTENTE_OUTRA_ESTRUTURA_INVENTARIO_TRATAMENTO").concat($scope.nomesEstruturasBemInventariado),
  4182 + callback: function () {
  4183 + $scope.executarAlteracaoStatusBemModalConfirm = true;
  4184 + $scope.executarAlteracaoStatusBem(dominioStatusBem);
  4185 + }
  4186 + });
  4187 +
  4188 + } else {
  4189 + $scope.executarAlteracaoStatusBem(dominioStatusBem);
  4190 + }
  4191 +
  4192 + });
  4193 + };
  4194 +
  4195 + $scope.executarAlteracaoStatusBem = function(dominioStatusBem) {
  4196 +
  4197 + $scope.setLoadingSalva(true);
  4198 + var idBem = $scope.dadosBemPatrimonialSelecionado['bemPatrimonial.id'] ? $scope.dadosBemPatrimonialSelecionado['bemPatrimonial.id'] : $scope.dadosBemPatrimonialSelecionado.bemPatrimonial.id;
  4199 + // Salva a baixa
  4200 + BemPatrimonialRepository.alterarStatusBemPatrimonialInventario(dominioStatusBem.id, idBem).then(function(result) {
  4201 + $timeout(function(){
  4202 + // Salva a alteração do dominío inconsistência - Data tratamento
  4203 + DominioRepository.buscaDominioByCodigoAndChave(2, 'tipoTratamentoInconsistencia').then(function(result) {
  4204 + $scope.dominioInconsistencia.dominioTrataInconsistencia = result.originalElement;
  4205 + alterarDominioInconsistencia($scope.dominioInconsistencia);
  4206 + });
  4207 + });
  4208 +
  4209 + if($scope.executarAlteracaoStatusBemModalConfirm){
  4210 + $scope.$modalConfirmInstance.dismiss('cancel');
  4211 + $scope.tratarInconsistenciasAutomaticamente();
  4212 + } else {
  4213 + $scope.$modalInstance.dismiss('cancel');
  4214 + $scope.setLoading(false);
  4215 + }
  4216 + });
  4217 +
  4218 + };
4083 4219  
4084   - };
4085 4220  
4086 4221 }]);
4087 4222 \ No newline at end of file
... ...
citgrp-patrimonio-web/src/main/webapp/assets/js/angular/custom/repository/BemPatrimonialRepository.js
... ... @@ -152,6 +152,11 @@ citApp.factory(&#39;BemPatrimonialRepository&#39;, [&#39;RestangularPatrimonio&#39;, &#39;AbstractRe
152 152 this.veirificaTransferenciaMaisRecenteBemPatrimonial = function(idBem) {
153 153 return restangularPatrimonio.one(this.route+"/veirificaTransferenciaMaisRecenteBemPatrimonial").get({"idBem": idBem}).then();
154 154 };
  155 +
  156 + this.alterarStatusBemPatrimonialInventario = function(idStatusBem, idBem) {
  157 + return restangularPatrimonio.one(this.route+"/alterarStatusBemPatrimonialInventario").get({"idDominioStatusBem": idStatusBem , "idBemPatrimonial": idBem}).then();
  158 + };
  159 +
155 160 }
156 161  
157 162 AbstractRepository.extend(BemPatrimonialRepository);
... ...
citgrp-patrimonio-web/src/main/webapp/html/inventario/inventarioEdit.html
... ... @@ -1203,6 +1203,11 @@
1203 1203 </a>
1204 1204 <span style="margin-left: 9px;" ng-if="dominioInconsistencia.dataTratamento !== null && dominioInconsistencia.dominioTipoInconsistencia.codigo === 1"><translate>PATRIMONIO.LABEL.BAIXA</translate></span>
1205 1205  
  1206 + <a href="#void" ng-click="abrirModalAlterarStatus(dominioInconsistencia)" style="margin-left: 10px;" ng-if="dominioInconsistencia.dataTratamento === null && controleInventariar">
  1207 + <span ng-if="dominioInconsistencia.dominioTipoInconsistencia.codigo === 1"><translate>PATRIMONIO.LABEL.ALTERAR_STATUS</translate></span>
  1208 + </a>
  1209 + <span style="margin-left: 9px;" ng-if="dominioInconsistencia.dataTratamento !== null && dominioInconsistencia.dominioTipoInconsistencia.codigo === 1"><translate>PATRIMONIO.LABEL.ALTERAR_STATUS</translate></span>
  1210 +
1206 1211 <a href="#void" ng-click="abrirModalTransferencia(dominioInconsistencia);" style="margin-left: 10px;" ng-if="dominioInconsistencia.dataTratamento === null && controleInventariar">
1207 1212 <span ng-if="dominioInconsistencia.dominioTipoInconsistencia.codigo === 2"><translate>PATRIMONIO.LABEL.TRANSFERENCIA_INTERNA</translate></span>
1208 1213 </a>
... ... @@ -1496,6 +1501,10 @@
1496 1501 <i class="fa fa-level-down blue"></i>
1497 1502 <translate>PATRIMONIO.LABEL.BAIXA</translate>
1498 1503 </button>
  1504 + <button class="btn btn-clear" title="{{$translate.instant('PATRIMONIO.LABEL.ALTERAR_STATUS')}}" alt="{{$translate.instant('PATRIMONIO.LABEL.ALTERAR_STATUS')}}" type="button" ng-click="abrirModalAlterarStatus();" >
  1505 + <i class="fa fa-edit orange"></i>
  1506 + <translate>PATRIMONIO.LABEL.ALTERAR_STATUS</translate>
  1507 + </button>
1499 1508 <button class="btn btn-clear" title="{{$translate.instant('PATRIMONIO.INTERFACE_USUARIO.BOTAO_CANCELAR')}}" alt="{{$translate.instant('PATRIMONIO.INTERFACE_USUARIO.BOTAO_CANCELAR')}}" type="button" ng-click="cancelarAlteraoInconsistencia();" >
1500 1509 <i class="fa fa-times red"></i>
1501 1510 <translate>PATRIMONIO.INTERFACE_USUARIO.BOTAO_CANCELAR</translate>
... ... @@ -1632,8 +1641,6 @@
1632 1641 </div>
1633 1642 </fieldset>
1634 1643 </div>
1635   -
1636   -
1637 1644 </form>
1638 1645  
1639 1646 <!-- DIALOG INFORMAR ENTRADA - INCONSISTENCIA -->
... ... @@ -1810,6 +1817,44 @@
1810 1817 </form>
1811 1818 </script>
1812 1819  
  1820 + <script type="text/ng-template" id="modal-alterar-status.html">
  1821 + <form name="formDialogAlterarStatus" novalidate >
  1822 +
  1823 + <div class="modal-content modal-dialog modal-md">
  1824 + <div class="modal-header">
  1825 + <button ng-show="!atualizarMultiplasInconsistenciasTipo1" title="{{$translate.instant('LABEL.CONFIRMAR')}}" alt="{{$translate.instant('LABEL.CONFIRMAR')}}" ng-click="alterarStatusBemUnico(dominioStatusBem);" class="btn btn-clear" type="button">
  1826 + <i class="fa fa-save green"></i>
  1827 + <translate>LABEL.CONFIRMAR</translate>
  1828 + </button>
  1829 +
  1830 + <button ng-show="atualizarMultiplasInconsistenciasTipo1" title="{{$translate.instant('LABEL.CONFIRMAR')}}" alt="{{$translate.instant('LABEL.CONFIRMAR')}}" ng-click="alterarStatusBemMultipla(dominioStatusBem);" class="btn btn-clear" type="button">
  1831 + <i class="fa fa-save green"></i>
  1832 + <translate>LABEL.CONFIRMAR</translate>
  1833 + </button>
  1834 +
  1835 + <button title="{{$translate.instant('LABEL.CANCELAR')}}" alt="{{$translate.instant('LABEL.CANCELAR')}}" ng-click="$dismiss('cancel');" class="btn btn-clear" type="button">
  1836 + <i class="fa fa-times red"></i>
  1837 + <translate>LABEL.CANCELAR</translate>
  1838 + </button>
  1839 + </div>
  1840 +
  1841 + <div class="modal-body">
  1842 + <h5><translate>PATRIMONIO.MSG.ACAO_ALTERAR_STATUS</translate>. <translate>MSG.CONFIRMA_ACAO</translate></h5>
  1843 + <div class="row margin-top">
  1844 + <div class="col-sm-8">
  1845 + <label-select ng-id="dominioStatusBem" ng-model="dominioStatusBem" ng-label="PATRIMONIO.LABEL.DOMINIO_TIPO_OBJETIVO" ng-obrigatorio="true" ng-disabled="false"
  1846 + form="formDialogAlterarStatus" ng-list="dominiosStatusBem" ng-custom-options="dominioStatusBem as dominioStatusBem.descricao for dominioStatusBem"
  1847 + track-by="track by dominioStatusBem.id" >
  1848 + </label-select>
  1849 + </div>
  1850 + </div>
  1851 + </div>
  1852 +
  1853 + </div>
  1854 +
  1855 + </form>
  1856 + </script>
  1857 +
1813 1858 <!-- DIALOG BAIXA INCONSISTENCIA -->
1814 1859 <script type="text/ng-template" id="modal-baixa.html">
1815 1860 <form name="formDialogBaixa" novalidate >
... ...