From 67610c97fa9bf2671a1491c5aa0539e232e0ba79 Mon Sep 17 00:00:00 2001 From: Eriksen Costa Date: Mon, 13 Sep 2010 21:11:17 -0300 Subject: [PATCH] Adicionado campo {{{zona_localizacao}}} no cadastro de pessoa física: --- ieducar/intranet/atendidos_cad.php | 25 ++++++++++++++++++++----- ieducar/intranet/atendidos_det.php | 15 ++++++++++++--- ieducar/intranet/educar_aluno_cad.php | 34 ++++++++++++++++++++++++++++++---- ieducar/intranet/educar_aluno_cad_xml.php | 14 +++++++++++--- ieducar/intranet/educar_aluno_det.php | 10 ++++++++++ ieducar/intranet/educar_pesquisa_cep_log_bairro.php | 24 +++++++++++++----------- ieducar/intranet/include/pessoa/clsEndereco.inc.php | 35 +++++++++++++++++++---------------- ieducar/intranet/include/pessoa/clsEnderecoExterno.inc.php | 27 ++++++++++++++++++++++----- ieducar/intranet/include/pessoa/clsEnderecoPessoa.inc.php | 13 +++++++++++-- ieducar/intranet/include/pessoa/clsPessoaFj.inc.php | 31 ++++++++++++++++--------------- ieducar/intranet/include/public/clsPublicBairro.inc.php | 54 ++++++++++++++++++++++++++++++++++++++---------------- ieducar/intranet/public_bairro_cad.php | 24 ++++++++++++++++++------ ieducar/intranet/public_bairro_det.php | 14 ++++++-------- ieducar/intranet/public_bairro_lst.php | 25 ++++++++++++++++++++----- ieducar/intranet/scripts/padrao.js | 18 +++++++++++++++--- ieducar/lib/App/Model/ZonaLocalizacao.php | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ieducar/misc/database/deltas/25_adiciona_campo_zona_localizacao_tabelas_enderecamento.sql | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ ieducar/misc/database/ieducar.sql | 5 ++++- 18 files changed, 376 insertions(+), 103 deletions(-) create mode 100644 ieducar/lib/App/Model/ZonaLocalizacao.php create mode 100644 ieducar/misc/database/deltas/25_adiciona_campo_zona_localizacao_tabelas_enderecamento.sql diff --git a/ieducar/intranet/atendidos_cad.php b/ieducar/intranet/atendidos_cad.php index 859f889..97e59d6 100755 --- a/ieducar/intranet/atendidos_cad.php +++ b/ieducar/intranet/atendidos_cad.php @@ -32,6 +32,8 @@ require_once 'include/clsBase.inc.php'; require_once 'include/clsBanco.inc.php'; require_once 'include/clsCadastro.inc.php'; +require_once 'App/Model/ZonaLocalizacao.php'; + /** * clsIndex class. * @@ -91,6 +93,7 @@ class indice extends clsCadastro var $andar; var $numero; var $retorno; + var $zona_localizacao; var $caminho_det; var $caminho_lst; @@ -137,14 +140,14 @@ class indice extends clsCadastro $this->http, $this->tipo_pessoa, $this->sexo, $this->cidade, $this->bairro, $this->logradouro, $this->cep, $this->idlog, $this->idbai, $this->idtlog, $this->sigla_uf, $this->complemento, $this->numero, - $this->bloco, $this->apartamento, $this->andar + $this->bloco, $this->apartamento, $this->andar, $this->zona_localizacao ) = $objPessoa->queryRapida( $this->cod_pessoa_fj, 'nome', 'cpf', 'data_nasc', 'ddd_1', 'fone_1', 'ddd_2', 'fone_2', 'ddd_mov', 'fone_mov', 'ddd_fax', 'fone_fax', 'email', 'url', 'tipo', 'sexo', 'cidade', 'bairro', 'logradouro', 'cep', 'idlog', 'idbai', 'idtlog', 'sigla_uf', 'complemento', 'numero', 'bloco', 'apartamento', - 'andar' + 'andar', 'zona_localizacao' ); $this->cep = int2Cep($this->cep); @@ -239,6 +242,8 @@ class indice extends clsCadastro $this->campoOculto('ref_idtlog', $this->idtlog); $this->campoOculto('id_cidade', $this->cidade); + $zona = App_Model_ZonaLocalizacao::getInstance(); + if ($this->idlog && $this->idbai && $this->cep && $this->cod_pessoa_fj) { $this->campoCep('cep_', 'CEP', $this->cep, true, '-', " ');\">", @@ -303,7 +308,10 @@ class indice extends clsCadastro } else { $this->campoCep('cep_', 'CEP', $this->cep, TRUE, '-', - " ');\">", false/*$disabled*/); + " ');\">", + false + ); $this->campoLista('idtlog', 'Tipo Logradouro', $listaTLog, $this->idtlog, FALSE, FALSE, FALSE, FALSE, FALSE); @@ -333,6 +341,11 @@ class indice extends clsCadastro FALSE, FALSE, FALSE, FALSE, FALSE); } + $this->campoLista('zona_localizacao', 'Zona Localização', $zona->getEnums(), + $this->zona_localizacao, FALSE, FALSE, FALSE, FALSE, + ($this->idbai ? TRUE : FALSE) + ); + $this->campoTexto('ddd_telefone_1', 'DDD Telefone 1', $this->ddd_telefone_1, '3', '2', FALSE); @@ -450,7 +463,8 @@ class indice extends clsCadastro $objEnderecoExterno2 = new clsEnderecoExterno($idpes, '1', $this->idtlog, $this->logradouro, $this->numero, $this->letra, $this->complemento, $this->bairro, $this->cep_, $this->cidade, $this->sigla_uf, FALSE, - $this->bloco, $this->apartamento, $this->andar); + $this->bloco, $this->apartamento, $this->andar, FALSE, FALSE, + $this->zona_localizacao); if ($objEnderecoExterno->detalhe()) { $objEnderecoExterno2->edita(); @@ -557,7 +571,8 @@ class indice extends clsCadastro $objEnderecoExterno2 = new clsEnderecoExterno($this->cod_pessoa_fj, '1', $this->idtlog, $this->logradouro, $this->numero, $this->letra, $this->complemento, $this->bairro, $this->cep_, $this->cidade, - $this->sigla_uf, FALSE, $this->bloco, $this->apartamento, $this->andar); + $this->sigla_uf, FALSE, $this->bloco, $this->apartamento, $this->andar, + FALSE, FALSE, $this->zona_localizacao); if ($objEnderecoExterno->detalhe()) { $objEnderecoExterno2->edita(); diff --git a/ieducar/intranet/atendidos_det.php b/ieducar/intranet/atendidos_det.php index e358cde..99cb0f0 100755 --- a/ieducar/intranet/atendidos_det.php +++ b/ieducar/intranet/atendidos_det.php @@ -32,6 +32,8 @@ require_once 'include/clsBase.inc.php'; require_once 'include/clsDetalhe.inc.php'; require_once 'include/clsBanco.inc.php'; +require_once 'App/Model/ZonaLocalizacao.php'; + /** * clsIndex class. * @@ -79,7 +81,7 @@ class indice extends clsDetalhe $cod_pessoa, 'idpes', 'complemento','nome', 'cpf', 'data_nasc', 'logradouro', 'idtlog', 'numero', 'apartamento','cidade','sigla_uf', 'cep', 'ddd_1', 'fone_1', 'ddd_2', 'fone_2', 'ddd_mov', 'fone_mov', - 'ddd_fax', 'fone_fax', 'email', 'url', 'tipo', 'sexo' + 'ddd_fax', 'fone_fax', 'email', 'url', 'tipo', 'sexo', 'zona_localizacao' ); $this->addDetalhe(array('Nome', $detalhe['nome'])); @@ -108,11 +110,18 @@ class indice extends clsDetalhe } if ($detalhe['cidade']) { - $this->addDetalhe(array('Cidade', strtolower($detalhe['cidade']))); + $this->addDetalhe(array('Cidade', $detalhe['cidade'])); } if ($detalhe['sigla_uf']) { - $this->addDetalhe(array('Estado', strtolower($detalhe['sigla_uf']))); + $this->addDetalhe(array('Estado', $detalhe['sigla_uf'])); + } + + $zona = App_Model_ZonaLocalizacao::getInstance(); + if ($detalhe['zona_localizacao']) { + $this->addDetalhe(array( + 'Zona Localização', $zona->getValue($detalhe['zona_localizacao']) + )); } if ($detalhe['cep']) { diff --git a/ieducar/intranet/educar_aluno_cad.php b/ieducar/intranet/educar_aluno_cad.php index e63820e..0af819d 100644 --- a/ieducar/intranet/educar_aluno_cad.php +++ b/ieducar/intranet/educar_aluno_cad.php @@ -33,6 +33,8 @@ require_once 'include/clsCadastro.inc.php'; require_once 'include/clsBanco.inc.php'; require_once 'include/pmieducar/geral.inc.php'; +require_once 'App/Model/ZonaLocalizacao.php'; + /** * clsIndexBase class. * @@ -388,6 +390,8 @@ class indice extends clsCadastro $this->cep_ = int2CEP($this->id_cep); } } + + $this->zona_localizacao = $obj_endereco_det['zona_localizacao']; } } @@ -588,8 +592,19 @@ class indice extends clsCadastro $this->campoOculto('isEnderecoExterno', $this->isEnderecoExterno); - $this->campoCep('cep_', 'CEP', $this->cep_, TRUE, '-', - "');\">", $disabled); + $urlPesquisaCep = 'educar_pesquisa_cep_log_bairro.php?' . + 'campo1=nm_bairro&campo2=id_bairro&campo3=id_cep&campo4=nm_logradouro&' . + 'campo5=id_logradouro&campo6=ref_sigla_uf&campo7=cidade&' . + 'campo8=ref_idtlog_&campo9=isEnderecoExterno&campo10=cep_&' . + 'campo11=ref_sigla_uf_&campo12=ref_idtlog&campo13=id_cidade&' . + 'campo14=zona_localizacao'; + + $urlPesquisaCep = sprintf( + "');\">", + $urlPesquisaCep + ); + + $this->campoCep('cep_', 'CEP', $this->cep_, TRUE, '-', $urlPesquisaCep, $disabled); $this->campoTexto('cidade', 'Cidade', $this->cidade, 30, 255, TRUE, FALSE, TRUE, '', '', '', '', $disabled); @@ -625,6 +640,10 @@ class indice extends clsCadastro $this->campoTexto('nm_logradouro', 'Logradouro', $this->nm_logradouro, 30, 255, TRUE, FALSE, FALSE, '', '', '', '', $disabled); + $zl = App_Model_ZonaLocalizacao::getInstance(); + $this->campoLista('zona_localizacao', 'Zona Localização', $zl->getEnums(), + $this->zona_localizacao, FALSE, FALSE, FALSE, FALSE, $disabled); + $this->campoNumero('numero', 'Número', $this->numero, 4, 6, FALSE, '', '', FALSE, FALSE, TRUE); $this->campoTexto('letra', '   Letra', $this->letra, 4, 1, FALSE); @@ -635,6 +654,11 @@ class indice extends clsCadastro $this->campoNumero('apartamento', '   Apartamento', $this->apartamento, 4, 6, FALSE); + $this->campoLista('nacionalidade', 'Nacionalidade', $lista_nacionalidade, + $this->nacionalidade, 'tmpObj = document.getElementById("pais_origem"); if(this.value != 1) { tmpObj.disabled = false; } else { tmpObj.selectedIndex = 27; tmpObj.disabled = true; }', + TRUE, '', '', '', FALSE); + + $lista_mun_nasc = array('NULL' => 'Selecione a cidade'); $obj_mun_nasc = new clsMunicipio($this->idmun_nascimento); @@ -884,7 +908,9 @@ class indice extends clsCadastro $this->campoOculto('isEnderecoExterno', $this->isEnderecoExterno); $this->campoCep('cep_', 'CEP', $this->cep_, TRUE, '-', - "');\">", $disabled); + //"');\">", + $urlPesquisaCep, + $disabled); $this->campoTexto('cidade', 'Cidade', $this->cidade, 30, 255, TRUE, FALSE, TRUE, '', '', '', '', $disabled); @@ -1418,7 +1444,7 @@ class indice extends clsCadastro $this->ref_idtlog, $this->nm_logradouro, $this->numero, $this->letra, $this->complemento, $this->nm_bairro, $this->cep_, $this->cidade, $this->ref_sigla_uf_, NULL, $this->bloco, $this->apartamento, $this->andar, - NULL, $this->pessoa_logada); + NULL, $this->pessoa_logada, $this->zona_localizacao); if ($obj_endereco->existe()) { if (!$obj_endereco->edita()) { diff --git a/ieducar/intranet/educar_aluno_cad_xml.php b/ieducar/intranet/educar_aluno_cad_xml.php index 1eb4e1f..944d960 100644 --- a/ieducar/intranet/educar_aluno_cad_xml.php +++ b/ieducar/intranet/educar_aluno_cad_xml.php @@ -137,7 +137,7 @@ if ($_GET['cpf'] || $_GET['idpes']) { $nacionalidade = $det_fisica['nacionalidade']; $idmun_nascimento = $det_fisica['idmun_nascimento']->idmun; - $xml .= sprintf('%s', $ddd_fone1) . PHP_EOL; + $xml .= sprintf('%s', $ddd_fone_1) . PHP_EOL; $xml .= sprintf('%s', $fone_1) . PHP_EOL; $xml .= sprintf('%s', $ddd_mov) . PHP_EOL; $xml .= sprintf('%s', $fone_mov) . PHP_EOL; @@ -171,6 +171,8 @@ if ($_GET['cpf'] || $_GET['idpes']) { $obj_endereco = new clsPessoaEndereco($ref_idpes); + $zona = NULL; + if ($obj_endereco_det = $obj_endereco->detalhe()) { $isEnderecoExterno = 0; @@ -184,8 +186,9 @@ if ($_GET['cpf'] || $_GET['idpes']) { $apartamento = $obj_endereco_det['apartamento']; $bloco = $obj_endereco_det['bloco']; $ref_idtlog = $obj_endereco_det['idtlog']; - $nm_bairro = $obj_endereco_det['bairro']; - $nm_logradouro = $obj_endereco_det['logradouro']; + $nm_bairro = $obj_endereco_det['bairro']; + $nm_logradouro = $obj_endereco_det['logradouro']; + $zona = $obj_endereco_det['zona_localizacao']; $cep_ = int2CEP($id_cep); @@ -221,6 +224,7 @@ if ($_GET['cpf'] || $_GET['idpes']) { $andar = $obj_endereco_det['andar']; $apartamento = $obj_endereco_det['apartamento']; $bloco = $obj_endereco_det['bloco']; + $zona = $obj_endereco_det['zona_localizacao']; $ref_idtlog = $idtlog = $obj_endereco_det['idtlog']->idtlog; $ref_sigla_uf = $ref_sigla_uf_ = $obj_endereco_det['sigla_uf']->sigla_uf; @@ -243,6 +247,10 @@ if ($_GET['cpf'] || $_GET['idpes']) { $xml .= sprintf('%s', $cep_) . PHP_EOL; } } + + if (isset($zona)) { + $xml .= sprintf('%s', $zona) . PHP_EOL; + } } } diff --git a/ieducar/intranet/educar_aluno_det.php b/ieducar/intranet/educar_aluno_det.php index 15a1950..2c89294 100644 --- a/ieducar/intranet/educar_aluno_det.php +++ b/ieducar/intranet/educar_aluno_det.php @@ -33,6 +33,8 @@ require_once 'include/clsDetalhe.inc.php'; require_once 'include/clsBanco.inc.php'; require_once 'include/pmieducar/geral.inc.php'; +require_once 'App/Model/ZonaLocalizacao.php'; + /** * clsIndexBase class. * @@ -327,6 +329,14 @@ class indice extends clsDetalhe } } + // Adiciona a informação de zona de localização junto ao bairro do + // endereço. + $zona = App_Model_ZonaLocalizacao::getInstance(); + $registro['nm_bairro'] = sprintf( + '%s (Zona %s)', + $registro['nm_bairro'], $zona->getValue($obj_endereco_det['zona_localizacao']) + ); + if ($registro['cod_aluno']) { $this->addDetalhe(array('Código Aluno', $registro['cod_aluno'])); } diff --git a/ieducar/intranet/educar_pesquisa_cep_log_bairro.php b/ieducar/intranet/educar_pesquisa_cep_log_bairro.php index 0d3b92d..29bb706 100644 --- a/ieducar/intranet/educar_pesquisa_cep_log_bairro.php +++ b/ieducar/intranet/educar_pesquisa_cep_log_bairro.php @@ -64,7 +64,7 @@ class clsIndex extends clsBase */ class miolo1 extends clsListagem { - var $funcao_js = 'cv_libera_campos(\'cep_\', \'ref_sigla_uf_\', \'cidade\', \'nm_bairro\', \'ref_idtlog\', \'nm_logradouro\', \'isEnderecoExterno\')'; + var $funcao_js = 'cv_libera_campos(\'cep_\', \'ref_sigla_uf_\', \'cidade\', \'nm_bairro\', \'ref_idtlog\', \'nm_logradouro\', \'isEnderecoExterno\', \'zona_localizacao\')'; function Gerar() { @@ -84,14 +84,15 @@ class miolo1 extends clsListagem $_SESSION['campo11'] = $_GET['campo11'] ? $_GET['campo11'] : $_SESSION['campo11']; $_SESSION['campo12'] = $_GET['campo12'] ? $_GET['campo12'] : $_SESSION['campo12']; $_SESSION['campo13'] = $_GET['campo13'] ? $_GET['campo13'] : $_SESSION['campo13']; + $_SESSION['campo14'] = $_GET['campo14'] ? $_GET['campo14'] : $_SESSION['campo14']; $this->nome = 'form1'; $this->funcao_js = sprintf( - 'cv_libera_campos(\'%s\', \'%s\', \'%s\', \'%s\', \'%s\', \'%s\', \'%s\')', + 'cv_libera_campos(\'%s\', \'%s\', \'%s\', \'%s\', \'%s\', \'%s\', \'%s\', \'%s\')', $_SESSION['campo10'], $_SESSION['campo11'], $_SESSION['campo7'], $_SESSION['campo1'], $_SESSION['campo12'], $_SESSION['campo4'], - $_SESSION['campo9'] + $_SESSION['campo9'], $_SESSION['campo14'] ); $this->titulo = 'Endereço'; @@ -126,7 +127,7 @@ class miolo1 extends clsListagem $select = ' SELECT - c.idlog, c.cep, c.idbai, u.sigla_uf, m.nome, t.idtlog,m.idmun + c.idlog, c.cep, c.idbai, u.sigla_uf, m.nome, t.idtlog, m.idmun, b.zona_localizacao FROM urbano.cep_logradouro_bairro c, public.bairro b, public.logradouro l, public.municipio m, public.uf u, urbano.tipo_logradouro t @@ -191,10 +192,10 @@ class miolo1 extends clsListagem $db->Consulta($select); while ($db->ProximoRegistro()) { - list($idlog, $cep, $idbai, $uf, $cidade, $descricao,$id_mun) = - array('','','','','','',''); + list($idlog, $cep, $idbai, $uf, $cidade, $descricao,$id_mun, $zona) = + array('', '', '', '', '', '', '', ''); - list($idlog, $cep, $idbai, $uf, $cidade, $descricao, $id_mun) = $db->Tupla(); + list($idlog, $cep, $idbai, $uf, $cidade, $descricao, $id_mun, $zona) = $db->Tupla(); $logradouro = new clsLogradouro($idlog); $detalhe_logradouro = $logradouro->detalhe(); @@ -223,7 +224,7 @@ class miolo1 extends clsListagem } else { $url = sprintf( - '%%s', + '%%s', $_SESSION['campo1'], $detalhe_bairro["nome"], $_SESSION['campo2'], $detalhe_bairro["idbai"], $_SESSION['campo3'], $cep, $_SESSION['campo4'], $detalhe_logradouro["nome"], @@ -231,13 +232,14 @@ class miolo1 extends clsListagem $_SESSION['campo6'], $uf, $_SESSION['campo7'], $cidade, $_SESSION['campo8'], $descricao, $_SESSION['campo9'], $s_end, $_SESSION['campo10'], $cep2, $_SESSION['campo11'], $uf, - $_SESSION['campo12'], $_SESSION['campo13'], $id_mun + $_SESSION['campo12'], $_SESSION['campo13'], $id_mun, + $_SESSION['campo14'], $zona ); $this->addLinhas(array( - sprintf($url, $detalhe_bairro["nome"]), + sprintf($url, $detalhe_bairro['nome']), sprintf($url, $cep2), - sprintf($url, $detalhe_logradouro["nome"]), + sprintf($url, $detalhe_logradouro['nome']), sprintf($url, $uf), sprintf($url, $cidade) )); diff --git a/ieducar/intranet/include/pessoa/clsEndereco.inc.php b/ieducar/intranet/include/pessoa/clsEndereco.inc.php index ff3e3e1..65bfca5 100755 --- a/ieducar/intranet/include/pessoa/clsEndereco.inc.php +++ b/ieducar/intranet/include/pessoa/clsEndereco.inc.php @@ -64,6 +64,7 @@ class clsEndereco var $bloco; var $apartamento; var $andar; + var $zona_localizacao; /** * Construtor. @@ -86,7 +87,8 @@ class clsEndereco $sql = sprintf('SELECT cep, idlog, numero, letra, complemento, idbai, bloco, andar, - apartamento, logradouro, bairro, cidade, sigla_uf, idtlog + apartamento, logradouro, bairro, cidade, sigla_uf, idtlog, + zona_localizacao FROM cadastro.v_endereco WHERE @@ -95,21 +97,22 @@ class clsEndereco $db->Consulta($sql); if ($db->ProximoRegistro()) { - $tupla = $db->Tupla(); - $this->bairro = $tupla['bairro']; - $this->idbai = $tupla['idbai']; - $this->cidade = $tupla['cidade']; - $this->sigla_uf = $tupla['sigla_uf']; - $this->complemento = $tupla['complemento']; - $this->bloco = $tupla['bloco']; - $this->apartamento = $tupla['apartamento']; - $this->andar = $tupla['andar']; - $this->letra = $tupla['letra']; - $this->numero = $tupla['numero']; - $this->logradouro = $tupla['logradouro']; - $this->idlog = $tupla['idlog']; - $this->idtlog = $tupla['idtlog']; - $this->cep = $tupla['cep']; + $tupla = $db->Tupla(); + $this->bairro = $tupla['bairro']; + $this->idbai = $tupla['idbai']; + $this->cidade = $tupla['cidade']; + $this->sigla_uf = $tupla['sigla_uf']; + $this->complemento = $tupla['complemento']; + $this->bloco = $tupla['bloco']; + $this->apartamento = $tupla['apartamento']; + $this->andar = $tupla['andar']; + $this->letra = $tupla['letra']; + $this->numero = $tupla['numero']; + $this->logradouro = $tupla['logradouro']; + $this->idlog = $tupla['idlog']; + $this->idtlog = $tupla['idtlog']; + $this->cep = $tupla['cep']; + $this->zona_localizacao = $tupla['zona_localizacao']; return $tupla; } diff --git a/ieducar/intranet/include/pessoa/clsEnderecoExterno.inc.php b/ieducar/intranet/include/pessoa/clsEnderecoExterno.inc.php index a3d0b09..60d75b7 100755 --- a/ieducar/intranet/include/pessoa/clsEnderecoExterno.inc.php +++ b/ieducar/intranet/include/pessoa/clsEnderecoExterno.inc.php @@ -60,6 +60,7 @@ class clsEnderecoExterno var $bloco; var $apartamento; var $andar; + var $zona_localizacao; var $tabela; var $schema = 'cadastro'; @@ -71,7 +72,7 @@ class clsEnderecoExterno $logradouro = FALSE, $numero = FALSE, $letra = FALSE, $complemento = FALSE, $bairro = FALSE, $cep = FALSE, $cidade = FALSE, $sigla_uf = FALSE, $reside_desde = FALSE, $bloco = FALSE, $apartamento = FALSE, $andar = FALSE, - $idpes_cad = FALSE, $idpes_rev = FALSE) + $idpes_cad = FALSE, $idpes_rev = FALSE, $zona_localizacao = 1) { $idtlog = urldecode($idtlog); @@ -106,6 +107,7 @@ class clsEnderecoExterno $this->bloco = $bloco; $this->apartamento = $apartamento; $this->andar = $andar; + $this->zona_localizacao = $zona_localizacao; $this->tabela = 'endereco_externo'; } @@ -171,6 +173,11 @@ class clsEnderecoExterno $values .= ", '{$this->andar}'"; } + if (is_numeric($this->zona_localizacao)) { + $campos .= ', zona_localizacao'; + $values .= ", '{$this->zona_localizacao}'"; + } + $sql = sprintf( 'INSERT INTO %s.%s (idpes, tipo, idtlog, logradouro, cidade, sigla_uf, ' . 'origem_gravacao, idsis_cad, data_cad, operacao, idpes_cad %s) ' . @@ -267,6 +274,10 @@ class clsEnderecoExterno $set .= ", andar = NULL"; } + if (is_numeric($this->zona_localizacao)) { + $set .= ", zona_localizacao = '{$this->zona_localizacao}'"; + } + if (is_numeric($this->idpes_rev)) { $set .= ", idpes_rev = '$this->idpes_rev'"; } @@ -313,7 +324,7 @@ class clsEnderecoExterno $str_bairro = FALSE, $int_cep = FALSE, $str_cidade = FALSE, $sigla_uf = FALSE, $str_reside_desde = FALSE, $str_bloco = FALSE, $int_apartamento = FALSE, $int_andar = FALSE, $int_limite_ini = 0, $int_limite_qtd = 20, - $str_orderBy = FALSE, $int_idpes = FALSE + $str_orderBy = FALSE, $int_idpes = FALSE, $zona_localizacao = NULL ) { $whereAnd = ' WHERE '; @@ -388,6 +399,11 @@ class clsEnderecoExterno $whereAnd = ' AND '; } + if (is_numeric($zona_localizacao)) { + $where .= "{$whereAnd}zona_localizacao = '$zona_localizacao'"; + $whereAnd = ' AND '; + } + if ($str_orderBy) { $orderBy = "ORDER BY $str_orderBy"; } @@ -406,8 +422,8 @@ class clsEnderecoExterno $sql = sprintf( 'SELECT idpes, tipo, idtlog, logradouro, numero, letra, complemento, ' . - 'bairro, cep, cidade, sigla_uf, reside_desde, bloco, apartamento, andar ' . - 'FROM %s.%s %s %s %s', + 'bairro, cep, cidade, sigla_uf, reside_desde, bloco, apartamento, ' . + 'andar, zona_localizacao FROM %s.%s %s %s %s', $this->schema, $this->tabela, $where, $orderBy, $limit ); @@ -444,7 +460,7 @@ class clsEnderecoExterno $sql = sprintf( 'SELECT idpes, tipo, idtlog, logradouro, numero, letra, complemento, ' . 'bairro, cep, cidade, sigla_uf, reside_desde, bloco, apartamento, '. - 'andar FROM %s.%s WHERE idpes = %d', + 'andar, zona_localizacao FROM %s.%s WHERE idpes = %d', $this->schema, $this->tabela, $this->idpes ); @@ -467,6 +483,7 @@ class clsEnderecoExterno $this->bloco = $tupla['bloco']; $this->apartamento = $tupla['apartamento']; $this->andar = $tupla['andar']; + $this->zona_localizacao = $tupla['zona_localizacao']; $tupla['idpes'] = new clsPessoa_($tupla['idpes']); $tupla['idtlog'] = new clsTipoLogradouro($tupla['idtlog']); diff --git a/ieducar/intranet/include/pessoa/clsEnderecoPessoa.inc.php b/ieducar/intranet/include/pessoa/clsEnderecoPessoa.inc.php index e867c20..e3519f6 100755 --- a/ieducar/intranet/include/pessoa/clsEnderecoPessoa.inc.php +++ b/ieducar/intranet/include/pessoa/clsEnderecoPessoa.inc.php @@ -308,7 +308,11 @@ class clsPessoaEndereco $tupla = $db->Tupla(); $tupla['cep'] = new clsCepLogradouro($tupla['cep'], $tupla['idlog']); $tupla['idlog'] = new clsCepLogradouro($tupla['cep'], $tupla['idlog']); - $tupla['idbai'] = new clsBairro($tupla['idbai']); + $tupla['idbai'] = new clsPublicBairro(NULL, NULL, $tupla['idbai']); + + $bairro = $tupla['idbai']->detalhe(); + + $tupla['zona_localizacao'] = $bairro['zona_localizacao']; $tupla['total'] = $total; @@ -343,7 +347,12 @@ class clsPessoaEndereco $tupla['cep'] = new clsCepLogradouro($cep, $tupla['idlog']); $tupla['idlog'] = new clsCepLogradouro($cep, $tupla['idlog']); - $tupla['idbai'] = new clsBairro($tupla['idbai']); + + $tupla['idbai'] = new clsPublicBairro(NULL, NULL, $tupla['idbai']); + + $bairro = $tupla['idbai']->detalhe(); + + $tupla['zona_localizacao'] = $bairro['zona_localizacao']; return $tupla; } diff --git a/ieducar/intranet/include/pessoa/clsPessoaFj.inc.php b/ieducar/intranet/include/pessoa/clsPessoaFj.inc.php index d005acb..2a3b3ed 100755 --- a/ieducar/intranet/include/pessoa/clsPessoaFj.inc.php +++ b/ieducar/intranet/include/pessoa/clsPessoaFj.inc.php @@ -275,21 +275,22 @@ class clsPessoaFj $detalheEndereco = $objEndereco->detalhe(); if ($detalheEndereco) { - $this->bairro = $detalheEndereco['bairro']; - $this->logradouro = $detalheEndereco['logradouro']; - $this->sigla_uf = $detalheEndereco['sigla_uf']; - $this->cidade = $detalheEndereco['cidade']; - $this->reside_desde = $detalheEndereco['reside_desde']; - $this->idtlog = $detalheEndereco['idtlog']; - $this->complemento = $detalheEndereco['complemento']; - $this->numero = $detalheEndereco['numero']; - $this->letra = $detalheEndereco['letra']; - $this->idlog = $detalheEndereco['idlog']; - $this->idbai = $detalheEndereco['idbai']; - $this->cep = $detalheEndereco['cep']; - $this->apartamento = $detalheEndereco['apartamento']; - $this->bloco = $detalheEndereco['bloco']; - $this->andar = $detalheEndereco['andar']; + $this->bairro = $detalheEndereco['bairro']; + $this->logradouro = $detalheEndereco['logradouro']; + $this->sigla_uf = $detalheEndereco['sigla_uf']; + $this->cidade = $detalheEndereco['cidade']; + $this->reside_desde = $detalheEndereco['reside_desde']; + $this->idtlog = $detalheEndereco['idtlog']; + $this->complemento = $detalheEndereco['complemento']; + $this->numero = $detalheEndereco['numero']; + $this->letra = $detalheEndereco['letra']; + $this->idlog = $detalheEndereco['idlog']; + $this->idbai = $detalheEndereco['idbai']; + $this->cep = $detalheEndereco['cep']; + $this->apartamento = $detalheEndereco['apartamento']; + $this->bloco = $detalheEndereco['bloco']; + $this->andar = $detalheEndereco['andar']; + $this->zona_localizacao = $detalheEndereco['zona_localizacao']; $detalhePessoa['bairro'] = $this->bairro; $detalhePessoa['logradouro'] = $this->logradouro; diff --git a/ieducar/intranet/include/public/clsPublicBairro.inc.php b/ieducar/intranet/include/public/clsPublicBairro.inc.php index edb522a..f8a2c75 100755 --- a/ieducar/intranet/include/public/clsPublicBairro.inc.php +++ b/ieducar/intranet/include/public/clsPublicBairro.inc.php @@ -54,6 +54,7 @@ class clsPublicBairro var $operacao; var $idsis_rev; var $idsis_cad; + var $zona_localizacao; /** * Armazena o total de resultados obtidos na última chamada ao método lista(). @@ -108,25 +109,24 @@ class clsPublicBairro /** * Construtor. * - * @param integer $idmun + * @param int $idmun * @param string $geom - * @param integer $idbai + * @param int $idbai * @param string $nome - * @param integer $idpes_rev + * @param int $idpes_rev * @param string $data_rev * @param string $origem_gravacao - * @param integer $idpes_cad + * @param int $idpes_cad * @param string $data_cad * @param string $operacao - * @param integer $idsis_rev - * @param integer $idsis_cad - * - * @return object + * @param int $idsis_rev + * @param int $idsis_cad + * @param int $zona_localizacao */ function clsPublicBairro($idmun = NULL, $geom = NULL, $idbai = NULL, $nome = NULL, $idpes_rev = NULL, $data_rev = NULL, $origem_gravacao = NULL, $idpes_cad = NULL, $data_cad = NULL, $operacao = NULL, $idsis_rev = NULL, - $idsis_cad = NULL) + $idsis_cad = NULL, $zona_localizacao = 1) { $db = new clsBanco(); $this->_schema = 'public.'; @@ -134,7 +134,7 @@ class clsPublicBairro $this->_campos_lista = $this->_todos_campos = 'b.idmun, b.geom, b.idbai, ' . 'b.nome, b.idpes_rev, b.data_rev, b.origem_gravacao, b.idpes_cad, ' . - 'b.data_cad, b.operacao, b.idsis_rev, b.idsis_cad'; + 'b.data_cad, b.operacao, b.idsis_rev, b.idsis_cad, b.zona_localizacao'; if (is_numeric($idsis_rev)) { if (class_exists('clsAcessoSistema')) { @@ -283,6 +283,10 @@ class clsPublicBairro if (is_string($operacao)) { $this->operacao = $operacao; } + + if (is_numeric($zona_localizacao)) { + $this->zona_localizacao = $zona_localizacao; + } } /** @@ -365,6 +369,12 @@ class clsPublicBairro $gruda = ', '; } + if (is_numeric($this->zona_localizacao)) { + $campos .= "{$gruda}zona_localizacao"; + $valores .= "{$gruda}'{$this->zona_localizacao}'"; + $gruda = ', '; + } + $db->Consulta(sprintf( "INSERT INTO %s (%s) VALUES (%s)", $this->_tabela, $campos, $valores @@ -441,6 +451,11 @@ class clsPublicBairro $gruda = ', '; } + if (is_numeric($this->zona_localizacao)) { + $set .= "{$gruda}zona_localizacao = '{$this->zona_localizacao}'"; + $gruda = ', '; + } + if ($set) { $db->Consulta(sprintf( 'UPDATE %s SET %s WHERE idbai = \'%d\'', @@ -457,26 +472,28 @@ class clsPublicBairro /** * Retorna uma lista de registros filtrados de acordo com os parâmetros. * - * @param integer $int_idmun + * @param int $int_idmun * @param string $str_geom * @param string $str_nome - * @param integer $int_idpes_rev + * @param int $int_idpes_rev * @param string $date_data_rev_ini * @param string $date_data_rev_fim * @param string $str_origem_gravacao - * @param integer $int_idpes_cad + * @param int $int_idpes_cad * @param string $date_data_cad_ini * @param string $date_data_cad_fim * @param string $str_operacao - * @param integer $int_idsis_rev - * @param integer $int_idsis_cad + * @param int $int_idsis_rev + * @param int $int_idsis_cad + * @param int $zona_localizacao * @return array */ function lista($int_idmun = NULL, $str_geom = NULL, $str_nome = NULL, $int_idpes_rev = NULL, $date_data_rev_ini = NULL, $date_data_rev_fim = NULL, $str_origem_gravacao = NULL, $int_idpes_cad = NULL, $date_data_cad_ini = NULL, $date_data_cad_fim = NULL, $str_operacao = NULL, $int_idsis_rev = NULL, - $int_idsis_cad = NULL, $int_idpais = NULL, $str_sigla_uf = NULL, $int_idbai = NULL) + $int_idsis_cad = NULL, $int_idpais = NULL, $str_sigla_uf = NULL, $int_idbai = NULL, + $zona_localizacao = NULL) { $select = ', m.nome AS nm_municipio, m.sigla_uf, u.nome AS nm_estado, u.idpais, p.nome AS nm_pais '; $from = 'b, public.municipio m, public.uf u, public.pais p '; @@ -559,6 +576,11 @@ class clsPublicBairro $whereAnd = ' AND '; } + if (is_numeric($zona_localizacao)) { + $filtros .= "{$whereAnd} b.zona_localizacao = '{$zona_localizacao}'"; + $whereAnd = ' AND '; + } + if (is_numeric($int_idpais)) { $filtros .= "{$whereAnd} p.idpais = '{$int_idpais}'"; $whereAnd = ' AND '; diff --git a/ieducar/intranet/public_bairro_cad.php b/ieducar/intranet/public_bairro_cad.php index d3638a8..133eea9 100755 --- a/ieducar/intranet/public_bairro_cad.php +++ b/ieducar/intranet/public_bairro_cad.php @@ -33,6 +33,8 @@ require_once 'include/clsCadastro.inc.php'; require_once 'include/clsBanco.inc.php'; require_once 'include/public/geral.inc.php'; +require_once 'App/Model/ZonaLocalizacao.php'; + /** * clsIndexBase class. * @@ -82,6 +84,7 @@ class indice extends clsCadastro var $operacao; var $idsis_rev; var $idsis_cad; + var $zona_localizacao; var $idpais; var $sigla_uf; @@ -99,6 +102,7 @@ class indice extends clsCadastro $obj_bairro = new clsPublicBairro(); $lst_bairro = $obj_bairro->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $this->idbai); + if ($lst_bairro) { $registro = $lst_bairro[0]; } @@ -183,7 +187,12 @@ class indice extends clsCadastro echo ''; $opcoes = array("" => "Erro na geracao"); } - $this->campoLista('idmun', 'Município', $opcoes, $this->idmun); + + $this->campoLista('idmun', 'Município', $opcoes, $this->idmun); + + $zona = App_Model_ZonaLocalizacao::getInstance(); + $this->campoLista('zona_localizacao', 'Zona Localização', $zona->getEnums(), + $this->zona_localizacao); $this->campoTexto('nome', 'Nome', $this->nome, 30, 255, TRUE); } @@ -195,7 +204,8 @@ class indice extends clsCadastro session_write_close(); $obj = new clsPublicBairro($this->idmun, NULL, NULL, $this->nome, NULL, - NULL, 'U', $this->pessoa_logada, NULL, 'I', NULL, 9); + NULL, 'U', $this->pessoa_logada, NULL, 'I', NULL, 9, + $this->zona_localizacao); $cadastrou = $obj->cadastra(); if ($cadastrou) { @@ -217,7 +227,9 @@ class indice extends clsCadastro session_write_close(); $obj = new clsPublicBairro($this->idmun, NULL, $this->idbai, $this->nome, - $this->pessoa_logada, NULL, 'U', NULL, NULL, 'I', NULL, 9); + $this->pessoa_logada, NULL, 'U', NULL, NULL, 'I', NULL, 9, + $this->zona_localizacao); + $editou = $obj->edita(); if ($editou) { $this->mensagem .= "Edição efetuada com sucesso.
"; @@ -239,14 +251,14 @@ class indice extends clsCadastro $obj = new clsPublicBairro(NULL, NULL, $this->idbai, NULL, $this->pessoa_logada); $excluiu = $obj->excluir(); + if ($excluiu) { - $this->mensagem .= 'Exclusão efetuada com sucesso.
'; + $this->mensagem .= 'Exclusão efetuada com sucesso.
'; header('Location: public_bairro_lst.php'); die(); } - $this->mensagem = 'Exclusão não realizada.
'; - echo ""; + $this->mensagem = 'Exclusão não realizada.
'; return FALSE; } diff --git a/ieducar/intranet/public_bairro_det.php b/ieducar/intranet/public_bairro_det.php index ff6fc1d..e453c9d 100755 --- a/ieducar/intranet/public_bairro_det.php +++ b/ieducar/intranet/public_bairro_det.php @@ -33,6 +33,8 @@ require_once 'include/clsDetalhe.inc.php'; require_once 'include/clsBanco.inc.php'; require_once 'include/public/geral.inc.php'; +require_once 'App/Model/ZonaLocalizacao.php'; + /** * clsIndexBase class. * @@ -107,6 +109,10 @@ class indice extends clsDetalhe $this->addDetalhe(array('Nome', $registro['nome'])); } + $zona = App_Model_ZonaLocalizacao::getInstance(); + $zona = $zona->getValue($registro['zona_localizacao']); + $this->addDetalhe(array('Zona Localização', $zona)); + if ($registro['nm_municipio']) { $this->addDetalhe(array("Município", $registro['nm_municipio'])); } @@ -119,14 +125,6 @@ class indice extends clsDetalhe $this->addDetalhe(array('Pais', $registro['nm_pais'])); } - if ($registro['origem_gravacao']) { - $this->addDetalhe(array('Origem Gravação', $registro['origem_gravacao'])); - } - - if ($registro['operacao']) { - $this->addDetalhe(array('Operação', $registro['operacao'])); - } - $this->url_novo = 'public_bairro_cad.php'; $this->url_editar = 'public_bairro_cad.php?idbai=' . $registro['idbai']; diff --git a/ieducar/intranet/public_bairro_lst.php b/ieducar/intranet/public_bairro_lst.php index 6d98c2e..6a74a0f 100755 --- a/ieducar/intranet/public_bairro_lst.php +++ b/ieducar/intranet/public_bairro_lst.php @@ -33,6 +33,9 @@ require_once 'include/clsListagem.inc.php'; require_once 'include/clsBanco.inc.php'; require_once 'include/public/geral.inc.php'; +require_once 'App/Model/ZonaLocalizacao.php'; +require_once 'CoreExt/View/Helper/UrlHelper.php'; + /** * clsIndexBase class. * @@ -103,6 +106,7 @@ class indice extends clsListagem $this->addCabecalhos(array( 'Nome', + 'Zona Localização', 'Município', 'Estado', 'Pais' @@ -207,14 +211,25 @@ class indice extends clsListagem $total = $obj_bairro->_total; - // Monta a lista + // Zona Localização. + $zona = App_Model_ZonaLocalizacao::getInstance(); + + // UrlHelper. + $url = CoreExt_View_Helper_UrlHelper::getInstance(); + $options = array('query' => array('idbai' => NULL)); + + // Monta a lista. if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { + $zl = $zona->getValue($registro['zona_localizacao']); + $options['query']['idbai'] = $registro['idbai']; + $this->addLinhas(array( - "{$registro["nome"]}", - "{$registro["nm_municipio"]}", - "{$registro["nm_estado"]}", - "{$registro["nm_pais"]}" + $url->l($registro['nome'], 'public_bairro_det.php', $options), + $url->l($zl, 'public_bairro_det.php', $options), + $url->l($registro['nm_municipio'], 'public_bairro_det.php', $options), + $url->l($registro['nm_estado'], 'public_bairro_det.php', $options), + $url->l($registro['nm_pais'], 'public_bairro_det.php', $options) )); } } diff --git a/ieducar/intranet/scripts/padrao.js b/ieducar/intranet/scripts/padrao.js index bed68c3..53012b2 100755 --- a/ieducar/intranet/scripts/padrao.js +++ b/ieducar/intranet/scripts/padrao.js @@ -1034,7 +1034,8 @@ function getVisibility(f) function cv_set_campo(campo1, valor1, campo2, valor2, campo3, valor3, campo4, valor4, campo5, valor5, campo6, valor6, campo7, valor7, campo8, valor8, campo9, - valor9, campo10, valor10, campo11, valor11, campo12, campo13, valor13) + valor9, campo10, valor10, campo11, valor11, campo12, campo13, valor13, + campo14, valor14) { obj1 = parent.document.getElementById(campo1); obj1.value = valor1; @@ -1082,14 +1083,20 @@ function cv_set_campo(campo1, valor1, campo2, valor2, campo3, valor3, campo4, obj12.disabled = true; if (parent.document.getElementById(campo13)) { - obj13 = parent.document.getElementById( campo13 ); + obj13 = parent.document.getElementById(campo13); obj13.value = valor13; } + if (parent.document.getElementById(campo14)) { + obj14 = parent.document.getElementById(campo14); + obj14.value = valor14; + obj14.disabled = true; + } + window.parent.fechaExpansivel('div_dinamico_' + (parent.DOM_divs.length * 1 - 1)); } -function cv_libera_campos(campo1, campo2, campo3, campo4, campo5, campo6, campo7) +function cv_libera_campos(campo1, campo2, campo3, campo4, campo5, campo6, campo7, campo8) { window.parent.fechaExpansivel('div_dinamico_' + (parent.DOM_divs.length * 1 - 1)); @@ -1110,6 +1117,11 @@ function cv_libera_campos(campo1, campo2, campo3, campo4, campo5, campo6, campo7 parent.document.getElementById(campo7).disabled = false; parent.document.getElementById(campo7).value = '1'; } + + if (parent.document.getElementById(campo8)) { + parent.document.getElementById(campo8).disabled = false; + parent.document.getElementById(campo8).value = '1'; + } } /** diff --git a/ieducar/lib/App/Model/ZonaLocalizacao.php b/ieducar/lib/App/Model/ZonaLocalizacao.php new file mode 100644 index 0000000..c9eb329 --- /dev/null +++ b/ieducar/lib/App/Model/ZonaLocalizacao.php @@ -0,0 +1,57 @@ + + * + * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo + * sob os termos da Licença Pública Geral GNU conforme publicada pela Free + * Software Foundation; tanto a versão 2 da Licença, como (a seu critério) + * qualquer versão posterior. + * + * Este programa é distribuí­do na expectativa de que seja útil, porém, SEM + * NENHUMA GARANTIA; nem mesmo a garantia implí­cita de COMERCIABILIDADE OU + * ADEQUAÇÃO A UMA FINALIDADE ESPECÃFICA. Consulte a Licença Pública Geral + * do GNU para mais detalhes. + * + * Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto + * com este programa; se não, escreva para a Free Software Foundation, Inc., no + * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. + * + * @author Eriksen Costa Paixão + * @category i-Educar + * @license @@license@@ + * @package App_Model + * @since Arquivo disponível desde a versão 1.2.0 + * @version $Id$ + */ + +require_once 'CoreExt/Enum.php'; + +/** + * App_Model_ZonaLocalizacao class. + * + * @author Eriksen Costa Paixão + * @category i-Educar + * @license @@license@@ + * @package App_Model + * @since Classe disponível desde a versão 1.2.0 + * @version @@package_version@@ + */ +class App_Model_ZonaLocalizacao extends CoreExt_Enum +{ + const URBANA = 1; + const RURAL = 2; + + protected $_data = array( + self::URBANA => 'Urbana', + self::RURAL => 'Rural' + ); + + public static function getInstance() + { + return self::_getInstance(__CLASS__); + } +} \ No newline at end of file diff --git a/ieducar/misc/database/deltas/25_adiciona_campo_zona_localizacao_tabelas_enderecamento.sql b/ieducar/misc/database/deltas/25_adiciona_campo_zona_localizacao_tabelas_enderecamento.sql new file mode 100644 index 0000000..1e5dcef --- /dev/null +++ b/ieducar/misc/database/deltas/25_adiciona_campo_zona_localizacao_tabelas_enderecamento.sql @@ -0,0 +1,54 @@ +-- // + +-- +-- Adiciona o campo zona_localizacao nas tabelas de endereçamento +-- cadastro.endereco_externo e public.bairro. +-- +-- @author Eriksen Costa Paixão +-- @license @@license@@ +-- @version $Id$ +-- + +ALTER TABLE cadastro.endereco_externo ADD COLUMN zona_localizacao integer DEFAULT 1; +ALTER TABLE public.bairro ADD COLUMN zona_localizacao integer DEFAULT 1; + +DROP VIEW cadastro.v_endereco; + +CREATE OR REPLACE VIEW cadastro.v_endereco AS + SELECT + e.idpes, e.cep, e.idlog, e.numero, e.letra, e.complemento, e.idbai, e.bloco, e.andar, e.apartamento, l.nome AS logradouro, l.idtlog, b.nome AS bairro, m.nome AS cidade, m.sigla_uf, b.zona_localizacao + FROM + endereco_pessoa e, logradouro l, bairro b, municipio m + WHERE + e.idlog = l.idlog AND e.idbai = b.idbai AND b.idmun = m.idmun AND e.tipo = 1::numeric + UNION + SELECT + e.idpes, e.cep, NULL::"unknown" AS idlog, e.numero, e.letra, e.complemento, NULL::"unknown" AS idbai, e.bloco, e.andar, e.apartamento, e.logradouro, e.idtlog, e.bairro, e.cidade, e.sigla_uf, e.zona_localizacao + FROM + endereco_externo e + WHERE + e.tipo = 1::numeric; + +-- //@UNDO + +DROP VIEW cadastro.v_endereco; + +CREATE OR REPLACE VIEW cadastro.v_endereco AS + SELECT + e.idpes, e.cep, e.idlog, e.numero, e.letra, e.complemento, e.idbai, e.bloco, e.andar, e.apartamento, l.nome AS logradouro, l.idtlog, b.nome AS bairro, m.nome AS cidade, m.sigla_uf + FROM + endereco_pessoa e, logradouro l, bairro b, municipio m + WHERE + e.idlog = l.idlog AND e.idbai = b.idbai AND b.idmun = m.idmun AND e.tipo = 1::numeric + UNION + SELECT + e.idpes, e.cep, NULL::"unknown" AS idlog, e.numero, e.letra, e.complemento, NULL::"unknown" AS idbai, e.bloco, e.andar, e.apartamento, e.logradouro, e.idtlog, e.bairro, e.cidade, e.sigla_uf + FROM + endereco_externo e + WHERE + e.tipo = 1::numeric; + +ALTER TABLE cadastro.endereco_externo DROP COLUMN zona_localizacao; +ALTER TABLE public.bairro DROP COLUMN zona_localizacao; + +-- // \ No newline at end of file diff --git a/ieducar/misc/database/ieducar.sql b/ieducar/misc/database/ieducar.sql index b411408..911ae64 100644 --- a/ieducar/misc/database/ieducar.sql +++ b/ieducar/misc/database/ieducar.sql @@ -8808,6 +8808,7 @@ CREATE TABLE endereco_externo ( apartamento numeric(6,0), idsis_rev integer, idsis_cad integer NOT NULL, + zona_localizacao integer DEFAULT 1, CONSTRAINT ck_endereco_externo_operacao CHECK ((((operacao = 'I'::bpchar) OR (operacao = 'A'::bpchar)) OR (operacao = 'E'::bpchar))), CONSTRAINT ck_endereco_externo_origem_gravacao CHECK (((((origem_gravacao = 'M'::bpchar) OR (origem_gravacao = 'U'::bpchar)) OR (origem_gravacao = 'C'::bpchar)) OR (origem_gravacao = 'O'::bpchar))), CONSTRAINT ck_endereco_externo_tipo CHECK (((tipo >= (1)::numeric) AND (tipo <= (3)::numeric))) @@ -9261,6 +9262,7 @@ CREATE TABLE bairro ( operacao character(1) NOT NULL, idsis_rev integer, idsis_cad integer NOT NULL, + zona_localizacao integer DEFAULT 1, CONSTRAINT ck_bairro_operacao CHECK ((((operacao = 'I'::bpchar) OR (operacao = 'A'::bpchar)) OR (operacao = 'E'::bpchar))), CONSTRAINT ck_bairro_origem_gravacao CHECK (((((origem_gravacao = 'M'::bpchar) OR (origem_gravacao = 'U'::bpchar)) OR (origem_gravacao = 'C'::bpchar)) OR (origem_gravacao = 'O'::bpchar))) ); @@ -9327,7 +9329,7 @@ SET search_path = cadastro, pg_catalog; -- CREATE VIEW v_endereco AS - SELECT e.idpes, e.cep, e.idlog, e.numero, e.letra, e.complemento, e.idbai, e.bloco, e.andar, e.apartamento, l.nome AS logradouro, l.idtlog, b.nome AS bairro, m.nome AS cidade, m.sigla_uf FROM endereco_pessoa e, public.logradouro l, public.bairro b, public.municipio m WHERE ((((e.idlog = l.idlog) AND (e.idbai = b.idbai)) AND (b.idmun = m.idmun)) AND (e.tipo = (1)::numeric)) UNION SELECT e.idpes, e.cep, NULL::"unknown" AS idlog, e.numero, e.letra, e.complemento, NULL::"unknown" AS idbai, e.bloco, e.andar, e.apartamento, e.logradouro, e.idtlog, e.bairro, e.cidade, e.sigla_uf FROM endereco_externo e WHERE (e.tipo = (1)::numeric); + SELECT e.idpes, e.cep, e.idlog, e.numero, e.letra, e.complemento, e.idbai, e.bloco, e.andar, e.apartamento, l.nome AS logradouro, l.idtlog, b.nome AS bairro, m.nome AS cidade, m.sigla_uf, b.zona_localizacao FROM endereco_pessoa e, public.logradouro l, public.bairro b, public.municipio m WHERE ((((e.idlog = l.idlog) AND (e.idbai = b.idbai)) AND (b.idmun = m.idmun)) AND (e.tipo = (1)::numeric)) UNION SELECT e.idpes, e.cep, NULL::"unknown" AS idlog, e.numero, e.letra, e.complemento, NULL::"unknown" AS idbai, e.bloco, e.andar, e.apartamento, e.logradouro, e.idtlog, e.bairro, e.cidade, e.sigla_uf, e.zona_localizacao FROM endereco_externo e WHERE (e.tipo = (1)::numeric); -- @@ -20136,6 +20138,7 @@ INSERT INTO changelog VALUES (21, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '21_cria INSERT INTO changelog VALUES (22, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '22_cria_primary_key_em_modules_calendario_turma.sql'); INSERT INTO changelog VALUES (23, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '23_cria_tabela_modules_componente_curricular_turma.sql'); INSERT INTO changelog VALUES (24, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '24_altera_tipo_campo_carga_horaria_pmieducar_servidor_alocacao.sql'); +INSERT INTO changelog VALUES (25, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '25_adiciona_campo_zona_localizacao_tabelas_enderecamento.sql'); -- -- libgit2 0.21.2