Commit b05128c53f195394876ef7f4a9b095f87c583e52

Authored by erick.sato
1 parent a2f15a8a
Exists in master

[Redmine #4987]Novos filtros busca avançada (Ativo / Baixado / Outros)

citgrp-patrimonio-web/src/main/java/br/com/centralit/listener/StartupListenerPatrimonio.java
... ... @@ -579,6 +579,11 @@ public class StartupListenerPatrimonio extends UtilStartup implements Applicatio
579 579 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.LABEL.TRANSFERENCIA_CANCELADA", "Transferência cancelada", dominio, modulo));
580 580 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.LABEL.ALTERAR_STATUS", "Alteração de status", dominio, modulo));
581 581 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.LABEL.BUSCA_INTERVALO_NUM_PATRIMONIAL", "Filtrar por intervalo de número patrimonial", dominio, modulo));
  582 +
  583 + internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.LABEL.BEM_STATUS_ATIVO", "Ativos", dominio, modulo));
  584 + internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.LABEL.BEM_STATUS_BAIXADO", "Baixados", dominio, modulo));
  585 + internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.LABEL.BEM_STATUS_OUTROS", "Outros", dominio, modulo));
  586 +
582 587  
583 588 }
584 589  
... ... @@ -644,6 +649,7 @@ public class StartupListenerPatrimonio extends UtilStartup implements Applicatio
644 649 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.VALIDACAO.ESTRUTURA_ORGANIZACIONAL", "Detentor não possui estrutura organizacional vinculada em seu cadastro. Por gentileza, preencha tal informação para prosseguir.", dominio, modulo));
645 650 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.VALIDACAO.REMOVER_TODOS_ITEM_TRASNFERENCIA", "Não é permitido remover todos itens da transferência. Caso queira remover todos os bem, favor excluir a transferência.", dominio, modulo));
646 651 internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.VALIDACAO.TRANSFERENCIA_ITEM_SEM_EO_ORIGEM", "O seguinte item não possui Estrutura Organizacional de Origem: ", dominio, modulo));
  652 + internacionalizacaoList.add(new Internacionalizacao("PATRIMONIO.VALIDACAO.INFORME_OUTRO_STATUS_BEM_PATRIMONIAL", "Informe o status do bem patrimonial.", dominio, modulo));
647 653 }
648 654  
649 655 private void gerarMensagem(Dominio dominio, Modulo modulo, List<Internacionalizacao> internacionalizacaoList) {
... ...
citgrp-patrimonio-web/src/main/webapp/assets/js/angular/custom/directive/BuscaBensPatrimoniaisDirective.js
... ... @@ -247,6 +247,12 @@ citApp.directive(&quot;componenteBuscaBensPatrimoniais&quot;, [&#39;BemPatrimonialRepository&#39;,
247 247  
248 248 // Metodo responsavel por listar bens de acordo com filtros preenchidos
249 249 $scope.buscaBemFiltros = function() {
  250 +
  251 + if($scope.bemPatrimonialVH.$checkBemStatusOutros && ($scope.bemPatrimonialVH.idDominioStatus == undefined || $scope.bemPatrimonialVH.idDominioStatus == "")){
  252 + angular.element("#citapp-controller").scope().showAlert("error", $translate.instant("PATRIMONIO.VALIDACAO.INFORME_OUTRO_STATUS_BEM_PATRIMONIAL"));
  253 + return;
  254 + }
  255 +
250 256 $scope.isSelectedAll(false);
251 257 $scope.lista = [];
252 258 var trazerBemNaoContabilizado = false;
... ... @@ -404,7 +410,7 @@ citApp.directive(&quot;componenteBuscaBensPatrimoniais&quot;, [&#39;BemPatrimonialRepository&#39;,
404 410  
405 411 // RECUPERA LISTA E SETA RESULTADO NA GRID COM OS FILTROS INFORMADOS
406 412 $scope.fetchResultModal = function() {
407   -
  413 +
408 414 $scope.appController.setLoadingPesquisa(true);
409 415  
410 416 $scope.filterCriteriaModal = angular.copy($scope.filterCriteriaGrid);
... ... @@ -420,12 +426,21 @@ citApp.directive(&quot;componenteBuscaBensPatrimoniais&quot;, [&#39;BemPatrimonialRepository&#39;,
420 426 // }
421 427  
422 428 //FILTER - ABA_GERAL
  429 +
  430 + if($scope.bemPatrimonialVH.$checkBemStatusAtivo && !$scope.bemPatrimonialVH.$checkBemStatusBaixado){
  431 + $scope.filterCriteriaModal.filters.push({type: 'numeric', field: 'dominioStatus.codigo', value : 2, comparison: 'ne'});
  432 +
  433 + }else if(!$scope.bemPatrimonialVH.$checkBemStatusAtivo && $scope.bemPatrimonialVH.$checkBemStatusBaixado){
  434 + $scope.filterCriteriaModal.filters.push({type: 'numeric', field: 'dominioStatus.codigo', value : 2});
  435 +
  436 + }else if($scope.bemPatrimonialVH.idDominioStatus !== undefined && $scope.bemPatrimonialVH.idDominioStatus != ""){
  437 + $scope.filterCriteriaModal.filters.push({type: 'numeric', field: 'dominioStatus.id', value : $scope.bemPatrimonialVH.idDominioStatus});
  438 + }
  439 +
423 440 if($scope.bemPatrimonialVH.idDominioSituacaoFisica !== undefined && $scope.bemPatrimonialVH.idDominioSituacaoFisica != ""){
424 441 $scope.filterCriteriaModal.filters.push({type: 'numeric', field: 'dominioSituacaoFisica.id', value : $scope.bemPatrimonialVH.idDominioSituacaoFisica});
425 442 }
426   - if($scope.bemPatrimonialVH.idDominioStatus !== undefined && $scope.bemPatrimonialVH.idDominioStatus != ""){
427   - $scope.filterCriteriaModal.filters.push({type: 'numeric', field: 'dominioStatus.id', value : $scope.bemPatrimonialVH.idDominioStatus});
428   - }
  443 +
429 444 if($scope.bemPatrimonialVH.$contaContabil != undefined && $scope.bemPatrimonialVH.$contaContabil != ''){
430 445 $scope.filterCriteriaModal.filters.push({type: 'numeric', field: 'material.contaContabil.id', value : $scope.bemPatrimonialVH.$contaContabil.id});
431 446 }
... ... @@ -993,6 +1008,11 @@ citApp.directive(&quot;componenteBuscaBensPatrimoniais&quot;, [&#39;BemPatrimonialRepository&#39;,
993 1008 }
994 1009  
995 1010 $scope.retornarFiltro = function() {
  1011 + if($scope.bemPatrimonialVH.$checkBemStatusOutros && ($scope.bemPatrimonialVH.idDominioStatus == undefined || $scope.bemPatrimonialVH.idDominioStatus == "")){
  1012 + angular.element("#citapp-controller").scope().showAlert("error", $translate.instant("PATRIMONIO.VALIDACAO.INFORME_OUTRO_STATUS_BEM_PATRIMONIAL"));
  1013 + return;
  1014 + }
  1015 +
996 1016 $scope.fecharModalBuscaAvancada();
997 1017 $scope.filtros = $scope.bemPatrimonialVH;
998 1018 $scope.$parent.filterCriteria.start = 1;
... ... @@ -1096,6 +1116,10 @@ citApp.directive(&quot;componenteBuscaBensPatrimoniais&quot;, [&#39;BemPatrimonialRepository&#39;,
1096 1116 $scope.buscaBemFiltros();
1097 1117 });
1098 1118 }
  1119 +
  1120 + $scope.desmarcaBemStatusOutro = function(){
  1121 + $scope.bemPatrimonialVH.$checkBemStatusOutros = false;
  1122 + };
1099 1123  
1100 1124 }
1101 1125 };
... ...
citgrp-patrimonio-web/src/main/webapp/assets/js/angular/custom/directive/html/busca_avancada/abaGeral.html
  1 + <div class="row" style="margin-left: 1px;">
  2 + <input type="checkbox" ng-checked="checkBemStatusAtivo" ng-model="bemPatrimonialVH.$checkBemStatusAtivo" ng-click="desmarcaBemStatusOutro()"/><translate>PATRIMONIO.LABEL.BEM_STATUS_ATIVO</translate>
  3 + <input type="checkbox" ng-checked="checkBemStatusBaixado" ng-model="bemPatrimonialVH.$checkBemStatusBaixado" ng-click="desmarcaBemStatusOutro()"/><translate>PATRIMONIO.LABEL.BEM_STATUS_BAIXADO</translate>
  4 + <input type="checkbox" ng-checked="checkBemStatusOutros" ng-model="bemPatrimonialVH.$checkBemStatusOutros" ng-disabled="bemPatrimonialVH.$checkBemStatusAtivo || bemPatrimonialVH.$checkBemStatusBaixado" /><translate>PATRIMONIO.LABEL.BEM_STATUS_OUTROS</translate>
  5 + </div>
  6 +
1 7 <div class="row">
2 8 <div class="col-sm-4">
3   - <label-select ng-id="bemPatrimonialVH.idDominioSituacaoFisica" ng-model="bemPatrimonialVH.idDominioSituacaoFisica" ng-label="LABEL.SITUACAO" ng-list="situacoesFisicas" ng-custom-options="dominioSituacaoFisica.id as dominioSituacaoFisica.descricao for dominioSituacaoFisica"></label-select>
  9 + <label-select ng-id="bemPatrimonialVH.idDominioStatus" ng-obrigatorio="bemPatrimonialVH.$checkBemStatusOutros" ng-disabled="bemPatrimonialVH.$checkBemStatusAtivo || bemPatrimonialVH.$checkBemStatusBaixado" ng-model="bemPatrimonialVH.idDominioStatus" ng-label="PATRIMONIO.LABEL.STATUS" ng-list="status" ng-custom-options="dominioStatus.id as dominioStatus.descricao for dominioStatus"></label-select>
4 10 </div>
5 11 <div class="col-sm-4">
6   - <label-select ng-id="bemPatrimonialVH.idDominioStatus" ng-model="bemPatrimonialVH.idDominioStatus" ng-label="PATRIMONIO.LABEL.STATUS" ng-list="status" ng-custom-options="dominioStatus.id as dominioStatus.descricao for dominioStatus"></label-select>
  12 + <label-select ng-id="bemPatrimonialVH.idDominioSituacaoFisica" ng-model="bemPatrimonialVH.idDominioSituacaoFisica" ng-label="LABEL.SITUACAO" ng-list="situacoesFisicas" ng-custom-options="dominioSituacaoFisica.id as dominioSituacaoFisica.descricao for dominioSituacaoFisica"></label-select>
7 13 </div>
8 14 <div class="col-sm-4">
9 15 <auto-complete ng-find="findContaContabil(value)" ng-item="item.codigo + ' / ' + item.descricao" ng-label="LABEL.CONTA_CONTABIL" ng-model="bemPatrimonialVH.$contaContabil" ng-min-length="1"></auto-complete>
... ...