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 | 22 | import br.com.centralit.api.model.InventarioBemPatrimonial; |
23 | 23 | import br.com.centralit.api.model.MyMensagemRetorno; |
24 | 24 | import br.com.centralit.api.model.MyRetornoStatus; |
25 | +import br.com.centralit.api.model.Transferencia; | |
25 | 26 | import br.com.centralit.api.service.AdicaoBemPrincipalService; |
26 | 27 | import br.com.centralit.api.service.BemPatrimonialService; |
27 | 28 | import br.com.centralit.api.service.EntradaItemService; |
28 | 29 | import br.com.centralit.api.service.OrganizacaoService; |
30 | +import br.com.centralit.api.service.TransferenciaService; | |
29 | 31 | import br.com.centralit.api.service.UsuarioService; |
30 | 32 | import br.com.centralit.api.viewHelper.AlteracaoBemVH; |
31 | 33 | import br.com.centralit.api.viewHelper.BemPatrimonialVH; |
... | ... | @@ -54,7 +56,10 @@ public class BemPatrimonialController extends GenericController<BemPatrimonial> |
54 | 56 | |
55 | 57 | @Autowired |
56 | 58 | private OrganizacaoService organizacaoService; |
57 | - | |
59 | + | |
60 | + @Autowired | |
61 | + private TransferenciaService transferenciaService; | |
62 | + | |
58 | 63 | public BemPatrimonialController() { |
59 | 64 | |
60 | 65 | super(); |
... | ... | @@ -688,4 +693,16 @@ public class BemPatrimonialController extends GenericController<BemPatrimonial> |
688 | 693 | |
689 | 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 | 11 | }; |
12 | 12 | $scope.diferenca = null; |
13 | 13 | $scope.novoValorResidual = 0; |
14 | - | |
14 | + | |
15 | 15 | // Limpa formulário para novo cadastro |
16 | 16 | $scope.resetForm = function() { |
17 | 17 | $scope.limparAlteracao(); |
... | ... | @@ -256,12 +256,53 @@ citApp.controller('BemPatrimonialController', ['$scope', 'BemPatrimonialReposito |
256 | 256 | }); |
257 | 257 | |
258 | 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 | 306 | DominioRepository.findAllDominio('tipoMotivoAlteracaoBem').then(function(result) { |
266 | 307 | |
267 | 308 | $scope.tiposMotivoAlteracao = []; | ... | ... |