From 4adc367d1864d31f3fe16fc6277b86e5eb7e93f8 Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Thu, 20 Dec 2012 21:12:29 +0000 Subject: [PATCH] Inclusão de opção na ferramenta de identificação que permite editar os valores de váriaveis cadastradas no METAESTAT --- admin/admin.db | Bin 171008 -> 0 bytes admin/php/classe_metaestat.php | 22 ++++++++++++++++++---- classesphp/classe_atributos.php | 22 +++++++++++++++++----- css/corrigeyui_geral.css | 3 --- ferramentas/identifica/index.js | 38 ++++++++++++++++++++++++++++++++------ 5 files changed, 67 insertions(+), 18 deletions(-) diff --git a/admin/admin.db b/admin/admin.db index 0efefb0..d8c72e3 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 ad05047..d489fa0 100755 --- a/admin/php/classe_metaestat.php +++ b/admin/php/classe_metaestat.php @@ -272,7 +272,13 @@ class Metaestat{ } if($agregaregiao == false){ if($todasascolunas == 0){ - $sql = " SELECT d.".$dados["colunavalor"].",d.".$dados["colunaidgeo"]; + if($dados["colunaidunico"] != $dados["colunaidgeo"]){ + $sql = " SELECT d.".$dados["colunaidunico"].",d.".$dados["colunavalor"].",d.".$dados["colunaidgeo"]; + $colunas[] = $dados["colunaidunico"]; + } + else{ + $sql = " SELECT d.".$dados["colunavalor"].",d.".$dados["colunaidgeo"]; + } $colunas[] = $dados["colunavalor"]; $colunas[] = $dados["colunaidgeo"]; if(!empty($agruparpor)){ @@ -343,7 +349,12 @@ class Metaestat{ $sql .= " FROM (SELECT $tipoconta(".$dados["colunavalor"].") as ".$dados["colunavalor"].",sb.".$dadosAgregacao["colunaligacao_regiaopai"]." FROM ".$dados["esquemadb"].".".$dados["tabela"]." as sa,".$dadosgeo["esquemadb"].".".$dadosgeo["tabela"]." as sb WHERE sa.".$dados["colunaidgeo"]." = sb.".$dadosgeo["identificador"]." __dadosfiltro__ group by sb.".$dadosAgregacao["colunaligacao_regiaopai"].") as d "; } else{ - $sqlgeo .= " FROM (SELECT ".$dados["colunavalor"].",".$dados["colunaidgeo"]." FROM ".$dados["esquemadb"].".".$dados["tabela"] ." __dadosfiltro__ ) as d, ".$dadosgeo["esquemadb"].".".$dadosgeo["tabela"]." as g"; + if($dados["colunaidgeo"] == $dados["colunaidunico"]){ + $sqlgeo .= " FROM (SELECT ".$dados["colunavalor"].",".$dados["colunaidgeo"]." FROM ".$dados["esquemadb"].".".$dados["tabela"] ." __dadosfiltro__ ) as d, ".$dadosgeo["esquemadb"].".".$dadosgeo["tabela"]." as g"; + } + else{ + $sqlgeo .= " FROM (SELECT ".$dados["colunavalor"].",".$dados["colunaidgeo"].",".$dados["colunaidunico"]." FROM ".$dados["esquemadb"].".".$dados["tabela"] ." __dadosfiltro__ ) as d, ".$dadosgeo["esquemadb"].".".$dadosgeo["tabela"]." as g"; + } $sql .= " FROM (SELECT ".$dados["colunavalor"].",".$dados["colunaidgeo"]." FROM ".$dados["esquemadb"].".".$dados["tabela"] ." __dadosfiltro__ ) as d "; } } @@ -381,7 +392,7 @@ class Metaestat{ $sqlgeo = $colunageo." from ( ".$sqlgeo." __filtro__ ) as foo using unique ".$dadosAgregacao["colunaligacao_regiaopai"]." using srid=".$dadosgeo["srid"]; } else{ - $sqlgeo = $colunageo." from (".$sqlgeo." __filtro__ ) as foo using unique ".$dados["colunaidgeo"]." using srid=".$dadosgeo["srid"]; + $sqlgeo = $colunageo." from (".$sqlgeo." __filtro__ ) as foo using unique ".$dados["colunaidunico"]." using srid=".$dadosgeo["srid"]; } //echo $sqlgeo;exit; return array("sqlagrupamento"=>$sqlagrupamento,"sql"=>$sql,"sqlmapserver"=>$sqlgeo,"filtro"=>$filtro,"colunas"=>$colunas,"alias"=>$alias,"colunavalor"=>$dados["colunavalor"],"titulo"=>$titulo); @@ -1868,7 +1879,10 @@ class Metaestat{ } if($id != ""){ $s = "UPDATE i3geo_metaestat.".$medida["tabela"]." SET ".implode(",",$sets); - $s .= " WHERE ".$medida["colunaidunico"]."::text = '".$id."' AND ".$medida["colunaidgeo"]."::text = '".$identificador_regiao."'"; + $s .= " WHERE ".$medida["colunaidunico"]."::text = '".$id."'"; + if(!empty($identificador_regiao)){ + $s .= " AND ".$medida["colunaidgeo"]."::text = '".$identificador_regiao."'"; + } if($medida["filtro"] != ""){ $s .= " AND ".$medida["filtro"]; } diff --git a/classesphp/classe_atributos.php b/classesphp/classe_atributos.php index 7c66217..b818fcf 100644 --- a/classesphp/classe_atributos.php +++ b/classesphp/classe_atributos.php @@ -1307,7 +1307,11 @@ class Atributos { $final = array(); foreach ($listatemas as $tema){ + //para dados que sao oriundos do METAESTAT $editavel = ""; + $colunaidunico = ""; + $id_medida_variavel = ""; + // $layer = $map->getlayerbyname($tema); $nometmp = $tema; if (strtoupper($layer->getMetaData("TEMA")) != "NAO"){ @@ -1338,16 +1342,24 @@ class Atributos $editavel = "sim"; } if($editavel == "sim"){ - include_once(__DIR__."/../admin/php/classe_metaestat.php"); - $m = $m = new Metaestat(); - $medidaVariavel = $m->listaMedidaVariavel("",$layer->getMetaData("METAESTAT_ID_MEDIDA_VARIAVEL")); - $editavel = $medidaVariavel["colunavalor"]; + $id_medida_variavel = $layer->getMetaData("METAESTAT_ID_MEDIDA_VARIAVEL"); + if($id_medida_variavel != ""){ + include_once(__DIR__."/../admin/php/classe_metaestat.php"); + $m = new Metaestat(); + $medidaVariavel = $m->listaMedidaVariavel("",$id_medida_variavel); + $editavel = $medidaVariavel["colunavalor"]; + $colunaidunico = $medidaVariavel["colunaidunico"]; + $codigo_tipo_regiao = $medidaVariavel["codigo_tipo_regiao"]; + } + else{ + $editavel = "nao"; + } } } } } - $final[] = array("nome"=>$nometmp,"resultado"=>$resultados[$tema],"editavel"=>$editavel); + $final[] = array("nome"=>$nometmp,"resultado"=>$resultados[$tema],"editavel"=>$editavel,"colunaidunico"=>$colunaidunico,"id_medida_variavel"=>$id_medida_variavel,"codigo_tipo_regiao"=>$codigo_tipo_regiao); } return $final; } diff --git a/css/corrigeyui_geral.css b/css/corrigeyui_geral.css index dbf87c0..e883c4e 100644 --- a/css/corrigeyui_geral.css +++ b/css/corrigeyui_geral.css @@ -235,9 +235,6 @@ td.ygtvcell{ outline:0; } - - - .yui-skin-sam .yui-button button, .yui-skin-sam .yui-button a { color:#000000; font-size:95%; diff --git a/ferramentas/identifica/index.js b/ferramentas/identifica/index.js index b145955..29d3c5b 100644 --- a/ferramentas/identifica/index.js +++ b/ferramentas/identifica/index.js @@ -351,10 +351,10 @@ i3GEOF.identifica = { ins += '
'; ins += '
'; ins += ' '; + ins += '

'; ins += '