From 542d5d368478ae4eaaa0e7d640b0d398acf540d9 Mon Sep 17 00:00:00 2001 From: geovane.filho Date: Wed, 4 May 2016 16:04:41 -0300 Subject: [PATCH] Redmine #4783 Iniciando criação do wizard de entrada de materiais --- cit-almoxarifado-web/src/main/java/br/com/centralit/listener/StartupListenerAlmoxarifado.java | 3 +++ cit-almoxarifado-web/src/main/webapp/assets/js/angular/custom/controller/EntradaAlmoxarifadoController.js | 158 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoEdit.html | 314 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg1.html | 12 ++++++++++++ cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg2.html | 12 ++++++++++++ cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg3.html | 12 ++++++++++++ cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg4.html | 12 ++++++++++++ 7 files changed, 309 insertions(+), 214 deletions(-) create mode 100644 cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg1.html create mode 100644 cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg2.html create mode 100644 cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg3.html create mode 100644 cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg4.html 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 936d7b0..dde6a6a 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 @@ -301,6 +301,9 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.MATERAIS_VINCULADOS", "Existe materiais vinculados", dominio, modulo)); internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.ENDERECO_ESTOQUE_VINCULADO_SUPERIOR", "Endereço de Estoque vinculado ao endereço superior", dominio, modulo)); + //Entrada de materiais + internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.DADOS_ENTRADA", "Dados da entrada", dominio, modulo)); + internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.DOCUMENTOS", "Documentos", dominio, modulo)); } private void gerarValidacao(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 41d3653..9070749 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 @@ -11,6 +11,7 @@ citApp.controller('EntradaAlmoxarifadoController', ['$scope', '$filter', 'FileUp var CODIGO_DOMINIO_TIPO_RECEBIMENTO_COMPRA_ORCAMENTARIA = 1; $scope.entradaAlmoxarifado = {}; + $scope.edit = true; /** * Inicializa as datas do formulario de cadastro como data padrao hoje. @@ -685,5 +686,162 @@ citApp.controller('EntradaAlmoxarifadoController', ['$scope', '$filter', 'FileUp } }; //### FIM METODOS RELACIONADOS AOS RELATORIOS DE INVENTARIO ### + + + + + + + + + // ########################################### + // ########################################### DAQUI PARA BAIXO SAO TODOS OS METODOS RELACIONADOS AO WIZARD + // ########################################### + + $scope.templates = [{ name: 'entradaAlmoxarifadoPg1.html', url: '/cit-almoxarifado-web/html/entradaAlmoxarifado/entradaAlmoxarifadoPg1.html', show: true}, + { name: 'entradaAlmoxarifadoPg2.html', url: '/cit-almoxarifado-web/html/entradaAlmoxarifado/entradaAlmoxarifadoPg2.html', show: false}, + { name: 'entradaAlmoxarifadoPg3.html', url: '/cit-almoxarifado-web/html/entradaAlmoxarifado/entradaAlmoxarifadoPg3.html', show: false}, + { name: 'entradaAlmoxarifadoPg4.html', url: '/cit-almoxarifado-web/html/entradaAlmoxarifado/entradaAlmoxarifadoPg4.html', show: false} ]; + + $scope.steps = ['one', 'two', 'three', 'four']; + $scope.step = 0; + +// Verifica se o passo é o primeiro passo do wizard + $scope.isFirstStep = function() { + return $scope.step === 0; + }; + + // Verifica se o passo é o ultimo passo do wizard + $scope.isLastStep = function() { + return $scope.step === ($scope.steps.length - 1); + }; + + // Verifica se o passo é o passo atual do wizard + $scope.isCurrentStep = function(step) { + return $scope.step === step; + }; + + // Utilizado pelo wizard para mudar para o passo desejado + $scope.setCurrentStep = function(step) { + + $scope.setLoadingGet(true); + + if (step <= ($scope.step - 1)) { + $scope.templates[$scope.step].show = false; + $scope.step = step; + $scope.templates[step].show = true; + } else { + if (!$scope.edit) { + $scope.permitidoAvancar = true; + } else { + permiteAvancoFluxo(); + } + + if ($scope.permitidoAvancar) { + $scope.templates[$scope.step].show = false; + $scope.step = step; + $scope.templates[step].show = true; + } + } + + $scope.setLoading(false); + }; + + // Controla se o usuario pode avancar o fluxo no wizard, validando os itens obrigatórios + function permiteAvancoFluxo() { + + $scope.permitidoAvancar = true; + + if ($scope.step === 0) { + if (!validStepDadosEntrada() && $scope.permitidoAvancar) { + $scope.entradaAlmoxarifadoForm.dadosEntradaForm.$submitted = true; + } + } else if ($scope.step === 1) { + if (!validStepMateriais() && $scope.permitidoAvancar) { + $scope.entradaAlmoxarifadoForm.materiaisForm.$submitted = true; + } + } else if ($scope.step === 2) { + if (!validStepDocumentos() && $scope.permitidoAvancar) { + $scope.entradaAlmoxarifadoForm.documentosForm.$submitted = true; + } + } else if ($scope.step === 3) { + $scope.entradaAlmoxarifadoForm.observacoesForm.$submitted = true; + } + + if (!$scope.permitidoAvancar && !$scope.stepValid) { + //Mensagem de erro de campos obrigatorios nao preenchidos + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); + } + }; + +// Recupera o passo atual do wizard + $scope.getCurrentStep = function() { + return $scope.steps[$scope.step]; + }; + + // Faz com o que o wizard retroceda um passo + $scope.handlePrevious = function() { + + $scope.setLoadingGet(true); + + $scope.templates[$scope.step].show = false; + $scope.step -= ($scope.isFirstStep()) ? 0 : 1; + $scope.templates[$scope.step].show = true; + + $scope.setLoading(false); + + }; + + // Faz com o que o wizard avance um passo + $scope.handleNext = function () { + $scope.setLoadingGet(true); + + if(!$scope.edit){ + $scope.permitidoAvancar = true; + } else { + permiteAvancoFluxo(); + } + + if ($scope.permitidoAvancar){ + $scope.templates[$scope.step].show = false; + $scope.step += 1; + $scope.templates[$scope.step].show = true; + } + + $scope.setLoading(false); + }; + + // Funcao especifica que retorna se o formulario de dados da entrada esta valido + function validStepDadosEntrada() { + $scope.stepValid = true; + + if ($scope.entradaAlmoxarifadoForm.dadosEntradaForm.$invalid) { + $scope.stepValid = false; + } + + return $scope.stepValid; + }; + + // Funcao especifica que retorna se o formulario de materiais esta valido + function validStepMateriais() { + $scope.stepValid = true; + + if ($scope.entradaAlmoxarifadoForm.materiaisForm.$invalid) { + $scope.stepValid = false; + } + + return $scope.stepValid; + }; + + //Funcao especifica que retorna se o formulario de documentos esta valido + function validStepDocumentos() { + $scope.stepValid = true; + + if ($scope.entradaAlmoxarifadoForm.documentosForm.$invalid) { + $scope.stepValid = false; + } + + return $scope.stepValid; + }; }]); diff --git a/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoEdit.html b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoEdit.html index d2faf36..1b48a0a 100644 --- a/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoEdit.html +++ b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoEdit.html @@ -1,223 +1,109 @@ -
-
-
-
- - - - - - - - - -
- -
- - - - - -
-
-
- - - -

- ( * ) LABEL.CAMPOS_OBRIGATORIOS -

- -
+
+
+
+
+ + + + +
+ - ALMOXARIFADO.LABEL.DADOS_ENTRADA_ALMOXARIFADO - -
- -
- -
- - - -
- -
- - - -
+
-
- -
- -
- - - -
- -
- - - -
- -
- - - -
- -
- -
- -
- - -
+ -
- - -
- -
- -
+ -
- -
- -
- -
- -
- -
- - - - - - -
-
- -
-
- -
- -
- -
- - - -
- -
- - - -
- -
- - - -
-
-
-
- - - - + +
+ +
+ + - +

+ ( * ) LABEL.CAMPOS_OBRIGATORIOS + +

-
- - - - - - - - - - - - - - - - - - - - - - - - - - -
LABEL.ITEMLABEL.DESCRICAO_MATERIALLABEL.UNIDADE_MEDIDAALMOXARIFADO.LABEL.UNIDADESLABEL.VALOR_UNITARIOALMOXARIFADO.LABEL.SUBTOTAL
LABEL.TABELA_VAZIA
{{$index +1}}{{ entradaItemLista.material.descricao }}{{ entradaItemLista.material.unidadeArmazenamento.descricao }}{{ entradaItemLista.quantidade }}{{ entradaItemLista.valorUnitario | currency:"R$":2}}{{ entradaItemLista.valorTotal | currency}}
-
+
+
+
+
+ +
+ +
+ + + +
+
+
+
+
+
+ + + + + +
+
+
- -
- -
+ +
+
- - -
- -
- - - \ No newline at end of file + \ No newline at end of file diff --git a/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg1.html b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg1.html new file mode 100644 index 0000000..019483c --- /dev/null +++ b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg1.html @@ -0,0 +1,12 @@ + +
+
+ + ALMOXARIFADO.LABEL.DADOS_ENTRADA + + + + +
+
+
\ No newline at end of file diff --git a/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg2.html b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg2.html new file mode 100644 index 0000000..da19e31 --- /dev/null +++ b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg2.html @@ -0,0 +1,12 @@ + +
+
+ + LABEL.MATERIAIS + + + + +
+
+
\ No newline at end of file diff --git a/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg3.html b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg3.html new file mode 100644 index 0000000..a9555e8 --- /dev/null +++ b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg3.html @@ -0,0 +1,12 @@ + +
+
+ + ALMOXARIFADO.LABEL.DOCUMENTOS + + + + +
+
+
\ No newline at end of file diff --git a/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg4.html b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg4.html new file mode 100644 index 0000000..ea7611b --- /dev/null +++ b/cit-almoxarifado-web/src/main/webapp/html/entradaAlmoxarifado/entradaAlmoxarifadoPg4.html @@ -0,0 +1,12 @@ + +
+
+ + LABEL.OBSERVACOES + + + + +
+
+
\ No newline at end of file -- libgit2 0.21.2