diff --git a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/validation/EntradaAlmoxarifadoAllValidator.java b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/validation/EntradaAlmoxarifadoAllValidator.java index 52b3693..62586a2 100644 --- a/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/validation/EntradaAlmoxarifadoAllValidator.java +++ b/cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/validation/EntradaAlmoxarifadoAllValidator.java @@ -5,7 +5,6 @@ import java.math.BigDecimal; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.validation.Errors; -import org.springframework.validation.ValidationUtils; import org.springframework.validation.Validator; import br.com.centralit.api.model.EntradaAlmoxarifado; @@ -56,11 +55,15 @@ public class EntradaAlmoxarifadoAllValidator implements Validator { } if (alteracaoData && !codigosMovimentos.isEmpty()) { - errors.rejectValue("dataContabil", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "ALMOXARIFADO.VALIDACAO.DATA_CONTABIL_ALTERADA_SAIDAS"); + errors.rejectValue("dataContabil", CodigoErro.VALIDACAO_CAMPOS.getValue().toString(), "ALMOXARIFADO.VALIDACAO.DATA_CONTABIL_ALTERADA_SAIDAS"); } } if (UtilObjeto.isReferencia(entrada.getDataContabil())) { + + if (entrada.getDataContabil().before(entrada.getDataRecebimento())) { + errors.rejectValue("dataContabil", CodigoErro.VALIDACAO_CAMPOS.getValue().toString(), "ALMOXARIFADO.VALIDACAO.DATA_CONTABIL_DATA_RECEBIMENTO"); + } if (UtilColecao.isVazio(entrada.getDocumentos())) { errors.rejectValue("documentos", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "CORPORATIVO.LABEL.ASSOCIAR_DOCUMENTOS"); diff --git a/cit-almoxarifado-web/src/main/java/br/com/centralit/listener/StartupListenerAlmoxarifado.java b/cit-almoxarifado-web/src/main/java/br/com/centralit/listener/StartupListenerAlmoxarifado.java index 5e454a7..f5e6559 100644 --- a/cit-almoxarifado-web/src/main/java/br/com/centralit/listener/StartupListenerAlmoxarifado.java +++ b/cit-almoxarifado-web/src/main/java/br/com/centralit/listener/StartupListenerAlmoxarifado.java @@ -351,6 +351,7 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.ENDERECO_ESTOQUE_VINCULO_CICLICO", "Não é permitido vincular o endereço de estoque superior, pois este endereço tem como endereço superior o registro que está sendo alterado. Favor remover ou escolher outro endereço de estoque superior.", dominio, modulo)); internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.ENTRADA_DESCONTABILIZACAO_COM_SAIDAS", "Você não pode descontabilizar esta entrada pois existem as seguintes saídas com materiais da mesma: ", dominio, modulo)); internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.DATA_CONTABIL_ALTERADA_SAIDAS", "Você não pode alterar a data de contabilização após realizar atendimentos e baixas em materiais desta entrada!", dominio, modulo)); + internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.DATA_CONTABIL_DATA_RECEBIMENTO", "A data de contabilização não pode ser menor que a data de recebimento!", dominio, modulo)); } private void gerarMensagem(Dominio dominio, Modulo modulo, List internacionalizacaoList) { diff --git a/cit-almoxarifado-web/src/main/webapp/assets/js/angular/custom/controller/EntradaAlmoxarifadoController.js b/cit-almoxarifado-web/src/main/webapp/assets/js/angular/custom/controller/EntradaAlmoxarifadoController.js index e695a6a..c5634a0 100644 --- a/cit-almoxarifado-web/src/main/webapp/assets/js/angular/custom/controller/EntradaAlmoxarifadoController.js +++ b/cit-almoxarifado-web/src/main/webapp/assets/js/angular/custom/controller/EntradaAlmoxarifadoController.js @@ -130,7 +130,9 @@ citApp.controller('EntradaAlmoxarifadoController', ['$scope', '$filter', 'FileUp if($scope.entradaAlmoxarifado.fornecedor){ $scope.entradaAlmoxarifado.fornecedor['pessoa.nome'] = $scope.entradaAlmoxarifado.fornecedor.pessoa.nome; + $scope.entradaAlmoxarifado.fornecedor['cpfCnpj'] = $scope.entradaAlmoxarifado.fornecedor.pessoa.cpfCnpj; $scope.entradaAlmoxarifadoOriginal.fornecedor['pessoa.nome'] = $scope.entradaAlmoxarifadoOriginal.fornecedor.pessoa.nome; + $scope.entradaAlmoxarifadoOriginal.fornecedor['cpfCnpj'] = $scope.entradaAlmoxarifadoOriginal.fornecedor.pessoa.cpfCnpj; } $scope.dominiosTipoRecebimento.forEach(function(item){ @@ -173,6 +175,16 @@ citApp.controller('EntradaAlmoxarifadoController', ['$scope', '$filter', 'FileUp $scope.findAutoCompleteFornecedor = function(value){ return FornecedorRepository.listarFornecedoresBusca(value).then(function(result) { + for (var i = 0; i < result.length; i++) { + if (result[i]['pessoa.pessoaFisica.cpf']) { + result[i].cpfCnpj = aplicarCpfCnpj(result[i]['pessoa.pessoaFisica.cpf']); + result[i].originalElement.cpfCnpj = aplicarCpfCnpj(result[i]['pessoa.pessoaFisica.cpf']); + } + if (result[i]['pessoa.pessoaJuridica.cnpj']) { + result[i].cpfCnpj = aplicarCpfCnpj(result[i]['pessoa.pessoaJuridica.cnpj']); + result[i].originalElement.cpfCnpj = aplicarCpfCnpj(result[i]['pessoa.pessoaJuridica.cnpj']); + } + } return result; }); }; @@ -520,6 +532,7 @@ citApp.controller('EntradaAlmoxarifadoController', ['$scope', '$filter', 'FileUp if ($scope.entradaAlmoxarifado.fornecedor) { $scope.entradaAlmoxarifado.fornecedor['pessoa.nome'] = $scope.entradaAlmoxarifado.fornecedor.pessoa.nome; + $scope.entradaAlmoxarifado.fornecedor['cpfCnpj'] = $scope.entradaAlmoxarifado.fornecedor.pessoa.cpfCnpj; } // depois de salvar a entrada ja tendo uma referencia do id, esse metodo ira salvar os documentos se existir @@ -562,6 +575,7 @@ citApp.controller('EntradaAlmoxarifadoController', ['$scope', '$filter', 'FileUp $scope.entradaAlmoxarifado.dataReferencia = $filter('date')($scope.entradaAlmoxarifado.dataReferencia, "dd/MM/yyyy"); if ($scope.entradaAlmoxarifado.fornecedor) { $scope.entradaAlmoxarifado.fornecedor['pessoa.nome'] = $scope.entradaAlmoxarifado.fornecedor.pessoa.nome; + $scope.entradaAlmoxarifado.fornecedor['cpfCnpj'] = $scope.entradaAlmoxarifado.fornecedor.pessoa.cpfCnpj; } $scope.setLoading(false); if (dataContabil) { diff --git a/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg1.html b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg1.html index 25762a5..690bcba 100644 --- a/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg1.html +++ b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg1.html @@ -12,7 +12,7 @@
+ ng-obrigatorio="{{edit}}" ng-disabled="!edit" ng-find="findAutoCompleteFornecedor(value)" ng-item="item['pessoa.nome'] + ' - ' + item.cpfCnpj" />