From 6b3392500eb8a3a34ce09dc5b1384a3863a75bca Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Fri, 28 Sep 2012 17:19:53 +0000 Subject: [PATCH] Atualização do sistema de metadados estatísticos --- admin/admin.db | Bin 137216 -> 0 bytes admin/php/classe_metaestat.php | 7 +++++-- admin/php/conexaomma.php | 47 ----------------------------------------------- admin/php/metaestat.php | 31 ++++++++++++++++++++++++++++--- admin/php/xml.php | 2 +- ferramentas/metaestat/dicionario1.js | 31 ++++++++++++++++++++++++++++++- ferramentas/metaestat/index.js | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------- 7 files changed, 139 insertions(+), 71 deletions(-) delete mode 100644 admin/php/conexaomma.php diff --git a/admin/admin.db b/admin/admin.db index cd2b481..1afba19 100644 Binary files a/admin/admin.db and b/admin/admin.db differ diff --git a/admin/php/classe_metaestat.php b/admin/php/classe_metaestat.php index 578a04c..600c4b8 100755 --- a/admin/php/classe_metaestat.php +++ b/admin/php/classe_metaestat.php @@ -240,7 +240,7 @@ class Metaestat{ $dados = $this->listaMedidaVariavel("",$id_medida_variavel); $dadosgeo = $this->listaTipoRegiao($dados["codigo_tipo_regiao"]); $agregaregiao = false; - if($dados["codigo_tipo_regiao"] != $codigo_tipo_regiao){ + if($codigo_tipo_regiao != "" && $dados["codigo_tipo_regiao"] != $codigo_tipo_regiao){ $agregaregiao = true; $dadosgeoagregada = $this->listaTipoRegiao($codigo_tipo_regiao); } @@ -314,6 +314,7 @@ class Metaestat{ $conexao = $this->listaConexao($meta["codigo_estat_conexao"],true); $conexao = "user=".$conexao["usuario"]." password=".$conexao["senha"]." dbname=".$conexao["bancodedados"]." host=".$conexao["host"]." port=".$conexao["porta"].""; //echo $conexao;exit; + //echo "$id_medida_variavel,$todasascolunas,$agruparpor,$tipolayer,$codigo_tipo_regiao";exit; $sql = $this->sqlMedidaVariavel($id_medida_variavel,$todasascolunas,$agruparpor,$tipolayer,$codigo_tipo_regiao); $sqlf = $sql["sqlmapserver"]; if(!empty($filtro)){ @@ -978,10 +979,12 @@ class Metaestat{ $id_medida_variavel - opcional */ function listaMedidaVariavel($codigo_variavel,$id_medida_variavel=""){ - $sql = "SELECT i3geoestat_medida_variavel.* "; + $sql = "SELECT i3geoestat_medida_variavel.*,i3geoestat_unidade_medida.permitemedia,i3geoestat_unidade_medida.permitesoma,i3geoestat_unidade_medida.nome as unidade_medida "; $sql .= "FROM ".$this->esquemaadmin."i3geoestat_variavel "; $sql .= "INNER JOIN ".$this->esquemaadmin."i3geoestat_medida_variavel "; $sql .= "ON i3geoestat_variavel.codigo_variavel = i3geoestat_medida_variavel.codigo_variavel "; + $sql .= "INNER JOIN ".$this->esquemaadmin."i3geoestat_unidade_medida "; + $sql .= "ON i3geoestat_unidade_medida.codigo_unidade_medida = i3geoestat_medida_variavel.codigo_unidade_medida "; if($codigo_variavel != ""){ $sql .= "WHERE i3geoestat_variavel.codigo_variavel = $codigo_variavel "; if($id_medida_variavel != ""){ diff --git a/admin/php/conexaomma.php b/admin/php/conexaomma.php deleted file mode 100644 index 9231609..0000000 --- a/admin/php/conexaomma.php +++ /dev/null @@ -1,47 +0,0 @@ -getMessage() . "
Talvez exista alguma incompatibilidade entre o PHP e o banco admin.db. Vc pode apagar o arquivo menutemas/admin.db e recria-lo com admin/php/criasqlite.php"; - die(); -} -$convUTF = false; -?> diff --git a/admin/php/metaestat.php b/admin/php/metaestat.php index e6bdc73..b1901fa 100644 --- a/admin/php/metaestat.php +++ b/admin/php/metaestat.php @@ -380,8 +380,34 @@ switch (strtoupper($funcao)) $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$vermelho,$verde,$azul,"","","-1","-1","-1",""); } } - if($tipo == "intervalosiguais"){ - //TODO + if($tipo == "intiguais5"){ + $m = new Metaestat(); + $dados = $m->sumarioMedidaVariavel($id_medida_variavel); + $min = $dados["menor"]; + $max = $dados["maior"]; + $item = $dados["colunavalor"]; + $intervalo = ($max - $min) / 5; + //adiciona as classes novas + $intatual = $min; + $m->excluirRegistro("i3geoestat_classes","id_classificacao",$id_classificacao); + for ($i=0; $i < 5; ++$i){ + if ($i == 5 - 1){ + $expressao = "(([".$item."]>=".$intatual.")and([".$item."]<=".($intatual+$intervalo)."))"; + } + else{ + $expressao = "(([".$item."]>=".$intatual.")and([".$item."]<".($intatual+$intervalo)."))"; + } + $titulo = ">= ".$intatual." e < que ".($intatual+$intervalo); + $intatual = $intatual + $intervalo; + $id_classe = $m->alteraClasseClassificacao($id_classificacao); + if(!empty($cores)){ + $cor = explode(",",$cores[$i]); + $vermelho = $cor[0]; + $verde = $cor[1]; + $azul = $cor[2]; + } + $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$vermelho,$verde,$azul,"","","-1","-1","-1",""); + } } retornaJSON("ok"); exit; @@ -917,7 +943,6 @@ switch (strtoupper($funcao)) 'dirtmp' => $dir_tmp, 'barSize'=> 5000 ); - include (__DIR__."/../../pacotes/tme/TME_i3geo.php"); } exit; diff --git a/admin/php/xml.php b/admin/php/xml.php index 2edbfc1..ab50999 100644 --- a/admin/php/xml.php +++ b/admin/php/xml.php @@ -225,7 +225,7 @@ function geraRSSgrupos($locaplic) global $esquemaadmin; $sql = "select '' as tipo_ws, n1.id_n1 as id_ws, g.nome_grupo as nome_ws,'rsstemasraiz.php?nivel=1&id='||n1.id_n1 as desc_ws,'rsssubgrupos.php?id='||n1.id_n1 as link_ws,'' as autor_ws "; $sql .= "from ".$esquemaadmin."i3geoadmin_n1 as n1,".$esquemaadmin."i3geoadmin_grupos as g "; - $sql .= "where g.id_grupo = n1.id_grupo and n1.n1_perfil = '' group by nome_ws,desc_ws,link_ws,autor_ws order by nome_ws"; + $sql .= "where g.id_grupo = n1.id_grupo and n1.n1_perfil = '' group by id_ws,tipo_ws,nome_ws,desc_ws,link_ws,autor_ws order by nome_ws"; return geraXmlRSS($locaplic,$sql,"Lista de grupos"); } /* diff --git a/ferramentas/metaestat/dicionario1.js b/ferramentas/metaestat/dicionario1.js index e175263..8cd45cf 100644 --- a/ferramentas/metaestat/dicionario1.js +++ b/ferramentas/metaestat/dicionario1.js @@ -1,3 +1,4 @@ +//dicionario exclusivo do editor //+$trad(1,i3GEOF.metaestat.dicionario1)+ i3GEOF.metaestat.dicionario1 = { "1":[ @@ -9,7 +10,7 @@ it:"" }], "2":[ { -pt:"Esse ajudante auxiliará você na criação de novas variáveis ou na edição das já existentes.
Como fonte para os mapas e análises você poderá utilizar tabelas já armazenadas em seu banco de dados ou então criar um novo local para armazenar e editar seus próprios dados. Utilize o botão abaixo para prosseguir ou uma das opçõs específicas", +pt:"Esse ajudante auxiliará você na criação de novas variáveis ou na edição das já existentes.
Como fonte para os mapas e análises você poderá utilizar tabelas já armazenadas em seu banco de dados ou então criar um novo local para armazenar e editar seus próprios dados. Utilize o botão abaixo a direita para prosseguir ou uma das opçõs específicas.
Após utilizar o ajudante vocêe pode complementar as informações por meio do editor avançado, que permite inserir fontes e links que descrevem seus dados.", en:"", es:"", it:"" @@ -93,6 +94,34 @@ it:"" }], "14":[ { +pt:"Unidade de medida", +en:"", +es:"", +it:"" +}], +"15":[ +{ +pt:"", +en:"", +es:"", +it:"" +}], +"16":[ +{ +pt:"", +en:"", +es:"", +it:"" +}], +"17":[ +{ +pt:"", +en:"", +es:"", +it:"" +}], +"18":[ +{ pt:"", en:"", es:"", diff --git a/ferramentas/metaestat/index.js b/ferramentas/metaestat/index.js index 33231ce..d2455d3 100644 --- a/ferramentas/metaestat/index.js +++ b/ferramentas/metaestat/index.js @@ -46,6 +46,8 @@ i3GEOF.metaestat = { ALTURA: 300, //lista das camadas que foram adicionadas ao mapa CAMADAS: [], + //dados das medidas obtidos para a ultima variavel escolhida + DADOSMEDIDASVARIAVEL: [], //para efeitos de compatibilidade com i3GEO.mapa.dialogo criaJanelaFlutuante: function(){ i3GEOF.metaestat.inicia(); @@ -507,7 +509,6 @@ i3GEOF.metaestat = { i3GEOF.metaestat.editor.removeEl("i3GEOF.metaestat.editor.t2"); // Enome e o id do input onde o usuario escolheu o nome da nova variavel i3GEOF.metaestat.editor.t2(true,$i("Enomemedida").value); - //TODO inserir fontes e links }; i3GEOadmin.variaveis.editar("medidaVariavel",""); //passa o codigo da variavel @@ -585,6 +586,28 @@ i3GEOF.metaestat = { } } }, + /** + * Obtem um parametro da medida variavel escolhida. Os parametros sao obtidos da chamada em ajax que pega a lista de medidas de uma variavel + */ + dadoMedidaSelecionada: function(parametro){ + var c = $i("i3geoCartoComboMedidaVariavelEditor"),n,i; + if(c){ + n = c.options.length; + for(i=0;i

" + @@ -620,6 +655,9 @@ i3GEOF.metaestat = { {onclick:{fn: function(){alert("Oi");}}} ); }, + /** + * Edicao da variavel + */ t1: function(remove,textoSelecionado){ if(remove == true){ //remove o conteudo anteriormente construido @@ -647,6 +685,10 @@ i3GEOF.metaestat = { }; i3GEO.php.listaVariavel(temp); }, + /** + * Edicao da medida da variavel + * + */ t2: function(remove,textoSelecionado){ if(remove == true){ //remove o conteudo anteriormente construido @@ -658,6 +700,7 @@ i3GEOF.metaestat = { } else{ var temp = function(dados){ + //guarda os dados var ins = "

" + $trad(2,i3GEOF.metaestat.dicionario) + "

" + "" + i3GEOF.metaestat.principal.comboMedidasVariavel(dados,"i3geoCartoComboMedidaVariavelEditor","i3GEOF.metaestat.editor.comboMedidaVariavelOnchange(this)") + "" + "

" + @@ -676,7 +719,6 @@ i3GEOF.metaestat = { if(textoSelecionado){ i3GEOF.metaestat.editor.selComboPorTexto("i3geoCartoComboMedidaVariavelEditor",textoSelecionado); } - }, codigo_variavel = $i("i3geoCartoComboVariavelEditor").value; if(codigo_variavel == ""){ @@ -687,6 +729,9 @@ i3GEOF.metaestat = { i3GEO.php.listaMedidaVariavel(codigo_variavel,temp); } }, + /** + * Edicao da classificacao + */ t3: function(remove,textoSelecionado){ //TODO incluir opcao de upload de dados if(remove == true){ @@ -701,9 +746,11 @@ i3GEOF.metaestat = { var temp = function(dados){ var ins = "

" + $trad(7,i3GEOF.metaestat.dicionario1) + "

" + "" + i3GEOF.metaestat.principal.comboClassificacoesMedidaVariavel(dados,"i3geoCartoComboClassificacoesEditor","") + "" + + "

"+$trad(14,i3GEOF.metaestat.dicionario1)+": " + i3GEOF.metaestat.editor.dadoMedidaSelecionada("unidade_medida") + "

" + " 
"; i3GEO.util.proximoAnterior("i3GEOF.metaestat.editor.t2()","i3GEOF.metaestat.editor.t4()",ins,"i3GEOF.metaestat.editor.t3","i3GEOFmetaestatEditor",true); + new YAHOO.widget.Button( "i3GEOFmetaestatEditorBotao5", {onclick:{fn: i3GEOF.metaestat.editor.editaClassificacao}} @@ -719,6 +766,9 @@ i3GEOF.metaestat = { i3GEO.php.listaClassificacaoMedida($i("i3geoCartoComboMedidaVariavelEditor").value,temp); } }, + /** + * Edicao das classes + */ t4: function(){ //remove o conteudo anteriormente construido i3GEOF.metaestat.editor.removeEl("i3GEOF.metaestat.editor.t4"); @@ -728,12 +778,17 @@ i3GEOF.metaestat = { } else{ var temp = function(dados){ - var ins = "

" + $trad(10,i3GEOF.metaestat.dicionario1) + + var soma = i3GEOF.metaestat.editor.dadoMedidaSelecionada("permitesoma"), + media = i3GEOF.metaestat.editor.dadoMedidaSelecionada("permitemedia"), + ins = "

" + $trad(10,i3GEOF.metaestat.dicionario1) + "

" + " " + - "

 " + - " " + - ''; //utilizado pelo seletor de colourramp; + "

"; + if(soma == 1 || media == 1){ + ins += " " + + " "; + } + ins += ''; //utilizado pelo seletor de colourramp; i3GEO.util.proximoAnterior("i3GEOF.metaestat.editor.t3()","i3GEOF.metaestat.editor.t5()",ins,"i3GEOF.metaestat.editor.t4","i3GEOFmetaestatEditor",true); new YAHOO.widget.Button( "i3GEOFmetaestatEditorBotao8", @@ -742,16 +797,18 @@ i3GEOF.metaestat = { }}} ); $i("i3GEOFmetaestatEditorBotao8-button").style.width = (i3GEOF.metaestat.LARGURA / 2) + "px"; - new YAHOO.widget.Button( - "i3GEOFmetaestatEditorBotao6", - {onclick:{fn: i3GEOF.metaestat.editor.quartis}} - ); - $i("i3GEOFmetaestatEditorBotao6-button").style.width = (i3GEOF.metaestat.LARGURA / 2) + "px"; - new YAHOO.widget.Button( - "i3GEOFmetaestatEditorBotao7", - {onclick:{fn: i3GEOF.metaestat.editor.intervalosIguais}} - ); - $i("i3GEOFmetaestatEditorBotao7-button").style.width = (i3GEOF.metaestat.LARGURA / 2) + "px"; + if($i("i3GEOFmetaestatEditorBotao6")){ + new YAHOO.widget.Button( + "i3GEOFmetaestatEditorBotao6", + {onclick:{fn: i3GEOF.metaestat.editor.quartis}} + ); + $i("i3GEOFmetaestatEditorBotao6-button").style.width = (i3GEOF.metaestat.LARGURA / 2) + "px"; + new YAHOO.widget.Button( + "i3GEOFmetaestatEditorBotao7", + {onclick:{fn: i3GEOF.metaestat.editor.intervalosIguais}} + ); + $i("i3GEOFmetaestatEditorBotao7-button").style.width = (i3GEOF.metaestat.LARGURA / 2) + "px"; + } }; i3GEO.php.listaClasseClassificacao($i("i3geoCartoComboClassificacoesEditor").value,temp); } @@ -1029,6 +1086,7 @@ i3GEOF.metaestat = { i3GEOF.metaestat.classes.destroiJanela(); }, comboMedidasVariavel: function(dados,idcombo,stronchange){ + i3GEOF.metaestat.DADOSMEDIDASVARIAVEL = dados; var n = dados.length, ins = '', i; -- libgit2 0.21.2