From a54ba5f8b45179030216da635d41658c50906253 Mon Sep 17 00:00:00 2001 From: jrbarros Date: Tue, 11 May 2021 11:44:16 -0300 Subject: [PATCH 001/219] Remove obrigatoriedade de CNPJ --- ...3201_remove_required_cnpj_for_juridica.php | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 database/migrations/2021_05_11_113201_remove_required_cnpj_for_juridica.php diff --git a/database/migrations/2021_05_11_113201_remove_required_cnpj_for_juridica.php b/database/migrations/2021_05_11_113201_remove_required_cnpj_for_juridica.php new file mode 100644 index 0000000000..6c32bcc2b3 --- /dev/null +++ b/database/migrations/2021_05_11_113201_remove_required_cnpj_for_juridica.php @@ -0,0 +1,29 @@ + Date: Tue, 11 May 2021 15:51:11 -0300 Subject: [PATCH 002/219] Permite entrar na tela sem o CNPJ --- ieducar/intranet/empresas_cad.php | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/ieducar/intranet/empresas_cad.php b/ieducar/intranet/empresas_cad.php index 6ea5fe6841..72613b28e3 100644 --- a/ieducar/intranet/empresas_cad.php +++ b/ieducar/intranet/empresas_cad.php @@ -1,6 +1,7 @@ busca_empresa = true; $objPessoaJuridica = new clsPessoaJuridica($this->cod_pessoa_fj); $detalhePessoaJuridica = $objPessoaJuridica->detalhe(); - //echo "
";
-            //print_r($detalhePessoaJuridica);
-            //die();
             $this->email = $detalhePessoaJuridica['email'];
             $this->url = $detalhePessoaJuridica['url'];
             $this->insc_est = $detalhePessoaJuridica['insc_estadual'];
@@ -88,10 +86,10 @@ public function Inicializar()
 
     public function Gerar()
     {
-        if (!$this->busca_empresa) {
-            $this->campoCnpj('busca_empresa', 'CNPJ', $this->busca_empresa, true);
-        } else {
-            $this->url_cancelar = ($this->retorno == 'Editar') ? "empresas_det.php?cod_empresa={$this->cod_pessoa_fj}" : 'empresas_lst.php';
+//        if (!$this->busca_empresa) {
+//            $this->campoCnpj('busca_empresa', 'CNPJ', $this->busca_empresa, true);
+//        } else {
+            $this->url_cancelar = ($this->retorno === 'Editar') ? "empresas_det.php?cod_empresa={$this->cod_pessoa_fj}" : 'empresas_lst.php';
 
             $this->campoOculto('cod_pessoa_fj', $this->cod_pessoa_fj);
             $this->campoOculto('idpes_cad', $this->idpes_cad);
@@ -101,12 +99,11 @@ public function Gerar()
             $this->campoTexto('razao_social', 'Razão Social', $this->razao_social, '50', '255', true);
             $this->campoTexto('capital_social', 'Capital Social', $this->capital_social, '50', '255');
 
-            $nivelUsuario = (new clsPermissoes)->nivel_acesso(\Illuminate\Support\Facades\Auth::id());
-            if (!$this->cod_pessoa_fj || $nivelUsuario > App_Model_NivelTipoUsuario::INSTITUCIONAL) {
+            if ((new clsPermissoes)->nivel_acesso(Auth::id()) > App_Model_NivelTipoUsuario::INSTITUCIONAL) {
                 $this->campoRotulo('cnpj_', 'CNPJ', $this->cnpj);
                 $this->campoOculto('cnpj', $this->cnpj);
             } else {
-                $this->campoCnpj('cnpj', 'CNPJ', $this->cnpj, true);
+                $this->campoCnpj('cnpj', 'CNPJ', $this->cnpj);
             }
 
             $this->viewAddress();
@@ -118,10 +115,10 @@ public function Gerar()
 
             // Dados da Empresa
 
-            $this->campoTexto('url', 'Site', $this->url, '50', '255', false);
-            $this->campoTexto('email', 'E-mail', $this->email, '50', '255', false);
-            $this->campoTexto('insc_est', 'Inscrição Estadual', $this->insc_est, '20', '30', false);
-        }
+            $this->campoTexto('url', 'Site', $this->url, '50', '255');
+            $this->campoTexto('email', 'E-mail', $this->email, '50', '255');
+            $this->campoTexto('insc_est', 'Inscrição Estadual', $this->insc_est, '20', '30');
+//        }
 
         Portabilis_View_Helper_Application::loadJavascript($this, [
             '/modules/Cadastro/Assets/Javascripts/Addresses.js',
@@ -133,6 +130,8 @@ public function Novo()
         $this->cnpj = idFederal2int(urldecode($this->cnpj));
         $objJuridica = new clsJuridica(false, $this->cnpj);
         $detalhJuridica = $objJuridica->detalhe();
+
+        dd($detalhJuridica);
         if (!$detalhJuridica) {
             $this->insc_est = idFederal2int($this->insc_est);
 

From 00ba481b9bd068e19e79c78e78e0717bb7d1e436 Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:04:34 -0300
Subject: [PATCH 003/219] =?UTF-8?q?Remove=20valida=C3=A7=C3=A3o=20de=20cnp?=
 =?UTF-8?q?j?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ieducar/intranet/include/pessoa/clsJuridica.inc.php | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ieducar/intranet/include/pessoa/clsJuridica.inc.php b/ieducar/intranet/include/pessoa/clsJuridica.inc.php
index 360a0d6a0f..2717173391 100644
--- a/ieducar/intranet/include/pessoa/clsJuridica.inc.php
+++ b/ieducar/intranet/include/pessoa/clsJuridica.inc.php
@@ -49,7 +49,7 @@ public function cadastra()
     {
         $db = new clsBanco();
 
-        if (is_numeric($this->idpes) && is_numeric($this->cnpj) && is_numeric($this->idpes_cad)) {
+        if (is_numeric($this->idpes) && is_numeric($this->idpes_cad)) {
             $campos = '';
             $valores = '';
             if ($this->fantasia) {

From 40fe35ae15549c643bc41f31e63081df97dc9c70 Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:05:14 -0300
Subject: [PATCH 004/219] =?UTF-8?q?Adiciona=20condi=C3=A7=C3=A3o=20para=20?=
 =?UTF-8?q?insert=20de=20CNPJ=20NULL?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../intranet/include/pessoa/clsJuridica.inc.php    | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/ieducar/intranet/include/pessoa/clsJuridica.inc.php b/ieducar/intranet/include/pessoa/clsJuridica.inc.php
index 2717173391..f8cdc9f657 100644
--- a/ieducar/intranet/include/pessoa/clsJuridica.inc.php
+++ b/ieducar/intranet/include/pessoa/clsJuridica.inc.php
@@ -66,6 +66,20 @@ public function cadastra()
                 $valores .= ", '{$this->capital_social}' ";
             }
 
+            /**
+             * Quando o CNPJ é null é preciso montar um insert específico por conta da concatenação com NULL
+             */
+            if ($this->cnpj === null) {
+
+                $db->Consulta("INSERT INTO {$this->schema}.{$this->tabela} (idpes, cnpj, origem_gravacao, data_cad, operacao, idpes_cad $campos) VALUES ($this->idpes, null, 'M', NOW(), 'I', '$this->idpes_cad' $valores)");
+
+                if ($this->idpes) {
+                    $this->detalhe();
+                }
+
+                return true;
+            }
+
             $db->Consulta("INSERT INTO {$this->schema}.{$this->tabela} (idpes, cnpj, origem_gravacao, data_cad, operacao, idpes_cad $campos) VALUES ($this->idpes, '$this->cnpj', 'M', NOW(), 'I', '$this->idpes_cad' $valores)");
 
             if ($this->idpes) {

From 6b6c8251734c4b6dac2fb3d1f71ad3a1c953c5da Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:06:38 -0300
Subject: [PATCH 005/219] =?UTF-8?q?Remove=20cnpj=20da=20inicializa=C3=A7?=
 =?UTF-8?q?=C3=A3o=20e=20refatora=20idpes?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ieducar/intranet/empresas_cad.php | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/ieducar/intranet/empresas_cad.php b/ieducar/intranet/empresas_cad.php
index 72613b28e3..63ae9b9bc9 100644
--- a/ieducar/intranet/empresas_cad.php
+++ b/ieducar/intranet/empresas_cad.php
@@ -36,8 +36,7 @@
 
     public function Inicializar()
     {
-        $this->busca_empresa = $_POST['busca_empresa'];
-        $this->cod_pessoa_fj = $_GET['idpes'];
+        $this->cod_pessoa_fj = is_numeric($_GET['idpes']) ? (int) $_GET['idpes'] : null;
         $this->idpes_cad = $this->pessoa_logada;
 
         if ($this->busca_empresa) {

From 5a5bef7bc4f423919fd72ccdcb21f61fe000c519 Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:07:03 -0300
Subject: [PATCH 006/219] Corrige maneira de carregar tela

---
 ieducar/intranet/empresas_cad.php | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/ieducar/intranet/empresas_cad.php b/ieducar/intranet/empresas_cad.php
index 63ae9b9bc9..1ea4542b9a 100644
--- a/ieducar/intranet/empresas_cad.php
+++ b/ieducar/intranet/empresas_cad.php
@@ -39,13 +39,7 @@ public function Inicializar()
         $this->cod_pessoa_fj = is_numeric($_GET['idpes']) ? (int) $_GET['idpes'] : null;
         $this->idpes_cad = $this->pessoa_logada;
 
-        if ($this->busca_empresa) {
-            $this->cnpj = $this->busca_empresa;
-            $this->busca_empresa = idFederal2int($this->busca_empresa);
-            $this->retorno = 'Novo';
-            $objPessoa = new clsPessoaJuridica();
-            list($this->cod_pessoa_fj) = $objPessoa->queryRapidaCNPJ($this->busca_empresa, 'idpes');
-        }
+        $this->retorno = 'Novo';
 
         if ($this->cod_pessoa_fj) {
             $this->busca_empresa = true;

From 1d7c00f282bf6a926f862ecaa68b2b329fa307c7 Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:07:22 -0300
Subject: [PATCH 007/219] =?UTF-8?q?Ajusta=20compara=C3=A7=C3=A3o=20de=20st?=
 =?UTF-8?q?ring?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ieducar/intranet/empresas_cad.php | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ieducar/intranet/empresas_cad.php b/ieducar/intranet/empresas_cad.php
index 1ea4542b9a..2cf8c29041 100644
--- a/ieducar/intranet/empresas_cad.php
+++ b/ieducar/intranet/empresas_cad.php
@@ -68,7 +68,7 @@ public function Inicializar()
 
         $this->nome_url_cancelar = 'Cancelar';
 
-        $nomeMenu = $this->retorno == 'Editar' ? $this->retorno : 'Cadastrar';
+        $nomeMenu = $this->retorno === 'Editar' ? $this->retorno : 'Cadastrar';
 
         $this->breadcrumb("{$nomeMenu} pessoa jurídica", [
             url('intranet/educar_pessoas_index.php') => 'Pessoas',

From 5407b845a79024cab459d38c8c0a7bdc7a268add Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:08:05 -0300
Subject: [PATCH 008/219] Remove maneira antiga de gerar a tela

---
 ieducar/intranet/empresas_cad.php | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/ieducar/intranet/empresas_cad.php b/ieducar/intranet/empresas_cad.php
index 2cf8c29041..f49415e883 100644
--- a/ieducar/intranet/empresas_cad.php
+++ b/ieducar/intranet/empresas_cad.php
@@ -79,10 +79,7 @@ public function Inicializar()
 
     public function Gerar()
     {
-//        if (!$this->busca_empresa) {
-//            $this->campoCnpj('busca_empresa', 'CNPJ', $this->busca_empresa, true);
-//        } else {
-            $this->url_cancelar = ($this->retorno === 'Editar') ? "empresas_det.php?cod_empresa={$this->cod_pessoa_fj}" : 'empresas_lst.php';
+        $this->url_cancelar = ($this->retorno === 'Editar') ? "empresas_det.php?cod_empresa={$this->cod_pessoa_fj}" : 'empresas_lst.php';
 
             $this->campoOculto('cod_pessoa_fj', $this->cod_pessoa_fj);
             $this->campoOculto('idpes_cad', $this->idpes_cad);

From beac71af85ebd2824c3aaf5aa87491e49ebfee15 Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:08:59 -0300
Subject: [PATCH 009/219] =?UTF-8?q?Indenta=C3=A7=C3=A3o=20de=20c=C3=B3digo?=
 =?UTF-8?q?.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ieducar/intranet/empresas_cad.php | 48 +++++++++++++++----------------
 1 file changed, 23 insertions(+), 25 deletions(-)

diff --git a/ieducar/intranet/empresas_cad.php b/ieducar/intranet/empresas_cad.php
index f49415e883..49c07d5136 100644
--- a/ieducar/intranet/empresas_cad.php
+++ b/ieducar/intranet/empresas_cad.php
@@ -81,34 +81,32 @@ public function Gerar()
     {
         $this->url_cancelar = ($this->retorno === 'Editar') ? "empresas_det.php?cod_empresa={$this->cod_pessoa_fj}" : 'empresas_lst.php';
 
-            $this->campoOculto('cod_pessoa_fj', $this->cod_pessoa_fj);
-            $this->campoOculto('idpes_cad', $this->idpes_cad);
-
-            // Dados da Empresa
-            $this->campoTexto('fantasia', 'Nome Fantasia', $this->fantasia, '50', '255', true);
-            $this->campoTexto('razao_social', 'Razão Social', $this->razao_social, '50', '255', true);
-            $this->campoTexto('capital_social', 'Capital Social', $this->capital_social, '50', '255');
-
-            if ((new clsPermissoes)->nivel_acesso(Auth::id()) > App_Model_NivelTipoUsuario::INSTITUCIONAL) {
-                $this->campoRotulo('cnpj_', 'CNPJ', $this->cnpj);
-                $this->campoOculto('cnpj', $this->cnpj);
-            } else {
-                $this->campoCnpj('cnpj', 'CNPJ', $this->cnpj);
-            }
-
-            $this->viewAddress();
+        $this->campoOculto('cod_pessoa_fj', $this->cod_pessoa_fj);
+        $this->campoOculto('idpes_cad', $this->idpes_cad);
+
+        // Dados da Empresa
+        $this->campoTexto('fantasia', 'Nome Fantasia', $this->fantasia, '50', '255', true);
+        $this->campoTexto('razao_social', 'Razão Social', $this->razao_social, '50', '255', true);
+        $this->campoTexto('capital_social', 'Capital Social', $this->capital_social, '50', '255');
+
+        if ((new clsPermissoes)->nivel_acesso(Auth::id()) > App_Model_NivelTipoUsuario::INSTITUCIONAL) {
+            $this->campoRotulo('cnpj_', 'CNPJ', $this->cnpj);
+            $this->campoOculto('cnpj', $this->cnpj);
+        } else {
+            $this->campoCnpj('cnpj', 'CNPJ', $this->cnpj);
+        }
 
-            $this->inputTelefone('1', 'Telefone 1');
-            $this->inputTelefone('2', 'Telefone 2');
-            $this->inputTelefone('mov', 'Celular');
-            $this->inputTelefone('fax', 'Fax');
+        $this->viewAddress();
 
-            // Dados da Empresa
+        $this->inputTelefone('1', 'Telefone 1');
+        $this->inputTelefone('2', 'Telefone 2');
+        $this->inputTelefone('mov', 'Celular');
+        $this->inputTelefone('fax', 'Fax');
 
-            $this->campoTexto('url', 'Site', $this->url, '50', '255');
-            $this->campoTexto('email', 'E-mail', $this->email, '50', '255');
-            $this->campoTexto('insc_est', 'Inscrição Estadual', $this->insc_est, '20', '30');
-//        }
+        // Dados da Empresa
+        $this->campoTexto('url', 'Site', $this->url, '50', '255');
+        $this->campoTexto('email', 'E-mail', $this->email, '50', '255');
+        $this->campoTexto('insc_est', 'Inscrição Estadual', $this->insc_est, '20', '30');
 
         Portabilis_View_Helper_Application::loadJavascript($this, [
             '/modules/Cadastro/Assets/Javascripts/Addresses.js',

From aaaadf24098149d53dad32547dd530a6c8cf5379 Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:10:10 -0300
Subject: [PATCH 010/219] =?UTF-8?q?Move=20para=20inicio=20do=20cadastro=20?=
 =?UTF-8?q?a=20valida=C3=A7=C3=A3o=20de=20exist=C3=AAncia=20de=20pessoa=20?=
 =?UTF-8?q?juridica.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ieducar/intranet/empresas_cad.php | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/ieducar/intranet/empresas_cad.php b/ieducar/intranet/empresas_cad.php
index 49c07d5136..74450b08ce 100644
--- a/ieducar/intranet/empresas_cad.php
+++ b/ieducar/intranet/empresas_cad.php
@@ -115,15 +115,16 @@ public function Gerar()
 
     public function Novo()
     {
-        $this->cnpj = idFederal2int(urldecode($this->cnpj));
-        $objJuridica = new clsJuridica(false, $this->cnpj);
-        $detalhJuridica = $objJuridica->detalhe();
+        $this->cnpj = empty($this->cnpj) ? null : idFederal2int(urldecode($this->cnpj));
 
-        dd($detalhJuridica);
-        if (!$detalhJuridica) {
-            $this->insc_est = idFederal2int($this->insc_est);
+        $contemPessoaJuridica = (new clsJuridica(false, $this->cnpj))->detalhe();
+        if ($this->cnpj !== null && $contemPessoaJuridica) {
+            $this->mensagem = 'Já existe uma empresa cadastrada com este CNPJ.';
+            return false;
+        }
 
-            $this->idpes_cad = $this->pessoa_logada;
+        $this->insc_est = idFederal2int($this->insc_est);
+        $this->idpes_cad = $this->pessoa_logada;
 
             $objPessoa = new clsPessoa_(
                 false,

From 5b7a974662e973793ce84556710ff091d4127c6e Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:11:00 -0300
Subject: [PATCH 011/219] =?UTF-8?q?Refatora=C3=A7=C3=A3o.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ieducar/intranet/empresas_cad.php | 41 ++++++++++++++++---------------
 1 file changed, 21 insertions(+), 20 deletions(-)

diff --git a/ieducar/intranet/empresas_cad.php b/ieducar/intranet/empresas_cad.php
index 74450b08ce..ab45d73997 100644
--- a/ieducar/intranet/empresas_cad.php
+++ b/ieducar/intranet/empresas_cad.php
@@ -126,26 +126,27 @@ public function Novo()
         $this->insc_est = idFederal2int($this->insc_est);
         $this->idpes_cad = $this->pessoa_logada;
 
-            $objPessoa = new clsPessoa_(
-                false,
-                $this->razao_social,
-                $this->idpes_cad,
-                $this->url,
-                'J',
-                false,
-                false,
-                $this->email
-            );
-            $this->cod_pessoa_fj = $objPessoa->cadastra();
-
-            $objJuridica = new clsJuridica(
-                $this->cod_pessoa_fj,
-                $this->cnpj,
-                $this->fantasia,
-                $this->insc_est,
-                $this->capital_social
-            );
-            $objJuridica->cadastra();
+        $objPessoa = new clsPessoa_(
+            false,
+            $this->razao_social,
+            $this->idpes_cad,
+            $this->url,
+            'J',
+            false,
+            false,
+            $this->email
+        );
+
+        $this->cod_pessoa_fj = $objPessoa->cadastra();
+
+        (new clsJuridica(
+           $this->cod_pessoa_fj,
+           $this->cnpj,
+           $this->fantasia,
+           $this->insc_est,
+           $this->capital_social
+        ))->cadastra();
+
 
             if ($this->telefone_1) {
                 $this->telefone_1 = str_replace('-', '', $this->telefone_1);

From 2f040cd1850739b883cd585e9a8aab80503b97c5 Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:11:46 -0300
Subject: [PATCH 012/219] =?UTF-8?q?Remove=20c=C3=B3digo=20duplicado=20e=20?=
 =?UTF-8?q?aplica=20em=20fun=C3=A7=C3=B5es=20separadas.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ieducar/intranet/empresas_cad.php | 96 +++++++++++++------------------
 1 file changed, 40 insertions(+), 56 deletions(-)

diff --git a/ieducar/intranet/empresas_cad.php b/ieducar/intranet/empresas_cad.php
index ab45d73997..f1ae88ff63 100644
--- a/ieducar/intranet/empresas_cad.php
+++ b/ieducar/intranet/empresas_cad.php
@@ -148,67 +148,51 @@ public function Novo()
         ))->cadastra();
 
 
-            if ($this->telefone_1) {
-                $this->telefone_1 = str_replace('-', '', $this->telefone_1);
-                $this->telefone_1 = trim($this->telefone_1);
-                if (is_numeric($this->telefone_1) && (strlen($this->telefone_1) < 12)) {
-                    $objTelefone = new clsPessoaTelefone(
-                        $this->cod_pessoa_fj,
-                        1,
-                        $this->telefone_1,
-                        $this->ddd_telefone_1
-                    );
-                    $objTelefone->cadastra();
-                }
-            }
-            if ($this->telefone_2) {
-                $this->telefone_2 = str_replace('-', '', $this->telefone_2);
-                $this->telefone_2 = trim($this->telefone_2);
-                if (is_numeric($this->telefone_2) && (strlen($this->telefone_2) < 12)) {
-                    $objTelefone = new clsPessoaTelefone(
-                        $this->cod_pessoa_fj,
-                        2,
-                        $this->telefone_2,
-                        $this->ddd_telefone_2
-                    );
-                    $objTelefone->cadastra();
-                }
-            }
-            if ($this->telefone_mov) {
-                $this->telefone_mov = str_replace('-', '', $this->telefone_mov);
-                $this->telefone_mov = trim($this->telefone_mov);
-                if (is_numeric($this->telefone_mov) && (strlen($this->telefone_mov) < 12)) {
-                    $objTelefone = new clsPessoaTelefone(
-                        $this->cod_pessoa_fj,
-                        3,
-                        $this->telefone_mov,
-                        $this->ddd_telefone_mov
-                    );
-                    $objTelefone->cadastra();
-                }
-            }
-            if ($this->telefone_fax) {
-                $this->telefone_fax = str_replace('-', '', $this->telefone_fax);
-                $this->telefone_fax = trim($this->telefone_fax);
-                if (is_numeric($this->telefone_fax) && (strlen($this->telefone_fax) < 12)) {
-                    $objTelefone = new clsPessoaTelefone(
-                        $this->cod_pessoa_fj,
-                        4,
-                        $this->telefone_fax,
-                        $this->ddd_telefone_fax
-                    );
-                    $objTelefone->cadastra();
-                }
-            }
+        if ($this->telefone_1) {
+            $this->cadastraTelefone($this->cod_pessoa_fj,1, $this->telefone_1, $this->ddd_telefone_1);
+        }
+
+        if ($this->telefone_2) {
+            $this->cadastraTelefone($this->cod_pessoa_fj, 2,$this->telefone_2, $this->ddd_telefone_2);
+        }
 
-            $this->saveAddress($this->cod_pessoa_fj);
+        if ($this->telefone_mov) {
+            $this->cadastraTelefone($this->cod_pessoa_fj, 3,$this->telefone_mov, $this->ddd_telefone_mov);
+        }
 
-            $this->simpleRedirect('empresas_lst.php');
+        if ($this->telefone_fax) {
+            $this->cadastraTelefone($this->cod_pessoa_fj, 4,$this->telefone_fax, $this->ddd_telefone_fax);
         }
 
-        $this->mensagem = 'Já existe uma empresa cadastrada com este CNPJ.';
+        $this->saveAddress($this->cod_pessoa_fj);
+
+        $this->simpleRedirect('empresas_lst.php');
+
+        return true;
+    }
 
-        return false;
+    private function cadastraTelefone($codPessoaJuridica, $tipo, $telefone, $dddTelefone)
+    {
+        $telefone = $this->limpaDadosTelefone($telefone);
+
+        if ($this->validaDadosTelefone($telefone)) {
+            (new clsPessoaTelefone(
+                $codPessoaJuridica,
+                $tipo,
+                $telefone,
+                $dddTelefone
+            ))->cadastra();
+        }
+    }
+
+    private function limpaDadosTelefone($telefone)
+    {
+        return trim(str_replace('-', '', $telefone));
+    }
+
+    private function validaDadosTelefone($telefone)
+    {
+        return is_numeric($telefone) && (strlen($telefone) < 12);
     }
 
     public function Editar()

From 53adc89e3461d0929966443643e02abc45272584 Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:12:01 -0300
Subject: [PATCH 013/219] Corrige titulo

---
 ieducar/intranet/empresas_cad.php | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ieducar/intranet/empresas_cad.php b/ieducar/intranet/empresas_cad.php
index f1ae88ff63..b7ab18dd76 100644
--- a/ieducar/intranet/empresas_cad.php
+++ b/ieducar/intranet/empresas_cad.php
@@ -372,7 +372,7 @@ protected function validaDDDTelefone($valorDDD = null, $valorTelefone = null, $n
 
     public function Formular()
     {
-        $this->title = 'Empresas!';
+        $this->_titulo = 'Empresas!';
         $this->processoAp = 41;
     }
 };

From 7bb03ae32c023dcfa40f2f4d7c108bddb8284c1d Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:12:26 -0300
Subject: [PATCH 014/219] Refatora.

---
 ieducar/intranet/empresas_det.php | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ieducar/intranet/empresas_det.php b/ieducar/intranet/empresas_det.php
index 9f13e1183c..e15353a8a1 100644
--- a/ieducar/intranet/empresas_det.php
+++ b/ieducar/intranet/empresas_det.php
@@ -8,7 +8,7 @@ public function Gerar()
         $cod_empresa = @$_GET['cod_empresa'];
 
         $objPessoaJuridica = new clsPessoaJuridica();
-        list($cod_pessoa_fj, $nm_pessoa, $id_federal, $endereco, $cep, $nm_bairro, $cidade, $ddd_telefone_1, $telefone_1, $ddd_telefone_2, $telefone_2, $ddd_telefone_mov, $telefone_mov, $ddd_telefone_fax, $telefone_fax, $http, $email, $ins_est, $tipo_pessoa, $razao_social, $capital_social, $ins_mun, $idtlog) = $objPessoaJuridica->queryRapida($cod_empresa, 'idpes', 'fantasia', 'cnpj', 'logradouro', 'cep', 'bairro', 'cidade', 'ddd_1', 'fone_1', 'ddd_2', 'fone_2', 'ddd_mov', 'fone_mov', 'ddd_fax', 'fone_fax', 'url', 'email', 'insc_estadual', 'tipo', 'nome', 'insc_municipal', 'idtlog');
+        [$cod_pessoa_fj, $nm_pessoa, $id_federal, $endereco, $cep, $nm_bairro, $cidade, $ddd_telefone_1, $telefone_1, $ddd_telefone_2, $telefone_2, $ddd_telefone_mov, $telefone_mov, $ddd_telefone_fax, $telefone_fax, $http, $email, $ins_est, $tipo_pessoa, $razao_social, $capital_social, $ins_mun, $idtlog] = $objPessoaJuridica->queryRapida($cod_empresa, 'idpes', 'fantasia', 'cnpj', 'logradouro', 'cep', 'bairro', 'cidade', 'ddd_1', 'fone_1', 'ddd_2', 'fone_2', 'ddd_mov', 'fone_mov', 'ddd_fax', 'fone_fax', 'url', 'email', 'insc_estadual', 'tipo', 'nome', 'insc_municipal', 'idtlog');
         $endereco = "$idtlog $endereco";
         $db = new clsBanco();
 

From 474be63a507864e248da9d91ad390c9dcf2aec50 Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Tue, 11 May 2021 19:13:50 -0300
Subject: [PATCH 015/219] =?UTF-8?q?Aplica=20fun=C3=A7=C3=A3o=20para=20n?=
 =?UTF-8?q?=C3=A3o=20apresentar=20o=20campo=20de=20maneira=20incorreta.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ieducar/intranet/empresas_det.php | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/ieducar/intranet/empresas_det.php b/ieducar/intranet/empresas_det.php
index e15353a8a1..ef5c01bae3 100644
--- a/ieducar/intranet/empresas_det.php
+++ b/ieducar/intranet/empresas_det.php
@@ -20,10 +20,10 @@ public function Gerar()
         $this->addDetalhe(['Bairro', $nm_bairro]);
         $this->addDetalhe(['Cidade', $cidade]);
 
-        $this->addDetalhe(['Telefone 1', "({$ddd_telefone_1}) {$telefone_1}"]);
-        $this->addDetalhe(['Telefone 2', "({$ddd_telefone_2}) {$telefone_2}"]);
-        $this->addDetalhe(['Celular', "({$ddd_telefone_mov}) {$telefone_mov}"]);
-        $this->addDetalhe(['Fax', "({$ddd_telefone_fax}) {$telefone_fax}"]);
+        $this->addDetalhe(['Telefone 1', $this->preparaTelefone($ddd_telefone_1, $telefone_1)]);
+        $this->addDetalhe(['Telefone 2', $this->preparaTelefone($ddd_telefone_2, $telefone_2)]);
+        $this->addDetalhe(['Celular', $this->preparaTelefone( $ddd_telefone_mov, $telefone_mov)]);
+        $this->addDetalhe(['Fax', $this->preparaTelefone($ddd_telefone_fax, $telefone_fax)]);
 
         $this->addDetalhe(['Site', $http]);
         $this->addDetalhe(['E-mail', $email]);
@@ -50,6 +50,11 @@ public function Gerar()
         ]);
     }
 
+    private function preparaTelefone($ddd, $telefone)
+    {
+        return !empty($telefone) ?  "({$ddd}) {$telefone}" : "";
+    }
+
     public function Formular()
     {
         $this->title = 'Empresas';

From 9bc2f07a1511ee0973d7c1987f583db210fbc15a Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Wed, 12 May 2021 14:45:15 -0300
Subject: [PATCH 016/219] =?UTF-8?q?Aplica=20valida=C3=A7=C3=A3o=20de=20exi?=
 =?UTF-8?q?bi=C3=A7=C3=A3o=20de=20cnpj?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ieducar/intranet/transporte_empresa_det.php | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ieducar/intranet/transporte_empresa_det.php b/ieducar/intranet/transporte_empresa_det.php
index 166f33ead5..b010331992 100644
--- a/ieducar/intranet/transporte_empresa_det.php
+++ b/ieducar/intranet/transporte_empresa_det.php
@@ -27,7 +27,7 @@ public function Gerar()
         $this->addDetalhe(['Código da empresa', $cod_empresa_transporte_escolar]);
         $this->addDetalhe(['Nome fantasia', $registro['nome_empresa']]);
         $this->addDetalhe(['Nome do responsável', $registro['nome_responsavel']]);
-        $this->addDetalhe(['CNPJ', int2CNPJ($id_federal)]);
+        $this->addDetalhe(['CNPJ', empty($id_federal) ? '' : int2CNPJ($id_federal)]);
         $this->addDetalhe(['Endereço', $endereco]);
         $this->addDetalhe(['CEP', $cep]);
         $this->addDetalhe(['Bairro', $nm_bairro]);

From 304f729f08e03d6659e87c0e252bdb901dadd56e Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Wed, 12 May 2021 14:45:34 -0300
Subject: [PATCH 017/219] Corrige nomes

---
 ieducar/intranet/transporte_empresa_det.php | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/ieducar/intranet/transporte_empresa_det.php b/ieducar/intranet/transporte_empresa_det.php
index b010331992..e96fa3874f 100644
--- a/ieducar/intranet/transporte_empresa_det.php
+++ b/ieducar/intranet/transporte_empresa_det.php
@@ -28,7 +28,7 @@ public function Gerar()
         $this->addDetalhe(['Nome fantasia', $registro['nome_empresa']]);
         $this->addDetalhe(['Nome do responsável', $registro['nome_responsavel']]);
         $this->addDetalhe(['CNPJ', empty($id_federal) ? '' : int2CNPJ($id_federal)]);
-        $this->addDetalhe(['Endereço', $endereco]);
+        $this->addDetalhe(['Endereço', $endereco]);
         $this->addDetalhe(['CEP', $cep]);
         $this->addDetalhe(['Bairro', $nm_bairro]);
         $this->addDetalhe(['Cidade', $cidade]);
@@ -50,8 +50,9 @@ public function Gerar()
         if (! $ins_est) {
             $ins_est = 'isento';
         }
-        $this->addDetalhe(['Inscrição estadual', $ins_est]);
-        $this->addDetalhe(['Observação', $registro['observacao']]);
+
+        $this->addDetalhe(['Inscrição estadual', $ins_est]);
+        $this->addDetalhe(['Observação', $registro['observacao']]);
         $this->url_cancelar = 'transporte_empresa_lst.php';
 
         $obj_permissao = new clsPermissoes();

From 450f8062a4b1dbc948f5316a60756fa7d278fab3 Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Wed, 12 May 2021 22:41:16 -0300
Subject: [PATCH 018/219] Faz checagem se existe o campo.

---
 ieducar/modules/Cadastro/Assets/Javascripts/Escola.js | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js b/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js
index 9b279c032b..4b03e7bbee 100644
--- a/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js
+++ b/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js
@@ -520,7 +520,11 @@ $j(document).ready(function() {
   $j('#longitude').on('change', verificaLatitudeLongitude);
 });
 
-document.getElementById('cnpj').readOnly = true;
+const cnpj = document.getElementById('cnpj');
+
+if (cnpj !== null) {
+  document.getElementById('cnpj').readOnly = true;
+}
 
 function getRedeEnsino(xml_escola_rede_ensino)
 {

From 2517cd3bc8aac2a2ec1ecccb7c858e644ba385c6 Mon Sep 17 00:00:00 2001
From: jrbarros 
Date: Thu, 13 May 2021 17:47:19 -0300
Subject: [PATCH 019/219] Ajusta nome do campo

---
 ieducar/modules/Cadastro/Assets/Javascripts/Escola.js | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js b/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js
index 4b03e7bbee..9dcb0f3eae 100644
--- a/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js
+++ b/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js
@@ -198,7 +198,7 @@ function changePossuiDependencias() {
 //abas
 
 // hide nos campos das outras abas (deixando só os campos da primeira aba)
-if (!$j('#cnpj').is(':visible')){
+if (!$j('#pessoaj_idpes').is(':visible')){
 
   $j('td .formdktd:first').append('
  • Dados gerais
  • Infraestrutura
  • Depend\u00eancias
  • Equipamentos
  • Recursos
  • Dados do ensino
'); $j('td .formdktd b').remove(); From b1e0226574acd1e64778c1174c1ef8a8b85f12da Mon Sep 17 00:00:00 2001 From: jrbarros Date: Thu, 13 May 2021 17:47:36 -0300 Subject: [PATCH 020/219] Adiciona novos atributos --- ieducar/intranet/educar_escola_cad.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index c1594cc8b7..912bd3eac9 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -181,6 +181,8 @@ public $qtd_vice_diretor; public $qtd_orientador_comunitario; public $iddis; + public $pessoaj_idpes; + public $pessoaj_id; private $inputsRecursos = [ 'qtd_secretario_escolar' => 'Secretário(a) escolar', From 2adb15389b5bfd91cd8043c49ec25905910f484e Mon Sep 17 00:00:00 2001 From: jrbarros Date: Thu, 13 May 2021 17:47:53 -0300 Subject: [PATCH 021/219] Adiciona novos valor aos novos atributos --- ieducar/intranet/educar_escola_cad.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 912bd3eac9..ee711353ed 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -214,8 +214,10 @@ public function Inicializar() $this->sem_cnpj = false; // cadastro Novo sem CNPJ - if (is_numeric($_POST['sem_cnpj']) && !$this->cod_escola) { + if (is_numeric($_POST['pessoaj_id']) && !$this->cod_escola) { $this->sem_cnpj = true; + $this->pessoaj_idpes = (int) $_POST['pessoaj_id']; + $this->pessoaj_id = (int) $_POST['pessoaj_id']; $retorno = 'Novo'; } // cadastro Novo com CNPJ elseif ($_POST['cnpj']) { From 32fd94686a5af01a099b80db74252e563a141e3c Mon Sep 17 00:00:00 2001 From: jrbarros Date: Thu, 13 May 2021 17:48:26 -0300 Subject: [PATCH 022/219] =?UTF-8?q?Troca=20o=20campo=20de=20cnpj=20por=20p?= =?UTF-8?q?essoa=20jur=C3=ADdica?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index ee711353ed..4e04c1e851 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -474,12 +474,12 @@ public function Gerar() $parametros->setPessoaTela('frame'); $this->campoOculto('sem_cnpj', ''); $parametros->setCodSistema(13); - $parametros->adicionaCampoTexto('cnpj', 'cnpj'); - $this->campoCnpjPesq('cnpj', 'CNPJ', $this->cnpj, 'pesquisa_pessoa_lst.php', $parametros->serializaCampos(), true); + $this->inputsHelper()->simpleSearchPessoaj('idpes', ['label'=> 'Pessoa Jurídica']); $this->acao_enviar = false; $this->url_cancelar = false; $this->array_botao = ['Continuar', 'Cancelar']; - $this->array_botao_url_script = ['obj = document.getElementById(\'cnpj\');if(obj.value != \'\' ) { acao(); } else { acao(); }', 'go(\'educar_escola_lst.php\');']; + $this->array_botao_url_script = ['obj = document.getElementById(\'pessoaj_idpes\');if(obj.value != \'\' ) { + document.getElementById(\'tipoacao\').value = \'\'; acao(); } else { acao(); }', 'go(\'educar_escola_lst.php\');']; } else { $this->inputsHelper()->integer('escola_inep_id', ['label' => 'Código INEP', 'placeholder' => 'INEP', 'required' => $obrigarCamposCenso, 'max_length' => 8, 'label_hint' => 'Somente números']); From d30b423c0a260095b7e557c0e04e77e40886d217 Mon Sep 17 00:00:00 2001 From: jrbarros Date: Thu, 13 May 2021 17:49:02 -0300 Subject: [PATCH 023/219] =?UTF-8?q?Adiciona=20campo=20oculto=20de=20pessoa?= =?UTF-8?q?=20jur=C3=ADdica.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 1 + 1 file changed, 1 insertion(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 4e04c1e851..dd095ff50c 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -463,6 +463,7 @@ public function Gerar() $obrigarCamposCenso = $this->validarCamposObrigatoriosCenso(); $this->campoOculto('obrigar_campos_censo', (int) $obrigarCamposCenso); + $this->campoOculto('pessoaj_id_oculto', $this->pessoaj_id); if (!$this->sem_cnpj && !$this->com_cnpj) { $parametros = new clsParametrosPesquisas(); From 790e870608639804a5588b115d84d71911c2356b Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:48:38 -0300 Subject: [PATCH 024/219] =?UTF-8?q?Altera=20vari=C3=A1vel=20para=20publica?= =?UTF-8?q?.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index dd095ff50c..252b74521a 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -184,7 +184,7 @@ public $pessoaj_idpes; public $pessoaj_id; - private $inputsRecursos = [ + public $inputsRecursos = [ 'qtd_secretario_escolar' => 'Secretário(a) escolar', 'qtd_auxiliar_administrativo' => 'Auxiliares de secretaria ou auxiliares administrativos, atendentes', 'qtd_apoio_pedagogico' => 'Profissionais de apoio e supervisão pedagógica: pedagogo(a), coordenador(a) pedagógico(a), orientador(a) educacional, supervisor(a) escolar e coordenador(a) de área de ensino', From 40a790601467f3a48504c40cefe6c249747a79ab Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:49:53 -0300 Subject: [PATCH 025/219] =?UTF-8?q?Move=20maneira=20de=20preparar=20os=20d?= =?UTF-8?q?ados=20para=20fun=C3=A7=C3=A3o=20separada.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 54 ++++++++++++++------------ 1 file changed, 29 insertions(+), 25 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 252b74521a..099a8eca3c 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1453,31 +1453,8 @@ public function Novo() { $obj_permissoes = new clsPermissoes(); $obj_permissoes->permissao_cadastra(561, $this->pessoa_logada, 3, 'educar_escola_lst.php'); - $orgao_vinculado_escola = implode(',', $this->orgao_vinculado_escola); - $mantenedora_escola_privada = implode(',', $this->mantenedora_escola_privada); - $local_funcionamento = implode(',', $this->local_funcionamento); - $abastecimento_agua = implode(',', $this->abastecimento_agua); - $abastecimento_energia = implode(',', $this->abastecimento_energia); - $esgoto_sanitario = implode(',', $this->esgoto_sanitario); - $destinacao_lixo = implode(',', $this->destinacao_lixo); - $tratamento_lixo = implode(',', $this->tratamento_lixo); - $salas_funcionais = implode(',', $this->salas_funcionais); - $salas_gerais = implode(',', $this->salas_gerais); - $banheiros = implode(',', $this->banheiros); - $laboratorios = implode(',', $this->laboratorios); - $salas_atividades = implode(',', $this->salas_atividades); - $dormitorios = implode(',', $this->dormitorios); - $areas_externas = implode(',', $this->areas_externas); - $recursos_acessibilidade = implode(',', $this->recursos_acessibilidade); - $equipamentos = implode(',', $this->equipamentos); - $uso_internet = implode(',', $this->uso_internet); - $rede_local = implode(',', $this->rede_local); - $equipamentos_acesso_internet = implode(',', $this->equipamentos_acesso_internet); - $organizacao_ensino = implode(',', $this->organizacao_ensino); - $instrumentos_pedagogicos = implode(',', $this->instrumentos_pedagogicos); - $orgaos_colegiados = implode(',', $this->orgaos_colegiados); - $reserva_vagas_cotas = implode(',', $this->reserva_vagas_cotas); - $codigo_lingua_indigena = implode(',', $this->codigo_lingua_indigena); + + $this->preparaDados(); if (!$this->validaDigitosInepEscola($this->escola_inep_id, 'Código INEP')) { return false; @@ -1792,6 +1769,33 @@ public function Novo() return false; } } + public function preparaDados() + { + $this->orgao_vinculado_escola = implode(',', $this->orgao_vinculado_escola); + $this->mantenedora_escola_privada = implode(',', $this->mantenedora_escola_privada); + $this->local_funcionamento = implode(',', $this->local_funcionamento); + $this->abastecimento_agua = implode(',', $this->abastecimento_agua); + $this->abastecimento_energia = implode(',', $this->abastecimento_energia); + $this->esgoto_sanitario = implode(',', $this->esgoto_sanitario); + $this->destinacao_lixo = implode(',', $this->destinacao_lixo); + $this->tratamento_lixo = implode(',', $this->tratamento_lixo); + $this->salas_funcionais = implode(',', $this->salas_funcionais); + $this->salas_gerais = implode(',', $this->salas_gerais); + $this->banheiros = implode(',', $this->banheiros); + $this->laboratorios = implode(',', $this->laboratorios); + $this->salas_atividades = implode(',', $this->salas_atividades); + $this->dormitorios = implode(',', $this->dormitorios); + $this->areas_externas = implode(',', $this->areas_externas); + $this->recursos_acessibilidade = implode(',', $this->recursos_acessibilidade); + $this->equipamentos = implode(',', $this->equipamentos); + $this->uso_internet = implode(',', $this->uso_internet); + $this->rede_local = implode(',', $this->rede_local); + $this->equipamentos_acesso_internet = implode(',', $this->equipamentos_acesso_internet); + $this->organizacao_ensino = implode(',', $this->organizacao_ensino); + $this->instrumentos_pedagogicos = implode(',', $this->instrumentos_pedagogicos); + $this->orgaos_colegiados = implode(',', $this->orgaos_colegiados); + $this->reserva_vagas_cotas = implode(',', $this->reserva_vagas_cotas); + $this->codigo_lingua_indigena = implode(',', $this->codigo_lingua_indigena); } public function Editar() From ec448c8b98f7fcadc5d3e8546838a1e3ab22639e Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:50:38 -0300 Subject: [PATCH 026/219] =?UTF-8?q?Cria=20valida=C3=A7=C3=A3o=20para=20pes?= =?UTF-8?q?soa=20jur=C3=ADdica.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 099a8eca3c..f19d454f71 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1487,6 +1487,18 @@ public function Novo() return false; } + if (! property_exists($this, 'pessoaj_id_oculto') || + ! is_int((int)$this->pessoaj_id_oculto) + ) { + throw new \iEducar\Support\Exceptions\Exception('Erro ao selecionar a pessoa jurídica'); + } + + $pessoaJuridica = (new clsJuridica((int)$this->pessoaj_id_oculto))->detalhe(); + + if ($pessoaJuridica === false) { + throw new \iEducar\Support\Exceptions\Exception('Pessoa jurídica não encontrada'); + } + $this->bloquear_lancamento_diario_anos_letivos_encerrados = is_null($this->bloquear_lancamento_diario_anos_letivos_encerrados) ? 0 : 1; $this->utiliza_regra_diferenciada = !is_null($this->utiliza_regra_diferenciada); From be89284db1d8a0a26523724946155a46620650e9 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:52:22 -0300 Subject: [PATCH 027/219] =?UTF-8?q?Move=20para=20uma=20fun=C3=A7=C3=A3o=20?= =?UTF-8?q?a=20cria=C3=A7=C3=A3o=20do=20objeto.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 182 ++++++++++++------------- 1 file changed, 90 insertions(+), 92 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index f19d454f71..60932089d2 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1502,98 +1502,7 @@ public function Novo() $this->bloquear_lancamento_diario_anos_letivos_encerrados = is_null($this->bloquear_lancamento_diario_anos_letivos_encerrados) ? 0 : 1; $this->utiliza_regra_diferenciada = !is_null($this->utiliza_regra_diferenciada); - if ($this->com_cnpj) { - $objPessoa = new clsPessoa_(false, $this->fantasia, $this->pessoa_logada, $this->p_http, 'J', false, false, $this->p_email); - $this->ref_idpes = $objPessoa->cadastra(); - - if ($this->ref_idpes) { - $obj_pes_juridica = new clsJuridica($this->ref_idpes, $this->cnpj, $this->fantasia, false, false, $this->pessoa_logada); - $cadastrou = $obj_pes_juridica->cadastra(); - - if ($cadastrou) { - $obj = new clsPmieducarEscola(null, $this->pessoa_logada, null, $this->ref_cod_instituicao, $this->zona_localizacao, $this->ref_cod_escola_rede_ensino, $this->ref_idpes, $this->sigla, null, null, 1, null, $this->bloquear_lancamento_diario_anos_letivos_encerrados); - $obj->situacao_funcionamento = $this->situacao_funcionamento; - $obj->dependencia_administrativa = $this->dependencia_administrativa; - $obj->orgao_vinculado_escola = $orgao_vinculado_escola; - $obj->latitude = $this->latitude; - $obj->longitude = $this->longitude; - $obj->regulamentacao = $this->regulamentacao; - $obj->ref_idpes_gestor = $this->gestor_id; - $obj->cargo_gestor = $this->cargo_gestor; - $obj->email_gestor = $this->email_gestor; - $obj->local_funcionamento = $local_funcionamento; - $obj->condicao = $this->condicao; - $obj->predio_compartilhado_outra_escola = $this->predio_compartilhado_outra_escola; - $obj->codigo_inep_escola_compartilhada = $this->codigo_inep_escola_compartilhada; - $obj->codigo_inep_escola_compartilhada2 = $this->codigo_inep_escola_compartilhada2; - $obj->codigo_inep_escola_compartilhada3 = $this->codigo_inep_escola_compartilhada3; - $obj->codigo_inep_escola_compartilhada4 = $this->codigo_inep_escola_compartilhada4; - $obj->codigo_inep_escola_compartilhada5 = $this->codigo_inep_escola_compartilhada5; - $obj->codigo_inep_escola_compartilhada6 = $this->codigo_inep_escola_compartilhada6; - $obj->agua_potavel_consumo = $this->agua_potavel_consumo; - $obj->abastecimento_agua = $abastecimento_agua; - $obj->abastecimento_energia = $abastecimento_energia; - $obj->esgoto_sanitario = $esgoto_sanitario; - $obj->destinacao_lixo = $destinacao_lixo; - $obj->tratamento_lixo = $tratamento_lixo; - $obj->alimentacao_escolar_alunos = $this->alimentacao_escolar_alunos; - $obj->compartilha_espacos_atividades_integracao = $this->compartilha_espacos_atividades_integracao; - $obj->usa_espacos_equipamentos_atividades_regulares = $this->usa_espacos_equipamentos_atividades_regulares; - $obj->salas_funcionais = $salas_funcionais; - $obj->salas_gerais = $salas_gerais; - $obj->banheiros = $banheiros; - $obj->laboratorios = $laboratorios; - $obj->salas_atividades = $salas_atividades; - $obj->dormitorios = $dormitorios; - $obj->areas_externas = $areas_externas; - $obj->recursos_acessibilidade = $recursos_acessibilidade; - $obj->possui_dependencias = $this->possui_dependencias; - $obj->numero_salas_utilizadas_dentro_predio = $this->numero_salas_utilizadas_dentro_predio; - $obj->numero_salas_utilizadas_fora_predio = $this->numero_salas_utilizadas_fora_predio; - $obj->numero_salas_climatizadas = $this->numero_salas_climatizadas; - $obj->numero_salas_acessibilidade = $this->numero_salas_acessibilidade; - $obj->total_funcionario = $this->total_funcionario; - $obj->atendimento_aee = $this->atendimento_aee; - $obj->fundamental_ciclo = $this->fundamental_ciclo; - $obj->organizacao_ensino = $organizacao_ensino; - $obj->instrumentos_pedagogicos = $instrumentos_pedagogicos; - $obj->orgaos_colegiados = $orgaos_colegiados; - $obj->exame_selecao_ingresso = $this->exame_selecao_ingresso; - $obj->reserva_vagas_cotas = $reserva_vagas_cotas; - $obj->projeto_politico_pedagogico = $this->projeto_politico_pedagogico; - $obj->localizacao_diferenciada = $this->localizacao_diferenciada; - $obj->educacao_indigena = $this->educacao_indigena; - $obj->lingua_ministrada = $this->lingua_ministrada; - $obj->codigo_lingua_indigena = $this->codigo_lingua_indigena; - $obj->codigo_lingua_indigena = $codigo_lingua_indigena; - $obj->equipamentos = $equipamentos; - $obj->uso_internet = $uso_internet; - $obj->rede_local = $rede_local; - $obj->equipamentos_acesso_internet = $equipamentos_acesso_internet; - $obj->quantidade_computadores_alunos_mesa = $this->quantidade_computadores_alunos_mesa; - $obj->quantidade_computadores_alunos_portateis = $this->quantidade_computadores_alunos_portateis; - $obj->quantidade_computadores_alunos_tablets = $this->quantidade_computadores_alunos_tablets; - $obj->lousas_digitais = $this->lousas_digitais; - $obj->televisoes = $this->televisoes; - $obj->dvds = $this->dvds; - $obj->aparelhos_de_som = $this->aparelhos_de_som; - $obj->projetores_digitais = $this->projetores_digitais; - $obj->acesso_internet = $this->acesso_internet; - $obj->ato_criacao = $this->ato_criacao; - $obj->ato_autorizativo = $this->ato_autorizativo; - $obj->ref_idpes_secretario_escolar = $this->secretario_id; - $obj->unidade_vinculada_outra_instituicao = $this->unidade_vinculada_outra_instituicao; - $obj->inep_escola_sede = $this->inep_escola_sede; - $obj->codigo_ies = $this->codigo_ies_id; - $obj->categoria_escola_privada = $this->categoria_escola_privada; - $obj->conveniada_com_poder_publico = $this->conveniada_com_poder_publico; - $obj->mantenedora_escola_privada = $mantenedora_escola_privada; - $obj->cnpj_mantenedora_principal = idFederal2int($this->cnpj_mantenedora_principal); - $obj->esfera_administrativa = $this->esfera_administrativa; - $obj->iddis = (int)$this->district_id; - foreach ($this->inputsRecursos as $key => $value) { - $obj->{$key} = $this->{$key}; - } + $cod_escola = $this->cadastraEscola((int)$this->pessoaj_id_oculto); $cod_escola = $cadastrou1 = $obj->cadastra(); @@ -1752,6 +1661,95 @@ public function Novo() $this->escola_curso = unserialize(urldecode($this->escola_curso)); $this->escola_curso_autorizacao = unserialize(urldecode($this->escola_curso_autorizacao)); $this->escola_curso_anos_letivos = unserialize(urldecode($this->escola_curso_anos_letivos)); + private function constroiObjetoEscola($pessoaj_id_oculto): clsPmieducarEscola + { + $obj = new clsPmieducarEscola(null, $this->pessoa_logada, null, $this->ref_cod_instituicao, $this->zona_localizacao, $this->ref_cod_escola_rede_ensino,$pessoaj_id_oculto, $this->sigla, null, null, 1, null, $this->bloquear_lancamento_diario_anos_letivos_encerrados); + + $obj->situacao_funcionamento = $this->situacao_funcionamento; + $obj->dependencia_administrativa = $this->dependencia_administrativa; + $obj->orgao_vinculado_escola = $this->orgao_vinculado_escola; + $obj->latitude = $this->latitude; + $obj->longitude = $this->longitude; + $obj->regulamentacao = $this->regulamentacao; + $obj->ref_idpes_gestor = $this->gestor_id; + $obj->cargo_gestor = $this->cargo_gestor; + $obj->email_gestor = $this->email_gestor; + $obj->local_funcionamento = $this->local_funcionamento; + $obj->condicao = $this->condicao; + $obj->predio_compartilhado_outra_escola = $this->predio_compartilhado_outra_escola; + $obj->codigo_inep_escola_compartilhada = $this->codigo_inep_escola_compartilhada; + $obj->codigo_inep_escola_compartilhada2 = $this->codigo_inep_escola_compartilhada2; + $obj->codigo_inep_escola_compartilhada3 = $this->codigo_inep_escola_compartilhada3; + $obj->codigo_inep_escola_compartilhada4 = $this->codigo_inep_escola_compartilhada4; + $obj->codigo_inep_escola_compartilhada5 = $this->codigo_inep_escola_compartilhada5; + $obj->codigo_inep_escola_compartilhada6 = $this->codigo_inep_escola_compartilhada6; + $obj->agua_potavel_consumo = $this->agua_potavel_consumo; + $obj->abastecimento_agua = $this->abastecimento_agua; + $obj->abastecimento_energia = $this->abastecimento_energia; + $obj->esgoto_sanitario = $this->esgoto_sanitario; + $obj->destinacao_lixo = $this->destinacao_lixo; + $obj->tratamento_lixo = $this->tratamento_lixo; + $obj->alimentacao_escolar_alunos = $this->alimentacao_escolar_alunos; + $obj->compartilha_espacos_atividades_integracao = $this->compartilha_espacos_atividades_integracao; + $obj->usa_espacos_equipamentos_atividades_regulares = $this->usa_espacos_equipamentos_atividades_regulares; + $obj->salas_funcionais = $this->salas_funcionais; + $obj->salas_gerais = $this->salas_gerais; + $obj->banheiros = $this->banheiros; + $obj->laboratorios = $this->laboratorios; + $obj->salas_atividades = $this->salas_atividades; + $obj->dormitorios = $this->dormitorios; + $obj->areas_externas = $this->areas_externas; + $obj->recursos_acessibilidade = $this->recursos_acessibilidade; + $obj->possui_dependencias = $this->possui_dependencias; + $obj->numero_salas_utilizadas_dentro_predio = $this->numero_salas_utilizadas_dentro_predio; + $obj->numero_salas_utilizadas_fora_predio = $this->numero_salas_utilizadas_fora_predio; + $obj->numero_salas_climatizadas = $this->numero_salas_climatizadas; + $obj->numero_salas_acessibilidade = $this->numero_salas_acessibilidade; + $obj->total_funcionario = $this->total_funcionario; + $obj->atendimento_aee = $this->atendimento_aee; + $obj->fundamental_ciclo = $this->fundamental_ciclo; + $obj->organizacao_ensino = $this->organizacao_ensino; + $obj->instrumentos_pedagogicos = $this->instrumentos_pedagogicos; + $obj->orgaos_colegiados = $this->orgaos_colegiados; + $obj->exame_selecao_ingresso = $this->exame_selecao_ingresso; + $obj->reserva_vagas_cotas = $this->reserva_vagas_cotas; + $obj->projeto_politico_pedagogico = $this->projeto_politico_pedagogico; + $obj->localizacao_diferenciada = $this->localizacao_diferenciada; + $obj->educacao_indigena = $this->educacao_indigena; + $obj->lingua_ministrada = $this->lingua_ministrada; + $obj->codigo_lingua_indigena = $this->codigo_lingua_indigena; + $obj->equipamentos = $this->equipamentos; + $obj->uso_internet = $this->uso_internet; + $obj->rede_local = $this->rede_local; + $obj->equipamentos_acesso_internet = $this->equipamentos_acesso_internet; + $obj->quantidade_computadores_alunos_mesa = $this->quantidade_computadores_alunos_mesa; + $obj->quantidade_computadores_alunos_portateis = $this->quantidade_computadores_alunos_portateis; + $obj->quantidade_computadores_alunos_tablets = $this->quantidade_computadores_alunos_tablets; + $obj->lousas_digitais = $this->lousas_digitais; + $obj->televisoes = $this->televisoes; + $obj->dvds = $this->dvds; + $obj->aparelhos_de_som = $this->aparelhos_de_som; + $obj->projetores_digitais = $this->projetores_digitais; + $obj->acesso_internet = $this->acesso_internet; + $obj->ato_criacao = $this->ato_criacao; + $obj->ato_autorizativo = $this->ato_autorizativo; + $obj->ref_idpes_secretario_escolar = $this->secretario_id; + $obj->unidade_vinculada_outra_instituicao = $this->unidade_vinculada_outra_instituicao; + $obj->inep_escola_sede = $this->inep_escola_sede; + $obj->codigo_ies = $this->codigo_ies_id; + $obj->categoria_escola_privada = $this->categoria_escola_privada; + $obj->conveniada_com_poder_publico = $this->conveniada_com_poder_publico; + $obj->mantenedora_escola_privada = $this->mantenedora_escola_privada; + $obj->cnpj_mantenedora_principal = idFederal2int($this->cnpj_mantenedora_principal); + $obj->esfera_administrativa = $this->esfera_administrativa; + $obj->iddis = (int)$this->district_id; + + foreach ($this->inputsRecursos as $key => $value) { + $obj->{$key} = $this->{$key}; + } + + return $obj; + } if ($this->escola_curso) { foreach ($this->escola_curso as $campo) { From da7fa857222fd989a2b89b4fcc55f2065630833a Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:53:05 -0300 Subject: [PATCH 028/219] =?UTF-8?q?Adiciona=20valida=C3=A7=C3=A3o=20de=20c?= =?UTF-8?q?ria=C3=A7=C3=A3o=20de=20escola.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 60932089d2..9e7cf8ef72 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1509,6 +1509,9 @@ public function Novo() if ($cadastrou1) { $escola = new clsPmieducarEscola($cod_escola); $escola = $escola->detalhe(); + if ($cod_escola === false) { + return false; + } $objTelefone = new clsPessoaTelefone($this->ref_idpes); $objTelefone->excluiTodos(); From 01511a0e72c0e3f84ef92347d4542146cc65b511 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:54:06 -0300 Subject: [PATCH 029/219] =?UTF-8?q?Separa=20a=20cria=C3=A7=C3=A3o=20de=20t?= =?UTF-8?q?elefone.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 28 ++++++++++++-------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 9e7cf8ef72..2936b43d12 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1504,25 +1504,11 @@ public function Novo() $cod_escola = $this->cadastraEscola((int)$this->pessoaj_id_oculto); - $cod_escola = $cadastrou1 = $obj->cadastra(); - - if ($cadastrou1) { - $escola = new clsPmieducarEscola($cod_escola); - $escola = $escola->detalhe(); if ($cod_escola === false) { return false; } - $objTelefone = new clsPessoaTelefone($this->ref_idpes); - $objTelefone->excluiTodos(); - $objTelefone = new clsPessoaTelefone($this->ref_idpes, 1, str_replace('-', '', $this->p_telefone_1), $this->p_ddd_telefone_1); - $objTelefone->cadastra(); - $objTelefone = new clsPessoaTelefone($this->ref_idpes, 2, str_replace('-', '', $this->p_telefone_2), $this->p_ddd_telefone_2); - $objTelefone->cadastra(); - $objTelefone = new clsPessoaTelefone($this->ref_idpes, 3, str_replace('-', '', $this->p_telefone_mov), $this->p_ddd_telefone_mov); - $objTelefone->cadastra(); - $objTelefone = new clsPessoaTelefone($this->ref_idpes, 4, str_replace('-', '', $this->p_telefone_fax), $this->p_ddd_telefone_fax); - $objTelefone->cadastra(); + $this->processaTelefones($this->pessoaj_id_oculto); $this->saveAddress($this->ref_idpes); @@ -1758,9 +1744,17 @@ private function constroiObjetoEscola($pessoaj_id_oculto): clsPmieducarEscola foreach ($this->escola_curso as $campo) { $curso_escola = new clsPmieducarEscolaCurso($cadastrou, $campo, null, $this->pessoa_logada, null, null, 1, $this->escola_curso_autorizacao[$campo], $this->escola_curso_anos_letivos[$campo]); $cadastrou_ = $curso_escola->cadastra(); + private function processaTelefones($idpes) + { + $objTelefone = new clsPessoaTelefone($idpes); + $objTelefone->excluiTodos(); if (!$cadastrou_) { $this->mensagem = 'Cadastro não realizado.
'; + $this->cadastraTelefone($idpes, 1, str_replace('-', '', $this->p_telefone_1), $this->p_ddd_telefone_1); + $this->cadastraTelefone($idpes, 2, str_replace('-', '', $this->p_telefone_2), $this->p_ddd_telefone_2); + $this->cadastraTelefone($idpes, 3, str_replace('-', '', $this->p_telefone_mov), $this->p_ddd_telefone_mov); + $this->cadastraTelefone($idpes,4, str_replace('-', '', $this->p_telefone_fax), $this->p_ddd_telefone_fax); return false; } @@ -1770,6 +1764,10 @@ private function constroiObjetoEscola($pessoaj_id_oculto): clsPmieducarEscola } $this->saveInep($escola['cod_escola']); //-----------------------FIM CADASTRA CURSO------------------------// + private function cadastraTelefone($idpes,$tipo,$telefone, $ddd) + { + return (new clsPessoaTelefone($idpes, $tipo, $telefone, $ddd, $this->pessoa_logada))->cadastra(); + } $this->mensagem .= 'Cadastro efetuado com sucesso.
'; From 2ee094e31f24aae1e2139a9e4abe44e37c3f268c Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:54:59 -0300 Subject: [PATCH 030/219] =?UTF-8?q?Ajusta=20indenta=C3=A7=C3=A3o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 2936b43d12..f929c5e031 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1510,7 +1510,7 @@ public function Novo() $this->processaTelefones($this->pessoaj_id_oculto); - $this->saveAddress($this->ref_idpes); + $this->saveAddress($this->ref_idpes); //-----------------------CADASTRA CURSO------------------------// $this->escola_curso = unserialize(urldecode($this->escola_curso)); From 87186836a8a7f81bc25fd1ee9d9bfe9a20021e26 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:55:36 -0300 Subject: [PATCH 031/219] Separa cadastro de escola curso. --- ieducar/intranet/educar_escola_cad.php | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index f929c5e031..465ec12926 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1512,10 +1512,7 @@ public function Novo() $this->saveAddress($this->ref_idpes); - //-----------------------CADASTRA CURSO------------------------// - $this->escola_curso = unserialize(urldecode($this->escola_curso)); - $this->escola_curso_autorizacao = unserialize(urldecode($this->escola_curso_autorizacao)); - $this->escola_curso_anos_letivos = unserialize(urldecode($this->escola_curso_anos_letivos)); + $this->cadastraEscolaCurso($cod_escola); if ($this->escola_curso) { foreach ($this->escola_curso as $campo) { @@ -1529,17 +1526,23 @@ public function Novo() } } - $this->storeManagers($cod_escola); - } - //-----------------------FIM CADASTRA CURSO------------------------// - } else { - $this->mensagem = 'Cadastro não realizado (clsPmieducarEscola).
'; + private function cadastraEscolaCurso($cod_escola) + { + $this->escola_curso = unserialize(urldecode($this->escola_curso), ['stdclass']); + $this->escola_curso_autorizacao = unserialize(urldecode($this->escola_curso_autorizacao), ['stdclass']); + $this->escola_curso_anos_letivos = unserialize(urldecode($this->escola_curso_anos_letivos), ['stdclass']); return false; } } else { $this->mensagem = 'Cadastro não realizado (clsJuridica).
'; + if ($this->escola_curso) { + foreach ($this->escola_curso as $campo) { + $curso_escola = new clsPmieducarEscolaCurso($cod_escola, $campo, null, $this->pessoa_logada, null, null, 1, $this->escola_curso_autorizacao[$campo], $this->escola_curso_anos_letivos[$campo]); + $cadastrou_ = $curso_escola->cadastra(); + if (!$cadastrou_) { + $this->mensagem = 'Cadastro não realizado.
'; return false; } From 286442320fb0c146d59059282e7726e39829c675 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:56:27 -0300 Subject: [PATCH 032/219] =?UTF-8?q?Ajusta=20posicionamento=20de=20fun?= =?UTF-8?q?=C3=A7=C3=A3o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 465ec12926..d8a55856f4 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1518,13 +1518,19 @@ public function Novo() foreach ($this->escola_curso as $campo) { $curso_escola = new clsPmieducarEscolaCurso($cadastrou1, $campo, null, $this->pessoa_logada, null, null, 1, $this->escola_curso_autorizacao[$campo], $this->escola_curso_anos_letivos[$campo]); $cadastrou_ = $curso_escola->cadastra(); + $this->saveInep($cod_escola); if (!$cadastrou_) { $this->mensagem = 'Cadastro não realizado.
'; + $this->mensagem .= 'Cadastro efetuado com sucesso.
'; return false; } } + throw new HttpResponseException( + new RedirectResponse('educar_escola_lst.php') + ); + } private function cadastraEscolaCurso($cod_escola) { @@ -1648,6 +1654,9 @@ private function cadastraEscolaCurso($cod_escola) if ($cadastrou) { $escola = new clsPmieducarEscola($cod_escola); $escola = $escola->detalhe(); + $this->storeManagers($cod_escola); + } + } //-----------------------CADASTRA CURSO------------------------// $this->escola_curso = unserialize(urldecode($this->escola_curso)); @@ -1762,6 +1771,7 @@ private function processaTelefones($idpes) return false; } } + } $this->storeManagers($cod_escola); } @@ -1773,16 +1783,30 @@ private function cadastraTelefone($idpes,$tipo,$telefone, $ddd) } $this->mensagem .= 'Cadastro efetuado com sucesso.
'; + public function cadastraEscola(int $pessoaj_id_oculto) + { + $escola = $this->constroiObjetoEscola($pessoaj_id_oculto); throw new HttpResponseException( new RedirectResponse('educar_escola_lst.php') ); } else { $this->mensagem = 'Cadastro não realizado (clsPmieducarEscola).
'; + $cod_escola = $escola->cadastra(); return false; } + if ($cod_escola === false) { + $this->mensagem = 'Cadastro não realizado
'; + return false; } + + return $cod_escola; + } + + /** + * Coloca os dados disponíveis no objeto da classe para serem lidos no @method cadastraEscola() + */ public function preparaDados() { $this->orgao_vinculado_escola = implode(',', $this->orgao_vinculado_escola); From 1bebd22ad1e13eed216b2209a427241dc8629e6f Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:57:21 -0300 Subject: [PATCH 033/219] =?UTF-8?q?Remove=20c=C3=B3digo=20duplicado=20e=20?= =?UTF-8?q?desnecess=C3=A1rio.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 134 ------------------------- 1 file changed, 134 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index d8a55856f4..24ad333570 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1514,19 +1514,10 @@ public function Novo() $this->cadastraEscolaCurso($cod_escola); - if ($this->escola_curso) { - foreach ($this->escola_curso as $campo) { - $curso_escola = new clsPmieducarEscolaCurso($cadastrou1, $campo, null, $this->pessoa_logada, null, null, 1, $this->escola_curso_autorizacao[$campo], $this->escola_curso_anos_letivos[$campo]); - $cadastrou_ = $curso_escola->cadastra(); $this->saveInep($cod_escola); - if (!$cadastrou_) { - $this->mensagem = 'Cadastro não realizado.
'; $this->mensagem .= 'Cadastro efetuado com sucesso.
'; - return false; - } - } throw new HttpResponseException( new RedirectResponse('educar_escola_lst.php') ); @@ -1538,10 +1529,6 @@ private function cadastraEscolaCurso($cod_escola) $this->escola_curso_autorizacao = unserialize(urldecode($this->escola_curso_autorizacao), ['stdclass']); $this->escola_curso_anos_letivos = unserialize(urldecode($this->escola_curso_anos_letivos), ['stdclass']); - return false; - } - } else { - $this->mensagem = 'Cadastro não realizado (clsJuridica).
'; if ($this->escola_curso) { foreach ($this->escola_curso as $campo) { $curso_escola = new clsPmieducarEscolaCurso($cod_escola, $campo, null, $this->pessoa_logada, null, null, 1, $this->escola_curso_autorizacao[$campo], $this->escola_curso_anos_letivos[$campo]); @@ -1551,117 +1538,12 @@ private function cadastraEscolaCurso($cod_escola) $this->mensagem = 'Cadastro não realizado.
'; return false; } - - $this->saveInep($escola['cod_escola']); - - $this->mensagem .= 'Cadastro efetuado com sucesso.
'; - - throw new HttpResponseException( - new RedirectResponse('educar_escola_lst.php') - ); - } else { - $this->mensagem = 'Cadastro não realizado (clsPessoa_).
'; - - return false; - } - } elseif ($this->sem_cnpj) { - $obj = new clsPmieducarEscola(null, $this->pessoa_logada, null, $this->ref_cod_instituicao, $this->zona_localizacao, $this->ref_cod_escola_rede_ensino, null, $this->sigla, null, null, 1, null, $this->bloquear_lancamento_diario_anos_letivos_encerrados, $this->utiliza_regra_diferenciada); - $obj->dependencia_administrativa = $this->dependencia_administrativa; - $obj->orgao_vinculado_escola = $orgao_vinculado_escola; - $obj->latitude = $this->latitude; - $obj->longitude = $this->longitude; - $obj->regulamentacao = $this->regulamentacao; - $obj->situacao_funcionamento = $this->situacao_funcionamento; - $obj->ref_idpes_gestor = $this->gestor_id; - $obj->cargo_gestor = $this->cargo_gestor; - $obj->email_gestor = $this->email_gestor; - $obj->local_funcionamento = $local_funcionamento; - $obj->condicao = $this->condicao; - $obj->predio_compartilhado_outra_escola = $this->predio_compartilhado_outra_escola; - $obj->codigo_inep_escola_compartilhada = $this->codigo_inep_escola_compartilhada; - $obj->codigo_inep_escola_compartilhada2 = $this->codigo_inep_escola_compartilhada2; - $obj->codigo_inep_escola_compartilhada3 = $this->codigo_inep_escola_compartilhada3; - $obj->codigo_inep_escola_compartilhada4 = $this->codigo_inep_escola_compartilhada4; - $obj->codigo_inep_escola_compartilhada5 = $this->codigo_inep_escola_compartilhada5; - $obj->codigo_inep_escola_compartilhada6 = $this->codigo_inep_escola_compartilhada6; - $obj->agua_potavel_consumo = $this->agua_potavel_consumo; - $obj->abastecimento_agua = $abastecimento_agua; - $obj->abastecimento_energia = $abastecimento_energia; - $obj->esgoto_sanitario = $esgoto_sanitario; - $obj->destinacao_lixo = $destinacao_lixo; - $obj->tratamento_lixo = $tratamento_lixo; - $obj->alimentacao_escolar_alunos = $this->alimentacao_escolar_alunos; - $obj->compartilha_espacos_atividades_integracao = $this->compartilha_espacos_atividades_integracao; - $obj->usa_espacos_equipamentos_atividades_regulares = $this->usa_espacos_equipamentos_atividades_regulares; - $obj->salas_funcionais = $salas_funcionais; - $obj->salas_gerais = $salas_gerais; - $obj->banheiros = $banheiros; - $obj->laboratorios = $laboratorios; - $obj->salas_atividades = $salas_atividades; - $obj->dormitorios = $dormitorios; - $obj->areas_externas = $areas_externas; - $obj->recursos_acessibilidade = $recursos_acessibilidade; - $obj->possui_dependencias = $this->possui_dependencias; - $obj->numero_salas_utilizadas_dentro_predio = $this->numero_salas_utilizadas_dentro_predio; - $obj->numero_salas_utilizadas_fora_predio = $this->numero_salas_utilizadas_fora_predio; - $obj->numero_salas_climatizadas = $this->numero_salas_climatizadas; - $obj->numero_salas_acessibilidade = $this->numero_salas_acessibilidade; - $obj->total_funcionario = $this->total_funcionario; - $obj->atendimento_aee = $this->atendimento_aee; - $obj->fundamental_ciclo = $this->fundamental_ciclo; - $obj->organizacao_ensino = $this->organizacao_ensino; - $obj->instrumentos_pedagogicos = $this->instrumentos_pedagogicos; - $obj->orgaos_colegiados = $orgaos_colegiados; - $obj->exame_selecao_ingresso = $this->exame_selecao_ingresso; - $obj->reserva_vagas_cotas = $reserva_vagas_cotas; - $obj->projeto_politico_pedagogico = $this->projeto_politico_pedagogico; - $obj->localizacao_diferenciada = $this->localizacao_diferenciada; - $obj->educacao_indigena = $this->educacao_indigena; - $obj->lingua_ministrada = $this->lingua_ministrada; - $obj->codigo_lingua_indigena = $this->codigo_lingua_indigena; - $obj->codigo_lingua_indigena = $codigo_lingua_indigena; - $obj->equipamentos = $equipamentos; - $obj->uso_internet = $uso_internet; - $obj->rede_local = $rede_local; - $obj->equipamentos_acesso_internet = $equipamentos_acesso_internet; - $obj->quantidade_computadores_alunos_mesa = $this->quantidade_computadores_alunos_mesa; - $obj->quantidade_computadores_alunos_portateis = $this->quantidade_computadores_alunos_portateis; - $obj->quantidade_computadores_alunos_tablets = $this->quantidade_computadores_alunos_tablets; - $obj->lousas_digitais = $this->lousas_digitais; - $obj->televisoes = $this->televisoes; - $obj->dvds = $this->dvds; - $obj->aparelhos_de_som = $this->aparelhos_de_som; - $obj->projetores_digitais = $this->projetores_digitais; - $obj->acesso_internet = $this->acesso_internet; - $obj->ato_criacao = $this->ato_criacao; - $obj->ato_autorizativo = $this->ato_autorizativo; - $obj->ref_idpes_secretario_escolar = $this->secretario_id; - $obj->unidade_vinculada_outra_instituicao = $this->unidade_vinculada_outra_instituicao; - $obj->inep_escola_sede = $this->inep_escola_sede; - $obj->codigo_ies = $this->codigo_ies_id; - $obj->categoria_escola_privada = $this->categoria_escola_privada; - $obj->conveniada_com_poder_publico = $this->conveniada_com_poder_publico; - $obj->mantenedora_escola_privada = $mantenedora_escola_privada; - $obj->cnpj_mantenedora_principal = idFederal2int($this->cnpj_mantenedora_principal); - $obj->esfera_administrativa = $this->esfera_administrativa; - $obj->iddis = (int)$this->district_id; - foreach ($this->inputsRecursos as $key => $value) { - $obj->{$key} = $this->{$key}; } - $cod_escola = $cadastrou = $obj->cadastra(); - - if ($cadastrou) { - $escola = new clsPmieducarEscola($cod_escola); - $escola = $escola->detalhe(); $this->storeManagers($cod_escola); } } - //-----------------------CADASTRA CURSO------------------------// - $this->escola_curso = unserialize(urldecode($this->escola_curso)); - $this->escola_curso_autorizacao = unserialize(urldecode($this->escola_curso_autorizacao)); - $this->escola_curso_anos_letivos = unserialize(urldecode($this->escola_curso_anos_letivos)); private function constroiObjetoEscola($pessoaj_id_oculto): clsPmieducarEscola { $obj = new clsPmieducarEscola(null, $this->pessoa_logada, null, $this->ref_cod_instituicao, $this->zona_localizacao, $this->ref_cod_escola_rede_ensino,$pessoaj_id_oculto, $this->sigla, null, null, 1, null, $this->bloquear_lancamento_diario_anos_letivos_encerrados); @@ -1752,37 +1634,23 @@ private function constroiObjetoEscola($pessoaj_id_oculto): clsPmieducarEscola return $obj; } - if ($this->escola_curso) { - foreach ($this->escola_curso as $campo) { - $curso_escola = new clsPmieducarEscolaCurso($cadastrou, $campo, null, $this->pessoa_logada, null, null, 1, $this->escola_curso_autorizacao[$campo], $this->escola_curso_anos_letivos[$campo]); - $cadastrou_ = $curso_escola->cadastra(); private function processaTelefones($idpes) { $objTelefone = new clsPessoaTelefone($idpes); $objTelefone->excluiTodos(); - if (!$cadastrou_) { - $this->mensagem = 'Cadastro não realizado.
'; $this->cadastraTelefone($idpes, 1, str_replace('-', '', $this->p_telefone_1), $this->p_ddd_telefone_1); $this->cadastraTelefone($idpes, 2, str_replace('-', '', $this->p_telefone_2), $this->p_ddd_telefone_2); $this->cadastraTelefone($idpes, 3, str_replace('-', '', $this->p_telefone_mov), $this->p_ddd_telefone_mov); $this->cadastraTelefone($idpes,4, str_replace('-', '', $this->p_telefone_fax), $this->p_ddd_telefone_fax); - return false; - } - } } - $this->storeManagers($cod_escola); - } - $this->saveInep($escola['cod_escola']); - //-----------------------FIM CADASTRA CURSO------------------------// private function cadastraTelefone($idpes,$tipo,$telefone, $ddd) { return (new clsPessoaTelefone($idpes, $tipo, $telefone, $ddd, $this->pessoa_logada))->cadastra(); } - $this->mensagem .= 'Cadastro efetuado com sucesso.
'; public function cadastraEscola(int $pessoaj_id_oculto) { $escola = $this->constroiObjetoEscola($pessoaj_id_oculto); @@ -1794,8 +1662,6 @@ public function cadastraEscola(int $pessoaj_id_oculto) $this->mensagem = 'Cadastro não realizado (clsPmieducarEscola).
'; $cod_escola = $escola->cadastra(); - return false; - } if ($cod_escola === false) { $this->mensagem = 'Cadastro não realizado
'; return false; From 97215310d38f73a53145c0101366d4d3afc0694e Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:58:12 -0300 Subject: [PATCH 034/219] =?UTF-8?q?Remove=20exception=20n=C3=A3o=20utiliza?= =?UTF-8?q?da.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 5 ----- 1 file changed, 5 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 24ad333570..3e370374fd 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1655,11 +1655,6 @@ public function cadastraEscola(int $pessoaj_id_oculto) { $escola = $this->constroiObjetoEscola($pessoaj_id_oculto); - throw new HttpResponseException( - new RedirectResponse('educar_escola_lst.php') - ); - } else { - $this->mensagem = 'Cadastro não realizado (clsPmieducarEscola).
'; $cod_escola = $escola->cadastra(); if ($cod_escola === false) { From 92ec18e77d491f484332fa22bec887a6f5f2a4f1 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Fri, 14 May 2021 17:58:38 -0300 Subject: [PATCH 035/219] Adiciona use da Facades do DB. --- ieducar/intranet/educar_escola_cad.php | 1 + 1 file changed, 1 insertion(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 3e370374fd..6e71baf63b 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -38,6 +38,7 @@ use iEducar\Support\View\SelectOptions; use Illuminate\Http\Exceptions\HttpResponseException; use Illuminate\Http\RedirectResponse; +use Illuminate\Support\Facades\DB; return new class extends clsCadastro { use LegacyAddressingFields; From 8c6b08adf924addb770b82a1a0451fac6496576e Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 10:56:14 -0300 Subject: [PATCH 036/219] =?UTF-8?q?Move=20valida=C3=A7=C3=A3o=20para=20fun?= =?UTF-8?q?=C3=A7=C3=A3o=20separada.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 6e71baf63b..227e2de9ca 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1475,13 +1475,8 @@ public function Novo() $this->validateManagersRules(); - for ($i = 1; $i <= 6; $i++) { - $seq = $i == 1 ? '' : $i; - $campo = 'codigo_inep_escola_compartilhada'.$seq; - $ret = $this->validaDigitosInepEscola($this->$campo, 'Código da escola que compartilha o prédio '.$i); - if (!$ret) { - return false; - } + if (!$this->validaDigitosInepEscolaCompartilhada()) { + return false; } if (!$this->validaOpcoesUnicasMultipleSearch()) { @@ -1524,6 +1519,18 @@ public function Novo() ); } + private function validaDigitosInepEscolaCompartilhada() { + for ($i = 1; $i <= 6; $i++) { + $seq = $i == 1 ? '' : $i; + $campo = 'codigo_inep_escola_compartilhada'.$seq; + $ret = $this->validaDigitosInepEscola($this->$campo, 'Código da escola que compartilha o prédio '.$i); + if (!$ret) { + return false; + } + } + return true; + } + private function cadastraEscolaCurso($cod_escola) { $this->escola_curso = unserialize(urldecode($this->escola_curso), ['stdclass']); From 65991787fa99f948c93e21688e91ffd73f931b93 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 10:57:12 -0300 Subject: [PATCH 037/219] Corrige para PSR --- ieducar/intranet/educar_escola_cad.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 227e2de9ca..0453ba567f 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1519,7 +1519,8 @@ public function Novo() ); } - private function validaDigitosInepEscolaCompartilhada() { + private function validaDigitosInepEscolaCompartilhada() + { for ($i = 1; $i <= 6; $i++) { $seq = $i == 1 ? '' : $i; $campo = 'codigo_inep_escola_compartilhada'.$seq; From 771b887e68d35ea90a1663899152e5cc230200c9 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 11:30:12 -0300 Subject: [PATCH 038/219] =?UTF-8?q?Adiciona=20retorno=20na=20fun=C3=A7?= =?UTF-8?q?=C3=A3o=20de=20cadastra=20escola?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 0453ba567f..5d4fd92057 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -467,15 +467,6 @@ public function Gerar() $this->campoOculto('pessoaj_id_oculto', $this->pessoaj_id); if (!$this->sem_cnpj && !$this->com_cnpj) { - $parametros = new clsParametrosPesquisas(); - $parametros->setSubmit(1); - $parametros->setPessoa('J'); - $parametros->setPessoaCampo('sem_cnpj'); - $parametros->setPessoaNovo('S'); - $parametros->setPessoaCPF('N'); - $parametros->setPessoaTela('frame'); - $this->campoOculto('sem_cnpj', ''); - $parametros->setCodSistema(13); $this->inputsHelper()->simpleSearchPessoaj('idpes', ['label'=> 'Pessoa Jurídica']); $this->acao_enviar = false; $this->url_cancelar = false; @@ -572,7 +563,8 @@ public function Gerar() $this->campoTexto('p_email', 'E-mail', $this->p_email, '50', '100', false); } - if ($this->com_cnpj) { + if ($this->pessoaj_id) { + $this->campoOculto('com_cnpj', $this->com_cnpj); if (!$this->cod_escola) { @@ -581,7 +573,8 @@ public function Gerar() $this->cnpj = int2IdFederal($this->cnpj); } - $objJuridica = new clsPessoaJuridica(false, idFederal2int($this->cnpj)); + $objJuridica = new clsPessoaJuridica($this->pessoaj_id); + $det = $objJuridica->detalhe(); $this->ref_idpes = $det['idpes']; @@ -1551,6 +1544,8 @@ private function cadastraEscolaCurso($cod_escola) $this->storeManagers($cod_escola); } + + return true; } private function constroiObjetoEscola($pessoaj_id_oculto): clsPmieducarEscola @@ -1784,7 +1779,7 @@ public function Editar() $obj->ref_idpes_gestor = $this->gestor_id; $obj->cargo_gestor = $this->cargo_gestor; $obj->email_gestor = $this->email_gestor; - $obj->local_funcionamento = $local_funcionamento; + $obj->local_funcionamento = $local_funcionamento; $obj->condicao = $this->condicao; $obj->predio_compartilhado_outra_escola = $this->predio_compartilhado_outra_escola; $obj->codigo_inep_escola_compartilhada = $this->codigo_inep_escola_compartilhada; From a0940e4e8b8b1e2531e170af1e45943a6cb7c889 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 11:33:45 -0300 Subject: [PATCH 039/219] Migra passagem dos dados para o objeto --- ieducar/intranet/educar_escola_cad.php | 28 ++------------------------ 1 file changed, 2 insertions(+), 26 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 5d4fd92057..7af203a919 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1706,6 +1706,8 @@ public function Editar() $obj_permissoes = new clsPermissoes(); $obj_permissoes->permissao_cadastra(561, $this->pessoa_logada, 7, 'educar_escola_lst.php'); + $this->preparaDados(); + if (!$this->validaDigitosInepEscola($this->escola_inep_id, 'Código INEP')) { return false; } @@ -1733,32 +1735,6 @@ public function Editar() } } - $orgao_vinculado_escola = implode(',', $this->orgao_vinculado_escola); - $mantenedora_escola_privada = implode(',', $this->mantenedora_escola_privada); - $local_funcionamento = implode(',', $this->local_funcionamento); - $abastecimento_agua = implode(',', $this->abastecimento_agua); - $abastecimento_energia = implode(',', $this->abastecimento_energia); - $esgoto_sanitario = implode(',', $this->esgoto_sanitario); - $destinacao_lixo = implode(',', $this->destinacao_lixo); - $tratamento_lixo = implode(',', $this->tratamento_lixo); - $salas_funcionais = implode(',', $this->salas_funcionais); - $salas_gerais = implode(',', $this->salas_gerais); - $banheiros = implode(',', $this->banheiros); - $laboratorios = implode(',', $this->laboratorios); - $salas_atividades = implode(',', $this->salas_atividades); - $dormitorios = implode(',', $this->dormitorios); - $areas_externas = implode(',', $this->areas_externas); - $recursos_acessibilidade = implode(',', $this->recursos_acessibilidade); - $equipamentos = implode(',', $this->equipamentos); - $uso_internet = implode(',', $this->uso_internet); - $rede_local = implode(',', $this->rede_local); - $equipamentos_acesso_internet = implode(',', $this->equipamentos_acesso_internet); - $organizacao_ensino = implode(',', $this->organizacao_ensino); - $instrumentos_pedagogicos = implode(',', $this->instrumentos_pedagogicos); - $orgaos_colegiados = implode(',', $this->orgaos_colegiados); - $reserva_vagas_cotas = implode(',', $this->reserva_vagas_cotas); - $codigo_lingua_indigena = implode(',', $this->codigo_lingua_indigena); - if (!$this->validaOpcoesUnicasMultipleSearch()) { return false; } From 819831953d4796439bfd291a0992014f07be7a5a Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 11:34:45 -0300 Subject: [PATCH 040/219] =?UTF-8?q?Aplica=20fun=C3=A7=C3=A3o=20de=20valida?= =?UTF-8?q?=C3=A7=C3=A3o=20de=20escola=20compartilhada?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 7af203a919..2e244df571 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1726,13 +1726,8 @@ public function Editar() $this->validateManagersRules(); - for ($i = 1; $i <= 6; $i++) { - $seq = $i == 1 ? '' : $i; - $campo = 'codigo_inep_escola_compartilhada'.$seq; - $ret = $this->validaDigitosInepEscola($this->$campo, 'Código da escola que compartilha o prédio '.$i); - if (!$ret) { - return false; - } + if (!$this->validaDigitosInepEscolaCompartilhada()) { + return false; } if (!$this->validaOpcoesUnicasMultipleSearch()) { From c8ffdcc36109460f3d8db4e6fb1d54c7ff48aa71 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 11:41:41 -0300 Subject: [PATCH 041/219] =?UTF-8?q?Ajusta=20complexidade=20de=20condi?= =?UTF-8?q?=C3=A7=C3=A3o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 2e244df571..d0e2b420b5 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -2727,7 +2727,9 @@ protected function validaRecursos() $this->mensagem = "O campo: {$label} não pode ser preenchido com 0"; return false; - } elseif ((int) $this->{$key} > 0) { + } + + if ((int) $this->{$key} > 0) { $algumCampoPreenchido = true; } } From 6fe10cb7f9b3eb9cc3f36788a560682bc3cfd074 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:20:21 -0300 Subject: [PATCH 042/219] =?UTF-8?q?Move=20regra=20de=20exclus=C3=A3o=20par?= =?UTF-8?q?a=20simplificar=20retorno.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index d0e2b420b5..181279cfee 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -2031,11 +2031,12 @@ public function Excluir() throw new HttpResponseException( new RedirectResponse('educar_escola_lst.php') ); + if ($excluiu === false) { + $this->mensagem = 'Exclusão não realizada.
'; + return false; } - $this->mensagem = 'Exclusão não realizada.
'; - return false; } protected function inputTelefone($type, $typeLabel = '') { From 5fd7a707524247c2bdf2dcb0a01c5e836187adb3 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:20:44 -0300 Subject: [PATCH 043/219] =?UTF-8?q?Remove=20vari=C3=A1vel=20n=C3=A3o=20uti?= =?UTF-8?q?lizada.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 181279cfee..04fe943565 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -2022,7 +2022,7 @@ public function Excluir() $obj_permissoes = new clsPermissoes(); $obj_permissoes->permissao_cadastra(561, $this->pessoa_logada, 3, 'educar_escola_lst.php'); $obj = new clsPmieducarEscola($this->cod_escola, null, $this->pessoa_logada, null, null, null, null, null, null, null, 0); - $escola = $obj->detalhe(); + $obj->detalhe(); $excluiu = $obj->excluir(); if ($excluiu) { From 32ef016665898be6bedc1d35ef7615d690da5255 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:21:29 -0300 Subject: [PATCH 044/219] =?UTF-8?q?Simplifica=20retorno=20da=20fun=C3=A7?= =?UTF-8?q?=C3=A3o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 04fe943565..a5534514ad 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -2025,18 +2025,16 @@ public function Excluir() $obj->detalhe(); $excluiu = $obj->excluir(); - if ($excluiu) { - $this->mensagem .= 'Exclusão efetuada com sucesso.
'; - - throw new HttpResponseException( - new RedirectResponse('educar_escola_lst.php') - ); if ($excluiu === false) { $this->mensagem = 'Exclusão não realizada.
'; return false; } + $this->mensagem = 'Exclusão efetuada com sucesso.
'; + throw new HttpResponseException( + new RedirectResponse('educar_escola_lst.php') + ); } protected function inputTelefone($type, $typeLabel = '') { From b3bf62a2cc15b7e1a69a8c4012e3635697e1ab6d Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:22:16 -0300 Subject: [PATCH 045/219] =?UTF-8?q?Adiciona=20condi=C3=A7=C3=A3o=20para=20?= =?UTF-8?q?retornar=20em=20caso=20de=20erro.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index a5534514ad..d91bcd0824 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1501,7 +1501,9 @@ public function Novo() $this->saveAddress($this->ref_idpes); - $this->cadastraEscolaCurso($cod_escola); + if (!$this->cadastraEscolaCurso($cod_escola, false)) { + return false; + } $this->saveInep($cod_escola); From bddd91e74fe716644e38c4c11836872e6260bf17 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:23:45 -0300 Subject: [PATCH 046/219] =?UTF-8?q?Adiciona=20par=C3=A2metro=20condicional?= =?UTF-8?q?=20de=20exclus=C3=A3o=20de=20escola=20curso.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index d91bcd0824..a59140459f 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1527,8 +1527,13 @@ private function validaDigitosInepEscolaCompartilhada() return true; } - private function cadastraEscolaCurso($cod_escola) + private function cadastraEscolaCurso($cod_escola, $excluirEscolaCursos = false) { + if ($excluirEscolaCursos === true) { + $obj = new clsPmieducarEscolaCurso($this->cod_escola); + $excluiu = $obj->excluirTodos(); + } + $this->escola_curso = unserialize(urldecode($this->escola_curso), ['stdclass']); $this->escola_curso_autorizacao = unserialize(urldecode($this->escola_curso_autorizacao), ['stdclass']); $this->escola_curso_anos_letivos = unserialize(urldecode($this->escola_curso_anos_letivos), ['stdclass']); From 47e6aa96123e87f6c9e93a7bdd4132b7da6ef067 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:24:39 -0300 Subject: [PATCH 047/219] =?UTF-8?q?Adiciona=20par=C3=A2metro=20condicional?= =?UTF-8?q?=20para=20receber=20um=20objeto=20carregado.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index a59140459f..0138229783 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1555,9 +1555,13 @@ private function cadastraEscolaCurso($cod_escola, $excluirEscolaCursos = false) return true; } - private function constroiObjetoEscola($pessoaj_id_oculto): clsPmieducarEscola + private function constroiObjetoEscola($pessoaj_id_oculto, $escola = null): clsPmieducarEscola { - $obj = new clsPmieducarEscola(null, $this->pessoa_logada, null, $this->ref_cod_instituicao, $this->zona_localizacao, $this->ref_cod_escola_rede_ensino,$pessoaj_id_oculto, $this->sigla, null, null, 1, null, $this->bloquear_lancamento_diario_anos_letivos_encerrados); + if($escola instanceof clsPmieducarEscola) { + $obj = $escola; + } else { + $obj = new clsPmieducarEscola(null, $this->pessoa_logada, null, $this->ref_cod_instituicao, $this->zona_localizacao, $this->ref_cod_escola_rede_ensino,$pessoaj_id_oculto, $this->sigla, null, null, 1, null, $this->bloquear_lancamento_diario_anos_letivos_encerrados); + } $obj->situacao_funcionamento = $this->situacao_funcionamento; $obj->dependencia_administrativa = $this->dependencia_administrativa; From aa3fbc2dbb70790d06e0b2d2269b9d296ffedc65 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:27:16 -0300 Subject: [PATCH 048/219] =?UTF-8?q?Remove=20c=C3=B3digo=20duplicado=20e=20?= =?UTF-8?q?aplica=20a=20nova=20fun=C3=A7=C3=A3o=20de=20construir=20objeto.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 177 +------------------------ 1 file changed, 2 insertions(+), 175 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 0138229783..3292e740b6 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1747,183 +1747,10 @@ public function Editar() $this->bloquear_lancamento_diario_anos_letivos_encerrados = is_null($this->bloquear_lancamento_diario_anos_letivos_encerrados) ? 0 : 1; $this->utiliza_regra_diferenciada = !is_null($this->utiliza_regra_diferenciada); - $obj = new clsPmieducarEscola($this->cod_escola); - $escolaDetAntigo = $obj->detalhe(); - - if ($this->cod_escola) { - $obj = new clsPmieducarEscola($this->cod_escola, null, $this->pessoa_logada, $this->ref_cod_instituicao, $this->zona_localizacao, $this->ref_cod_escola_rede_ensino, $this->ref_idpes, $this->sigla, null, null, 1, $this->bloquear_lancamento_diario_anos_letivos_encerrados, $this->utiliza_regra_diferenciada); - $obj->dependencia_administrativa = $this->dependencia_administrativa; - $obj->orgao_vinculado_escola = $orgao_vinculado_escola; - $obj->latitude = $this->latitude; - $obj->longitude = $this->longitude; - $obj->regulamentacao = $this->regulamentacao; - $obj->situacao_funcionamento = $this->situacao_funcionamento; - $obj->ref_idpes_gestor = $this->gestor_id; - $obj->cargo_gestor = $this->cargo_gestor; - $obj->email_gestor = $this->email_gestor; - $obj->local_funcionamento = $local_funcionamento; - $obj->condicao = $this->condicao; - $obj->predio_compartilhado_outra_escola = $this->predio_compartilhado_outra_escola; - $obj->codigo_inep_escola_compartilhada = $this->codigo_inep_escola_compartilhada; - $obj->codigo_inep_escola_compartilhada2 = $this->codigo_inep_escola_compartilhada2; - $obj->codigo_inep_escola_compartilhada3 = $this->codigo_inep_escola_compartilhada3; - $obj->codigo_inep_escola_compartilhada4 = $this->codigo_inep_escola_compartilhada4; - $obj->codigo_inep_escola_compartilhada5 = $this->codigo_inep_escola_compartilhada5; - $obj->codigo_inep_escola_compartilhada6 = $this->codigo_inep_escola_compartilhada6; - $obj->agua_potavel_consumo = $this->agua_potavel_consumo; - $obj->abastecimento_agua = $abastecimento_agua; - $obj->abastecimento_energia = $abastecimento_energia; - $obj->esgoto_sanitario = $esgoto_sanitario; - $obj->destinacao_lixo = $destinacao_lixo; - $obj->tratamento_lixo = $tratamento_lixo; - $obj->alimentacao_escolar_alunos = $this->alimentacao_escolar_alunos; - $obj->compartilha_espacos_atividades_integracao = $this->compartilha_espacos_atividades_integracao; - $obj->usa_espacos_equipamentos_atividades_regulares = $this->usa_espacos_equipamentos_atividades_regulares; - $obj->salas_funcionais = $salas_funcionais; - $obj->salas_gerais = $salas_gerais; - $obj->banheiros = $banheiros; - $obj->laboratorios = $laboratorios; - $obj->salas_atividades = $salas_atividades; - $obj->dormitorios = $dormitorios; - $obj->areas_externas = $areas_externas; - $obj->recursos_acessibilidade = $recursos_acessibilidade; - $obj->possui_dependencias = $this->possui_dependencias; - $obj->numero_salas_utilizadas_dentro_predio = $this->numero_salas_utilizadas_dentro_predio; - $obj->numero_salas_utilizadas_fora_predio = $this->numero_salas_utilizadas_fora_predio; - $obj->numero_salas_climatizadas = $this->numero_salas_climatizadas; - $obj->numero_salas_acessibilidade = $this->numero_salas_acessibilidade; - $obj->total_funcionario = $this->total_funcionario; - $obj->atendimento_aee = $this->atendimento_aee; - $obj->fundamental_ciclo = $this->fundamental_ciclo; - $obj->organizacao_ensino = $organizacao_ensino; - $obj->instrumentos_pedagogicos = $instrumentos_pedagogicos; - $obj->orgaos_colegiados = $orgaos_colegiados; - $obj->exame_selecao_ingresso = $this->exame_selecao_ingresso; - $obj->reserva_vagas_cotas = $reserva_vagas_cotas; - $obj->projeto_politico_pedagogico = $this->projeto_politico_pedagogico; - $obj->localizacao_diferenciada = $this->localizacao_diferenciada; - $obj->educacao_indigena = $this->educacao_indigena; - $obj->lingua_ministrada = $this->lingua_ministrada; - $obj->codigo_lingua_indigena = $this->codigo_lingua_indigena; - $obj->codigo_lingua_indigena = $codigo_lingua_indigena; - $obj->equipamentos = $equipamentos; - $obj->uso_internet = $uso_internet; - $obj->rede_local = $rede_local; - $obj->equipamentos_acesso_internet = $equipamentos_acesso_internet; - $obj->quantidade_computadores_alunos_mesa = $this->quantidade_computadores_alunos_mesa; - $obj->quantidade_computadores_alunos_portateis = $this->quantidade_computadores_alunos_portateis; - $obj->quantidade_computadores_alunos_tablets = $this->quantidade_computadores_alunos_tablets; - $obj->lousas_digitais = $this->lousas_digitais; - $obj->televisoes = $this->televisoes; - $obj->dvds = $this->dvds; - $obj->aparelhos_de_som = $this->aparelhos_de_som; - $obj->projetores_digitais = $this->projetores_digitais; - $obj->acesso_internet = $this->acesso_internet; - $obj->ato_criacao = $this->ato_criacao; - $obj->ato_autorizativo = $this->ato_autorizativo; - $obj->ref_idpes_secretario_escolar = $this->secretario_id; - $obj->unidade_vinculada_outra_instituicao = $this->unidade_vinculada_outra_instituicao; - $obj->inep_escola_sede = $this->inep_escola_sede; - $obj->codigo_ies = $this->codigo_ies_id; - $obj->categoria_escola_privada = $this->categoria_escola_privada; - $obj->conveniada_com_poder_publico = $this->conveniada_com_poder_publico; - $obj->mantenedora_escola_privada = $mantenedora_escola_privada; - $obj->cnpj_mantenedora_principal = idFederal2int($this->cnpj_mantenedora_principal); - $obj->esfera_administrativa = $this->esfera_administrativa; - $obj->iddis = (int)$this->district_id; - foreach ($this->inputsRecursos as $key => $value) { - $obj->{$key} = $this->{$key}; - } - $editou = $obj->edita(); + $obj = new clsPmieducarEscola($this->cod_escola, null, $this->pessoa_logada, $this->ref_cod_instituicao, $this->zona_localizacao, $this->ref_cod_escola_rede_ensino, $this->ref_idpes, $this->sigla, null, null, 1, $this->bloquear_lancamento_diario_anos_letivos_encerrados, $this->utiliza_regra_diferenciada); - if ($editou) { - $escolaDetAtual = $obj->detalhe(); - } - } else { - $obj = new clsPmieducarEscola(null, $this->pessoa_logada, null, $this->ref_cod_instituicao, $this->zona_localizacao, $this->ref_cod_escola_rede_ensino, $this->ref_idpes, $this->sigla, null, null, 1, $this->bloquear_lancamento_diario_anos_letivos_encerrados, $this->utiliza_regra_diferenciada); - $obj->situacao_funcionamento = $this->situacao_funcionamento; - $obj->dependencia_administrativa = $this->dependencia_administrativa; - $obj->orgao_vinculado_escola = $orgao_vinculado_escola; - $obj->latitude = $this->latitude; - $obj->longitude = $this->longitude; - $obj->regulamentacao = $this->regulamentacao; - $obj->ref_idpes_gestor = $this->gestor_id; - $obj->cargo_gestor = $this->cargo_gestor; - $obj->email_gestor = $this->email_gestor; - $obj->local_funcionamento = $local_funcionamento; - $obj->condicao = $this->condicao; - $obj->predio_compartilhado_outra_escola = $this->predio_compartilhado_outra_escola; - $obj->codigo_inep_escola_compartilhada = $this->codigo_inep_escola_compartilhada; - $obj->codigo_inep_escola_compartilhada2 = $this->codigo_inep_escola_compartilhada2; - $obj->codigo_inep_escola_compartilhada3 = $this->codigo_inep_escola_compartilhada3; - $obj->codigo_inep_escola_compartilhada4 = $this->codigo_inep_escola_compartilhada4; - $obj->codigo_inep_escola_compartilhada5 = $this->codigo_inep_escola_compartilhada5; - $obj->codigo_inep_escola_compartilhada6 = $this->codigo_inep_escola_compartilhada6; - $obj->agua_potavel_consumo = $this->agua_potavel_consumo; - $obj->abastecimento_agua = $abastecimento_agua; - $obj->abastecimento_energia = $abastecimento_energia; - $obj->esgoto_sanitario = $esgoto_sanitario; - $obj->destinacao_lixo = $destinacao_lixo; - $obj->tratamento_lixo = $tratamento_lixo; - $obj->alimentacao_escolar_alunos = $this->alimentacao_escolar_alunos; - $obj->compartilha_espacos_atividades_integracao = $this->compartilha_espacos_atividades_integracao; - $obj->usa_espacos_equipamentos_atividades_regulares = $this->usa_espacos_equipamentos_atividades_regulares; - $obj->salas_funcionais = $salas_funcionais; - $obj->salas_gerais = $salas_gerais; - $obj->banheiros = $banheiros; - $obj->laboratorios = $laboratorios; - $obj->salas_atividades = $salas_atividades; - $obj->dormitorios = $dormitorios; - $obj->areas_externas = $areas_externas; - $obj->recursos_acessibilidade = $recursos_acessibilidade; - $obj->possui_dependencias = $this->possui_dependencias; - $obj->numero_salas_utilizadas_dentro_predio = $this->numero_salas_utilizadas_dentro_predio; - $obj->numero_salas_utilizadas_fora_predio = $this->numero_salas_utilizadas_fora_predio; - $obj->numero_salas_climatizadas = $this->numero_salas_climatizadas; - $obj->numero_salas_acessibilidade = $this->numero_salas_acessibilidade; - $obj->total_funcionario = $this->total_funcionario; - $obj->atendimento_aee = $this->atendimento_aee; - $obj->fundamental_ciclo = $this->fundamental_ciclo; - $obj->organizacao_ensino = $organizacao_ensino; - $obj->instrumentos_pedagogicos = $instrumentos_pedagogicos; - $obj->orgaos_colegiados = $orgaos_colegiados; - $obj->exame_selecao_ingresso = $this->exame_selecao_ingresso; - $obj->reserva_vagas_cotas = $reserva_vagas_cotas; - $obj->projeto_politico_pedagogico = $this->projeto_politico_pedagogico; - $obj->localizacao_diferenciada = $this->localizacao_diferenciada; - $obj->educacao_indigena = $this->educacao_indigena; - $obj->lingua_ministrada = $this->lingua_ministrada; - $obj->codigo_lingua_indigena = $this->codigo_lingua_indigena; - $obj->codigo_lingua_indigena = $codigo_lingua_indigena; - $obj->equipamentos = $equipamentos; - $obj->uso_internet = $uso_internet; - $obj->rede_local = $rede_local; - $obj->equipamentos_acesso_internet = $equipamentos_acesso_internet; - $obj->quantidade_computadores_alunos_mesa = $this->quantidade_computadores_alunos_mesa; - $obj->quantidade_computadores_alunos_portateis = $this->quantidade_computadores_alunos_portateis; - $obj->quantidade_computadores_alunos_tablets = $this->quantidade_computadores_alunos_tablets; - $obj->lousas_digitais = $this->lousas_digitais; - $obj->televisoes = $this->televisoes; - $obj->dvds = $this->dvds; - $obj->aparelhos_de_som = $this->aparelhos_de_som; - $obj->projetores_digitais = $this->projetores_digitais; - $obj->acesso_internet = $this->acesso_internet; - $obj->ato_criacao = $this->ato_criacao; - $obj->ato_autorizativo = $this->ato_autorizativo; - $obj->ref_idpes_secretario_escolar = $this->secretario_id; - $obj->unidade_vinculada_outra_instituicao = $this->unidade_vinculada_outra_instituicao; - $obj->inep_escola_sede = $this->inep_escola_sede; - $obj->codigo_ies = $this->codigo_ies_id; - $obj->categoria_escola_privada = $this->categoria_escola_privada; - $obj->conveniada_com_poder_publico = $this->conveniada_com_poder_publico; - $obj->mantenedora_escola_privada = $mantenedora_escola_privada; - $obj->cnpj_mantenedora_principal = idFederal2int($this->cnpj_mantenedora_principal); - $obj->esfera_administrativa = $this->esfera_administrativa; - $obj->iddis = (int)$this->district_id; - foreach ($this->inputsRecursos as $key => $value) { - $obj->{$key} = $this->{$key}; - } + $escola = $this->constroiObjetoEscola($this->ref_idpes, $obj); $this->cod_escola = $editou = $obj->cadastra(); From e080a1f2d941afa80b6f8c0cb036b00088e8f240 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:28:05 -0300 Subject: [PATCH 049/219] Aplica regra de retorno em caso de erro. --- ieducar/intranet/educar_escola_cad.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 3292e740b6..7bc71d521f 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1752,12 +1752,15 @@ public function Editar() $escola = $this->constroiObjetoEscola($this->ref_idpes, $obj); - $this->cod_escola = $editou = $obj->cadastra(); + $edita = $escola->edita(); if ($this->cod_escola) { $obj = new clsPmieducarEscola($this->cod_escola); $escolaDetAtual = $obj->detalhe(); } + if ($edita === false) { + $this->mensagem = 'Edição não efetuada.
'; + return false; } if ($editou) { From 322f49b4f0ad86709887110adab5160abf5945b3 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:30:25 -0300 Subject: [PATCH 050/219] =?UTF-8?q?Remove=20c=C3=B3digo=20duplicado=20do?= =?UTF-8?q?=20cadastro=20de=20telefone=20e=20escola=20curso.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 91 -------------------------- 1 file changed, 91 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 7bc71d521f..cb96bc4adc 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1754,108 +1754,17 @@ public function Editar() $edita = $escola->edita(); - if ($this->cod_escola) { - $obj = new clsPmieducarEscola($this->cod_escola); - $escolaDetAtual = $obj->detalhe(); - } if ($edita === false) { $this->mensagem = 'Edição não efetuada.
'; return false; } - if ($editou) { - if ($this->com_cnpj) { - $objPessoa = new clsPessoa_($this->ref_idpes, null, false, $this->p_http, false, $this->pessoa_logada, date('Y-m-d H:i:s', time()), $this->p_email); - $editou1 = $objPessoa->edita(); - - if ($editou1) { - $obj_pes_juridica = new clsJuridica($this->ref_idpes, $this->cnpj, $this->fantasia, false, false, false, $this->pessoa_logada); - $editou2 = $obj_pes_juridica->edita(); - - if ($editou2) { - $objTelefone = new clsPessoaTelefone($this->ref_idpes); - $objTelefone->excluiTodos(); - $objTelefone = new clsPessoaTelefone($this->ref_idpes, 1, str_replace('-', '', $this->p_telefone_1), $this->p_ddd_telefone_1); - $objTelefone->cadastra(); - $objTelefone = new clsPessoaTelefone($this->ref_idpes, 2, str_replace('-', '', $this->p_telefone_2), $this->p_ddd_telefone_2); - $objTelefone->cadastra(); - $objTelefone = new clsPessoaTelefone($this->ref_idpes, 3, str_replace('-', '', $this->p_telefone_mov), $this->p_ddd_telefone_mov); - $objTelefone->cadastra(); - $objTelefone = new clsPessoaTelefone($this->ref_idpes, 4, str_replace('-', '', $this->p_telefone_fax), $this->p_ddd_telefone_fax); - $objTelefone->cadastra(); - - $this->saveAddress($this->ref_idpes); - - //-----------------------EDITA CURSO------------------------// - $this->escola_curso = unserialize(urldecode($this->escola_curso)); - $this->escola_curso_autorizacao = unserialize(urldecode($this->escola_curso_autorizacao)); - $this->escola_curso_anos_letivos = unserialize(urldecode($this->escola_curso_anos_letivos)); - $obj = new clsPmieducarEscolaCurso($this->cod_escola); - $excluiu = $obj->excluirTodos(); - - if ($excluiu) { - if ($this->escola_curso) { - foreach ($this->escola_curso as $campo) { - $obj = new clsPmieducarEscolaCurso($this->cod_escola, $campo, null, $this->pessoa_logada, null, null, 1, $this->escola_curso_autorizacao[$campo], $this->escola_curso_anos_letivos[$campo]); - $cadastrou_ = $obj->cadastra(); - - if (!$cadastrou_) { - $this->mensagem = 'Edição não realizada.
'; - - return false; - } - } - } - } - - $this->storeManagers($this->cod_escola); - $this->saveInep($this->cod_escola); - //-----------------------FIM EDITA CURSO------------------------// - $this->mensagem .= 'Edição efetuada com sucesso.
'; - - throw new HttpResponseException( - new RedirectResponse('educar_escola_lst.php') - ); - } - } - } elseif ($this->sem_cnpj) { - //-----------------------EDITA CURSO------------------------// - $this->escola_curso = unserialize(urldecode($this->escola_curso)); - $this->escola_curso_autorizacao = unserialize(urldecode($this->escola_curso_autorizacao)); - $this->escola_curso_anos_letivos = unserialize(urldecode($this->escola_curso_anos_letivos)); - $obj = new clsPmieducarEscolaCurso($this->cod_escola); - $excluiu = $obj->excluirTodos(); - - if ($excluiu) { - if ($this->escola_curso) { - foreach ($this->escola_curso as $campo) { - $obj = new clsPmieducarEscolaCurso($this->cod_escola, $campo, null, $this->pessoa_logada, null, null, 1, $this->escola_curso_autorizacao[$campo], $this->escola_curso_anos_letivos[$campo]); - $cadastrou_ = $obj->cadastra(); - if (!$cadastrou_) { - $this->mensagem = 'Edição não realizada.
'; - - return false; - } - } - } - } - $this->storeManagers($this->cod_escola); - $this->saveInep($this->cod_escola); - //-----------------------FIM EDITA CURSO------------------------// - $this->mensagem .= 'Edição efetuada com sucesso.
'; - throw new HttpResponseException( - new RedirectResponse('educar_escola_lst.php') - ); - } - } - $this->mensagem = 'Edição não realizada.
'; - return false; } public function Excluir() From dcc1bf97cbb890c1cbb55a0a3ea590fa794e0c4c Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:31:09 -0300 Subject: [PATCH 051/219] =?UTF-8?q?Adiciona=20fun=C3=A7=C3=A3o=20de=20cada?= =?UTF-8?q?stro=20de=20telefones.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 1 + 1 file changed, 1 insertion(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index cb96bc4adc..063537bc4d 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1759,6 +1759,7 @@ public function Editar() return false; } + $this->processaTelefones($this->ref_idpes); From 425f3272edb373873c05b9809bd9c8fb6464d2c2 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:31:27 -0300 Subject: [PATCH 052/219] =?UTF-8?q?Adiciona=20cadastro=20de=20endere=C3=A7?= =?UTF-8?q?o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 1 + 1 file changed, 1 insertion(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 063537bc4d..ab18145d16 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1761,6 +1761,7 @@ public function Editar() $this->processaTelefones($this->ref_idpes); + $this->saveAddress($this->ref_idpes); From dece6c276924ffc48fe06e6ff16071efd17ea38f Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:31:45 -0300 Subject: [PATCH 053/219] Adiciona cadastro de EscolaCurso. --- ieducar/intranet/educar_escola_cad.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index ab18145d16..0b36b8dd49 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1763,6 +1763,9 @@ public function Editar() $this->saveAddress($this->ref_idpes); + if (!$this->cadastraEscolaCurso($this->cod_escola,true)) { + return false; + } From 0e4410dca84aa9cc6737ded39cfd6300b9c6ba18 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:32:21 -0300 Subject: [PATCH 054/219] Adiciona cadastro de managers. --- ieducar/intranet/educar_escola_cad.php | 1 + 1 file changed, 1 insertion(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 0b36b8dd49..64f7f422d0 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1767,6 +1767,7 @@ public function Editar() return false; } + $this->storeManagers($this->cod_escola); From 52c8b35654fc951d363a67a4eb9e78d903edee8d Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:32:48 -0300 Subject: [PATCH 055/219] =?UTF-8?q?Adiciona=20cadastro=20de=20C=C3=B3digo?= =?UTF-8?q?=20INEP.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 1 + 1 file changed, 1 insertion(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 64f7f422d0..d3431462c5 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1769,6 +1769,7 @@ public function Editar() $this->storeManagers($this->cod_escola); + $this->saveInep($this->cod_escola); } From fce125ba768d9bcbf26102ad6e60c03527585e0c Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:33:11 -0300 Subject: [PATCH 056/219] =?UTF-8?q?Adiciona=20simplifica=C3=A7=C3=A3o=20de?= =?UTF-8?q?=20retorno=20de=20Edi=C3=A7=C3=A3o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index d3431462c5..11ee6a7dd4 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1771,7 +1771,11 @@ public function Editar() $this->saveInep($this->cod_escola); + $this->mensagem = 'Edição efetuada com sucesso.
'; + throw new HttpResponseException( + new RedirectResponse('educar_escola_lst.php') + ); } public function Excluir() From 775adca8ca5b32a373bddbb1f287472dea2a8b05 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 12:35:27 -0300 Subject: [PATCH 057/219] =?UTF-8?q?Remove=20vari=C3=A1vel=20n=C3=A3o=20uti?= =?UTF-8?q?lizada.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 11ee6a7dd4..06c2de875e 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1530,8 +1530,7 @@ private function validaDigitosInepEscolaCompartilhada() private function cadastraEscolaCurso($cod_escola, $excluirEscolaCursos = false) { if ($excluirEscolaCursos === true) { - $obj = new clsPmieducarEscolaCurso($this->cod_escola); - $excluiu = $obj->excluirTodos(); + (new clsPmieducarEscolaCurso($this->cod_escola))->excluirTodos(); } $this->escola_curso = unserialize(urldecode($this->escola_curso), ['stdclass']); From 1d6cddc982ddfb208c3617db63f4a6a9aa75452c Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 17:15:36 -0300 Subject: [PATCH 058/219] =?UTF-8?q?Adiciona=20valida=C3=A7=C3=A3o=20de=20e?= =?UTF-8?q?scola=20existente=20na=20busca=20de=20pessoa=20jur=C3=ADdica.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 06c2de875e..8b878b7c2c 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -216,6 +216,11 @@ public function Inicializar() // cadastro Novo sem CNPJ if (is_numeric($_POST['pessoaj_id']) && !$this->cod_escola) { + $pessoaJuridicaId = (int) $_POST['pessoaj_id']; + if (!$this->pessoaJuridicaContemEscola($pessoaJuridicaId)) { + return false; + } + $this->sem_cnpj = true; $this->pessoaj_idpes = (int) $_POST['pessoaj_id']; $this->pessoaj_id = (int) $_POST['pessoaj_id']; @@ -445,6 +450,24 @@ public function Inicializar() return $retorno; } + private function pessoaJuridicaContemEscola($pessoaj_id): bool + { + $escola = (new clsPmieducarEscola())->lista(null, null, null, null, null, null, $pessoaj_id); + + if (count($escola) > 0) { + $current = current($escola); + + if (is_array($current) && + array_key_exists('cod_escola', $current) && + is_numeric($current['cod_escola'])) { + $this->mensagem = "Escola já criada, para editar clique aqui: aqui."; + return false; + } + } + + return true; + } + public function Gerar() { // assets From 05c19ac2147fd5300bde2cb6ce9c192eaf27fd45 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 17:16:29 -0300 Subject: [PATCH 059/219] =?UTF-8?q?Troca=20vari=C3=A1veis.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 8b878b7c2c..a6ba193a1b 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -222,8 +222,8 @@ public function Inicializar() } $this->sem_cnpj = true; - $this->pessoaj_idpes = (int) $_POST['pessoaj_id']; - $this->pessoaj_id = (int) $_POST['pessoaj_id']; + $this->pessoaj_idpes = $pessoaJuridicaId; + $this->pessoaj_id = $pessoaJuridicaId; $retorno = 'Novo'; } // cadastro Novo com CNPJ elseif ($_POST['cnpj']) { From 24149a96ee0acef3efc0a9db1ecac9d01495e316 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 17:17:10 -0300 Subject: [PATCH 060/219] =?UTF-8?q?Remove=20c=C3=B3digo=20n=C3=A3o=20utili?= =?UTF-8?q?zado.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 24 ++---------------------- 1 file changed, 2 insertions(+), 22 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index a6ba193a1b..57dcb93c68 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -214,7 +214,6 @@ public function Inicializar() $this->sem_cnpj = false; - // cadastro Novo sem CNPJ if (is_numeric($_POST['pessoaj_id']) && !$this->cod_escola) { $pessoaJuridicaId = (int) $_POST['pessoaj_id']; if (!$this->pessoaJuridicaContemEscola($pessoaJuridicaId)) { @@ -225,27 +224,8 @@ public function Inicializar() $this->pessoaj_idpes = $pessoaJuridicaId; $this->pessoaj_id = $pessoaJuridicaId; $retorno = 'Novo'; - } // cadastro Novo com CNPJ - elseif ($_POST['cnpj']) { - $this->com_cnpj = true; - $obj_juridica = new clsPessoaJuridica(); - $lst_juridica = $obj_juridica->lista(idFederal2int($_POST['cnpj'])); - // caso exista o CNPJ na BD - if (is_array($lst_juridica)) { - $retorno = 'Editar'; - $det_juridica = array_shift($lst_juridica); - $this->ref_idpes = $det_juridica['idpes']; - $obj = new clsPmieducarEscola(); - $lst_escola = $obj->lista(null, null, null, null, null, null, $this->ref_idpes, null, null, null, 1); - if (is_array($lst_escola)) { - $registro = array_shift($lst_escola); - $this->cod_escola = $registro['cod_escola']; - } - } // caso nao exista o CNPJ - else { - $retorno = 'Editar'; - } - } // cadastro Editar + } + if (is_numeric($this->cod_escola) && !$_POST['passou']) { $obj = new clsPmieducarEscola($this->cod_escola); $registro = $obj->detalhe(); From cd0c71a2d4d8f31b314494d90192b8be370c3fc0 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 17:18:19 -0300 Subject: [PATCH 061/219] =?UTF-8?q?Passa=20par=C3=A2metro=20para=20pessoaj?= =?UTF-8?q?=5Fid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 1 + 1 file changed, 1 insertion(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 57dcb93c68..4bd2a7d56c 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -232,6 +232,7 @@ public function Inicializar() if ($registro['ref_idpes']) { $this->com_cnpj = true; + $this->pessoaj_id = $registro['ref_idpes']; } else { $this->sem_cnpj = true; } From 68d1a24f12c6f2c627db4155295ed80597cd80b4 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 17:19:05 -0300 Subject: [PATCH 062/219] =?UTF-8?q?Busca=20informa=C3=A7=C3=B5es=20da=20pe?= =?UTF-8?q?ssoa=20jur=C3=ADdica=20para=20detalhe.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 4bd2a7d56c..bbcdf18e3f 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -488,21 +488,20 @@ public function Gerar() } } - if ($this->sem_cnpj) { - $this->campoOculto('sem_cnpj', $this->sem_cnpj); + if ($this->ref_idpes) { + $this->p_ddd_telefone_1 = ($this->p_ddd_telefone_1 == null) ? '' : $this->p_ddd_telefone_1; $this->p_ddd_telefone_fax = ($this->p_ddd_telefone_fax == null) ? '' : $this->p_ddd_telefone_fax; - if ($this->ref_idpes) { - $objTemp = new clsPessoaJuridica($this->ref_idpes); - $detalhe = $objTemp->detalhe(); - } + $objTemp = new clsPessoaJuridica($this->ref_idpes); + $objTemp->detalhe(); + $this->campoOculto('cod_escola', $this->cod_escola); $this->campoTexto('fantasia', 'Escola', $this->fantasia, 30, 255, true); $this->campoTexto('sigla', 'Sigla', $this->sigla, 30, 255, true); $nivel = $obj_permissoes->nivel_acesso($this->pessoa_logada); - if ($nivel == 1) { + if ($nivel === 1) { $cabecalhos[] = 'Instituicao'; $objInstituicao = new clsPmieducarInstituicao(); $opcoes = ['' => 'Selecione']; From 2ce858859790c122853bd0adf26a9d3f9dbb49d6 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 17:42:32 -0300 Subject: [PATCH 063/219] Troca o list pela destructor. --- ieducar/intranet/educar_escola_cad.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index bbcdf18e3f..32da61767b 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -291,7 +291,7 @@ public function Inicializar() $objJuridica = new clsPessoaJuridica(false, idFederal2int($_POST['cnpj'])); $det = $objJuridica->detalhe(); $objPessoa = new clsPessoaFj($det['idpes']); - list( + [ $this->p_ddd_telefone_1, $this->p_telefone_1, $this->p_ddd_telefone_2, @@ -303,7 +303,7 @@ public function Inicializar() $this->p_email, $this->p_http, $this->tipo_pessoa - ) = $objPessoa->queryRapida( + ] = $objPessoa->queryRapida( $det['idpes'], 'ddd_1', 'fone_1', From dcb508352dad0031819bf611639bbb509cd41897 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 17:54:37 -0300 Subject: [PATCH 064/219] =?UTF-8?q?Separa=20inicializa=C3=A7=C3=A3o=20de?= =?UTF-8?q?=20dados=20para=20uma=20fun=C3=A7=C3=A3o=20separada.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 32da61767b..88f437413f 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -319,6 +319,18 @@ public function Inicializar() ); } + $this->inicializaDados(); + + $this->url_cancelar = ($retorno == 'Editar') ? "educar_escola_det.php?cod_escola={$registro['cod_escola']}" : 'educar_escola_lst.php'; + + $this->breadcrumb('Escola', ['educar_index.php' => 'Escola']); + $this->nome_url_cancelar = 'Cancelar'; + + return $retorno; + } + + private function inicializaDados() + { if ($this->cnpj_mantenedora_principal) { $this->cnpj_mantenedora_principal = int2CNPJ($this->cnpj_mantenedora_principal); } @@ -422,13 +434,6 @@ public function Inicializar() if (is_string($this->codigo_lingua_indigena)) { $this->codigo_lingua_indigena = explode(',', str_replace(['{', '}'], '', $this->codigo_lingua_indigena)); } - - $this->url_cancelar = ($retorno == 'Editar') ? "educar_escola_det.php?cod_escola={$registro['cod_escola']}" : 'educar_escola_lst.php'; - - $this->breadcrumb('Escola', ['educar_index.php' => 'Escola']); - $this->nome_url_cancelar = 'Cancelar'; - - return $retorno; } private function pessoaJuridicaContemEscola($pessoaj_id): bool From 99b035f77950147759a29daeda5c41e148cc5405 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 18:01:05 -0300 Subject: [PATCH 065/219] =?UTF-8?q?Remove=20falha=20de=20seguran=C3=A7a=20?= =?UTF-8?q?da=20serializa=C3=A7=C3=A3o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 88f437413f..a88ae81366 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -804,15 +804,15 @@ public function Gerar() $this->addSchoolManagersTable(); if ($_POST['escola_curso']) { - $this->escola_curso = unserialize(urldecode($_POST['escola_curso'])); + $this->escola_curso = unserialize(urldecode($_POST['escola_curso']),['stdclass']); } if ($_POST['escola_curso_autorizacao']) { - $this->escola_curso_autorizacao = unserialize(urldecode($_POST['escola_curso_autorizacao'])); + $this->escola_curso_autorizacao = unserialize(urldecode($_POST['escola_curso_autorizacao']),['stdclass']); } if ($_POST['escola_curso_anos_letivos']) { - $this->escola_curso_anos_letivos = unserialize(urldecode($_POST['escola_curso_anos_letivos'])); + $this->escola_curso_anos_letivos = unserialize(urldecode($_POST['escola_curso_anos_letivos']), ['stdclass']); } if (is_numeric($this->cod_escola) && !$_POST) { From d5c58713d1f42bd43174becd053b2c15dbd03911 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 17 May 2021 18:20:48 -0300 Subject: [PATCH 066/219] =?UTF-8?q?Corrige=20mensagem=20de=20valida=C3=A7?= =?UTF-8?q?=C3=A3o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index a88ae81366..eba10674ee 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -446,7 +446,7 @@ private function pessoaJuridicaContemEscola($pessoaj_id): bool if (is_array($current) && array_key_exists('cod_escola', $current) && is_numeric($current['cod_escola'])) { - $this->mensagem = "Escola já criada, para editar clique aqui: aqui."; + $this->mensagem = "Escola criada, para editar clique aqui."; return false; } } From 0ee2ce17b8ddc1416901a4d7745e594a0467e00d Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 18 May 2021 09:10:13 -0300 Subject: [PATCH 067/219] =?UTF-8?q?Adiciona=20link=20para=20pagina=20de=20?= =?UTF-8?q?cadastro=20de=20pessoa=20jur=C3=ADdica.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/modules/Cadastro/Assets/Javascripts/Escola.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js b/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js index 9dcb0f3eae..bc198d6c9b 100644 --- a/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js +++ b/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js @@ -195,6 +195,9 @@ function changePossuiDependencias() { $j("#salas_gerais,#salas_funcionais,#banheiros,#laboratorios,#salas_atividades,#dormitorios,#areas_externas").trigger("chosen:updated"); } +const link = ' Caso não encontre a pessoa jurídica, cadastre em Pessoas > Cadastros > Pessoa jurídica.' +$j('#pessoaj_idpes').after(link) + //abas // hide nos campos das outras abas (deixando só os campos da primeira aba) From 7bbb4cb50ea7d0ef65ea943e36e823271566fff2 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 18 May 2021 09:10:38 -0300 Subject: [PATCH 068/219] =?UTF-8?q?Atualiza=20vers=C3=A3o=20dos=20assets?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/assets.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/assets.php b/config/assets.php index 81b5054b68..863d434866 100644 --- a/config/assets.php +++ b/config/assets.php @@ -14,7 +14,7 @@ | */ - 'version' => '0.0.87', + 'version' => '0.0.88', /* |-------------------------------------------------------------------------- From 11a9b8b0b9d95dccbf7ec33336ead696ed9e7c4f Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 18 May 2021 09:48:09 -0300 Subject: [PATCH 069/219] =?UTF-8?q?Ajuste=20visual=20quando=20n=C3=A3o=20t?= =?UTF-8?q?em=20cnpj?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/empresas_det.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/intranet/empresas_det.php b/ieducar/intranet/empresas_det.php index ef5c01bae3..14ba582550 100644 --- a/ieducar/intranet/empresas_det.php +++ b/ieducar/intranet/empresas_det.php @@ -14,7 +14,7 @@ public function Gerar() $this->addDetalhe(['Razão Social', $razao_social]); $this->addDetalhe(['Nome Fantasia', $nm_pessoa]); - $this->addDetalhe(['CNPJ', int2CNPJ($id_federal)]); + $this->addDetalhe(['CNPJ', empty($id_federal) ? '' : int2CNPJ($id_federal)]); $this->addDetalhe(['Endereço', $endereco]); $this->addDetalhe(['CEP', $cep]); $this->addDetalhe(['Bairro', $nm_bairro]); From 386c885cbabbc9d883db98053ab85450f908f36b Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:06:36 -0300 Subject: [PATCH 070/219] Remove regra de com/sem cnpj e adiciona um campo bool --- ieducar/intranet/educar_escola_cad.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index eba10674ee..92e58553ae 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -184,6 +184,7 @@ public $iddis; public $pessoaj_idpes; public $pessoaj_id; + public bool $pesquisaPessoaJuridica = true; public $inputsRecursos = [ 'qtd_secretario_escolar' => 'Secretário(a) escolar', @@ -213,6 +214,7 @@ public function Inicializar() $this->cod_escola = $this->getQueryString('cod_escola'); $this->sem_cnpj = false; + $this->pesquisaPessoaJuridica = true; if (is_numeric($_POST['pessoaj_id']) && !$this->cod_escola) { $pessoaJuridicaId = (int) $_POST['pessoaj_id']; @@ -223,6 +225,7 @@ public function Inicializar() $this->sem_cnpj = true; $this->pessoaj_idpes = $pessoaJuridicaId; $this->pessoaj_id = $pessoaJuridicaId; + $this->ref_idpes = $pessoaJuridicaId; $retorno = 'Novo'; } @@ -317,6 +320,7 @@ public function Inicializar() 'url', 'tipo' ); + $this->pesquisaPessoaJuridica = false; } $this->inicializaDados(); @@ -475,7 +479,7 @@ public function Gerar() $this->campoOculto('obrigar_campos_censo', (int) $obrigarCamposCenso); $this->campoOculto('pessoaj_id_oculto', $this->pessoaj_id); - if (!$this->sem_cnpj && !$this->com_cnpj) { + if ($this->pesquisaPessoaJuridica) { $this->inputsHelper()->simpleSearchPessoaj('idpes', ['label'=> 'Pessoa Jurídica']); $this->acao_enviar = false; $this->url_cancelar = false; From 290c22f01cf5dba09d41b5b37e521b727daced53 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:09:40 -0300 Subject: [PATCH 071/219] =?UTF-8?q?Separa=20em=20uma=20fun=C3=A7=C3=A3o=20?= =?UTF-8?q?o=20carregamento=20de=20dados?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 92e58553ae..0857f2e0e7 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -240,18 +240,8 @@ public function Inicializar() $this->sem_cnpj = true; } - if ($registro) { - foreach ($registro as $campo => $val) { - // passa todos os valores obtidos no registro para atributos do objeto - $this->$campo = $val; - } $this->loadAddress($this->ref_idpes); - - $this->gestor_id = $registro['ref_idpes_gestor']; - $this->secretario_id = $registro['ref_idpes_secretario_escolar']; - - $this->fantasia = $registro['nome']; $objJuridica = new clsPessoaJuridica($this->ref_idpes); $det = $objJuridica->detalhe(); $this->cnpj = int2CNPJ($det['cnpj']); @@ -333,6 +323,19 @@ public function Inicializar() return $retorno; } + private function carregaCamposComDadosDaEscola($registro) + { + $this->pessoaj_id = $registro['ref_idpes']; + + foreach ($registro as $campo => $val) { + // passa todos os valores obtidos no registro para atributos do objeto + $this->$campo = $val; + } + + $this->gestor_id = $registro['ref_idpes_gestor']; + $this->secretario_id = $registro['ref_idpes_secretario_escolar']; + $this->fantasia = $registro['nome']; + } private function inicializaDados() { if ($this->cnpj_mantenedora_principal) { From 4a0305073f6b2b92c5a176b1a2635f527dbe96b9 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:11:21 -0300 Subject: [PATCH 072/219] Separa carregamentos dos dados de contato --- ieducar/intranet/educar_escola_cad.php | 93 +++++++++----------------- 1 file changed, 31 insertions(+), 62 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 0857f2e0e7..637f114fe1 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -226,6 +226,7 @@ public function Inicializar() $this->pessoaj_idpes = $pessoaJuridicaId; $this->pessoaj_id = $pessoaJuridicaId; $this->ref_idpes = $pessoaJuridicaId; + $this->carregaDadosContato($this->ref_idpes); $retorno = 'Novo'; } @@ -248,68 +249,6 @@ public function Inicializar() $this->fexcluir = $obj_permissoes->permissao_excluir(561, $this->pessoa_logada, 3); $retorno = 'Editar'; - if ($registro['tipo_cadastro'] == 1) { - $objJuridica = new clsPessoaJuridica(false, idFederal2int($this->cnpj)); - $det = $objJuridica->detalhe(); - $objPessoa = new clsPessoaFj($det['idpes']); - list( - $this->p_ddd_telefone_1, - $this->p_telefone_1, - $this->p_ddd_telefone_2, - $this->p_telefone_2, - $this->p_ddd_telefone_mov, - $this->p_telefone_mov, - $this->p_ddd_telefone_fax, - $this->p_telefone_fax, - $this->p_email, - $this->p_http, - $this->tipo_pessoa - ) = $objPessoa->queryRapida( - $det['idpes'], - 'ddd_1', - 'fone_1', - 'ddd_2', - 'fone_2', - 'ddd_mov', - 'fone_mov', - 'ddd_fax', - 'fone_fax', - 'email', - 'url', - 'tipo' - ); - } - } - } elseif ($_POST['cnpj'] && !$_POST['passou']) { - $objJuridica = new clsPessoaJuridica(false, idFederal2int($_POST['cnpj'])); - $det = $objJuridica->detalhe(); - $objPessoa = new clsPessoaFj($det['idpes']); - [ - $this->p_ddd_telefone_1, - $this->p_telefone_1, - $this->p_ddd_telefone_2, - $this->p_telefone_2, - $this->p_ddd_telefone_mov, - $this->p_telefone_mov, - $this->p_ddd_telefone_fax, - $this->p_telefone_fax, - $this->p_email, - $this->p_http, - $this->tipo_pessoa - ] = $objPessoa->queryRapida( - $det['idpes'], - 'ddd_1', - 'fone_1', - 'ddd_2', - 'fone_2', - 'ddd_mov', - 'fone_mov', - 'ddd_fax', - 'fone_fax', - 'email', - 'url', - 'tipo' - ); $this->pesquisaPessoaJuridica = false; } @@ -336,6 +275,36 @@ private function carregaCamposComDadosDaEscola($registro) $this->secretario_id = $registro['ref_idpes_secretario_escolar']; $this->fantasia = $registro['nome']; } + private function carregaDadosContato($idpes) + { + $objPessoa = new clsPessoaFj($idpes); + [ + $this->p_ddd_telefone_1, + $this->p_telefone_1, + $this->p_ddd_telefone_2, + $this->p_telefone_2, + $this->p_ddd_telefone_mov, + $this->p_telefone_mov, + $this->p_ddd_telefone_fax, + $this->p_telefone_fax, + $this->p_email, + $this->p_http, + $this->tipo_pessoa + ] = $objPessoa->queryRapida( + $idpes, + 'ddd_1', + 'fone_1', + 'ddd_2', + 'fone_2', + 'ddd_mov', + 'fone_mov', + 'ddd_fax', + 'fone_fax', + 'email', + 'url', + 'tipo' + ); + } private function inicializaDados() { if ($this->cnpj_mantenedora_principal) { From d05f5ee436836ed7c72a87072c02449084eccb6f Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:14:37 -0300 Subject: [PATCH 073/219] =?UTF-8?q?Aplica=20regra=20de=20carregamento=20de?= =?UTF-8?q?=20Pessoa=20Jur=C3=ADdica=20que=20j=C3=A1=20cont=C3=A9m=20escol?= =?UTF-8?q?a?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 637f114fe1..a75e15bf89 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -231,6 +231,7 @@ public function Inicializar() } if (is_numeric($this->cod_escola) && !$_POST['passou']) { + if (is_numeric($this->cod_escola)) { $obj = new clsPmieducarEscola($this->cod_escola); $registro = $obj->detalhe(); @@ -239,16 +240,13 @@ public function Inicializar() $this->pessoaj_id = $registro['ref_idpes']; } else { $this->sem_cnpj = true; + if ($registro === false) { + throw new HttpResponseException( + new RedirectResponse('educar_escola_lst.php') + ); } - $this->loadAddress($this->ref_idpes); - $objJuridica = new clsPessoaJuridica($this->ref_idpes); - $det = $objJuridica->detalhe(); - $this->cnpj = int2CNPJ($det['cnpj']); - $this->fexcluir = $obj_permissoes->permissao_excluir(561, $this->pessoa_logada, 3); - $retorno = 'Editar'; - $this->pesquisaPessoaJuridica = false; } From f8c568fcdf19e1a4a3faa0bb86e90dd81ffe266f Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:15:15 -0300 Subject: [PATCH 074/219] Simplifica leitura de dados de escola existente --- ieducar/intranet/educar_escola_cad.php | 6 ------ 1 file changed, 6 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index a75e15bf89..1063e0c9e6 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -230,16 +230,10 @@ public function Inicializar() $retorno = 'Novo'; } - if (is_numeric($this->cod_escola) && !$_POST['passou']) { if (is_numeric($this->cod_escola)) { $obj = new clsPmieducarEscola($this->cod_escola); $registro = $obj->detalhe(); - if ($registro['ref_idpes']) { - $this->com_cnpj = true; - $this->pessoaj_id = $registro['ref_idpes']; - } else { - $this->sem_cnpj = true; if ($registro === false) { throw new HttpResponseException( new RedirectResponse('educar_escola_lst.php') From 048808706ec138b8a8fb40425b80699402bfac2e Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:16:24 -0300 Subject: [PATCH 075/219] =?UTF-8?q?Aplica=20fun=C3=A7=C3=B5es=20de=20carre?= =?UTF-8?q?gamento=20de=20dados?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 1063e0c9e6..6cd8b7effe 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -226,6 +226,8 @@ public function Inicializar() $this->pessoaj_idpes = $pessoaJuridicaId; $this->pessoaj_id = $pessoaJuridicaId; $this->ref_idpes = $pessoaJuridicaId; + + $this->loadAddress($this->pessoaj_id); $this->carregaDadosContato($this->ref_idpes); $retorno = 'Novo'; } @@ -242,6 +244,18 @@ public function Inicializar() $this->pesquisaPessoaJuridica = false; + + $this->carregaCamposComDadosDaEscola($registro); + + $objJuridica = (new clsPessoaJuridica($this->ref_idpes))->detalhe(); + $this->cnpj = int2CNPJ($objJuridica['cnpj']); + + $this->fexcluir = $obj_permissoes->permissao_excluir(561, $this->pessoa_logada, 3); + + $this->loadAddress($this->ref_idpes); + $this->carregaDadosContato($this->ref_idpes); + + $retorno = 'Editar'; } $this->inicializaDados(); From 92d21c6e516549196925ead8b51dddd7a104e308 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:17:02 -0300 Subject: [PATCH 076/219] Separa carregamento de dados do post --- ieducar/intranet/educar_escola_cad.php | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 6cd8b7effe..2b741ac8c9 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -242,6 +242,7 @@ public function Inicializar() ); } + // $this->com_cnpj = true; $this->pesquisaPessoaJuridica = false; @@ -311,6 +312,18 @@ private function carregaDadosContato($idpes) 'tipo' ); } + + private function carregaDadosDoPost() + { + if ($_POST) { + foreach ($_POST as $campo => $val) { + if ($campo !== 'tipoacao' && $campo !== 'sem_cnpj') { + $this->$campo = ($this->$campo) ?: $val; + } + } + } + } + private function inicializaDados() { if ($this->cnpj_mantenedora_principal) { @@ -467,13 +480,7 @@ public function Gerar() } else { $this->inputsHelper()->integer('escola_inep_id', ['label' => 'Código INEP', 'placeholder' => 'INEP', 'required' => $obrigarCamposCenso, 'max_length' => 8, 'label_hint' => 'Somente números']); - if ($_POST) { - foreach ($_POST as $campo => $val) { - if ($campo != 'tipoacao' && $campo != 'sem_cnpj') { - $this->$campo = ($this->$campo) ? $this->$campo : $val; - } - } - } + $this->carregaDadosDoPost(); if ($this->ref_idpes) { From 9bb5b118570275931bc7055cbb713f6262242f45 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:19:57 -0300 Subject: [PATCH 077/219] Remove condicionais que faziam a mesma coisa. --- ieducar/intranet/educar_escola_cad.php | 4 ---- 1 file changed, 4 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 2b741ac8c9..a88def4e0e 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -482,7 +482,6 @@ public function Gerar() $this->carregaDadosDoPost(); - if ($this->ref_idpes) { $this->p_ddd_telefone_1 = ($this->p_ddd_telefone_1 == null) ? '' : $this->p_ddd_telefone_1; $this->p_ddd_telefone_fax = ($this->p_ddd_telefone_fax == null) ? '' : $this->p_ddd_telefone_fax; @@ -558,9 +557,7 @@ public function Gerar() $this->campoTexto('p_ddd_telefone_fax', 'DDD Fax', $this->p_ddd_telefone_fax, '2', '2', false); $this->campoTexto('p_telefone_fax', 'Fax', $this->p_telefone_fax, '10', '15', false); $this->campoTexto('p_email', 'E-mail', $this->p_email, '50', '100', false); - } - if ($this->pessoaj_id) { $this->campoOculto('com_cnpj', $this->com_cnpj); @@ -676,7 +673,6 @@ public function Gerar() $this->campoTexto('p_http', 'Site/Blog/Rede social', $this->p_http, '50', '255', false); $this->passou = true; $this->campoOculto('passou', $this->passou); - } $this->inputsHelper()->numeric('latitude', ['max_length' => '20', 'size' => '20', 'required' => false, 'value' => $this->latitude, 'label_hint' => 'São aceito somente números, ponto "." e hífen "-"']); $this->inputsHelper()->numeric('longitude', ['max_length' => '20', 'size' => '20', 'required' => false, 'value' => $this->longitude, 'label_hint' => 'São aceito somente números, ponto "." e hífen "-"']); From f4cacd51f50fb54f78dc8344d5479fcef1d7f9b1 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:22:53 -0300 Subject: [PATCH 078/219] =?UTF-8?q?Remo=C3=A7=C3=A3o=20de=20vari=C3=A1veis?= =?UTF-8?q?=20que=20n=C3=A3o=20s=C3=A3o=20utilizadas?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 3 --- 1 file changed, 3 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index a88def4e0e..ea18405358 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -483,8 +483,6 @@ public function Gerar() $this->carregaDadosDoPost(); - $this->p_ddd_telefone_1 = ($this->p_ddd_telefone_1 == null) ? '' : $this->p_ddd_telefone_1; - $this->p_ddd_telefone_fax = ($this->p_ddd_telefone_fax == null) ? '' : $this->p_ddd_telefone_fax; $objTemp = new clsPessoaJuridica($this->ref_idpes); $objTemp->detalhe(); @@ -633,7 +631,6 @@ public function Gerar() } $this->campoLista('ref_cod_escola_rede_ensino', 'Rede Ensino', $opcoes, $this->ref_cod_escola_rede_ensino, '', false, '', $script); - $opcoes = ['' => 'Selecione']; $zonas = App_Model_ZonaLocalizacao::getInstance(); $zonas = [null => 'Selecione'] + $zonas->getEnums(); From 8d6b5a76d4525b57cb1b437778e7e611b6647095 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:24:41 -0300 Subject: [PATCH 079/219] =?UTF-8?q?Simplifica=20condicional=20de=20apresen?= =?UTF-8?q?ta=C3=A7=C3=A3o=20de=20rede=20de=20ensino?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index ea18405358..f444f7235f 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -524,22 +524,20 @@ public function Gerar() if ($this->ref_cod_instituicao) { $objTemp = new clsPmieducarEscolaRedeEnsino(); $lista = $objTemp->lista(null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao); + $display = "'display: none;'"; if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { $opcoes["{$registro['cod_escola_rede_ensino']}"] = "{$registro['nm_rede']}"; } } - - $script = ""; - } else { - $script = ""; } $this->campoLista('ref_cod_escola_rede_ensino', 'Rede Ensino', $opcoes, $this->ref_cod_escola_rede_ensino, '', false, '', $script); $zonas = App_Model_ZonaLocalizacao::getInstance(); $zonas = [null => 'Selecione'] + $zonas->getEnums(); + $display = "'display: '';'"; $options = [ 'label' => 'Zona localização', @@ -547,6 +545,7 @@ public function Gerar() 'resources' => $zonas, 'required' => true, ]; + $script = ""; $this->inputsHelper()->select('zona_localizacao', $options); From ce7d5ebb0df13a1c1aca993fb9141f387c0fb9b6 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:26:22 -0300 Subject: [PATCH 080/219] =?UTF-8?q?Aplica=C3=A7=C3=A3o=20da=20regra=20de?= =?UTF-8?q?=20apresenta=C3=A7=C3=A3o=20do=20campo=20de=20pessoa=20jur?= =?UTF-8?q?=C3=ADdica?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 1 + 1 file changed, 1 insertion(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index f444f7235f..5debb1dd0e 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -222,6 +222,7 @@ public function Inicializar() return false; } + $this->pesquisaPessoaJuridica = false; $this->sem_cnpj = true; $this->pessoaj_idpes = $pessoaJuridicaId; $this->pessoaj_id = $pessoaJuridicaId; From fad96c8aebc1f21c165d84492e30bbe4743d5394 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:26:56 -0300 Subject: [PATCH 081/219] Ajusta tamanho do campo --- ieducar/intranet/educar_escola_cad.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 5debb1dd0e..d7fb6c3256 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1799,7 +1799,7 @@ protected function inputTelefone($type, $typeLabel = '') 'placeholder' => 'DDD', 'value' => $this->{"p_ddd_telefone_{$type}"}, 'max_length' => 3, - 'size' => 3, + 'size' => 4, 'inline' => true, ]; $this->inputsHelper()->integer("p_ddd_telefone_{$type}", $options); From b0a24fb545b8f49fa86609ad9bd8abadf3d8f3a0 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:27:47 -0300 Subject: [PATCH 082/219] =?UTF-8?q?Indenta=C3=A7=C3=A3o=20referente=20a=20?= =?UTF-8?q?remo=C3=A7=C3=A3o=20dos=20ifs=20que=20faziam=20a=20mesma=20cois?= =?UTF-8?q?a?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 311 +++++++++++++------------ 1 file changed, 159 insertions(+), 152 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index d7fb6c3256..0ccecd0246 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -230,6 +230,7 @@ public function Inicializar() $this->loadAddress($this->pessoaj_id); $this->carregaDadosContato($this->ref_idpes); + $retorno = 'Novo'; } @@ -283,6 +284,7 @@ private function carregaCamposComDadosDaEscola($registro) $this->secretario_id = $registro['ref_idpes_secretario_escolar']; $this->fantasia = $registro['nome']; } + private function carregaDadosContato($idpes) { $objPessoa = new clsPessoaFj($idpes); @@ -483,193 +485,185 @@ public function Gerar() $this->carregaDadosDoPost(); + $objTemp = new clsPessoaJuridica($this->ref_idpes); + $objTemp->detalhe(); + $this->campoOculto('cod_escola', $this->cod_escola); + $this->campoTexto('fantasia', 'Escola', $this->fantasia, 30, 255, true); + $this->campoTexto('sigla', 'Sigla', $this->sigla, 30, 255, true); + $nivel = $obj_permissoes->nivel_acesso($this->pessoa_logada); - $objTemp = new clsPessoaJuridica($this->ref_idpes); - $objTemp->detalhe(); - - $this->campoOculto('cod_escola', $this->cod_escola); - $this->campoTexto('fantasia', 'Escola', $this->fantasia, 30, 255, true); - $this->campoTexto('sigla', 'Sigla', $this->sigla, 30, 255, true); - $nivel = $obj_permissoes->nivel_acesso($this->pessoa_logada); - - if ($nivel === 1) { - $cabecalhos[] = 'Instituicao'; - $objInstituicao = new clsPmieducarInstituicao(); - $opcoes = ['' => 'Selecione']; - $objInstituicao->setOrderby('nm_instituicao ASC'); - $lista = $objInstituicao->lista(); + if ($nivel === 1) { + $cabecalhos[] = 'Instituicao'; + $objInstituicao = new clsPmieducarInstituicao(); + $opcoes = ['' => 'Selecione']; + $objInstituicao->setOrderby('nm_instituicao ASC'); + $lista = $objInstituicao->lista(); - if (is_array($lista)) { - foreach ($lista as $linha) { - $opcoes[$linha['cod_instituicao']] = $linha['nm_instituicao']; - } + if (is_array($lista)) { + foreach ($lista as $linha) { + $opcoes[$linha['cod_instituicao']] = $linha['nm_instituicao']; } + } - $this->campoLista('ref_cod_instituicao', 'Instituição', $opcoes, $this->ref_cod_instituicao); - } else { - $this->ref_cod_instituicao = $obj_permissoes->getInstituicao($this->pessoa_logada); + $this->campoLista('ref_cod_instituicao', 'Instituição', $opcoes, $this->ref_cod_instituicao); + } else { + $this->ref_cod_instituicao = $obj_permissoes->getInstituicao($this->pessoa_logada); - if ($this->ref_cod_instituicao) { - $this->campoOculto('ref_cod_instituicao', $this->ref_cod_instituicao); - } else { - die('Usuário não é do nivel poli-institucional e não possui uma instituição'); - } + if ($this->ref_cod_instituicao) { + $this->campoOculto('ref_cod_instituicao', $this->ref_cod_instituicao); + } else { + die('Usuário não é do nivel poli-institucional e não possui uma instituição'); } + } - $opcoes = ['' => 'Selecione']; - - // EDITAR - $script = 'javascript:showExpansivelIframe(520, 120, \'educar_escola_rede_ensino_cad_pop.php\');'; + $opcoes = ['' => 'Selecione']; - if ($this->ref_cod_instituicao) { - $objTemp = new clsPmieducarEscolaRedeEnsino(); - $lista = $objTemp->lista(null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao); + // EDITAR + $script = 'javascript:showExpansivelIframe(520, 120, \'educar_escola_rede_ensino_cad_pop.php\');'; $display = "'display: none;'"; + if ($this->ref_cod_instituicao) { + $objTemp = new clsPmieducarEscolaRedeEnsino(); + $lista = $objTemp->lista(null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao); - if (is_array($lista) && count($lista)) { - foreach ($lista as $registro) { - $opcoes["{$registro['cod_escola_rede_ensino']}"] = "{$registro['nm_rede']}"; - } + if (is_array($lista) && count($lista)) { + foreach ($lista as $registro) { + $opcoes["{$registro['cod_escola_rede_ensino']}"] = "{$registro['nm_rede']}"; } } - $this->campoLista('ref_cod_escola_rede_ensino', 'Rede Ensino', $opcoes, $this->ref_cod_escola_rede_ensino, '', false, '', $script); - - $zonas = App_Model_ZonaLocalizacao::getInstance(); - $zonas = [null => 'Selecione'] + $zonas->getEnums(); $display = "'display: '';'"; + } - $options = [ - 'label' => 'Zona localização', - 'value' => $this->zona_localizacao, - 'resources' => $zonas, - 'required' => true, - ]; $script = ""; - $this->inputsHelper()->select('zona_localizacao', $options); + $this->campoLista('ref_cod_escola_rede_ensino', 'Rede Ensino', $opcoes, $this->ref_cod_escola_rede_ensino, '', false, '', $script); - $this->campoTexto('p_ddd_telefone_1', 'DDD Telefone 1', $this->p_ddd_telefone_1, '2', '2', false); - $this->campoTexto('p_telefone_1', 'Telefone 1', $this->p_telefone_1, '10', '15', false); - $this->campoTexto('p_ddd_telefone_fax', 'DDD Fax', $this->p_ddd_telefone_fax, '2', '2', false); - $this->campoTexto('p_telefone_fax', 'Fax', $this->p_telefone_fax, '10', '15', false); - $this->campoTexto('p_email', 'E-mail', $this->p_email, '50', '100', false); + $zonas = App_Model_ZonaLocalizacao::getInstance(); + $zonas = [null => 'Selecione'] + $zonas->getEnums(); + $options = [ + 'label' => 'Zona localização', + 'value' => $this->zona_localizacao, + 'resources' => $zonas, + 'required' => true, + ]; - $this->campoOculto('com_cnpj', $this->com_cnpj); + $this->inputsHelper()->select('zona_localizacao', $options); - if (!$this->cod_escola) { - $this->cnpj = urldecode($_POST['cnpj']); - $this->cnpj = idFederal2int($this->cnpj); - $this->cnpj = int2IdFederal($this->cnpj); - } + $this->campoOculto('com_cnpj', $this->com_cnpj); - $objJuridica = new clsPessoaJuridica($this->pessoaj_id); + if (!$this->cod_escola) { + $this->cnpj = urldecode($_POST['cnpj']); + $this->cnpj = idFederal2int($this->cnpj); + $this->cnpj = empty($this->cnpj) ? $this->cnpj : int2IdFederal($this->cnpj); + } - $det = $objJuridica->detalhe(); - $this->ref_idpes = $det['idpes']; + $objJuridica = new clsPessoaJuridica($this->pessoaj_id); - if (!$this->fantasia) { - $this->fantasia = $det['fantasia']; - } + $det = $objJuridica->detalhe(); + $this->ref_idpes = $det['idpes']; - if ($this->passou) { - $this->cnpj = (is_numeric($this->cnpj)) ? $this->cnpj : idFederal2int($this->cnpj); - $this->cnpj = int2IdFederal($this->cnpj); - } + if (!$this->fantasia) { + $this->fantasia = $det['fantasia']; + } - $this->campoRotulo('cnpj_', 'CNPJ', $this->cnpj); - $this->campoOculto('cnpj', idFederal2int($this->cnpj)); - $this->campoOculto('ref_idpes', $this->ref_idpes); - $this->campoOculto('cod_escola', $this->cod_escola); - $this->campoTexto('fantasia', 'Escola', $this->fantasia, 30, 255, true); - $this->campoTexto('sigla', 'Sigla', $this->sigla, 30, 20, true); - $nivel = $obj_permissoes->nivel_acesso($this->pessoa_logada); - - if ($nivel == 1) { - $cabecalhos[] = 'Instituicao'; - $objInstituicao = new clsPmieducarInstituicao(); - $opcoes = ['' => 'Selecione']; - $objInstituicao->setOrderby('nm_instituicao ASC'); - $lista = $objInstituicao->lista(); - - if (is_array($lista)) { - foreach ($lista as $linha) { - $opcoes[$linha['cod_instituicao']] = $linha['nm_instituicao']; - } - } + if ($this->passou) { + $this->cnpj = (is_numeric($this->cnpj)) ? $this->cnpj : idFederal2int($this->cnpj); + $this->cnpj = int2IdFederal($this->cnpj); + } - $this->campoLista('ref_cod_instituicao', 'Instituicao', $opcoes, $this->ref_cod_instituicao); - } else { - $this->ref_cod_instituicao = $obj_permissoes->getInstituicao($this->pessoa_logada); + $this->campoRotulo('cnpj_', 'CNPJ', $this->cnpj); + $this->campoOculto('cnpj', idFederal2int($this->cnpj)); + $this->campoOculto('ref_idpes', $this->ref_idpes); + $this->campoOculto('cod_escola', $this->cod_escola); + $this->campoTexto('fantasia', 'Escola', $this->fantasia, 30, 255, true); + $this->campoTexto('sigla', 'Sigla', $this->sigla, 30, 20, true); + $nivel = $obj_permissoes->nivel_acesso($this->pessoa_logada); + + if ($nivel == 1) { + $cabecalhos[] = 'Instituicao'; + $objInstituicao = new clsPmieducarInstituicao(); + $opcoes = ['' => 'Selecione']; + $objInstituicao->setOrderby('nm_instituicao ASC'); + $lista = $objInstituicao->lista(); - if ($this->ref_cod_instituicao) { - $this->campoOculto('ref_cod_instituicao', $this->ref_cod_instituicao); - } else { - die('Usuário não é do nivel poli-institucional e não possui uma instituição'); + if (is_array($lista)) { + foreach ($lista as $linha) { + $opcoes[$linha['cod_instituicao']] = $linha['nm_instituicao']; } } - $opcoes = ['' => 'Selecione']; + $this->campoLista('ref_cod_instituicao', 'Instituicao', $opcoes, $this->ref_cod_instituicao); + } else { + $this->ref_cod_instituicao = $obj_permissoes->getInstituicao($this->pessoa_logada); - // EDITAR - $script = 'javascript:showExpansivelIframe(520, 120, \'educar_escola_rede_ensino_cad_pop.php\');'; if ($this->ref_cod_instituicao) { - $objTemp = new clsPmieducarEscolaRedeEnsino(); - $lista = $objTemp->lista(null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao); + $this->campoOculto('ref_cod_instituicao', $this->ref_cod_instituicao); + } else { + die('Usuário não é do nivel poli-institucional e não possui uma instituição'); + } + } - if (is_array($lista) && count($lista)) { - foreach ($lista as $registro) { - $opcoes["{$registro['cod_escola_rede_ensino']}"] = "{$registro['nm_rede']}"; - } - } + $opcoes = ['' => 'Selecione']; - $script = ""; - } else { - $script = ""; + // EDITAR + $script = 'javascript:showExpansivelIframe(520, 120, \'educar_escola_rede_ensino_cad_pop.php\');'; + if ($this->ref_cod_instituicao) { + $objTemp = new clsPmieducarEscolaRedeEnsino(); + $lista = $objTemp->lista(null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao); + + if (is_array($lista) && count($lista)) { + foreach ($lista as $registro) { + $opcoes["{$registro['cod_escola_rede_ensino']}"] = "{$registro['nm_rede']}"; + } } - $this->campoLista('ref_cod_escola_rede_ensino', 'Rede Ensino', $opcoes, $this->ref_cod_escola_rede_ensino, '', false, '', $script); + $script = ""; + } else { + $script = ""; + } + + $this->campoLista('ref_cod_escola_rede_ensino', 'Rede Ensino', $opcoes, $this->ref_cod_escola_rede_ensino, '', false, '', $script); - $zonas = App_Model_ZonaLocalizacao::getInstance(); - $zonas = [null => 'Selecione'] + $zonas->getEnums(); + $zonas = App_Model_ZonaLocalizacao::getInstance(); + $zonas = [null => 'Selecione'] + $zonas->getEnums(); - $options = [ - 'label' => 'Zona localização', - 'value' => $this->zona_localizacao, - 'resources' => $zonas, - 'required' => true, - ]; + $options = [ + 'label' => 'Zona localização', + 'value' => $this->zona_localizacao, + 'resources' => $zonas, + 'required' => true, + ]; - $this->inputsHelper()->select('zona_localizacao', $options); + $this->inputsHelper()->select('zona_localizacao', $options); - $resources = SelectOptions::localizacoesDiferenciadasEscola(); - $options = ['label' => 'Localização diferenciada da escola', 'resources' => $resources, 'value' => $this->localizacao_diferenciada, 'required' => $obrigarCamposCenso, 'size' => 70]; - $this->inputsHelper()->select('localizacao_diferenciada', $options); + $resources = SelectOptions::localizacoesDiferenciadasEscola(); + $options = ['label' => 'Localização diferenciada da escola', 'resources' => $resources, 'value' => $this->localizacao_diferenciada, 'required' => $obrigarCamposCenso, 'size' => 70]; + $this->inputsHelper()->select('localizacao_diferenciada', $options); - $this->viewAddress(); + $this->viewAddress(); - $this->inputsHelper()->simpleSearchDistrito('district', [ - 'required' => $obrigarCamposCenso, - 'label' => 'Distrito', - ], [ - 'objectName' => 'district', - 'hiddenInputOptions' => [ - 'options' => [ - 'value' => $this->iddis ?? $this->district_id, - ], + $this->inputsHelper()->simpleSearchDistrito('district', [ + 'required' => $obrigarCamposCenso, + 'label' => 'Distrito', + ], [ + 'objectName' => 'district', + 'hiddenInputOptions' => [ + 'options' => [ + 'value' => $this->iddis ?? $this->district_id, ], - ]); + ], + ]); - $this->inputTelefone('1', 'Telefone 1'); - $this->inputTelefone('2', 'Telefone 2'); - $this->inputTelefone('mov', 'Celular'); - $this->inputTelefone('fax', 'Fax'); - $this->campoTexto('p_email', 'E-mail', $this->p_email, '50', '100', false); - $this->campoTexto('p_http', 'Site/Blog/Rede social', $this->p_http, '50', '255', false); - $this->passou = true; - $this->campoOculto('passou', $this->passou); + $this->inputTelefone('1', 'Telefone 1'); + $this->inputTelefone('2', 'Telefone 2'); + $this->inputTelefone('mov', 'Celular'); + $this->inputTelefone('fax', 'Fax'); + $this->campoTexto('p_email', 'E-mail', $this->p_email, '50', '100', false); + $this->campoTexto('p_http', 'Site/Blog/Rede social', $this->p_http, '50', '255', false); + $this->passou = true; + $this->campoOculto('passou', $this->passou); $this->inputsHelper()->numeric('latitude', ['max_length' => '20', 'size' => '20', 'required' => false, 'value' => $this->latitude, 'label_hint' => 'São aceito somente números, ponto "." e hífen "-"']); $this->inputsHelper()->numeric('longitude', ['max_length' => '20', 'size' => '20', 'required' => false, 'value' => $this->longitude, 'label_hint' => 'São aceito somente números, ponto "." e hífen "-"']); @@ -741,36 +735,49 @@ public function Gerar() ]; $this->inputsHelper()->multipleSearchCustom('', $options, $helperOptions); - $resources = ['' => 'Selecione', + $resources = [ + '' => 'Selecione', 1 => 'Particular', 2 => 'Comunitária', 3 => 'Confessional', - 4 => 'Filantrópica']; - $options = ['label' => 'Categoria da escola privada', + 4 => 'Filantrópica' + ]; + + $options = [ + 'label' => 'Categoria da escola privada', 'resources' => $resources, 'value' => $this->categoria_escola_privada, 'required' => false, - 'size' => 70]; + 'size' => 70 + ]; + $this->inputsHelper()->select('categoria_escola_privada', $options); - $resources = ['' => 'Selecione', + $resources = [ + '' => 'Selecione', 1 => 'Estadual', 2 => 'Municipal', - 3 => 'Estadual e Municipal']; - $options = ['label' => 'Conveniada com poder público', + 3 => 'Estadual e Municipal' + ]; + + $options = [ + 'label' => 'Conveniada com poder público', 'resources' => $resources, 'value' => $this->conveniada_com_poder_publico, 'required' => false, - 'size' => 70]; - $this->inputsHelper()->select('conveniada_com_poder_publico', $options); + 'size' => 70 + ]; + $this->inputsHelper()->select('conveniada_com_poder_publico', $options); $this->campoCnpj('cnpj_mantenedora_principal', 'CNPJ da mantenedora principal da escola privada', $this->cnpj_mantenedora_principal); $hiddenInputOptions = ['options' => ['value' => $this->secretario_id]]; $helperOptions = ['objectName' => 'secretario', 'hiddenInputOptions' => $hiddenInputOptions]; - $options = ['label' => 'Secretário escolar', + $options = [ + 'label' => 'Secretário escolar', 'size' => 50, - 'required' => false]; + 'required' => false + ]; $this->inputsHelper()->simpleSearchPessoa('nome', $options, $helperOptions); $resources = SelectOptions::esferasAdministrativasEscola(); From 1069f9de0c91b6ec8ddc8b0ff7401e5e09a3fa90 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 11:57:01 -0300 Subject: [PATCH 083/219] =?UTF-8?q?Atualiza=20nome=20fantasia=20da=20pesso?= =?UTF-8?q?a=20jur=C3=ADdica.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 0ccecd0246..182ca9e0ce 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1504,6 +1504,8 @@ public function Novo() $this->saveInep($cod_escola); + $this->atualizaNomePessoaJuridica($this->ref_idpes); + $this->mensagem .= 'Cadastro efetuado com sucesso.
'; throw new HttpResponseException( @@ -1767,6 +1769,8 @@ public function Editar() $this->saveInep($this->cod_escola); + $this->atualizaNomePessoaJuridica($this->ref_idpes); + $this->mensagem = 'Edição efetuada com sucesso.
'; throw new HttpResponseException( @@ -1774,6 +1778,11 @@ public function Editar() ); } + private function atualizaNomePessoaJuridica($idpes) + { + (new clsJuridica($idpes, null, $this->fantasia))->edita(); + } + public function Excluir() { $obj_permissoes = new clsPermissoes(); From 4d319ac233f2e4151b35f4fd438f5aac2265ed86 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 12:00:15 -0300 Subject: [PATCH 084/219] =?UTF-8?q?Remove=20tipagem=20de=20sa=C3=ADda.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index 182ca9e0ce..aa11fe31ac 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -1553,7 +1553,7 @@ private function cadastraEscolaCurso($cod_escola, $excluirEscolaCursos = false) return true; } - private function constroiObjetoEscola($pessoaj_id_oculto, $escola = null): clsPmieducarEscola + private function constroiObjetoEscola($pessoaj_id_oculto, $escola = null) { if($escola instanceof clsPmieducarEscola) { $obj = $escola; From 643c09d5e3e1362e83ec91d00c6d067a865e5490 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 14:57:14 -0300 Subject: [PATCH 085/219] Remove tipagem de retorno --- ieducar/intranet/educar_escola_cad.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index aa11fe31ac..d32bf91646 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -434,7 +434,7 @@ private function inicializaDados() } } - private function pessoaJuridicaContemEscola($pessoaj_id): bool + private function pessoaJuridicaContemEscola($pessoaj_id) { $escola = (new clsPmieducarEscola())->lista(null, null, null, null, null, null, $pessoaj_id); From 9d421df0136772cc696430ddbd9a9e7d19ade07d Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 14:57:50 -0300 Subject: [PATCH 086/219] Adiciona campo oculto para funcionar o cadastrar curso sem perder os dados. --- ieducar/intranet/educar_escola_cad.php | 1 + 1 file changed, 1 insertion(+) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index d32bf91646..dae161e36c 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -472,6 +472,7 @@ public function Gerar() $this->campoOculto('obrigar_campos_censo', (int) $obrigarCamposCenso); $this->campoOculto('pessoaj_id_oculto', $this->pessoaj_id); + $this->campoOculto('pessoaj_id', $this->pessoaj_id); if ($this->pesquisaPessoaJuridica) { $this->inputsHelper()->simpleSearchPessoaj('idpes', ['label'=> 'Pessoa Jurídica']); From 21cc7131518525271212a4c01f75dc4f86e81c8c Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Wed, 19 May 2021 14:58:13 -0300 Subject: [PATCH 087/219] =?UTF-8?q?Remove=20vari=C3=A1vel=20n=C3=A3o=20uti?= =?UTF-8?q?lizada.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_escola_cad.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/ieducar/intranet/educar_escola_cad.php b/ieducar/intranet/educar_escola_cad.php index dae161e36c..57bd60c78a 100644 --- a/ieducar/intranet/educar_escola_cad.php +++ b/ieducar/intranet/educar_escola_cad.php @@ -244,8 +244,6 @@ public function Inicializar() ); } - // $this->com_cnpj = true; - $this->pesquisaPessoaJuridica = false; $this->carregaCamposComDadosDaEscola($registro); From bab5e3e3335dfb6ad8888d5bb1160496910ff237 Mon Sep 17 00:00:00 2001 From: bonot Date: Mon, 24 May 2021 18:01:24 -0300 Subject: [PATCH 088/219] Analisa CNPJ da escola privada --- .../Api/Views/EducacensoAnaliseController.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/ieducar/modules/Api/Views/EducacensoAnaliseController.php b/ieducar/modules/Api/Views/EducacensoAnaliseController.php index 028238d7d3..bf734b0024 100644 --- a/ieducar/modules/Api/Views/EducacensoAnaliseController.php +++ b/ieducar/modules/Api/Views/EducacensoAnaliseController.php @@ -220,6 +220,20 @@ protected function analisaEducacensoRegistro00() ]; } + if ($escola->situacaoFuncionamento == SituacaoFuncionamento::EM_ATIVIDADE && + $escola->dependenciaAdministrativa == DependenciaAdministrativaEscola::PRIVADA && + empty($escola->cnpjEscolaPrivada) + ) { + $idpesEscola = School::find($codEscola)->ref_idpes; + + $mensagem[] = [ + 'text' => "Dados para formular o registro 00 da escola {$nomeEscola} não encontrados. Verifique se CNPJ da escola foi informado.", + 'path' => '(Pessoas > Cadastros > Pessoas jurídicas > Editar > Campo: CNPJ)', + 'linkPath' => "/intranet/empresas_cad.php?idpes={$idpesEscola}", + 'fail' => true + ]; + } + if (!$escola->esferaAdministrativa && ($escola->regulamentacao == Regulamentacao::SIM || $escola->regulamentacao == Regulamentacao::EM_TRAMITACAO)) { $mensagem[] = [ 'text' => "Dados para formular o registro 00 da escola {$nomeEscola} não encontrados. Verificamos que a escola é regulamentada ou está em tramitação pelo conselho/órgão, portanto é necessário informar qual a esfera administrativa;", From 23a4047cd1e1acb7892a23467f44b822ef661fcb Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 25 May 2021 09:40:07 -0300 Subject: [PATCH 089/219] Update ieducar/intranet/empresas_cad.php Co-authored-by: Eder Soares --- ieducar/intranet/empresas_cad.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/intranet/empresas_cad.php b/ieducar/intranet/empresas_cad.php index b7ab18dd76..d9e4e1f75c 100644 --- a/ieducar/intranet/empresas_cad.php +++ b/ieducar/intranet/empresas_cad.php @@ -86,7 +86,7 @@ public function Gerar() // Dados da Empresa $this->campoTexto('fantasia', 'Nome Fantasia', $this->fantasia, '50', '255', true); - $this->campoTexto('razao_social', 'Razão Social', $this->razao_social, '50', '255', true); + $this->campoTexto('razao_social', 'Razão Social', $this->razao_social, '50', '255', true); $this->campoTexto('capital_social', 'Capital Social', $this->capital_social, '50', '255'); if ((new clsPermissoes)->nivel_acesso(Auth::id()) > App_Model_NivelTipoUsuario::INSTITUCIONAL) { From ef25a514117175fda5b2e9596c61c6db796ac2ff Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 25 May 2021 10:03:38 -0300 Subject: [PATCH 090/219] =?UTF-8?q?Adiciona=20;=20no=20fim=20da=20instru?= =?UTF-8?q?=C3=A7=C3=A3o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/modules/Cadastro/Assets/Javascripts/Escola.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js b/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js index bc198d6c9b..66c5b02bf2 100644 --- a/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js +++ b/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js @@ -195,8 +195,8 @@ function changePossuiDependencias() { $j("#salas_gerais,#salas_funcionais,#banheiros,#laboratorios,#salas_atividades,#dormitorios,#areas_externas").trigger("chosen:updated"); } -const link = ' Caso não encontre a pessoa jurídica, cadastre em Pessoas > Cadastros > Pessoa jurídica.' -$j('#pessoaj_idpes').after(link) +const link = ' Caso não encontre a pessoa jurídica, cadastre em Pessoas > Cadastros > Pessoa jurídica.'; +$j('#pessoaj_idpes').after(link); //abas From b72f13cde7500d2c8f57ddd4c8790a7bf9d490db Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 25 May 2021 10:03:49 -0300 Subject: [PATCH 091/219] =?UTF-8?q?Adiciona=20espa=C3=A7o=20no=20IF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/modules/Cadastro/Assets/Javascripts/Escola.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js b/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js index 66c5b02bf2..9acabd35bc 100644 --- a/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js +++ b/ieducar/modules/Cadastro/Assets/Javascripts/Escola.js @@ -201,7 +201,7 @@ $j('#pessoaj_idpes').after(link); //abas // hide nos campos das outras abas (deixando só os campos da primeira aba) -if (!$j('#pessoaj_idpes').is(':visible')){ +if (!$j('#pessoaj_idpes').is(':visible')) { $j('td .formdktd:first').append('
  • Dados gerais
  • Infraestrutura
  • Depend\u00eancias
  • Equipamentos
  • Recursos
  • Dados do ensino
'); $j('td .formdktd b').remove(); From 9ffbec9798e3130e659cc7e6beb249a54e7a042c Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 25 May 2021 10:04:10 -0300 Subject: [PATCH 092/219] Corrige acentos. --- ieducar/intranet/empresas_det.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ieducar/intranet/empresas_det.php b/ieducar/intranet/empresas_det.php index 14ba582550..60c89af47a 100644 --- a/ieducar/intranet/empresas_det.php +++ b/ieducar/intranet/empresas_det.php @@ -12,10 +12,10 @@ public function Gerar() $endereco = "$idtlog $endereco"; $db = new clsBanco(); - $this->addDetalhe(['Razão Social', $razao_social]); + $this->addDetalhe(['Razão Social', $razao_social]); $this->addDetalhe(['Nome Fantasia', $nm_pessoa]); $this->addDetalhe(['CNPJ', empty($id_federal) ? '' : int2CNPJ($id_federal)]); - $this->addDetalhe(['Endereço', $endereco]); + $this->addDetalhe(['Endereço', $endereco]); $this->addDetalhe(['CEP', $cep]); $this->addDetalhe(['Bairro', $nm_bairro]); $this->addDetalhe(['Cidade', $cidade]); @@ -31,7 +31,7 @@ public function Gerar() if (! $ins_est) { $ins_est = 'isento'; } - $this->addDetalhe(['Inscrição Estadual', $ins_est]); + $this->addDetalhe(['Inscrição Estadual', $ins_est]); $this->addDetalhe(['Capital Social', $capital_social]); $obj_permissao = new clsPermissoes(); From 769c60d987ed613094ec64c26ac8b5bf8df9fcdf Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 25 May 2021 10:05:16 -0300 Subject: [PATCH 093/219] =?UTF-8?q?Passa=20instru=C3=A7=C3=A3o=20SQL=20par?= =?UTF-8?q?a=20vari=C3=A1vel=20para=20n=C3=A3o=20repetir=20c=C3=B3digo.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../intranet/include/pessoa/clsJuridica.inc.php | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/ieducar/intranet/include/pessoa/clsJuridica.inc.php b/ieducar/intranet/include/pessoa/clsJuridica.inc.php index f8cdc9f657..f6b5b70c75 100644 --- a/ieducar/intranet/include/pessoa/clsJuridica.inc.php +++ b/ieducar/intranet/include/pessoa/clsJuridica.inc.php @@ -70,20 +70,16 @@ public function cadastra() * Quando o CNPJ é null é preciso montar um insert específico por conta da concatenação com NULL */ if ($this->cnpj === null) { + $sql = "INSERT INTO {$this->schema}.{$this->tabela} (idpes, cnpj, origem_gravacao, data_cad, operacao, idpes_cad $campos) VALUES ($this->idpes, null, 'M', NOW(), 'I', '$this->idpes_cad' $valores)"; - $db->Consulta("INSERT INTO {$this->schema}.{$this->tabela} (idpes, cnpj, origem_gravacao, data_cad, operacao, idpes_cad $campos) VALUES ($this->idpes, null, 'M', NOW(), 'I', '$this->idpes_cad' $valores)"); - - if ($this->idpes) { - $this->detalhe(); - } - - return true; + } else { + $sql = "INSERT INTO {$this->schema}.{$this->tabela} (idpes, cnpj, origem_gravacao, data_cad, operacao, idpes_cad $campos) VALUES ($this->idpes, '$this->cnpj', 'M', NOW(), 'I', '$this->idpes_cad' $valores)"; } - $db->Consulta("INSERT INTO {$this->schema}.{$this->tabela} (idpes, cnpj, origem_gravacao, data_cad, operacao, idpes_cad $campos) VALUES ($this->idpes, '$this->cnpj', 'M', NOW(), 'I', '$this->idpes_cad' $valores)"); + $db->Consulta($sql); if ($this->idpes) { - $detalhe = $this->detalhe(); + $this->detalhe(); } return true; From ff4a325e49c4b84f2fc4d8857fa7a0ee2a62956c Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Wed, 2 Jun 2021 11:40:47 -0300 Subject: [PATCH 094/219] Ajusta texto --- ieducar/modules/Cadastro/Assets/Javascripts/AlunoShow.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/modules/Cadastro/Assets/Javascripts/AlunoShow.js b/ieducar/modules/Cadastro/Assets/Javascripts/AlunoShow.js index 3ec8f7ccbb..fe171a00f5 100644 --- a/ieducar/modules/Cadastro/Assets/Javascripts/AlunoShow.js +++ b/ieducar/modules/Cadastro/Assets/Javascripts/AlunoShow.js @@ -13,7 +13,7 @@ function fixupTabelaMatriculas() { $j('').html('Ano').appendTo($tr); $j('').html(stringUtils.toUtf8('Situação')).appendTo($tr); $j('').html('Turma').appendTo($tr); - $j('').html('Enturma\u00e7\u00e3o anterior').appendTo($tr); + $j('').html('Enturmação anterior').appendTo($tr); $j('').html(stringUtils.toUtf8('Série')).appendTo($tr); $j('').html('Curso').appendTo($tr); $j('').html('Escola').appendTo($tr); From 1449fba9cb925c17616237310370512ef40223f0 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Wed, 2 Jun 2021 11:41:17 -0300 Subject: [PATCH 095/219] =?UTF-8?q?Recarrega=20a=20tabela=20de=20matricula?= =?UTF-8?q?s=20=C3=A0=20cada=20troca=20de=20situa=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/modules/Cadastro/Assets/Javascripts/AlunoShow.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ieducar/modules/Cadastro/Assets/Javascripts/AlunoShow.js b/ieducar/modules/Cadastro/Assets/Javascripts/AlunoShow.js index fe171a00f5..d8d37f70c2 100644 --- a/ieducar/modules/Cadastro/Assets/Javascripts/AlunoShow.js +++ b/ieducar/modules/Cadastro/Assets/Javascripts/AlunoShow.js @@ -36,6 +36,9 @@ var handleGetMatriculas = function(dataResponse) { try{ handleMessages(dataResponse.msgs); + $j('#matriculas').remove(); + + fixupTabelaMatriculas(); var $matriculasTable = $j('#matriculas'); var transferenciaEmAberto = false; @@ -177,6 +180,7 @@ function onSituacaoChange(matricula_id, novaSituacao){ var handlePostSituacao = function(dataresponse){ handleMessages(dataresponse.msgs); + getMatriculas(); } function onDataEntradaChange(matricula_id, key, campo){ From 633e4585e6eac25e7203f4316f756eef029fd459 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Sun, 13 Jun 2021 21:51:36 -0300 Subject: [PATCH 096/219] =?UTF-8?q?Corrige=20chama=20de=20m=C3=A9todo=20us?= =?UTF-8?q?ados=20nos=20campos=20din=C3=A2micos.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/lib/CoreExt/Entity.php | 2 +- .../lib/Portabilis/View/Helper/DynamicInput/Biblioteca.php | 2 +- .../View/Helper/DynamicInput/BibliotecaPesquisaCliente.php | 4 ++-- .../View/Helper/DynamicInput/BibliotecaPesquisaObra.php | 4 ++-- .../View/Helper/DynamicInput/ComponenteCurricular.php | 2 +- ieducar/lib/Portabilis/View/Helper/DynamicInput/DataFinal.php | 2 +- .../lib/Portabilis/View/Helper/DynamicInput/DataInicial.php | 2 +- .../lib/Portabilis/View/Helper/DynamicInput/PesquisaAluno.php | 2 +- ieducar/lib/Portabilis/View/Helper/Input/Ano.php | 2 +- ieducar/lib/Portabilis/View/Helper/Input/Checkbox.php | 2 +- ieducar/lib/Portabilis/View/Helper/Input/Date.php | 2 +- ieducar/lib/Portabilis/View/Helper/Input/DateDiaMes.php | 2 +- ieducar/lib/Portabilis/View/Helper/Input/Hidden.php | 2 +- ieducar/lib/Portabilis/View/Helper/Input/Numeric.php | 2 +- ieducar/lib/Portabilis/View/Helper/Input/Select.php | 2 +- ieducar/lib/Portabilis/View/Helper/Input/Text.php | 2 +- ieducar/lib/Portabilis/View/Helper/Input/TextArea.php | 2 +- 17 files changed, 19 insertions(+), 19 deletions(-) diff --git a/ieducar/lib/CoreExt/Entity.php b/ieducar/lib/CoreExt/Entity.php index 91a7becc08..f6cb4d79f1 100644 --- a/ieducar/lib/CoreExt/Entity.php +++ b/ieducar/lib/CoreExt/Entity.php @@ -923,7 +923,7 @@ protected function _setDefaultValidatorCollection() public function validateIfEquals( $key, $value = null, - $validatorClassName, + $validatorClassName = null, array $equalsParams = [], array $notEqualsParams = [] ) { diff --git a/ieducar/lib/Portabilis/View/Helper/DynamicInput/Biblioteca.php b/ieducar/lib/Portabilis/View/Helper/DynamicInput/Biblioteca.php index d62abc76ee..679853f4ce 100644 --- a/ieducar/lib/Portabilis/View/Helper/DynamicInput/Biblioteca.php +++ b/ieducar/lib/Portabilis/View/Helper/DynamicInput/Biblioteca.php @@ -61,7 +61,7 @@ public function stringInput($options = []) $inputOptions['id'] = 'biblioteca_nome'; - call_user_func_array([$this->viewInstance, 'campoRotulo'], $inputOptions); + $this->viewInstance->campoRotulo(...array_values($inputOptions)); } public function biblioteca($options = []) diff --git a/ieducar/lib/Portabilis/View/Helper/DynamicInput/BibliotecaPesquisaCliente.php b/ieducar/lib/Portabilis/View/Helper/DynamicInput/BibliotecaPesquisaCliente.php index 60f4bc0d43..39c34db19d 100644 --- a/ieducar/lib/Portabilis/View/Helper/DynamicInput/BibliotecaPesquisaCliente.php +++ b/ieducar/lib/Portabilis/View/Helper/DynamicInput/BibliotecaPesquisaCliente.php @@ -36,7 +36,7 @@ public function bibliotecaPesquisaCliente($options = []) $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); - call_user_func_array([$this->viewInstance, 'campoTexto'], $inputOptions); + $this->viewInstance->campoTexto(...array_values($inputOptions)); $defaultHiddenInputOptions = [ 'id' => 'ref_cod_cliente', @@ -45,7 +45,7 @@ public function bibliotecaPesquisaCliente($options = []) $hiddenInputOptions = $this->mergeOptions($options['hiddenInputOptions'], $defaultHiddenInputOptions); - call_user_func_array([$this->viewInstance, 'campoOculto'], $hiddenInputOptions); + $this->viewInstance->campoOculto(...array_values($hiddenInputOptions)); Portabilis_View_Helper_Application::embedJavascript($this->viewInstance, ' var resetCliente = function(){ diff --git a/ieducar/lib/Portabilis/View/Helper/DynamicInput/BibliotecaPesquisaObra.php b/ieducar/lib/Portabilis/View/Helper/DynamicInput/BibliotecaPesquisaObra.php index cc03195fdc..637521319e 100644 --- a/ieducar/lib/Portabilis/View/Helper/DynamicInput/BibliotecaPesquisaObra.php +++ b/ieducar/lib/Portabilis/View/Helper/DynamicInput/BibliotecaPesquisaObra.php @@ -52,7 +52,7 @@ public function bibliotecaPesquisaObra($options = []) $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); - call_user_func_array([$this->viewInstance, 'campoTexto'], $inputOptions); + $this->viewInstance->campoTexto(...array_values($inputOptions)); $defaultHiddenInputOptions = [ 'id' => 'ref_cod_acervo', @@ -61,7 +61,7 @@ public function bibliotecaPesquisaObra($options = []) $hiddenInputOptions = $this->mergeOptions($options['hiddenInputOptions'], $defaultHiddenInputOptions); - call_user_func_array([$this->viewInstance, 'campoOculto'], $hiddenInputOptions); + $this->viewInstance->campoOculto(...array_values($hiddenInputOptions)); // Ao selecionar obra, na pesquisa de obra é setado o value deste elemento $this->viewInstance->campoOculto('cod_biblioteca', ''); diff --git a/ieducar/lib/Portabilis/View/Helper/DynamicInput/ComponenteCurricular.php b/ieducar/lib/Portabilis/View/Helper/DynamicInput/ComponenteCurricular.php index 39866c74b8..ad90a67dd2 100644 --- a/ieducar/lib/Portabilis/View/Helper/DynamicInput/ComponenteCurricular.php +++ b/ieducar/lib/Portabilis/View/Helper/DynamicInput/ComponenteCurricular.php @@ -44,6 +44,6 @@ public function componenteCurricular($options = []) $selectOptions = $this->mergeOptions($options['options'], $defaultSelectOptions); - call_user_func_array([$this->viewInstance, 'campoLista'], $selectOptions); + $this->viewInstance->campoLista(...array_values($selectOptions)); } } diff --git a/ieducar/lib/Portabilis/View/Helper/DynamicInput/DataFinal.php b/ieducar/lib/Portabilis/View/Helper/DynamicInput/DataFinal.php index 08f95f7328..fd3b716af6 100644 --- a/ieducar/lib/Portabilis/View/Helper/DynamicInput/DataFinal.php +++ b/ieducar/lib/Portabilis/View/Helper/DynamicInput/DataFinal.php @@ -34,6 +34,6 @@ public function dataFinal($options = []) $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); - call_user_func_array([$this->viewInstance, 'campoData'], $inputOptions); + $this->viewInstance->campoData(...array_values( $inputOptions)); } } diff --git a/ieducar/lib/Portabilis/View/Helper/DynamicInput/DataInicial.php b/ieducar/lib/Portabilis/View/Helper/DynamicInput/DataInicial.php index 42f42b2f1d..f131ef1d9e 100644 --- a/ieducar/lib/Portabilis/View/Helper/DynamicInput/DataInicial.php +++ b/ieducar/lib/Portabilis/View/Helper/DynamicInput/DataInicial.php @@ -34,6 +34,6 @@ public function dataInicial($options = []) $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); - call_user_func_array([$this->viewInstance, 'campoData'], $inputOptions); + $this->viewInstance->campoData(...array_values($inputOptions)); } } diff --git a/ieducar/lib/Portabilis/View/Helper/DynamicInput/PesquisaAluno.php b/ieducar/lib/Portabilis/View/Helper/DynamicInput/PesquisaAluno.php index f784ba9d58..a56676f0dc 100644 --- a/ieducar/lib/Portabilis/View/Helper/DynamicInput/PesquisaAluno.php +++ b/ieducar/lib/Portabilis/View/Helper/DynamicInput/PesquisaAluno.php @@ -52,7 +52,7 @@ public function pesquisaAluno($options = []) $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); - call_user_func_array([$this->viewInstance, 'campoTexto'], $inputOptions); + $this->viewInstance->campoTexto(...array_values($inputOptions)); $this->viewInstance->campoOculto('ref_cod_aluno', $this->inputValue($options['id'])); diff --git a/ieducar/lib/Portabilis/View/Helper/Input/Ano.php b/ieducar/lib/Portabilis/View/Helper/Input/Ano.php index 21fd297968..0675d82557 100644 --- a/ieducar/lib/Portabilis/View/Helper/Input/Ano.php +++ b/ieducar/lib/Portabilis/View/Helper/Input/Ano.php @@ -38,6 +38,6 @@ public function ano($options = []) $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); - call_user_func_array([$this->viewInstance, 'campoNumero'], $inputOptions); + $this->viewInstance->campoNumero(...array_values($inputOptions)); } } diff --git a/ieducar/lib/Portabilis/View/Helper/Input/Checkbox.php b/ieducar/lib/Portabilis/View/Helper/Input/Checkbox.php index c137c8ec61..21566692ac 100644 --- a/ieducar/lib/Portabilis/View/Helper/Input/Checkbox.php +++ b/ieducar/lib/Portabilis/View/Helper/Input/Checkbox.php @@ -30,6 +30,6 @@ public function checkbox($attrName, $options = []) '; Portabilis_View_Helper_Application::embedJavascript($this->viewInstance, $js, $afterReady = false); - call_user_func_array([$this->viewInstance, 'campoCheck'], $inputOptions); + $this->viewInstance->campoCheck(...array_values($inputOptions)); } } diff --git a/ieducar/lib/Portabilis/View/Helper/Input/Date.php b/ieducar/lib/Portabilis/View/Helper/Input/Date.php index 7d976ef40c..f947d8c93d 100644 --- a/ieducar/lib/Portabilis/View/Helper/Input/Date.php +++ b/ieducar/lib/Portabilis/View/Helper/Input/Date.php @@ -34,7 +34,7 @@ public function date($attrName, $options = []) $inputOptions['value'] = Portabilis_Date_Utils::pgSQLToBr($inputOptions['value']); } - call_user_func_array([$this->viewInstance, 'campoData'], $inputOptions); + $this->viewInstance->campoData(...array_values($inputOptions)); $this->fixupPlaceholder($inputOptions); $this->fixupOptions($inputOptions); diff --git a/ieducar/lib/Portabilis/View/Helper/Input/DateDiaMes.php b/ieducar/lib/Portabilis/View/Helper/Input/DateDiaMes.php index 1ae14598d1..1a2b585718 100644 --- a/ieducar/lib/Portabilis/View/Helper/Input/DateDiaMes.php +++ b/ieducar/lib/Portabilis/View/Helper/Input/DateDiaMes.php @@ -37,7 +37,7 @@ public function dateDiaMes($attrName, $options = []) $inputOptions['value'] = Portabilis_Date_Utils::pgSQLToBr($inputOptions['value']); } - call_user_func_array([$this->viewInstance, 'campoDataDiaMes'], $inputOptions); + $this->viewInstance->campoDataDiaMes(...array_values($inputOptions)); $this->fixupPlaceholder($inputOptions); $this->fixupOptions($inputOptions); diff --git a/ieducar/lib/Portabilis/View/Helper/Input/Hidden.php b/ieducar/lib/Portabilis/View/Helper/Input/Hidden.php index 975143d9f0..7e75bfd53e 100644 --- a/ieducar/lib/Portabilis/View/Helper/Input/Hidden.php +++ b/ieducar/lib/Portabilis/View/Helper/Input/Hidden.php @@ -15,6 +15,6 @@ public function hidden($attrName, $options = []) $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); - call_user_func_array([$this->viewInstance, 'campoOculto'], $inputOptions); + $this->viewInstance->campoOculto(...array_values($inputOptions)); } } diff --git a/ieducar/lib/Portabilis/View/Helper/Input/Numeric.php b/ieducar/lib/Portabilis/View/Helper/Input/Numeric.php index ba176a9340..dc012bf6dc 100644 --- a/ieducar/lib/Portabilis/View/Helper/Input/Numeric.php +++ b/ieducar/lib/Portabilis/View/Helper/Input/Numeric.php @@ -53,7 +53,7 @@ public function numeric($attrName, $options = []) $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); $inputOptions['label'] = Portabilis_String_Utils::toLatin1($inputOptions['label'], ['escape' => false]); - call_user_func_array([$this->viewInstance, 'campoNumero'], $inputOptions); + $this->viewInstance->campoNumero(...array_values($inputOptions)); $this->fixupPlaceholder($inputOptions); $this->fixupValidation($inputOptions); diff --git a/ieducar/lib/Portabilis/View/Helper/Input/Select.php b/ieducar/lib/Portabilis/View/Helper/Input/Select.php index 32aab8371a..d93920042a 100644 --- a/ieducar/lib/Portabilis/View/Helper/Input/Select.php +++ b/ieducar/lib/Portabilis/View/Helper/Input/Select.php @@ -27,6 +27,6 @@ public function select($attrName, $options = []) $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); $inputOptions['label'] = Portabilis_String_Utils::toLatin1($inputOptions['label'], ['escape' => false]); - call_user_func_array([$this->viewInstance, 'campoLista'], $inputOptions); + $this->viewInstance->campoLista(...array_values($inputOptions)); } } diff --git a/ieducar/lib/Portabilis/View/Helper/Input/Text.php b/ieducar/lib/Portabilis/View/Helper/Input/Text.php index 15609c2725..bc59089ac6 100644 --- a/ieducar/lib/Portabilis/View/Helper/Input/Text.php +++ b/ieducar/lib/Portabilis/View/Helper/Input/Text.php @@ -31,7 +31,7 @@ public function text($attrName, $options = []) $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); $inputOptions['label'] = Portabilis_String_Utils::toLatin1($inputOptions['label'], ['escape' => false]); - call_user_func_array([$this->viewInstance, 'campoTexto'], $inputOptions); + $this->viewInstance->campoTexto(...array_values($inputOptions)); $this->fixupPlaceholder($inputOptions); } } diff --git a/ieducar/lib/Portabilis/View/Helper/Input/TextArea.php b/ieducar/lib/Portabilis/View/Helper/Input/TextArea.php index f305eba548..809e573399 100644 --- a/ieducar/lib/Portabilis/View/Helper/Input/TextArea.php +++ b/ieducar/lib/Portabilis/View/Helper/Input/TextArea.php @@ -29,7 +29,7 @@ public function textArea($attrName, $options = []) $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); - call_user_func_array([$this->viewInstance, 'campoMemo'], $inputOptions); + $this->viewInstance->campoMemo(...array_values($inputOptions)); $this->fixupPlaceholder($inputOptions); if ($inputOptions['max_length'] > 0) { From 3ec90319d72747c59d7801b3961f542019ab1ad6 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Mon, 14 Jun 2021 09:22:10 -0300 Subject: [PATCH 097/219] Volta ajuste de outra branch --- ieducar/lib/CoreExt/Entity.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/lib/CoreExt/Entity.php b/ieducar/lib/CoreExt/Entity.php index f6cb4d79f1..91a7becc08 100644 --- a/ieducar/lib/CoreExt/Entity.php +++ b/ieducar/lib/CoreExt/Entity.php @@ -923,7 +923,7 @@ protected function _setDefaultValidatorCollection() public function validateIfEquals( $key, $value = null, - $validatorClassName = null, + $validatorClassName, array $equalsParams = [], array $notEqualsParams = [] ) { From fc9d3f49bd08c8a0797cc8e13d977a2f2ef87aae Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 22 Jun 2021 08:33:47 -0300 Subject: [PATCH 098/219] =?UTF-8?q?Adiciona=20regras=20na=20redifini=C3=A7?= =?UTF-8?q?=C3=A3o=20de=20senha?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/Auth/ResetPasswordController.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/app/Http/Controllers/Auth/ResetPasswordController.php b/app/Http/Controllers/Auth/ResetPasswordController.php index 4215f91a25..53b063dfd2 100644 --- a/app/Http/Controllers/Auth/ResetPasswordController.php +++ b/app/Http/Controllers/Auth/ResetPasswordController.php @@ -5,6 +5,7 @@ use App\Http\Controllers\Controller; use Illuminate\Foundation\Auth\ResetsPasswords; use Illuminate\Http\Request; +use Illuminate\Validation\Rules\Password; class ResetPasswordController extends Controller { @@ -46,7 +47,16 @@ protected function rules() return [ 'token' => 'required', 'login' => 'required', - 'password' => 'required|confirmed|min:6', + 'password' => + [ + 'required', + 'confirmed', + Password::min(8) + ->mixedCase() + ->letters() + ->numbers() + ->symbols() + ] ]; } From 5fb63e97069c4782308064a0978197968b57bb16 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 22 Jun 2021 08:34:04 -0300 Subject: [PATCH 099/219] Traduz mensagem de erro --- resources/lang/pt-br.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/resources/lang/pt-br.json b/resources/lang/pt-br.json index e321e324b3..aea411e8a1 100644 --- a/resources/lang/pt-br.json +++ b/resources/lang/pt-br.json @@ -8,5 +8,10 @@ "Reset Password": "Redefinir Senha", "This password reset link will expire in :count minutes.": "Este link irá expirar em :count minutos.", "If you did not request a password reset, no further action is required.": "Caso você não tenha feito esta solicitação, por favor, ignore esta mensagem.", - "All rights reserved.": "Todos os direitos reservados." + "All rights reserved.": "Todos os direitos reservados.", + "The :attribute must contain at least one letter.": "O campo :attribute deve conter pelo menos uma letra", + "The :attribute must contain at least one number.": "O campo :attribute deve conter pelo menos um número.", + "The :attribute must contain at least one symbol.": "O campo :attribute deve conter pelo menos um símbolo.", + "The :attribute must contain at least one uppercase and one lowercase letter.": "O campo :attribute deve conter pelo menos uma letra maiúscula e uma minúscula.", + "The given :attribute has appeared in a data leak. Please choose a different :attribute.": "O :attribute informado apareceu em um vazamento de dados. Por favor escolha uma :attribute diferente." } From 3f3f62c67315dd06d0e2b7b0039cf4549e028b47 Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 22 Jun 2021 09:08:31 -0300 Subject: [PATCH 100/219] =?UTF-8?q?Aplica=20valida=C3=A7=C3=A3o=20de=20sen?= =?UTF-8?q?ha?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/meusdados.php | 47 +++++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 12 deletions(-) diff --git a/ieducar/intranet/meusdados.php b/ieducar/intranet/meusdados.php index 786054aef6..2d5736fb4f 100644 --- a/ieducar/intranet/meusdados.php +++ b/ieducar/intranet/meusdados.php @@ -174,28 +174,51 @@ public function Novo() $this->Editar(); } - public function Editar() + private function validatePasswordAccessRules($password, $confirmPassword, $email, $matricula): bool { - if (!filter_var($this->email, FILTER_VALIDATE_EMAIL)) { - $this->mensagem = 'Formato do e-mail inválido.'; + $isValid = true; + if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { + $this->mensagem .= 'Formato do e-mail inválido.'; + $isValid = false; + } - return false; + if ($password !== $confirmPassword) { + $this->mensagem .= 'As senhas que você digitou não conferem.'; + $isValid = false; } - if ($this->senha != $this->senha_confirma) { - $this->mensagem = 'As senhas que você digitou não conferem.'; - return false; + if (strlen($password) < 8) { + $this->mensagem .= 'Por favor informe uma senha mais segura, com pelo menos 8 caracteres.'; + $isValid = false; } - if (strlen($this->senha) < 8) { - $this->mensagem = 'Por favor informe uma senha mais segura, com pelo menos 8 caracteres.'; + if (strrpos($password, $matricula)) { + $this->mensagem .= 'A senha informada é similar a sua matricula, informe outra senha.'; + $isValid = false; + } - return false; + if (!preg_match('@[A-Z]@', $password) && !preg_match('@[a-z]@', $password)) { + $this->mensagem .='O campo senha deve conter pelo menos uma letra maiúscula e uma minúscula.'; + $isValid = false; + } + + if (!preg_match('@[0-9]@', $password)) { + $this->mensagem .='O campo senha deve conter pelo menos um número.'; + $isValid = false; + } + + if (preg_match('@[^\w]@', $password)) { + $this->mensagem .='O campo senha deve conter pelo menos um símbolo.'; + $isValid = false; } - if (strrpos($this->senha, $this->matricula)) { - $this->mensagem = 'A senha informada é similar a sua matricula, informe outra senha.'; + return $isValid; + } + + public function Editar() + { + if (!$this->validatePasswordAccessRules($this->senha, $this->senha_confirma, $this->email, $this->matricula)) { return false; } From cdb7bd41b4195d72e7d494771338c2b78b40998c Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Tue, 22 Jun 2021 09:08:47 -0300 Subject: [PATCH 101/219] =?UTF-8?q?Passa=20valida=C3=A7=C3=A3o=20de=20senh?= =?UTF-8?q?a=20para=20o=20cadastro?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_usuario_cad.php | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/ieducar/intranet/educar_usuario_cad.php b/ieducar/intranet/educar_usuario_cad.php index c722b57210..83c99b8592 100644 --- a/ieducar/intranet/educar_usuario_cad.php +++ b/ieducar/intranet/educar_usuario_cad.php @@ -378,10 +378,24 @@ public function validatesPassword($matricula, $password) { $msg = ''; - if ($password == $matricula) { - $msg = 'Informe uma senha diferente da matricula.'; - } elseif (strlen($password) < 8) { - $msg = 'Por favor informe uma senha segura, com pelo menos 8 caracteres.'; + if (strlen($password) < 8) { + $msg .= 'Por favor informe uma senha mais segura, com pelo menos 8 caracteres.'; + } + + if (strrpos($password, $matricula)) { + $msg .= 'A senha informado é similar a sua matricula, informe outra senha.'; + } + + if (!preg_match('@[A-Z]@', $password) && !preg_match('@[a-z]@', $password)) { + $msg .='O campo senha deve conter pelo menos uma letra maiúscula e uma minúscula.'; + } + + if (!preg_match('@[0-9]@', $password)) { + $msg .='O campo senha deve conter pelo menos um número.'; + } + + if (preg_match('@[^\w]@', $password)) { + $msg .='O campo senha deve conter pelo menos um símbolo.'; } if ($msg) { From fcd21e0e3bbd219fa69996cee75abd057017e8f4 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 24 Jun 2021 17:26:30 -0300 Subject: [PATCH 102/219] Ajusta mensagens de erro --- resources/lang/pt-br/auth.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/resources/lang/pt-br/auth.php b/resources/lang/pt-br/auth.php index cdbef76fd2..d6d9436319 100644 --- a/resources/lang/pt-br/auth.php +++ b/resources/lang/pt-br/auth.php @@ -15,6 +15,7 @@ 'failed' => 'Usuário ou senha incorreta.', 'throttle' => 'Você errou a senha muitas vezes, por favor, aguarde :seconds segundos.', - 'inactive' => 'Sua conta de usuário foi desativada ou expirou, por favor, entre em contato com o responsável pelo sistema do seu município.', + 'inactive' => 'Sua conta de usuário foi desativada. Por favor, entre em contato com o responsável pelo sistema (Secretaria de Educação) para reativação.', + 'expired' => 'A sua conta de usuário expirou. Favor contatar a Secretaria de sua escola ou o responsável pelo sistema (Secretaria de Educação) para reativação.' ]; From d8d99758a7bdb533fa3b2527f4c2d1ee8b9001f0 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 24 Jun 2021 17:29:03 -0300 Subject: [PATCH 103/219] =?UTF-8?q?Corrige=20l=C3=B3gica=20para=20identifi?= =?UTF-8?q?car=20quando=20o=20usu=C3=A1rio=20foi=20reativado?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/educar_usuario_cad.php | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/ieducar/intranet/educar_usuario_cad.php b/ieducar/intranet/educar_usuario_cad.php index c722b57210..d9f74b9923 100644 --- a/ieducar/intranet/educar_usuario_cad.php +++ b/ieducar/intranet/educar_usuario_cad.php @@ -1,5 +1,6 @@ _senha) { if (!$this->validatesPassword($this->matricula, $this->_senha)) { return false; } - $senha = Hash::make($this->_senha); + $data_troca_senha = 'NOW()'; } - $obj_funcionario = new clsPortalFuncionario($this->ref_pessoa, $this->matricula, $senha, $this->ativo, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_funcionario_vinculo, $this->tempo_expira_senha, Portabilis_Date_Utils::brToPgSQL($this->data_expiracao), 'NOW()', 'NOW()', $this->pessoa_logada, 0, 0, null, 0, null, $this->email, $this->matricula_interna); + $data_reativa_conta = $this->hasChangeStatusUser() && $this->ativo == '1' ? 'NOW()' : null; + + $obj_funcionario = new clsPortalFuncionario($this->ref_pessoa, $this->matricula, $senha, $this->ativo, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_funcionario_vinculo, $this->tempo_expira_senha, Portabilis_Date_Utils::brToPgSQL($this->data_expiracao), $data_troca_senha, $data_reativa_conta, $this->pessoa_logada, 0, 0, null, 0, null, $this->email, $this->matricula_interna); if ($obj_funcionario->edita()) { if ($this->ref_cod_instituicao) { @@ -451,4 +454,10 @@ public function Formular() $this->title = 'Cadastro de usuários'; $this->processoAp = 555; } + + public function hasChangeStatusUser(): bool + { + $legacyEmployer = LegacyEmployee::find($this->ref_pessoa); + return $legacyEmployer->ativo != $this->ativo; + } }; From d67b7702438bfb9cda1ba1c09d83ca518af9e150 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 24 Jun 2021 17:29:33 -0300 Subject: [PATCH 104/219] Cria model para a tabela portal.acesso --- app/Models/LegacyAccess.php | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 app/Models/LegacyAccess.php diff --git a/app/Models/LegacyAccess.php b/app/Models/LegacyAccess.php new file mode 100644 index 0000000000..cae03cef8a --- /dev/null +++ b/app/Models/LegacyAccess.php @@ -0,0 +1,32 @@ +query() + ->orderBy('data_hora', 'DESC') + ->first(); + } +} From 7c220e7aaa638eb2d7ce6700d2e275b7d8ed3ea2 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 24 Jun 2021 17:30:07 -0300 Subject: [PATCH 105/219] =?UTF-8?q?Retorna=20a=20data=20da=20reativa=C3=A7?= =?UTF-8?q?=C3=A3o=20da=20conta?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Models/LegacyEmployee.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/Models/LegacyEmployee.php b/app/Models/LegacyEmployee.php index 1ad7f27756..88fb802437 100644 --- a/app/Models/LegacyEmployee.php +++ b/app/Models/LegacyEmployee.php @@ -2,6 +2,7 @@ namespace App\Models; +use Carbon\Carbon; use Illuminate\Database\Eloquent\Model; /** @@ -39,6 +40,8 @@ class LegacyEmployee extends Model 'email', ]; + protected $dates = ['data_reativa_conta']; + /** * @return string */ @@ -106,4 +109,9 @@ public function getActiveAttribute() { return boolval($this->ativo); } + + public function getEnabledUserDate(): ?Carbon + { + return $this->data_reativa_conta; + } } From d705c7734544e7cd6c87fc2cbfd5bad1dcd02812 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 24 Jun 2021 17:31:18 -0300 Subject: [PATCH 106/219] =?UTF-8?q?Implementa=20l=C3=B3gica=20para=20inati?= =?UTF-8?q?var=20usu=C3=A1rios=20com=20limite=20execido=20de=20dias=20sem?= =?UTF-8?q?=20acesso?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/User.php | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/app/User.php b/app/User.php index efacb1440e..31bbf66298 100644 --- a/app/User.php +++ b/app/User.php @@ -2,14 +2,18 @@ namespace App; +use App\Models\LegacyAccess; use App\Models\LegacyEmployee; use App\Models\LegacyPerson; use App\Models\LegacyUserType; use App\Models\School; +use App\Services\DisableUsersWithDaysGoneSinceLastAccessService; +use Illuminate\Contracts\Config\Repository; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsToMany; use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; +use Illuminate\Support\Carbon; /** * @property int $id @@ -230,6 +234,14 @@ public function employee() return $this->belongsTo(LegacyEmployee::class, 'cod_usuario', 'ref_cod_pessoa_fj'); } + /** + * @return BelongsTo + */ + public function access() + { + return $this->belongsTo(LegacyAccess::class, 'cod_usuario', 'cod_pessoa'); + } + /** * @return BelongsToMany */ @@ -269,4 +281,71 @@ public function schools() 'cod_escola' ); } + + public function getCreatedAtCustom(): ?Carbon + { + return Carbon::createFromTimestamp((new \DateTime($this->getCreatedAtAttribute()))->getTimestamp()); + } + + public function getEnabledUserDate(): ?Carbon + { + if ($this->employee()) { + return $this->employee->getEnabledUserDate(); + } + return null; + } + + public function getLastAccessDate(): Carbon + { + $legacyAccess = $this->access() + ->orderBy('data_hora', 'DESC') + ->first(); + + if (!$legacyAccess) { + return $this->getCreatedAtCustom() ?? Carbon::now(); + } + + return $legacyAccess->data_hora; + } + + public function getDaysSinceLastAccessOrEnabledUserDate(): int + { + $daysGone = 0; + $lastAccessDate = $this->getLastAccessDate(); + + if ($this->getEnabledUserDate() && + $this->getEnabledUserDate()->gt($lastAccessDate)) { + $lastAccessDate = $this->getEnabledUserDate(); + } + + $currentDate = Carbon::now(); + if ($currentDate->gt($lastAccessDate)){ + $daysGone = $currentDate->diffInDays($lastAccessDate); + } + return $daysGone; + } + + public function getActiveUsersNotAdmin() + { + return $this->query() + ->join('portal.funcionario', 'usuario.cod_usuario', '=', 'funcionario.ref_cod_pessoa_fj') + ->where('funcionario.ativo', 1) + ->where('ref_cod_tipo_usuario', '<>', LegacyUserType::LEVEL_ADMIN) + ->get(); + } + + public function disable() + { + $this->employee->data_expiracao = now(); + $this->employee->ativo = 0; + $this->employee->save(); + $this->ativo = 0; + $this->save(); + } + + public function isPasswordExpirationPeriod() + { + $disableUsersWithDaysGoneSinceLastAccessService = new DisableUsersWithDaysGoneSinceLastAccessService(); + + } } From 4616b66aada8675e38b7c3c1b90b32dfe7cc6ffe Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 24 Jun 2021 17:32:24 -0300 Subject: [PATCH 107/219] =?UTF-8?q?Service=20que=20centraliza=20a=20l?= =?UTF-8?q?=C3=B3gica=20de=20inativa=C3=A7=C3=A3o=20de=20usu=C3=A1rios=20q?= =?UTF-8?q?ue=20excedem=20o=20limite=20de=20dias=20sem=20acesso=20ao=20sis?= =?UTF-8?q?tema?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...sersWithDaysGoneSinceLastAccessService.php | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php diff --git a/app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php b/app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php new file mode 100644 index 0000000000..0f69c48d8f --- /dev/null +++ b/app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php @@ -0,0 +1,27 @@ +config = $config; + } + public function execute(Authenticatable $user){ + $expirationPeriod = $this->config->get('legacy.app.user_accounts.default_password_expiration_period'); + + if (empty($expirationPeriod) === false) { + $daysGone = $user->getDaysSinceLastAccessOrEnabledUserDate(); + if ($daysGone >= $expirationPeriod) { + $user->disable(); + } + } + } +} From d0d1328cafc4d96709218927a4b7a210142a5751 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 24 Jun 2021 17:33:22 -0300 Subject: [PATCH 108/219] =?UTF-8?q?Verifica=20se=20o=20usu=C3=A1rio=20que?= =?UTF-8?q?=20est=C3=A1=20logando=20no=20sistema=20=C3=A9=20pass=C3=ADvel?= =?UTF-8?q?=20de=20inativa=C3=A7=C3=A3o=20por=20exceder=20o=20limite=20de?= =?UTF-8?q?=20dias=20sem=20acesso=20ao=20sistema?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Listeners/AuthenticatedUser.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/app/Listeners/AuthenticatedUser.php b/app/Listeners/AuthenticatedUser.php index aa25e5e8ce..6c811bf7c7 100644 --- a/app/Listeners/AuthenticatedUser.php +++ b/app/Listeners/AuthenticatedUser.php @@ -2,7 +2,9 @@ namespace App\Listeners; +use App\Services\DisableUsersWithDaysGoneSinceLastAccessService; use Illuminate\Auth\Events\Authenticated; +use Illuminate\Contracts\Auth\Authenticatable; use Illuminate\Support\Facades\Auth; use Illuminate\Validation\ValidationException; @@ -25,12 +27,20 @@ public function handle(Authenticated $event) ]); } + $this->validateUserExpirationPeriod($event->user); + if ($event->user->isExpired()) { Auth::logout(); throw ValidationException::withMessages([ - $event->user->login => __('auth.inactive') + $event->user->login => __('auth.expired') ]); } } + + public function validateUserExpirationPeriod(Authenticatable $user) + { + $disableUsersWithDaysGoneSinceLastAccessService = app(DisableUsersWithDaysGoneSinceLastAccessService::class); + $disableUsersWithDaysGoneSinceLastAccessService->execute($user); + } } From 82d0f3423d94ed01d92e07523145c0fdecc78967 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 25 Jun 2021 08:53:03 -0300 Subject: [PATCH 109/219] =?UTF-8?q?Cria=20settings=20espec=C3=ADfica=20par?= =?UTF-8?q?a=20quantidade=20de=20dias=20m=C3=A1ximos=20sem=20acesso=20ao?= =?UTF-8?q?=20sistema=20para=20que=20o=20bloqueio=20da=20conta=20seja=20fe?= =?UTF-8?q?ito.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...sersWithDaysGoneSinceLastAccessService.php | 2 +- ...max_days_without_login_to_disable_user.php | 35 +++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 database/migrations/2021_06_23_171544_add_setting_max_days_without_login_to_disable_user.php diff --git a/app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php b/app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php index 0f69c48d8f..55e9b2e444 100644 --- a/app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php +++ b/app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php @@ -15,7 +15,7 @@ public function __construct(Repository $config) $this->config = $config; } public function execute(Authenticatable $user){ - $expirationPeriod = $this->config->get('legacy.app.user_accounts.default_password_expiration_period'); + $expirationPeriod = $this->config->get('legacy.app.user_accounts.max_days_without_login_to_disable_user'); if (empty($expirationPeriod) === false) { $daysGone = $user->getDaysSinceLastAccessOrEnabledUserDate(); diff --git a/database/migrations/2021_06_23_171544_add_setting_max_days_without_login_to_disable_user.php b/database/migrations/2021_06_23_171544_add_setting_max_days_without_login_to_disable_user.php new file mode 100644 index 0000000000..b0da391165 --- /dev/null +++ b/database/migrations/2021_06_23_171544_add_setting_max_days_without_login_to_disable_user.php @@ -0,0 +1,35 @@ +updateOrCreate([ + 'key' => 'legacy.app.user_accounts.max_days_without_login_to_disable_user', + ], [ + 'type' => 'integer', + 'description' => 'Quantidade de dias permitidos sem acessar o sistema para inativação automática de conta', + 'hint' => 'A contagem será efetuada em dias corridos. Se o valor preenchido for zero (0) ou nenhum, não ocorrerá automatização', + 'setting_category_id' => 10, + 'value' => 0, + ]); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Setting::query()->where('key', 'legacy.app.max_days_without_login_to_disable_user')->delete(); + } +} From f4b633479e44b47c480a7d71f20b8fdc43e8aad2 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 25 Jun 2021 08:59:42 -0300 Subject: [PATCH 110/219] =?UTF-8?q?Cria=20command=20e=20Job=20para=20serem?= =?UTF-8?q?=20usados=20como=20comando=20auxiliares=20para=20os=20casos=20e?= =?UTF-8?q?m=20que=20seja=20necess=C3=A1rio=20fazer=20uma=20desabilita?= =?UTF-8?q?=C3=A7=C3=A3o=20em=20lote=20de=20usu=C3=A1rios=20com=20acesso?= =?UTF-8?q?=20expirado?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DisableUsersWithAccessExpired.php | 47 ++++++++++++++++++ ...isableUsersWithDaysGoneSinceLastAccess.php | 49 +++++++++++++++++++ 2 files changed, 96 insertions(+) create mode 100644 app/Console/Commands/DisableUsersWithAccessExpired.php create mode 100644 app/Jobs/BatchDisableUsersWithDaysGoneSinceLastAccess.php diff --git a/app/Console/Commands/DisableUsersWithAccessExpired.php b/app/Console/Commands/DisableUsersWithAccessExpired.php new file mode 100644 index 0000000000..7d16734dd3 --- /dev/null +++ b/app/Console/Commands/DisableUsersWithAccessExpired.php @@ -0,0 +1,47 @@ +dispatch($job); + return 0; + } +} diff --git a/app/Jobs/BatchDisableUsersWithDaysGoneSinceLastAccess.php b/app/Jobs/BatchDisableUsersWithDaysGoneSinceLastAccess.php new file mode 100644 index 0000000000..d29ed961f8 --- /dev/null +++ b/app/Jobs/BatchDisableUsersWithDaysGoneSinceLastAccess.php @@ -0,0 +1,49 @@ +databaseConnection = $databaseConnection; + } + + public function handle(Repository $config) + { + DB::setDefaultConnection($this->databaseConnection); + $expirationPeriod = $config->get('legacy.app.user_accounts.default_password_expiration_period'); + + if (empty($expirationPeriod) === false) { + $this->disableUsersWithDaysGoneSinceLastAccess($expirationPeriod); + } + } + + private function disableUsersWithDaysGoneSinceLastAccess($expirationPeriod): void + { + $users = (new User())->getActiveUsersNotAdmin(); + + foreach ($users as $user) { + $disableUsersWithDaysGoneSinceLastAccessService = app(DisableUsersWithDaysGoneSinceLastAccessService::class); + $disableUsersWithDaysGoneSinceLastAccessService->execute($user); + } + } +} From 3f533bb34c8536aa7b473d945272309d8c800bf4 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 25 Jun 2021 16:01:40 -0300 Subject: [PATCH 111/219] =?UTF-8?q?Desconsidera=20a=20inativa=C3=A7=C3=A3o?= =?UTF-8?q?=20por=20falta=20de=20acesso=20ao=20sistema=20para=20usu=C3=A1r?= =?UTF-8?q?ios=20admin?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php b/app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php index 55e9b2e444..e38775d0d1 100644 --- a/app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php +++ b/app/Services/DisableUsersWithDaysGoneSinceLastAccessService.php @@ -17,7 +17,7 @@ public function __construct(Repository $config) public function execute(Authenticatable $user){ $expirationPeriod = $this->config->get('legacy.app.user_accounts.max_days_without_login_to_disable_user'); - if (empty($expirationPeriod) === false) { + if (empty($expirationPeriod) === false && $user->isAdmin() === false) { $daysGone = $user->getDaysSinceLastAccessOrEnabledUserDate(); if ($daysGone >= $expirationPeriod) { $user->disable(); From 77429bc64c3748d691888fd185b77df08eee7708 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 25 Jun 2021 16:20:38 -0300 Subject: [PATCH 112/219] =?UTF-8?q?Corrige=20o=20parametro=20da=20configur?= =?UTF-8?q?a=C3=A7=C3=A3o=20a=20ser=20usada?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Jobs/BatchDisableUsersWithDaysGoneSinceLastAccess.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Jobs/BatchDisableUsersWithDaysGoneSinceLastAccess.php b/app/Jobs/BatchDisableUsersWithDaysGoneSinceLastAccess.php index d29ed961f8..34c51c4ec4 100644 --- a/app/Jobs/BatchDisableUsersWithDaysGoneSinceLastAccess.php +++ b/app/Jobs/BatchDisableUsersWithDaysGoneSinceLastAccess.php @@ -30,7 +30,7 @@ public function __construct($databaseConnection) public function handle(Repository $config) { DB::setDefaultConnection($this->databaseConnection); - $expirationPeriod = $config->get('legacy.app.user_accounts.default_password_expiration_period'); + $expirationPeriod = $config->get('legacy.app.user_accounts.max_days_without_login_to_disable_user'); if (empty($expirationPeriod) === false) { $this->disableUsersWithDaysGoneSinceLastAccess($expirationPeriod); From 90799295b13fb90a21b69bd351cf04d6fac6fbfc Mon Sep 17 00:00:00 2001 From: bonot Date: Tue, 29 Jun 2021 10:10:20 -0300 Subject: [PATCH 113/219] Permite matriculas na mesma serie em cursos de atividade complementar --- ieducar/intranet/educar_matricula_cad.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ieducar/intranet/educar_matricula_cad.php b/ieducar/intranet/educar_matricula_cad.php index 5ff7e31cb1..f692535ea7 100644 --- a/ieducar/intranet/educar_matricula_cad.php +++ b/ieducar/intranet/educar_matricula_cad.php @@ -424,7 +424,10 @@ public function Novo() if (is_array($m) && count($m) && !$dependencia) { $curso = $this->getCurso($this->ref_cod_curso); - if ($m['ref_ref_cod_serie'] == $this->ref_cod_serie) { + $cursoADeferir = new clsPmieducarCurso($this->ref_cod_curso); + $cursoDeAtividadeComplementar = $cursoADeferir->cursoDeAtividadeComplementar(); + + if ($m['ref_ref_cod_serie'] == $this->ref_cod_serie && !$cursoDeAtividadeComplementar) { $this->mensagem = 'Este aluno já está matriculado nesta série e curso, não é possivel matricular um aluno mais de uma vez na mesma série.
'; return false; From 14bfdd2ab41b5be7f1aad17df0bb0c5d22b11b50 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Tue, 29 Jun 2021 17:30:08 -0300 Subject: [PATCH 114/219] =?UTF-8?q?Melhora=20description=20e=20hint=20do?= =?UTF-8?q?=20par=C3=A2metro?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...lt_password_expiration_period_settings.php | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php diff --git a/database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php b/database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php new file mode 100644 index 0000000000..cb4b5e01ea --- /dev/null +++ b/database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php @@ -0,0 +1,32 @@ +updateOrInsert([ + 'key' => 'legacy.app.user_accounts.default_password_expiration_period', + ], [ + 'description' => 'Quantidade de dias para expiração automática de senhas', + 'hint' => 'A contagem será efetuada em dias corridos. Se o valor preenchido for zero (0) ou nenhum, não ocorrerá automatização', + ]); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Setting::query()->updateOrInsert([ + 'key' => 'legacy.app.user_accounts.default_password_expiration_period', + ], [ + 'description' => 'Dias para expiração de senha', + 'hint' => '', + ]); + } +} From bbb237ad93e68fbc4741ffc192a4c2964860e221 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Tue, 29 Jun 2021 17:30:42 -0300 Subject: [PATCH 115/219] =?UTF-8?q?Melhora=20a=20mensagem=20para=20que=20a?= =?UTF-8?q?tenda=20n=C3=A3o=20apenas=20para=20for=C3=A7ar=20a=20troca=20de?= =?UTF-8?q?=20senha=20no=20primeiro=20acesso,=20mas=20sempre=20que=20neces?= =?UTF-8?q?s=C3=A1rio?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resources/views/password/change.blade.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/views/password/change.blade.php b/resources/views/password/change.blade.php index 2af780a53a..68f4e709ee 100644 --- a/resources/views/password/change.blade.php +++ b/resources/views/password/change.blade.php @@ -2,7 +2,7 @@ @section('content')

Alterar senha

-

Para sua segurança, sua senha deverá ser alterada no primeiro acesso

+

Para sua segurança, sua senha deverá ser alterada.

{{csrf_field()}} From 15efc48304e32dfa4aa9951047ab4ef5ef941f6e Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Tue, 29 Jun 2021 17:31:27 -0300 Subject: [PATCH 116/219] =?UTF-8?q?Service=20respons=C3=A1vel=20por=20real?= =?UTF-8?q?izar=20a=20troca=20de=20senha=20de=20usu=C3=A1rio,=20de=20acord?= =?UTF-8?q?o=20com=20as=20novas=20regras?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Services/ChangeUserPasswordService.php | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 app/Services/ChangeUserPasswordService.php diff --git a/app/Services/ChangeUserPasswordService.php b/app/Services/ChangeUserPasswordService.php new file mode 100644 index 0000000000..8342ea4d3c --- /dev/null +++ b/app/Services/ChangeUserPasswordService.php @@ -0,0 +1,32 @@ +validate($legacyEmployee); + $legacyEmployee->setPasswordAttribute(Hash::make($this->_senha)); + $legacyEmployee->force_reset_password = false; + $legacyEmployee->data_troca_senha = now(); + $legacyEmployee->save(); + } + + public function validate(LegacyEmployee $legacyEmployee) + { + validator( + ['password' => $legacyEmployee->getPasswordAttribute()], + [ + 'password' => [ + new IsValidPassword() + ] + ] + )->validate(); + } +} From d7ea2e99ce5841e48989d8d7c5c1c83c010cf085 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Tue, 29 Jun 2021 17:33:19 -0300 Subject: [PATCH 117/219] =?UTF-8?q?Inclui=20no=20middleware=20service=20re?= =?UTF-8?q?spons=C3=A1vel=20por=20verificar=20se=20o=20user=20j=C3=A1=20es?= =?UTF-8?q?t=C3=A1=20a=20mais=20de=20x=20dias=20sem=20trocar=20a=20senha,?= =?UTF-8?q?=20o=20obrigando=20a=20fazer=20a=20troca=20para=20continuar=20a?= =?UTF-8?q?cessando=20o=20sistema?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Middleware/CheckResetPassword.php | 10 +++++++ .../ForceUserChangePasswordService.php | 29 +++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 app/Services/ForceUserChangePasswordService.php diff --git a/app/Http/Middleware/CheckResetPassword.php b/app/Http/Middleware/CheckResetPassword.php index b4027117da..c2a43b5b19 100644 --- a/app/Http/Middleware/CheckResetPassword.php +++ b/app/Http/Middleware/CheckResetPassword.php @@ -2,7 +2,9 @@ namespace App\Http\Middleware; +use App\Services\ForceUserChangePasswordService; use Closure; +use Illuminate\Contracts\Auth\Authenticatable; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; @@ -24,10 +26,18 @@ public function handle($request, Closure $next) return $next($request); } + $this->validateUserExpirationPassword($user); + if ($user->employee->force_reset_password) { return redirect()->route('change-password'); } return $next($request); } + + public function validateUserExpirationPassword(Authenticatable $user) + { + $forceUserChangePasswordService = app(ForceUserChangePasswordService::class); + $forceUserChangePasswordService->execute($user); + } } diff --git a/app/Services/ForceUserChangePasswordService.php b/app/Services/ForceUserChangePasswordService.php new file mode 100644 index 0000000000..4457bda68f --- /dev/null +++ b/app/Services/ForceUserChangePasswordService.php @@ -0,0 +1,29 @@ +config = $config; + } + public function execute(Authenticatable $user) + { + $expirationPeriod = $this->config->get('legacy.app.user_accounts.default_password_expiration_period'); + + if (empty($expirationPeriod) === false && $user->isAdmin() === false) { + $daysGone = $user->getDaysSinceLastPasswordUpdated(); + if ($daysGone >= $expirationPeriod) { + $user->employee->force_reset_password = true; + $user->employee->save(); + } + } + } +} From 2ac7a01c2c595a5197ccf654f8cd6aaf09cbdbb8 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Tue, 29 Jun 2021 17:33:43 -0300 Subject: [PATCH 118/219] =?UTF-8?q?Inclui=20rule=20responsavel=20por=20val?= =?UTF-8?q?idar=20os=20passwords=20de=20usu=C3=A1rios?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Rules/IsValidPassword.php | 44 +++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 app/Rules/IsValidPassword.php diff --git a/app/Rules/IsValidPassword.php b/app/Rules/IsValidPassword.php new file mode 100644 index 0000000000..6b3748f8d4 --- /dev/null +++ b/app/Rules/IsValidPassword.php @@ -0,0 +1,44 @@ +msg .= 'Por favor informe uma senha mais segura, com pelo menos '.self::PASSWORD_LENGTH_DEFAULT.' caracteres. '; + } + + if (!preg_match('@[A-Z]@', $value) && !preg_match('@[a-z]@', $value)) { + $this->msg .='O campo senha deve conter pelo menos uma letra maiúscula e uma minúscula. '; + } + + if (!preg_match('@[0-9]@', $value)) { + $this->msg .='O campo senha deve conter pelo menos um número. '; + } + + if (!preg_match('@[^A-Za-z0-9]@', $value)) { + $this->msg .='O campo senha deve conter pelo menos um símbolo. '; + } + + return empty($this->msg); + } + + /** + * Get the validation error message. + * + * @return string + */ + public function message() + { + return $this->msg; + } +} From 340d61c426c7ede90d2feadf6651853bb1aa3bc5 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Tue, 29 Jun 2021 17:36:14 -0300 Subject: [PATCH 119/219] =?UTF-8?q?Altera=20para=20utilizar=20o=20service?= =?UTF-8?q?=20respons=C3=A1vel=20por=20altera=C3=A7=C3=B5es=20de=20senha?= =?UTF-8?q?=20de=20usu=C3=A1rios?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/PasswordController.php | 7 +-- ieducar/intranet/educar_usuario_cad.php | 52 +++++---------------- ieducar/intranet/meusdados.php | 21 ++++++--- 3 files changed, 30 insertions(+), 50 deletions(-) diff --git a/app/Http/Controllers/PasswordController.php b/app/Http/Controllers/PasswordController.php index 4e9d02674c..124e9503a2 100644 --- a/app/Http/Controllers/PasswordController.php +++ b/app/Http/Controllers/PasswordController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use App\Services\ChangeUserPasswordService; use App\User; use Illuminate\Foundation\Auth\ResetsPasswords; use Illuminate\Http\Request; @@ -31,8 +32,8 @@ function ($user, $password) { if ($response == Password::PASSWORD_RESET) { $employee = $user->employee; - $employee->force_reset_password = false; - $employee->save(); + $changeUserPasswordService = app(ChangeUserPasswordService::class); + $changeUserPasswordService->execute($employee); return $this->sendResetResponse($request, $response); } @@ -44,7 +45,7 @@ protected function rules() { return [ 'login' => 'required', - 'password' => 'required|confirmed|min:8', + 'password' => 'required|confirmed', ]; } diff --git a/ieducar/intranet/educar_usuario_cad.php b/ieducar/intranet/educar_usuario_cad.php index b67e07d159..5ef01be08f 100644 --- a/ieducar/intranet/educar_usuario_cad.php +++ b/ieducar/intranet/educar_usuario_cad.php @@ -1,9 +1,11 @@ _senha) { - if (!$this->validatesPassword($this->matricula, $this->_senha)) { + $legacyEmployee = LegacyEmployee::find($this->ref_pessoa); + $legacyEmployee->setPasswordAttribute($this->_senha); + + $changeUserPasswordService = app(ChangeUserPasswordService::class); + try { + $changeUserPasswordService->execute($legacyEmployee); + } catch (ValidationException $ex){ + $this->mensagem = $ex->validator->errors()->first(); return false; } - $senha = Hash::make($this->_senha); - $data_troca_senha = 'NOW()'; + } $data_reativa_conta = $this->hasChangeStatusUser() && $this->ativo == '1' ? 'NOW()' : null; - $obj_funcionario = new clsPortalFuncionario($this->ref_pessoa, $this->matricula, $senha, $this->ativo, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_funcionario_vinculo, $this->tempo_expira_senha, Portabilis_Date_Utils::brToPgSQL($this->data_expiracao), $data_troca_senha, $data_reativa_conta, $this->pessoa_logada, 0, 0, null, 0, null, $this->email, $this->matricula_interna); + $obj_funcionario = new clsPortalFuncionario($this->ref_pessoa, $this->matricula, null, $this->ativo, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_funcionario_vinculo, $this->tempo_expira_senha, Portabilis_Date_Utils::brToPgSQL($this->data_expiracao), null, $data_reativa_conta, $this->pessoa_logada, 0, 0, null, 0, null, $this->email, $this->matricula_interna); if ($obj_funcionario->edita()) { if ($this->ref_cod_instituicao) { @@ -377,39 +382,6 @@ public function validatesUniquenessOfMatricula($pessoaId, $matricula) return true; } - public function validatesPassword($matricula, $password) - { - $msg = ''; - - if (strlen($password) < 8) { - $msg .= 'Por favor informe uma senha mais segura, com pelo menos 8 caracteres.'; - } - - if (strrpos($password, $matricula)) { - $msg .= 'A senha informado é similar a sua matricula, informe outra senha.'; - } - - if (!preg_match('@[A-Z]@', $password) && !preg_match('@[a-z]@', $password)) { - $msg .='O campo senha deve conter pelo menos uma letra maiúscula e uma minúscula.'; - } - - if (!preg_match('@[0-9]@', $password)) { - $msg .='O campo senha deve conter pelo menos um número.'; - } - - if (preg_match('@[^\w]@', $password)) { - $msg .='O campo senha deve conter pelo menos um símbolo.'; - } - - if ($msg) { - $this->mensagem = $msg; - - return false; - } - - return true; - } - public function excluiTodosVinculosEscola($codUsuario) { $usuarioEscola = new clsPmieducarEscolaUsuario(); diff --git a/ieducar/intranet/meusdados.php b/ieducar/intranet/meusdados.php index 2d5736fb4f..2bd63f9206 100644 --- a/ieducar/intranet/meusdados.php +++ b/ieducar/intranet/meusdados.php @@ -1,8 +1,10 @@ validatePasswordAccessRules($this->senha, $this->senha_confirma, $this->email, $this->matricula)) { - return false; - } - if (!$this->validatePhoto()) { return false; } @@ -262,7 +259,17 @@ public function Editar() $senha_old = urldecode($this->senha_old); if ($senha_old != $this->senha) { - $funcionario->senha = Hash::make($this->senha); + + $legacyEmployee = LegacyEmployee::find($this->pessoa_logada); + $legacyEmployee->setPasswordAttribute($this->senha); + + $changeUserPasswordService = app(ChangeUserPasswordService::class); + try { + $changeUserPasswordService->execute($legacyEmployee); + } catch (ValidationException $ex){ + $this->mensagem = $ex->validator->errors()->first(); + return false; + } } $funcionario->edita(); From 0acf44211e9093bbb88c569fcc9c4a794e7da8a6 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Tue, 29 Jun 2021 17:36:53 -0300 Subject: [PATCH 120/219] =?UTF-8?q?Inclui=20metodos=20para=20serem=20utili?= =?UTF-8?q?zados=20nas=20rotinas=20de=20verifica=C3=A7=C3=A3o=20de=20obrig?= =?UTF-8?q?atoriedade=20de=20troca=20de=20senha?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Models/LegacyEmployee.php | 7 ++++++- app/User.php | 25 +++++++++++++++++++------ 2 files changed, 25 insertions(+), 7 deletions(-) diff --git a/app/Models/LegacyEmployee.php b/app/Models/LegacyEmployee.php index 88fb802437..71d60353c3 100644 --- a/app/Models/LegacyEmployee.php +++ b/app/Models/LegacyEmployee.php @@ -40,7 +40,7 @@ class LegacyEmployee extends Model 'email', ]; - protected $dates = ['data_reativa_conta']; + protected $dates = ['data_reativa_conta', 'data_troca_senha']; /** * @return string @@ -114,4 +114,9 @@ public function getEnabledUserDate(): ?Carbon { return $this->data_reativa_conta; } + + public function getPasswordUpdatedDate(): ?Carbon + { + return $this->data_troca_senha; + } } diff --git a/app/User.php b/app/User.php index 31bbf66298..36dd2a2770 100644 --- a/app/User.php +++ b/app/User.php @@ -294,6 +294,13 @@ public function getEnabledUserDate(): ?Carbon } return null; } + public function getPasswordUpdatedDate(): ?Carbon + { + if ($this->employee()) { + return $this->employee->getPasswordUpdatedDate(); + } + return null; + } public function getLastAccessDate(): Carbon { @@ -325,6 +332,18 @@ public function getDaysSinceLastAccessOrEnabledUserDate(): int return $daysGone; } + public function getDaysSinceLastPasswordUpdated(): int + { + $daysGone = 0; + $lastPasswordUpdatedDate = $this->getPasswordUpdatedDate(); + + $currentDate = Carbon::now(); + if ($currentDate->gt($lastPasswordUpdatedDate)){ + $daysGone = $currentDate->diffInDays($lastPasswordUpdatedDate); + } + return $daysGone; + } + public function getActiveUsersNotAdmin() { return $this->query() @@ -342,10 +361,4 @@ public function disable() $this->ativo = 0; $this->save(); } - - public function isPasswordExpirationPeriod() - { - $disableUsersWithDaysGoneSinceLastAccessService = new DisableUsersWithDaysGoneSinceLastAccessService(); - - } } From 337c16c5baf3a55a66788d793cf1be3adadd5e4a Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Tue, 29 Jun 2021 17:53:37 -0300 Subject: [PATCH 121/219] =?UTF-8?q?Utiliza=20rule=20espc=C3=ADfica=20para?= =?UTF-8?q?=20valida=C3=A7=C3=A3o=20de=20senha=20de=20usu=C3=A1rios=20do?= =?UTF-8?q?=20i-educar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/Auth/ResetPasswordController.php | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/app/Http/Controllers/Auth/ResetPasswordController.php b/app/Http/Controllers/Auth/ResetPasswordController.php index 53b063dfd2..7375408a67 100644 --- a/app/Http/Controllers/Auth/ResetPasswordController.php +++ b/app/Http/Controllers/Auth/ResetPasswordController.php @@ -3,9 +3,9 @@ namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; +use App\Rules\IsValidPassword; use Illuminate\Foundation\Auth\ResetsPasswords; use Illuminate\Http\Request; -use Illuminate\Validation\Rules\Password; class ResetPasswordController extends Controller { @@ -51,11 +51,7 @@ protected function rules() [ 'required', 'confirmed', - Password::min(8) - ->mixedCase() - ->letters() - ->numbers() - ->symbols() + new IsValidPassword() ] ]; } From 0f8147e60ba9e997224481107475082bc315e696 Mon Sep 17 00:00:00 2001 From: bonot Date: Tue, 29 Jun 2021 10:58:12 -0300 Subject: [PATCH 122/219] Limpa session ao abrir tela de cadastro --- ieducar/intranet/educar_servidor_cad.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ieducar/intranet/educar_servidor_cad.php b/ieducar/intranet/educar_servidor_cad.php index 4df9b12265..8d8a275ba5 100644 --- a/ieducar/intranet/educar_servidor_cad.php +++ b/ieducar/intranet/educar_servidor_cad.php @@ -136,6 +136,8 @@ public function Inicializar() $obj_servidor_disciplina = new clsPmieducarServidorDisciplina(); $lst_servidor_disciplina = $obj_servidor_disciplina->lista(null, $this->ref_cod_instituicao, $this->cod_servidor); + Session::forget("servant:{$this->cod_servidor}"); + if ($lst_servidor_disciplina) { foreach ($lst_servidor_disciplina as $disciplina) { $funcoes[$disciplina['ref_cod_funcao']][$disciplina['ref_cod_curso']][] = $disciplina['ref_cod_disciplina']; From 8c24c031efc96fbe5cb13dc794df57106b6a04ce Mon Sep 17 00:00:00 2001 From: bonot Date: Tue, 29 Jun 2021 10:58:43 -0300 Subject: [PATCH 123/219] Corrige valores do campo de funcao --- ...corrige_funcao_do_servidor_disciplinas.php | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100755 database/migrations/2021_06_29_104528_corrige_funcao_do_servidor_disciplinas.php diff --git a/database/migrations/2021_06_29_104528_corrige_funcao_do_servidor_disciplinas.php b/database/migrations/2021_06_29_104528_corrige_funcao_do_servidor_disciplinas.php new file mode 100755 index 0000000000..5aa5b6c542 --- /dev/null +++ b/database/migrations/2021_06_29_104528_corrige_funcao_do_servidor_disciplinas.php @@ -0,0 +1,42 @@ + Date: Tue, 29 Jun 2021 11:01:30 -0300 Subject: [PATCH 124/219] Cria chave de relacionamento entre tabelas de disciplinas e funcao de servidor --- ...3_cria_chave_para_servidor_disciplinas.php | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 database/migrations/2021_06_29_105513_cria_chave_para_servidor_disciplinas.php diff --git a/database/migrations/2021_06_29_105513_cria_chave_para_servidor_disciplinas.php b/database/migrations/2021_06_29_105513_cria_chave_para_servidor_disciplinas.php new file mode 100755 index 0000000000..028c4f9e08 --- /dev/null +++ b/database/migrations/2021_06_29_105513_cria_chave_para_servidor_disciplinas.php @@ -0,0 +1,32 @@ +foreign('ref_cod_funcao')->on('pmieducar.servidor_funcao')->references('cod_servidor_funcao'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('pmieducar.servidor_disciplina', function (Blueprint $table) { + $table->dropForeign(['ref_cod_funcao']); + }); + } +} From f35d31baeb6fd470b7ecd8a216af927c69d8dd58 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Wed, 30 Jun 2021 09:48:01 -0300 Subject: [PATCH 125/219] =?UTF-8?q?Utiliza=20regras=20de=20valida=C3=A7?= =?UTF-8?q?=C3=A3o=20de=20senhas,=20nativas=20do=20laravel,=20inclu=C3=ADd?= =?UTF-8?q?as=20a=20partir=20do=20laravel=208,=20e=20modifica=20o=20servic?= =?UTF-8?q?e=20para=20receber=20o=20password?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Services/ChangeUserPasswordService.php | 19 +++++++++++-------- ieducar/intranet/educar_usuario_cad.php | 4 +--- ieducar/intranet/meusdados.php | 9 +++++---- 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/app/Services/ChangeUserPasswordService.php b/app/Services/ChangeUserPasswordService.php index 8342ea4d3c..2c3d1159b0 100644 --- a/app/Services/ChangeUserPasswordService.php +++ b/app/Services/ChangeUserPasswordService.php @@ -3,28 +3,31 @@ namespace App\Services; use App\Models\LegacyEmployee; -use App\Rules\IsValidPassword; use Illuminate\Support\Facades\Hash; - +use Illuminate\Validation\Rules\Password; class ChangeUserPasswordService { - public function execute(LegacyEmployee $legacyEmployee) + public function execute(LegacyEmployee $legacyEmployee, string $password) { - $this->validate($legacyEmployee); - $legacyEmployee->setPasswordAttribute(Hash::make($this->_senha)); + $this->validate($password); + $legacyEmployee->setPasswordAttribute(Hash::make($password)); $legacyEmployee->force_reset_password = false; $legacyEmployee->data_troca_senha = now(); $legacyEmployee->save(); } - public function validate(LegacyEmployee $legacyEmployee) + public function validate(string $password) { validator( - ['password' => $legacyEmployee->getPasswordAttribute()], + ['password' => $password], [ 'password' => [ - new IsValidPassword() + Password::min(8) + ->mixedCase() + ->letters() + ->numbers() + ->symbols() ] ] )->validate(); diff --git a/ieducar/intranet/educar_usuario_cad.php b/ieducar/intranet/educar_usuario_cad.php index 5ef01be08f..239bd59b83 100644 --- a/ieducar/intranet/educar_usuario_cad.php +++ b/ieducar/intranet/educar_usuario_cad.php @@ -277,11 +277,9 @@ public function Editar() // for informado é que a mesma será alterada. if ($this->_senha) { $legacyEmployee = LegacyEmployee::find($this->ref_pessoa); - $legacyEmployee->setPasswordAttribute($this->_senha); - $changeUserPasswordService = app(ChangeUserPasswordService::class); try { - $changeUserPasswordService->execute($legacyEmployee); + $changeUserPasswordService->execute($legacyEmployee, $this->_senha); } catch (ValidationException $ex){ $this->mensagem = $ex->validator->errors()->first(); return false; diff --git a/ieducar/intranet/meusdados.php b/ieducar/intranet/meusdados.php index 2bd63f9206..80c42c2ec8 100644 --- a/ieducar/intranet/meusdados.php +++ b/ieducar/intranet/meusdados.php @@ -259,13 +259,14 @@ public function Editar() $senha_old = urldecode($this->senha_old); if ($senha_old != $this->senha) { - + if ($this->senha !== $this->senha_confirma) { + $this->mensagem = 'O campo de confirmação de senha deve ser igual ao campo da senha.'; + return false; + } $legacyEmployee = LegacyEmployee::find($this->pessoa_logada); - $legacyEmployee->setPasswordAttribute($this->senha); - $changeUserPasswordService = app(ChangeUserPasswordService::class); try { - $changeUserPasswordService->execute($legacyEmployee); + $changeUserPasswordService->execute($legacyEmployee, $this->senha); } catch (ValidationException $ex){ $this->mensagem = $ex->validator->errors()->first(); return false; From dfe4196b5effe62433f7f50b5bd2af8bbf79ffde Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Wed, 30 Jun 2021 09:48:51 -0300 Subject: [PATCH 126/219] Envia a senha para ser alterada no service --- app/Http/Controllers/PasswordController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Controllers/PasswordController.php b/app/Http/Controllers/PasswordController.php index 124e9503a2..962f992e64 100644 --- a/app/Http/Controllers/PasswordController.php +++ b/app/Http/Controllers/PasswordController.php @@ -33,7 +33,7 @@ function ($user, $password) { if ($response == Password::PASSWORD_RESET) { $employee = $user->employee; $changeUserPasswordService = app(ChangeUserPasswordService::class); - $changeUserPasswordService->execute($employee); + $changeUserPasswordService->execute($employee, $request->get('password')); return $this->sendResetResponse($request, $response); } From d00a24a1a0e79a0807e463b42e6c356993d1a931 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Wed, 30 Jun 2021 09:49:44 -0300 Subject: [PATCH 127/219] =?UTF-8?q?Remove=20rule=20que=20foi=20substituida?= =?UTF-8?q?=20pelas=20rules=20padr=C3=B5es=20do=20laravel,=20inclu=C3=ADda?= =?UTF-8?q?s=20a=20partir=20da=20vers=C3=A3o=208?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Rules/IsValidPassword.php | 44 ----------------------------------- 1 file changed, 44 deletions(-) delete mode 100644 app/Rules/IsValidPassword.php diff --git a/app/Rules/IsValidPassword.php b/app/Rules/IsValidPassword.php deleted file mode 100644 index 6b3748f8d4..0000000000 --- a/app/Rules/IsValidPassword.php +++ /dev/null @@ -1,44 +0,0 @@ -msg .= 'Por favor informe uma senha mais segura, com pelo menos '.self::PASSWORD_LENGTH_DEFAULT.' caracteres. '; - } - - if (!preg_match('@[A-Z]@', $value) && !preg_match('@[a-z]@', $value)) { - $this->msg .='O campo senha deve conter pelo menos uma letra maiúscula e uma minúscula. '; - } - - if (!preg_match('@[0-9]@', $value)) { - $this->msg .='O campo senha deve conter pelo menos um número. '; - } - - if (!preg_match('@[^A-Za-z0-9]@', $value)) { - $this->msg .='O campo senha deve conter pelo menos um símbolo. '; - } - - return empty($this->msg); - } - - /** - * Get the validation error message. - * - * @return string - */ - public function message() - { - return $this->msg; - } -} From 9662c4f6fead0a35bd52afbc42dcc7d529c41c87 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Wed, 30 Jun 2021 10:05:09 -0300 Subject: [PATCH 128/219] =?UTF-8?q?Isola=20a=20valida=C3=A7=C3=A3o=20do=20?= =?UTF-8?q?password=20em=20um=20service=20pr=C3=B3prio=20para=20melhor=20a?= =?UTF-8?q?proveitamento=20do=20c=C3=B3digo=20e=20evitar=20repeti=C3=A7?= =?UTF-8?q?=C3=B5es?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Services/ChangeUserPasswordService.php | 15 ++-------- app/Services/ValidateUserPasswordService.php | 29 ++++++++++++++++++++ ieducar/intranet/educar_usuario_cad.php | 13 ++++++++- 3 files changed, 43 insertions(+), 14 deletions(-) create mode 100644 app/Services/ValidateUserPasswordService.php diff --git a/app/Services/ChangeUserPasswordService.php b/app/Services/ChangeUserPasswordService.php index 2c3d1159b0..982d5f34d8 100644 --- a/app/Services/ChangeUserPasswordService.php +++ b/app/Services/ChangeUserPasswordService.php @@ -4,7 +4,6 @@ use App\Models\LegacyEmployee; use Illuminate\Support\Facades\Hash; -use Illuminate\Validation\Rules\Password; class ChangeUserPasswordService { @@ -19,17 +18,7 @@ public function execute(LegacyEmployee $legacyEmployee, string $password) public function validate(string $password) { - validator( - ['password' => $password], - [ - 'password' => [ - Password::min(8) - ->mixedCase() - ->letters() - ->numbers() - ->symbols() - ] - ] - )->validate(); + $validateUserPasswordService = app(ValidateUserPasswordService::class); + $validateUserPasswordService->execute($password); } } diff --git a/app/Services/ValidateUserPasswordService.php b/app/Services/ValidateUserPasswordService.php new file mode 100644 index 0000000000..2d3a9f412a --- /dev/null +++ b/app/Services/ValidateUserPasswordService.php @@ -0,0 +1,29 @@ +validate($password); + } + + public function validate(string $password) + { + validator( + ['password' => $password], + [ + 'password' => [ + Password::min(8) + ->mixedCase() + ->letters() + ->numbers() + ->symbols() + ] + ] + )->validate(); + } +} diff --git a/ieducar/intranet/educar_usuario_cad.php b/ieducar/intranet/educar_usuario_cad.php index 239bd59b83..d1d67e57b8 100644 --- a/ieducar/intranet/educar_usuario_cad.php +++ b/ieducar/intranet/educar_usuario_cad.php @@ -2,9 +2,11 @@ use App\Models\LegacyEmployee; use App\Services\ChangeUserPasswordService; +use App\Services\ValidateUserPasswordService; use App\User; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Hash; +use Illuminate\Validation\Rules\Password; use Illuminate\Validation\ValidationException; return new class extends clsCadastro { @@ -221,7 +223,10 @@ public function Novo() return false; } - if (!$this->validatesPassword($this->matricula, $this->_senha)) { + try { + $this->validatesPassword($this->_senha); + } catch (ValidationException $ex) { + $this->mensagem = $ex->validator->errors()->first(); return false; } @@ -444,4 +449,10 @@ public function hasChangeStatusUser(): bool $legacyEmployer = LegacyEmployee::find($this->ref_pessoa); return $legacyEmployer->ativo != $this->ativo; } + + public function validatesPassword($password) + { + $validateUserPasswordService = app(ValidateUserPasswordService::class); + $validateUserPasswordService->execute($password); + } }; From 5e891b6cd0c0102bb3ac4824aa6a24beb3459e70 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Wed, 30 Jun 2021 15:22:13 -0300 Subject: [PATCH 129/219] Cria views para acesso aos indicadores --- config/assets.php | 2 +- ieducar/intranet/styles/custom.css | 11 +++++++++- .../index.blade.php | 20 ++++++++++++++++++ .../index.blade.php | 21 +++++++++++++++++++ 4 files changed, 52 insertions(+), 2 deletions(-) create mode 100644 resources/views/indicators/panel-dimension-school-network/index.blade.php create mode 100644 resources/views/indicators/students-schools-geolocation/index.blade.php diff --git a/config/assets.php b/config/assets.php index b5f14423b7..1d04ffec94 100644 --- a/config/assets.php +++ b/config/assets.php @@ -14,7 +14,7 @@ | */ - 'version' => '0.0.91', + 'version' => '0.0.92', /* |-------------------------------------------------------------------------- diff --git a/ieducar/intranet/styles/custom.css b/ieducar/intranet/styles/custom.css index 4acfb213b8..392b9b81ec 100644 --- a/ieducar/intranet/styles/custom.css +++ b/ieducar/intranet/styles/custom.css @@ -615,7 +615,7 @@ table.calendar .dayLastMonth, .day{ } table.calendar .day{ - background-color: #e9f0f8 !; + background-color: #e9f0f8; cursor: pointer; } @@ -1461,3 +1461,12 @@ a.btn-detalhes { #componentes_turma_cad td{ padding: 5px; } +.painel-geoloation-report { + height: 500px; + display: flex; + flex-direction: column; + flex-wrap: nowrap; + align-content: center; + justify-content: center; + align-items: center; +} diff --git a/resources/views/indicators/panel-dimension-school-network/index.blade.php b/resources/views/indicators/panel-dimension-school-network/index.blade.php new file mode 100644 index 0000000000..dd7c84f6c4 --- /dev/null +++ b/resources/views/indicators/panel-dimension-school-network/index.blade.php @@ -0,0 +1,20 @@ +@extends('layout.default') + +@push('styles') + +@endpush + +@section('content') + +@endsection + +@push('scripts') + +@endpush diff --git a/resources/views/indicators/students-schools-geolocation/index.blade.php b/resources/views/indicators/students-schools-geolocation/index.blade.php new file mode 100644 index 0000000000..f1bc5d7d77 --- /dev/null +++ b/resources/views/indicators/students-schools-geolocation/index.blade.php @@ -0,0 +1,21 @@ +@extends('layout.default') + +@push('styles') + +@endpush + +@section('content') +
+ +
+@endsection + +@push('scripts') + +@endpush From 00ad1869075467f12aba3bd2dfea6dad131b99db Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Wed, 30 Jun 2021 15:22:31 -0300 Subject: [PATCH 130/219] Cria controller para as paginas de indicadores --- app/Http/Controllers/IndicatorsController.php | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 app/Http/Controllers/IndicatorsController.php diff --git a/app/Http/Controllers/IndicatorsController.php b/app/Http/Controllers/IndicatorsController.php new file mode 100644 index 0000000000..43733d8b3e --- /dev/null +++ b/app/Http/Controllers/IndicatorsController.php @@ -0,0 +1,39 @@ +breadcrumb('Indicadores', [ + url('intranet/educar_configuracoes_index.php') => 'Configurações', + ]); + + $this->menu(Process::PANEL_DIMENSION_SCHOOL_NETWORK); + + if (!$request->user()->isAdmin()) { + return back()->withErrors(['Error' => ['Você não tem permissão para acessar este recurso']]); + } + + return view('indicators.panel-dimension-school-network.index'); + } + + public function studentsSchoolsGeolocation(Request $request) + { + $this->breadcrumb('Indicadores', [ + url('intranet/educar_configuracoes_index.php') => 'Configurações', + ]); + + $this->menu(Process::STUDENTS_SCHOOLS_GEOLOCATION); + + if (!$request->user()->isAdmin()) { + return back()->withErrors(['Error' => ['Você não tem permissão para acessar este recurso']]); + } + + return view('indicators.students-schools-geolocation.index'); + } + } From db80cfb456bc4661291b796931bd9742953c6ab1 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Wed, 30 Jun 2021 15:22:47 -0300 Subject: [PATCH 131/219] =?UTF-8?q?Cria=20c=C3=B3digos=20de=20processo=20p?= =?UTF-8?q?ara=20os=20novos=20menus?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Process.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/Process.php b/app/Process.php index 0830778d08..0ae62ec061 100644 --- a/app/Process.php +++ b/app/Process.php @@ -39,4 +39,7 @@ class Process public const EDUCACENSO_IMPORTACOES = 9998848; public const CONSULTAS = 9998890; public const ACTIVE_LOOKING = 9998921; + public const INDICATORS = 9998922; + public const STUDENTS_SCHOOLS_GEOLOCATION = 9998923; + public const PANEL_DIMENSION_SCHOOL_NETWORK = 9998924; } From 47813582ea0de31c3bb1d7db84b057a8ce9c6040 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Wed, 30 Jun 2021 15:22:58 -0300 Subject: [PATCH 132/219] Cria rota para acesso aos indicadores --- routes/web.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/routes/web.php b/routes/web.php index a87653e16e..d188f88de1 100644 --- a/routes/web.php +++ b/routes/web.php @@ -132,6 +132,9 @@ Route::get('/dispensa-lote', 'BatchExemptionController@index')->middleware('can:modify:' . Process::BATCH_EXEMPTION)->name('batch-exemption.index'); Route::post('/dispensa-lote', 'BatchExemptionController@exempt')->middleware('can:modify:' . Process::BATCH_EXEMPTION)->name('batch-exemption.exempt'); + + Route::get('/panel-dimension-school-network', 'IndicatorsController@panelDimensionSchoolNetwork')->name('panel-dimension-school-network.index'); + Route::get('/students-schools-geolocation', 'IndicatorsController@studentsSchoolsGeolocation')->name('students-schools-geolocation.index'); }); Route::group(['namespace' => 'Exports', 'prefix' => 'exports'], function () { From dc16e303e3b1c17fb746c5024881a7470a2e102a Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Thu, 1 Jul 2021 10:56:30 -0300 Subject: [PATCH 133/219] Ajusta nomenclatura --- ieducar/intranet/educar_turma_cad.php | 2 +- src/Modules/Educacenso/Model/ModalidadeCurso.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ieducar/intranet/educar_turma_cad.php b/ieducar/intranet/educar_turma_cad.php index 19a4b01fda..98699a3372 100644 --- a/ieducar/intranet/educar_turma_cad.php +++ b/ieducar/intranet/educar_turma_cad.php @@ -1126,7 +1126,7 @@ private function validaEtapaEducacenso() } if ($course->modalidade_curso == 2 && !in_array($this->etapa_educacenso, [1, 2, 3, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 41, 56, 39, 40, 69, 70, 71, 72, 73, 74, 64, 67, 68])) { - $this->mensagem = 'Quando a modalidade do curso é: Educação Especial - Modalidade Substitutiva, o campo: Etapa de ensino deve ser uma das seguintes opções: 1, 2, 3, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 41, 56, 39, 40, 69, 70, 71, 72, 73, 74, 64, 67 ou 68.'; + $this->mensagem = 'Quando a modalidade do curso é: Educação especial - Modalidade Substitutiva, o campo: Etapa de ensino deve ser uma das seguintes opções: 1, 2, 3, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 41, 56, 39, 40, 69, 70, 71, 72, 73, 74, 64, 67 ou 68.'; return false; } diff --git a/src/Modules/Educacenso/Model/ModalidadeCurso.php b/src/Modules/Educacenso/Model/ModalidadeCurso.php index d2a13c1aaf..141755eb5b 100644 --- a/src/Modules/Educacenso/Model/ModalidadeCurso.php +++ b/src/Modules/Educacenso/Model/ModalidadeCurso.php @@ -16,7 +16,7 @@ public static function getDescriptiveValues() { return [ self::ENSINO_REGULAR => 'Ensino regular', - self::EDUCACAO_ESPECIAL => 'Educação Especial - Modalidade Substitutiva', + self::EDUCACAO_ESPECIAL => 'Educação especial', self::EJA => 'Educação de Jovens e Adultos (EJA)', self::EDUCACAO_PROFISSIONAL => 'Educação profissional', ]; From 08298759d7c1b9e936c080b38ed17bf9efd12dcc Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 1 Jul 2021 11:04:51 -0300 Subject: [PATCH 134/219] =?UTF-8?q?Altera=20o=20valor=20do=20par=C3=A2metr?= =?UTF-8?q?o=20para=20que=20o=20padr=C3=A3o=20seja=20desabilitado?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...cription_hint_default_password_expiration_period_settings.php | 1 + 1 file changed, 1 insertion(+) diff --git a/database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php b/database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php index cb4b5e01ea..43c5d4879b 100644 --- a/database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php +++ b/database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php @@ -12,6 +12,7 @@ public function up() ], [ 'description' => 'Quantidade de dias para expiração automática de senhas', 'hint' => 'A contagem será efetuada em dias corridos. Se o valor preenchido for zero (0) ou nenhum, não ocorrerá automatização', + 'value' => 0 ]); } From 5ac2cd354df2dad91766d1ca62fe411ad544fb9b Mon Sep 17 00:00:00 2001 From: Joalisson Barros Date: Thu, 1 Jul 2021 11:22:57 -0300 Subject: [PATCH 135/219] Ajusta nomenclatura --- ieducar/intranet/educar_curso_cad.php | 2 +- ieducar/intranet/educar_turma_cad.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ieducar/intranet/educar_curso_cad.php b/ieducar/intranet/educar_curso_cad.php index 88447fbe14..af5bb791a4 100644 --- a/ieducar/intranet/educar_curso_cad.php +++ b/ieducar/intranet/educar_curso_cad.php @@ -417,7 +417,7 @@ public function Gerar() $resources = [ null => 'Selecione', 1 => 'Ensino regular', - 2 => 'Educação Especial - Modalidade Substitutiva', + 2 => 'Educação especial', 3 => 'Educação de Jovens e Adultos (EJA)', 4 => 'Educação profissional' ]; diff --git a/ieducar/intranet/educar_turma_cad.php b/ieducar/intranet/educar_turma_cad.php index 98699a3372..432292591e 100644 --- a/ieducar/intranet/educar_turma_cad.php +++ b/ieducar/intranet/educar_turma_cad.php @@ -1126,7 +1126,7 @@ private function validaEtapaEducacenso() } if ($course->modalidade_curso == 2 && !in_array($this->etapa_educacenso, [1, 2, 3, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 41, 56, 39, 40, 69, 70, 71, 72, 73, 74, 64, 67, 68])) { - $this->mensagem = 'Quando a modalidade do curso é: Educação especial - Modalidade Substitutiva, o campo: Etapa de ensino deve ser uma das seguintes opções: 1, 2, 3, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 41, 56, 39, 40, 69, 70, 71, 72, 73, 74, 64, 67 ou 68.'; + $this->mensagem = 'Quando a modalidade do curso é: Educação especial, o campo: Etapa de ensino deve ser uma das seguintes opções: 1, 2, 3, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 41, 56, 39, 40, 69, 70, 71, 72, 73, 74, 64, 67 ou 68.'; return false; } From 8e36a2d24a9ed258125f5357d6af43b61559dd0d Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 1 Jul 2021 14:52:09 -0300 Subject: [PATCH 136/219] =?UTF-8?q?Faz=20inje=C3=A7=C3=A3o=20de=20depend?= =?UTF-8?q?=C3=AAncia=20dos=20services=20necess=C3=A1rios?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/PasswordController.php | 9 ++++++--- app/Http/Middleware/CheckResetPassword.php | 8 ++++++-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/Http/Controllers/PasswordController.php b/app/Http/Controllers/PasswordController.php index 962f992e64..c1eab1af32 100644 --- a/app/Http/Controllers/PasswordController.php +++ b/app/Http/Controllers/PasswordController.php @@ -12,6 +12,11 @@ class PasswordController extends Controller { use ResetsPasswords; + public function __construct(ChangeUserPasswordService $changeUserPasswordService) + { + $this->changeUserPasswordService = $changeUserPasswordService; + } + public function change(Request $request, User $user) { if ($request->isMethod('get')) { @@ -32,9 +37,7 @@ function ($user, $password) { if ($response == Password::PASSWORD_RESET) { $employee = $user->employee; - $changeUserPasswordService = app(ChangeUserPasswordService::class); - $changeUserPasswordService->execute($employee, $request->get('password')); - + $this->changeUserPasswordService->execute($employee, $request->get('password')); return $this->sendResetResponse($request, $response); } diff --git a/app/Http/Middleware/CheckResetPassword.php b/app/Http/Middleware/CheckResetPassword.php index c2a43b5b19..81c181af2c 100644 --- a/app/Http/Middleware/CheckResetPassword.php +++ b/app/Http/Middleware/CheckResetPassword.php @@ -10,6 +10,11 @@ class CheckResetPassword { + public function __construct(ForceUserChangePasswordService $forceUserChangePasswordService) + { + $this->forceUserChangePasswordService = $forceUserChangePasswordService; + } + /** * Handle an incoming request. * @@ -37,7 +42,6 @@ public function handle($request, Closure $next) public function validateUserExpirationPassword(Authenticatable $user) { - $forceUserChangePasswordService = app(ForceUserChangePasswordService::class); - $forceUserChangePasswordService->execute($user); + $this->forceUserChangePasswordService->execute($user); } } From d27e29322b2f054bdc057badd821e7c8fede4a8a Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 1 Jul 2021 14:53:01 -0300 Subject: [PATCH 137/219] =?UTF-8?q?Deixa=20o=20c=C3=B3digo=20mais=20claro?= =?UTF-8?q?=20e=20aplica=20PSR-12?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ForceUserChangePasswordService.php | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/app/Services/ForceUserChangePasswordService.php b/app/Services/ForceUserChangePasswordService.php index 4457bda68f..ac203b01c8 100644 --- a/app/Services/ForceUserChangePasswordService.php +++ b/app/Services/ForceUserChangePasswordService.php @@ -7,23 +7,30 @@ class ForceUserChangePasswordService { - public $config; public function __construct(Repository $config) { $this->config = $config; } + public function execute(Authenticatable $user) { $expirationPeriod = $this->config->get('legacy.app.user_accounts.default_password_expiration_period'); - if (empty($expirationPeriod) === false && $user->isAdmin() === false) { - $daysGone = $user->getDaysSinceLastPasswordUpdated(); - if ($daysGone >= $expirationPeriod) { - $user->employee->force_reset_password = true; - $user->employee->save(); - } + if (empty($expirationPeriod)) { + return; + } + + if ($user->isAdmin()) { + return; + } + + $daysGone = $user->getDaysSinceLastPasswordUpdated(); + + if ($daysGone >= $expirationPeriod) { + $user->employee->force_reset_password = true; + $user->employee->save(); } } } From 38033a7c7327f5332bce22dff62d97ca5429c5fe Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 1 Jul 2021 14:53:43 -0300 Subject: [PATCH 138/219] =?UTF-8?q?Utiliza=20a=20propriedade=20correta=20n?= =?UTF-8?q?a=20condi=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/User.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/User.php b/app/User.php index 36dd2a2770..ee9424fa7c 100644 --- a/app/User.php +++ b/app/User.php @@ -296,7 +296,7 @@ public function getEnabledUserDate(): ?Carbon } public function getPasswordUpdatedDate(): ?Carbon { - if ($this->employee()) { + if ($this->employee) { return $this->employee->getPasswordUpdatedDate(); } return null; From 1aeba1409abe0809fddbd44aadfeeb93641df601 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 1 Jul 2021 15:07:34 -0300 Subject: [PATCH 139/219] =?UTF-8?q?Sobrescreve=20m=C3=A9todo=20para=20gara?= =?UTF-8?q?ntir=20regras=20e=20l=C3=B3gica=20de=20troca=20de=20senha=20em?= =?UTF-8?q?=20service=20=C3=BAnico?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Auth/ResetPasswordController.php | 35 ++++++++++++++----- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/app/Http/Controllers/Auth/ResetPasswordController.php b/app/Http/Controllers/Auth/ResetPasswordController.php index 7375408a67..1bf53aa8a4 100644 --- a/app/Http/Controllers/Auth/ResetPasswordController.php +++ b/app/Http/Controllers/Auth/ResetPasswordController.php @@ -3,9 +3,11 @@ namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; -use App\Rules\IsValidPassword; +use App\Services\ChangeUserPasswordService; +use App\User; use Illuminate\Foundation\Auth\ResetsPasswords; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Password; class ResetPasswordController extends Controller { @@ -34,8 +36,9 @@ class ResetPasswordController extends Controller * * @return void */ - public function __construct() + public function __construct(ChangeUserPasswordService $changeUserPasswordService) { + $this->changeUserPasswordService = $changeUserPasswordService; $this->middleware('guest'); } @@ -47,12 +50,7 @@ protected function rules() return [ 'token' => 'required', 'login' => 'required', - 'password' => - [ - 'required', - 'confirmed', - new IsValidPassword() - ] + 'password' => 'required|confirmed', ]; } @@ -64,7 +62,6 @@ protected function validationErrorMessages() return [ 'password.required' => 'O campo senha é obrigatório.', 'password.confirmed' => 'As senhas não são iguais.', - 'password.min' => 'A senha deve conter ao menos 8 caracteres.', ]; } @@ -80,4 +77,24 @@ protected function credentials(Request $request) 'token' ); } + + public function reset(Request $request, User $user) + { + $request->validate($this->rules(), $this->validationErrorMessages()); + + $response = $this->broker()->reset( + $this->credentials($request), + function ($user, $password) { + $this->resetPassword($user, $password); + } + ); + + if ($response == Password::PASSWORD_RESET) { + $employee = $user->employee; + $this->changeUserPasswordService->execute($employee, $request->get('password')); + return $this->sendResetResponse($request, $response); + } + + return $this->sendResetFailedResponse($request, $response); + } } From 4b1c9135dc377b347720d7c81167590c02d2085f Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 1 Jul 2021 16:38:23 -0300 Subject: [PATCH 140/219] =?UTF-8?q?Move=20as=20rotas=20e=20controller=20pa?= =?UTF-8?q?ra=20reposit=C3=B3rio=20privado?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/IndicatorsController.php | 39 ------------------- routes/web.php | 3 -- 2 files changed, 42 deletions(-) delete mode 100644 app/Http/Controllers/IndicatorsController.php diff --git a/app/Http/Controllers/IndicatorsController.php b/app/Http/Controllers/IndicatorsController.php deleted file mode 100644 index 43733d8b3e..0000000000 --- a/app/Http/Controllers/IndicatorsController.php +++ /dev/null @@ -1,39 +0,0 @@ -breadcrumb('Indicadores', [ - url('intranet/educar_configuracoes_index.php') => 'Configurações', - ]); - - $this->menu(Process::PANEL_DIMENSION_SCHOOL_NETWORK); - - if (!$request->user()->isAdmin()) { - return back()->withErrors(['Error' => ['Você não tem permissão para acessar este recurso']]); - } - - return view('indicators.panel-dimension-school-network.index'); - } - - public function studentsSchoolsGeolocation(Request $request) - { - $this->breadcrumb('Indicadores', [ - url('intranet/educar_configuracoes_index.php') => 'Configurações', - ]); - - $this->menu(Process::STUDENTS_SCHOOLS_GEOLOCATION); - - if (!$request->user()->isAdmin()) { - return back()->withErrors(['Error' => ['Você não tem permissão para acessar este recurso']]); - } - - return view('indicators.students-schools-geolocation.index'); - } - } diff --git a/routes/web.php b/routes/web.php index d188f88de1..a87653e16e 100644 --- a/routes/web.php +++ b/routes/web.php @@ -132,9 +132,6 @@ Route::get('/dispensa-lote', 'BatchExemptionController@index')->middleware('can:modify:' . Process::BATCH_EXEMPTION)->name('batch-exemption.index'); Route::post('/dispensa-lote', 'BatchExemptionController@exempt')->middleware('can:modify:' . Process::BATCH_EXEMPTION)->name('batch-exemption.exempt'); - - Route::get('/panel-dimension-school-network', 'IndicatorsController@panelDimensionSchoolNetwork')->name('panel-dimension-school-network.index'); - Route::get('/students-schools-geolocation', 'IndicatorsController@studentsSchoolsGeolocation')->name('students-schools-geolocation.index'); }); Route::group(['namespace' => 'Exports', 'prefix' => 'exports'], function () { From c3e26eb558473d2c2884e3f120fac7fb8d41fbee Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 1 Jul 2021 17:17:30 -0300 Subject: [PATCH 141/219] =?UTF-8?q?Corrige=20bug=20que=20desconsiderava=20?= =?UTF-8?q?o=20filtro=20de=20usuarios=20ativos=20na=20na=20listagem=20de?= =?UTF-8?q?=20usu=C3=A1rios?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/include/pessoa/clsFuncionario.inc.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ieducar/intranet/include/pessoa/clsFuncionario.inc.php b/ieducar/intranet/include/pessoa/clsFuncionario.inc.php index 3c394fec4b..2c9b5a5739 100644 --- a/ieducar/intranet/include/pessoa/clsFuncionario.inc.php +++ b/ieducar/intranet/include/pessoa/clsFuncionario.inc.php @@ -197,7 +197,7 @@ public function listaFuncionarioUsuario( $filtros = ''; $filtro_pessoa = false; - $whereAnd = ' WHERE u.ativo = 1 AND '; + $whereAnd = ' WHERE true AND '; if (is_string($str_matricula) && $str_matricula != '') { $filtros .= "{$whereAnd} (f.matricula) LIKE ('%{$str_matricula}%')"; @@ -237,6 +237,7 @@ public function listaFuncionarioUsuario( if (is_numeric($int_ativo)) { $filtros .= "{$whereAnd} f.ativo = '$int_ativo'"; + $filtros .= "{$whereAnd} u.ativo = '$int_ativo'"; $whereAnd = ' AND '; } @@ -250,7 +251,7 @@ public function listaFuncionarioUsuario( LEFT JOIN pmieducar.usuario u ON (u.cod_usuario = f.ref_cod_pessoa_fj) LEFT JOIN pmieducar.tipo_usuario tu ON (u.ref_cod_tipo_usuario = tu.cod_tipo_usuario) LEFT JOIN pmieducar.escola_usuario eu ON (eu.ref_cod_usuario = u.cod_usuario) {$filtros}"); - +die($sql); $db->Consulta($sql); if ($countCampos > 1) { From 791b850193c08b42bde1f06b637ba35030d84ea8 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Thu, 1 Jul 2021 17:19:25 -0300 Subject: [PATCH 142/219] =?UTF-8?q?Remove=20c=C3=B3digo=20desnecess=C3=A1r?= =?UTF-8?q?io?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ieducar/intranet/include/pessoa/clsFuncionario.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/intranet/include/pessoa/clsFuncionario.inc.php b/ieducar/intranet/include/pessoa/clsFuncionario.inc.php index 2c9b5a5739..6aaebb23b3 100644 --- a/ieducar/intranet/include/pessoa/clsFuncionario.inc.php +++ b/ieducar/intranet/include/pessoa/clsFuncionario.inc.php @@ -251,7 +251,7 @@ public function listaFuncionarioUsuario( LEFT JOIN pmieducar.usuario u ON (u.cod_usuario = f.ref_cod_pessoa_fj) LEFT JOIN pmieducar.tipo_usuario tu ON (u.ref_cod_tipo_usuario = tu.cod_tipo_usuario) LEFT JOIN pmieducar.escola_usuario eu ON (eu.ref_cod_usuario = u.cod_usuario) {$filtros}"); -die($sql); + $db->Consulta($sql); if ($countCampos > 1) { From 20274fb6ceaf04950c98396d383ce45e381f65b5 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 2 Jul 2021 11:23:43 -0300 Subject: [PATCH 143/219] =?UTF-8?q?Melhora=20a=20descri=C3=A7=C3=A3o=20dos?= =?UTF-8?q?=20campos,=20padronizando=20com=20o=20i-diario?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...n_hint_default_password_expiration_period_settings.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php b/database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php index 43c5d4879b..5b9c8952de 100644 --- a/database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php +++ b/database/migrations/2021_06_25_153934_change_description_hint_default_password_expiration_period_settings.php @@ -10,10 +10,16 @@ public function up() Setting::query()->updateOrInsert([ 'key' => 'legacy.app.user_accounts.default_password_expiration_period', ], [ - 'description' => 'Quantidade de dias para expiração automática de senhas', + 'description' => 'Quantidade de dias para expirar automaticamente as senhas dos usuários ativos', 'hint' => 'A contagem será efetuada em dias corridos. Se o valor preenchido for zero (0) ou nenhum, não ocorrerá automatização', 'value' => 0 ]); + + Setting::query()->updateOrInsert([ + 'key' => 'legacy.app.user_accounts.max_days_without_login_to_disable_user', + ], [ + 'description' => 'Quantidade de dias permitidos sem acessar o sistema para inativação automática de usuário', + ]); } /** From cf4c0683db75dd015e1c240df9c44733574a7dc2 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 2 Jul 2021 11:24:13 -0300 Subject: [PATCH 144/219] =?UTF-8?q?Inje=C3=A7=C3=A3o=20de=20depend=C3=AAnc?= =?UTF-8?q?ia?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Listeners/AuthenticatedUser.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/Listeners/AuthenticatedUser.php b/app/Listeners/AuthenticatedUser.php index 6c811bf7c7..b1a2a7225c 100644 --- a/app/Listeners/AuthenticatedUser.php +++ b/app/Listeners/AuthenticatedUser.php @@ -10,6 +10,13 @@ class AuthenticatedUser { + private $disableUsersWithDaysGoneSinceLastAccessService; + + public function __construct(DisableUsersWithDaysGoneSinceLastAccessService $disableUsersWithDaysGoneSinceLastAccessService) + { + $this->disableUsersWithDaysGoneSinceLastAccessService = $disableUsersWithDaysGoneSinceLastAccessService; + } + /** * Handle the event. * @@ -40,7 +47,6 @@ public function handle(Authenticated $event) public function validateUserExpirationPeriod(Authenticatable $user) { - $disableUsersWithDaysGoneSinceLastAccessService = app(DisableUsersWithDaysGoneSinceLastAccessService::class); - $disableUsersWithDaysGoneSinceLastAccessService->execute($user); + $this->disableUsersWithDaysGoneSinceLastAccessService->execute($user); } } From 6c1cebbd954e291500dbd258bb23b336f8ec0d20 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 2 Jul 2021 11:24:55 -0300 Subject: [PATCH 145/219] =?UTF-8?q?Inje=C3=A7=C3=A3o=20de=20depend=C3=AAnc?= =?UTF-8?q?ias,=20e=20envia=20o=20password=20antigo=20para=20o=20service?= =?UTF-8?q?=20afim=20de=20validar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Services/ChangeUserPasswordService.php | 25 ++++++++++++++++------ 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/app/Services/ChangeUserPasswordService.php b/app/Services/ChangeUserPasswordService.php index 982d5f34d8..1a6d22b062 100644 --- a/app/Services/ChangeUserPasswordService.php +++ b/app/Services/ChangeUserPasswordService.php @@ -3,22 +3,33 @@ namespace App\Services; use App\Models\LegacyEmployee; -use Illuminate\Support\Facades\Hash; +use Carbon\Carbon; +use Illuminate\Contracts\Hashing\Hasher; class ChangeUserPasswordService { + private $validateUserPasswordService; + private $hash; + private $carbon; + + public function __construct(ValidateUserPasswordService $validateUserPasswordService, Hasher $hash, Carbon $carbon) + { + $this->validateUserPasswordService = $validateUserPasswordService; + $this->hash = $hash; + $this->carbon = $carbon; + } + public function execute(LegacyEmployee $legacyEmployee, string $password) { - $this->validate($password); - $legacyEmployee->setPasswordAttribute(Hash::make($password)); + $this->validate($password, $legacyEmployee->getPasswordAttribute()); + $legacyEmployee->setPasswordAttribute($this->hash->make($password)); $legacyEmployee->force_reset_password = false; - $legacyEmployee->data_troca_senha = now(); + $legacyEmployee->data_troca_senha = $this->carbon->nowWithSameTz(); $legacyEmployee->save(); } - public function validate(string $password) + public function validate(string $newPassword, string $oldPassword) { - $validateUserPasswordService = app(ValidateUserPasswordService::class); - $validateUserPasswordService->execute($password); + $this->validateUserPasswordService->execute($newPassword, $oldPassword); } } From 5071224f1a22504ac6d5d97901e504987e6a7bab Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 2 Jul 2021 11:25:19 -0300 Subject: [PATCH 146/219] Melhora a mensagem --- ieducar/intranet/meusdados.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ieducar/intranet/meusdados.php b/ieducar/intranet/meusdados.php index 80c42c2ec8..c502facec9 100644 --- a/ieducar/intranet/meusdados.php +++ b/ieducar/intranet/meusdados.php @@ -260,7 +260,7 @@ public function Editar() if ($senha_old != $this->senha) { if ($this->senha !== $this->senha_confirma) { - $this->mensagem = 'O campo de confirmação de senha deve ser igual ao campo da senha.'; + $this->mensagem = 'O campo de confirmação de senha deve ser igual ao campo de confirmação da senha.'; return false; } $legacyEmployee = LegacyEmployee::find($this->pessoa_logada); From 06faa388fe56ce224e0e599f69f8b4e760eb092a Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 2 Jul 2021 11:26:39 -0300 Subject: [PATCH 147/219] =?UTF-8?q?Faz=20override=20do=20metodo=20afim=20d?= =?UTF-8?q?e=20garantir=20l=C3=B3gica=20=C3=BAnica=20para=20troca=20de=20s?= =?UTF-8?q?enha=20de=20usuarios?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Auth/ResetPasswordController.php | 22 +++---------------- app/Http/Controllers/PasswordController.php | 8 +++++-- 2 files changed, 9 insertions(+), 21 deletions(-) diff --git a/app/Http/Controllers/Auth/ResetPasswordController.php b/app/Http/Controllers/Auth/ResetPasswordController.php index 1bf53aa8a4..57b1ccd3e3 100644 --- a/app/Http/Controllers/Auth/ResetPasswordController.php +++ b/app/Http/Controllers/Auth/ResetPasswordController.php @@ -4,10 +4,8 @@ use App\Http\Controllers\Controller; use App\Services\ChangeUserPasswordService; -use App\User; use Illuminate\Foundation\Auth\ResetsPasswords; use Illuminate\Http\Request; -use Illuminate\Support\Facades\Password; class ResetPasswordController extends Controller { @@ -78,23 +76,9 @@ protected function credentials(Request $request) ); } - public function reset(Request $request, User $user) + protected function setUserPassword($user, $password) { - $request->validate($this->rules(), $this->validationErrorMessages()); - - $response = $this->broker()->reset( - $this->credentials($request), - function ($user, $password) { - $this->resetPassword($user, $password); - } - ); - - if ($response == Password::PASSWORD_RESET) { - $employee = $user->employee; - $this->changeUserPasswordService->execute($employee, $request->get('password')); - return $this->sendResetResponse($request, $response); - } - - return $this->sendResetFailedResponse($request, $response); + $employee = $user->employee; + $this->changeUserPasswordService->execute($employee, $password); } } diff --git a/app/Http/Controllers/PasswordController.php b/app/Http/Controllers/PasswordController.php index c1eab1af32..364b235b1d 100644 --- a/app/Http/Controllers/PasswordController.php +++ b/app/Http/Controllers/PasswordController.php @@ -36,8 +36,6 @@ function ($user, $password) { ); if ($response == Password::PASSWORD_RESET) { - $employee = $user->employee; - $this->changeUserPasswordService->execute($employee, $request->get('password')); return $this->sendResetResponse($request, $response); } @@ -81,4 +79,10 @@ protected function credentials(Request $request) 'token' ); } + + protected function setUserPassword($user, $password) + { + $employee = $user->employee; + $this->changeUserPasswordService->execute($employee, $password); + } } From 9f9a0240ba2f769e3d852c0384abea7d63ec207b Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 2 Jul 2021 11:27:12 -0300 Subject: [PATCH 148/219] =?UTF-8?q?Valida=20se=20a=20nova=20senha=20=C3=A9?= =?UTF-8?q?=20igual=20=C3=A0=20senha=20atual?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Services/ValidateUserPasswordService.php | 41 +++++++++++++++++--- 1 file changed, 36 insertions(+), 5 deletions(-) diff --git a/app/Services/ValidateUserPasswordService.php b/app/Services/ValidateUserPasswordService.php index 2d3a9f412a..d1ddf6d2a5 100644 --- a/app/Services/ValidateUserPasswordService.php +++ b/app/Services/ValidateUserPasswordService.php @@ -2,22 +2,53 @@ namespace App\Services; +use Illuminate\Contracts\Hashing\Hasher; use Illuminate\Validation\Rules\Password; +use Illuminate\Validation\ValidationException; class ValidateUserPasswordService { - public function execute(string $password) + const MIN_LENGTH_PASSWORD = 8; + + private $hash; + + public function __construct(Hasher $hash) + { + $this->hash = $hash; + } + + public function execute(string $newPassword, string $oldPassword) { - $this->validate($password); + try { + $this->validate($newPassword, $oldPassword); + } catch (ValidationException $ex){ + + throw ValidationException::withMessages([ + 'password' => [ + 'A senha deve conter pelo menos ' . + self::MIN_LENGTH_PASSWORD . + ' caracteres e uma combinação de letras maiúsculas e minúsculas, números e símbolos (!@#$%*).' + ], + 'similar' => [$ex->validator->errors()->first()] + ]); + } catch (\Exception $ex){ + throw ValidationException::withMessages([ + 'password' => $ex->getMessage() + ]); + } } - public function validate(string $password) + public function validate(string $newPassword, string $oldPassword) { + if ($this->hash->check($newPassword, $oldPassword)){ + throw new \Exception('A senha informada foi usada recentemente. Por favor, escolha outra.'); + } + validator( - ['password' => $password], + ['password' => $newPassword], [ 'password' => [ - Password::min(8) + Password::min(self::MIN_LENGTH_PASSWORD) ->mixedCase() ->letters() ->numbers() From 7d5f0233bb497ced2e2ef46e266944943911e83d Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 2 Jul 2021 11:27:46 -0300 Subject: [PATCH 149/219] =?UTF-8?q?Utiliza=20a=20propriedade=20correta=20n?= =?UTF-8?q?a=20valida=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/User.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/User.php b/app/User.php index ee9424fa7c..70947a772e 100644 --- a/app/User.php +++ b/app/User.php @@ -289,7 +289,7 @@ public function getCreatedAtCustom(): ?Carbon public function getEnabledUserDate(): ?Carbon { - if ($this->employee()) { + if ($this->employee) { return $this->employee->getEnabledUserDate(); } return null; From 562430a642565e2c48e10dceb2e5e830b9f28159 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 2 Jul 2021 11:29:30 -0300 Subject: [PATCH 150/219] =?UTF-8?q?Remove=20espa=C3=A7o=20desnecess=C3=A1r?= =?UTF-8?q?io?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Services/ValidateUserPasswordService.php | 1 - 1 file changed, 1 deletion(-) diff --git a/app/Services/ValidateUserPasswordService.php b/app/Services/ValidateUserPasswordService.php index d1ddf6d2a5..6a31dcb985 100644 --- a/app/Services/ValidateUserPasswordService.php +++ b/app/Services/ValidateUserPasswordService.php @@ -22,7 +22,6 @@ public function execute(string $newPassword, string $oldPassword) try { $this->validate($newPassword, $oldPassword); } catch (ValidationException $ex){ - throw ValidationException::withMessages([ 'password' => [ 'A senha deve conter pelo menos ' . From 83d5f51f6c63f54f6c45edc3408ab3b7d18e9ab6 Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 2 Jul 2021 11:30:41 -0300 Subject: [PATCH 151/219] =?UTF-8?q?Remove=20c=C3=B3digo=20desnecess=C3=A1r?= =?UTF-8?q?io?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Services/ValidateUserPasswordService.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/Services/ValidateUserPasswordService.php b/app/Services/ValidateUserPasswordService.php index 6a31dcb985..7eb930d6d2 100644 --- a/app/Services/ValidateUserPasswordService.php +++ b/app/Services/ValidateUserPasswordService.php @@ -27,8 +27,7 @@ public function execute(string $newPassword, string $oldPassword) 'A senha deve conter pelo menos ' . self::MIN_LENGTH_PASSWORD . ' caracteres e uma combinação de letras maiúsculas e minúsculas, números e símbolos (!@#$%*).' - ], - 'similar' => [$ex->validator->errors()->first()] + ] ]); } catch (\Exception $ex){ throw ValidationException::withMessages([ From 44d3b0a57fc6f76a8eabbfc6b6d0e7052a892ecd Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 2 Jul 2021 11:31:28 -0300 Subject: [PATCH 152/219] PSR-12 --- app/Services/ValidateUserPasswordService.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Services/ValidateUserPasswordService.php b/app/Services/ValidateUserPasswordService.php index 7eb930d6d2..260137959f 100644 --- a/app/Services/ValidateUserPasswordService.php +++ b/app/Services/ValidateUserPasswordService.php @@ -8,7 +8,7 @@ class ValidateUserPasswordService { - const MIN_LENGTH_PASSWORD = 8; + public const MIN_LENGTH_PASSWORD = 8; private $hash; From 6e221bd12789c86eed7282577781296883c8cfbd Mon Sep 17 00:00:00 2001 From: Rodrigo Cabral Date: Fri, 2 Jul 2021 15:59:20 -0300 Subject: [PATCH 153/219] Melhoria --- resources/views/layout/breadcrumb.blade.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/views/layout/breadcrumb.blade.php b/resources/views/layout/breadcrumb.blade.php index 946cd1c925..4de0b48ce7 100644 --- a/resources/views/layout/breadcrumb.blade.php +++ b/resources/views/layout/breadcrumb.blade.php @@ -1,6 +1,6 @@ -@if ($breadcrumb !== null && $breadcrumb->getLegacy()) +@if ($breadcrumb ?? '' && $breadcrumb->getLegacy()) {!! $breadcrumb->getLegacy() !!} -@elseif ($breadcrumb !== null && $breadcrumb->currentPage()) +@elseif ($breadcrumb ?? '' && $breadcrumb->currentPage())