Commit 725deb5442c50719c8c1c6beb73fb7b90cf969fa
1 parent
84dee635
Exists in
master
redmine #3854 Correcao do dropdows 'Tipo Alteracao'.
Showing
2 changed files
with
63 additions
and
5 deletions
Show diff stats
citgrp-patrimonio-web/src/main/java/br/com/centralit/controller/BemPatrimonialController.java
@@ -22,10 +22,12 @@ import br.com.centralit.api.model.EntradaPatrimonioItem; | @@ -22,10 +22,12 @@ import br.com.centralit.api.model.EntradaPatrimonioItem; | ||
22 | import br.com.centralit.api.model.InventarioBemPatrimonial; | 22 | import br.com.centralit.api.model.InventarioBemPatrimonial; |
23 | import br.com.centralit.api.model.MyMensagemRetorno; | 23 | import br.com.centralit.api.model.MyMensagemRetorno; |
24 | import br.com.centralit.api.model.MyRetornoStatus; | 24 | import br.com.centralit.api.model.MyRetornoStatus; |
25 | +import br.com.centralit.api.model.Transferencia; | ||
25 | import br.com.centralit.api.service.AdicaoBemPrincipalService; | 26 | import br.com.centralit.api.service.AdicaoBemPrincipalService; |
26 | import br.com.centralit.api.service.BemPatrimonialService; | 27 | import br.com.centralit.api.service.BemPatrimonialService; |
27 | import br.com.centralit.api.service.EntradaItemService; | 28 | import br.com.centralit.api.service.EntradaItemService; |
28 | import br.com.centralit.api.service.OrganizacaoService; | 29 | import br.com.centralit.api.service.OrganizacaoService; |
30 | +import br.com.centralit.api.service.TransferenciaService; | ||
29 | import br.com.centralit.api.service.UsuarioService; | 31 | import br.com.centralit.api.service.UsuarioService; |
30 | import br.com.centralit.api.viewHelper.AlteracaoBemVH; | 32 | import br.com.centralit.api.viewHelper.AlteracaoBemVH; |
31 | import br.com.centralit.api.viewHelper.BemPatrimonialVH; | 33 | import br.com.centralit.api.viewHelper.BemPatrimonialVH; |
@@ -54,7 +56,10 @@ public class BemPatrimonialController extends GenericController<BemPatrimonial> | @@ -54,7 +56,10 @@ public class BemPatrimonialController extends GenericController<BemPatrimonial> | ||
54 | 56 | ||
55 | @Autowired | 57 | @Autowired |
56 | private OrganizacaoService organizacaoService; | 58 | private OrganizacaoService organizacaoService; |
57 | - | 59 | + |
60 | + @Autowired | ||
61 | + private TransferenciaService transferenciaService; | ||
62 | + | ||
58 | public BemPatrimonialController() { | 63 | public BemPatrimonialController() { |
59 | 64 | ||
60 | super(); | 65 | super(); |
@@ -688,4 +693,16 @@ public class BemPatrimonialController extends GenericController<BemPatrimonial> | @@ -688,4 +693,16 @@ public class BemPatrimonialController extends GenericController<BemPatrimonial> | ||
688 | 693 | ||
689 | return responseBody; | 694 | return responseBody; |
690 | } | 695 | } |
696 | + @RequestMapping(value = "/veirificaTransferenciaMaisRecenteBemPatrimonial", method = RequestMethod.GET, produces = "application/json") | ||
697 | + @ResponseBody | ||
698 | + public boolean veirificaTransferenciaMaisRecenteBemPatrimonial(Long idBem) { | ||
699 | + Transferencia transferenciaMaisRecente = transferenciaService.obterTransferenciaMaisRecenteBem(idBem); | ||
700 | + | ||
701 | + if(transferenciaMaisRecente == null) { | ||
702 | + return false; | ||
703 | + } else { | ||
704 | + return true; | ||
705 | + } | ||
706 | + } | ||
707 | + | ||
691 | } | 708 | } |
citgrp-patrimonio-web/src/main/webapp/assets/js/angular/custom/controller/BemPatrimonialController.js
@@ -11,7 +11,7 @@ citApp.controller('BemPatrimonialController', ['$scope', 'BemPatrimonialReposito | @@ -11,7 +11,7 @@ citApp.controller('BemPatrimonialController', ['$scope', 'BemPatrimonialReposito | ||
11 | }; | 11 | }; |
12 | $scope.diferenca = null; | 12 | $scope.diferenca = null; |
13 | $scope.novoValorResidual = 0; | 13 | $scope.novoValorResidual = 0; |
14 | - | 14 | + |
15 | // Limpa formulário para novo cadastro | 15 | // Limpa formulário para novo cadastro |
16 | $scope.resetForm = function() { | 16 | $scope.resetForm = function() { |
17 | $scope.limparAlteracao(); | 17 | $scope.limparAlteracao(); |
@@ -256,12 +256,53 @@ citApp.controller('BemPatrimonialController', ['$scope', 'BemPatrimonialReposito | @@ -256,12 +256,53 @@ citApp.controller('BemPatrimonialController', ['$scope', 'BemPatrimonialReposito | ||
256 | }); | 256 | }); |
257 | 257 | ||
258 | function preencherTiposAlteracaoEdit() { | 258 | function preencherTiposAlteracaoEdit() { |
259 | - $scope.tiposAlteracao = []; | ||
260 | - DominioRepository.buscaDominioByCodigoAndChave(1, 'tipoAlteracaoBemPatrimonialIndividual').then(function(result) { | ||
261 | - $scope.tiposAlteracao.push(result.originalElement); | 259 | + var isTodosTiposAlteracao = true; |
260 | + | ||
261 | + BemPatrimonialRepository.veirificaTransferenciaMaisRecenteBemPatrimonial($scope.bemPatrimonial.id).then(function(result){ | ||
262 | + if(validarDataTransferencia() && result) { | ||
263 | + isTodosTiposAlteracao = false; | ||
264 | + $scope.tiposAlteracao = []; | ||
265 | + if(isTodosTiposAlteracao) { | ||
266 | + DominioRepository.findAllDominio('tipoAlteracaoBemPatrimonialIndividual').then(function(result) { | ||
267 | + angular.forEach(result, function(tipoAlt) { | ||
268 | + if(tipoAlt.originalElement.codigo != 6){ | ||
269 | + $scope.tiposAlteracao.push(tipoAlt.originalElement); | ||
270 | + } | ||
271 | + }); | ||
272 | + }); | ||
273 | + } else { | ||
274 | + DominioRepository.buscaDominioByCodigoAndChave(1, 'tipoAlteracaoBemPatrimonialIndividual').then(function(result) { | ||
275 | + $scope.tiposAlteracao.push(result.originalElement); | ||
276 | + }); | ||
277 | + } | ||
278 | + } | ||
262 | }); | 279 | }); |
263 | }; | 280 | }; |
264 | 281 | ||
282 | + // Método responsável por validar se da data da transferência escolhida é válida em relação a referência vigente antes da inclusão | ||
283 | + function validarDataTransferencia() { | ||
284 | + | ||
285 | + var dataContabilizacaoBemPatrimonial; | ||
286 | + | ||
287 | + // Se já for a data preenchida automaticamente ao entrar na interface de inclusão, ela vem no formato DD/MM/YYYY | ||
288 | + try { | ||
289 | + | ||
290 | + dataContabilizacaoBemPatrimonial = angular.copy(converterStringEmDate($scope.bemPatrimonial.dataContabil)); | ||
291 | + | ||
292 | + } catch(err) { | ||
293 | + | ||
294 | + //Usuário altera a data no componente, ela já fica no formato date | ||
295 | + dataContabilizacaoBemPatrimonial = angular.copy($scope.bemPatrimonial.dataContabil); | ||
296 | + } | ||
297 | + // Converte em Date e inicializa dia e hora das datas a serem comparadas. Só valida MM/YYYY | ||
298 | + var dataVigencia = converterStringEmDate($scope.usuarioLogado.organizacao.dataReferenciaVigente); | ||
299 | + dataContabilizacaoBemPatrimonial.setDate(1); | ||
300 | + dataVigencia.setDate(1); | ||
301 | + | ||
302 | + return dataContabilizacaoBemPatrimonial.getTime() == dataVigencia.getTime(); | ||
303 | + } | ||
304 | + | ||
305 | + | ||
265 | DominioRepository.findAllDominio('tipoMotivoAlteracaoBem').then(function(result) { | 306 | DominioRepository.findAllDominio('tipoMotivoAlteracaoBem').then(function(result) { |
266 | 307 | ||
267 | $scope.tiposMotivoAlteracao = []; | 308 | $scope.tiposMotivoAlteracao = []; |