Commit e0bc41ee05c98bc10e5740dd9b20cf0d4a496463
1 parent
f42414b4
Exists in
master
Otimização da geração das camadas do mestaestat
Showing
1 changed file
with
35 additions
and
12 deletions
Show diff stats
classesphp/classe_metaestatinfo.php
| ... | ... | @@ -36,6 +36,7 @@ class MetaestatInfo{ |
| 36 | 36 | */ |
| 37 | 37 | function __construct(){ |
| 38 | 38 | include(dirname(__FILE__)."/conexao.php"); |
| 39 | + error_reporting(0); | |
| 39 | 40 | //vem do include |
| 40 | 41 | $this->dir_tmp = $dir_tmp; |
| 41 | 42 | $this->logTransacoes = $logTransacoes; |
| ... | ... | @@ -81,7 +82,7 @@ class MetaestatInfo{ |
| 81 | 82 | * Fecha a conexao com o banco de dados de administracao |
| 82 | 83 | */ |
| 83 | 84 | function fechaConexao(){ |
| 84 | - $this->dbh = null; | |
| 85 | + //$this->dbh = null; | |
| 85 | 86 | } |
| 86 | 87 | /** |
| 87 | 88 | * Aplica a conversao de caracteres em um array ou string conforme o padrao do banco de administracao |
| ... | ... | @@ -227,7 +228,8 @@ class MetaestatInfo{ |
| 227 | 228 | //a parte que contem referencias a coluna com a geometria e marcada com /*SG*//*SG*/ |
| 228 | 229 | // |
| 229 | 230 | //registros da medida da variavel |
| 230 | - $dados = $this->listaMedidaVariavel("",$id_medida_variavel); | |
| 231 | + $dados = $this->listaTabelaMedidaVariavel($id_medida_variavel); | |
| 232 | + $dadosUnidadeDeMedida = $this->listaUnidadeMedida($dados["codigo_unidade_medida"]); | |
| 231 | 233 | if(!empty($dados["filtro"])){ |
| 232 | 234 | if($filtro == ""){ |
| 233 | 235 | $filtro = $dados["filtro"]; |
| ... | ... | @@ -311,13 +313,13 @@ class MetaestatInfo{ |
| 311 | 313 | } |
| 312 | 314 | //verifica o tipo de calculo para agragacao de valores |
| 313 | 315 | $tipoconta = ""; |
| 314 | - if($dados["permitesoma"] == 1 && $direto == false){ | |
| 316 | + if($dadosUnidadeDeMedida["permitesoma"] == 1 && $direto == false){ | |
| 315 | 317 | $tipoconta = "sum"; |
| 316 | 318 | if($agregaregiao == true){ |
| 317 | 319 | $titulo .= " - soma"; |
| 318 | 320 | } |
| 319 | 321 | } |
| 320 | - elseif($dados["permitemedia"] == 1 && $direto == false){ | |
| 322 | + elseif($dadosUnidadeDeMedida["permitemedia"] == 1 && $direto == false){ | |
| 321 | 323 | $tipoconta = "avg"; |
| 322 | 324 | if($agregaregiao == true){ |
| 323 | 325 | $titulo .= " - media"; |
| ... | ... | @@ -567,14 +569,17 @@ class MetaestatInfo{ |
| 567 | 569 | //error_log("-- "); |
| 568 | 570 | //error_log("--xxxxxxxxxxx---- nomecache: ".$arq); |
| 569 | 571 | if(!file_exists($arq)){ |
| 570 | - $meta = $this->listaMedidaVariavel("",$id_medida_variavel); | |
| 572 | +//error_log("----- m->listaTabelaMedidaVariavel"); | |
| 573 | + $meta = $this->listaTabelaMedidaVariavel($id_medida_variavel); | |
| 571 | 574 | //evita agregar regioes qd nao e necessario |
| 572 | 575 | if($meta["codigo_tipo_regiao"] == $codigo_tipo_regiao || empty($codigo_tipo_regiao) ){ |
| 573 | 576 | $agruparpor = ""; |
| 574 | 577 | } |
| 575 | 578 | //$dconexao = $this->listaConexao($meta["codigo_estat_conexao"],true); |
| 579 | +//error_log("----- m->listaConexaoMetaestat"); | |
| 576 | 580 | $dconexao = $this->listaConexaoMetaestat(); |
| 577 | 581 | $conexao = "user=".$dconexao["usuario"]." password=".$dconexao["senha"]." dbname=".$dconexao["bancodedados"]." host=".$dconexao["host"]." port=".$dconexao["porta"].""; |
| 582 | +//error_log("----- m->sqlMedidaVariavel"); | |
| 578 | 583 | $sql = $this->sqlMedidaVariavel( |
| 579 | 584 | $id_medida_variavel, |
| 580 | 585 | $todasascolunas, |
| ... | ... | @@ -587,9 +592,13 @@ class MetaestatInfo{ |
| 587 | 592 | //error_log("-- "); |
| 588 | 593 | //error_log("--xxxxxxxxxxx---- sqlMedidaVariavel: ".$sql); |
| 589 | 594 | if(empty($codigo_tipo_regiao)){ |
| 590 | - $d = $this->listaMedidaVariavel("",$id_medida_variavel); | |
| 591 | - $codigo_tipo_regiao = $d["codigo_tipo_regiao"]; | |
| 595 | + //$d = $this->listaMedidaVariavel("",$id_medida_variavel); | |
| 596 | + $codigo_tipo_regiao = $meta["codigo_tipo_regiao"]; | |
| 592 | 597 | } |
| 598 | + if(empty($codigo_tipo_regiao)){ | |
| 599 | + return false; | |
| 600 | + } | |
| 601 | +//error_log("----- m->listaDadosGeometriaRegiao"); | |
| 593 | 602 | //define o tipo correto de layer |
| 594 | 603 | $dg = $this->listaDadosGeometriaRegiao($codigo_tipo_regiao); |
| 595 | 604 | if(empty($tipolayer)){ |
| ... | ... | @@ -601,8 +610,11 @@ class MetaestatInfo{ |
| 601 | 610 | if($dg["dimension"] == 1){ |
| 602 | 611 | $tipolayer = "line"; |
| 603 | 612 | } |
| 613 | + error_log("++++++ tipolayer ".$tipolayer); | |
| 614 | + error_log("++++++ dimension ".$dg["dimension"]); | |
| 615 | + error_log("++++++ id_medida_variavel ".$id_medida_variavel); | |
| 616 | + //$tipolayer = "polygon"; | |
| 604 | 617 | $sqlf = $sql["sqlmapserver"]; |
| 605 | - | |
| 606 | 618 | $classes = ""; |
| 607 | 619 | if(!empty($id_classificacao)){ |
| 608 | 620 | $classes = $this->listaClasseClassificacao($id_classificacao); |
| ... | ... | @@ -721,6 +733,7 @@ class MetaestatInfo{ |
| 721 | 733 | $dados[] = ' tme "{\"titulo\":\"'.$titulolayer.'\",\"colnome\":\"'.$sql["nomeregiao"].'\",\"colsdata\":[\"'.$sql["colunavalor"].'\"],\"lmax\":\"8000\",\"amax\":\"500000\",\"outlinecolor\":\"-1,-1,-1\",\"numvertices\":\"4\",\"auto\":\"nao\",\"exec\":\"nao\"}"'; |
| 722 | 734 | |
| 723 | 735 | $dados[] = ' TIP "'.$sql["colunavalor"].','.$sql["nomeregiao"].'"'; |
| 736 | + //$dados[] = ' "UTFDATA" "'.$sql["colunavalor"].'"'; | |
| 724 | 737 | $dados[] = ' CLASSE "SIM"'; |
| 725 | 738 | $dados[] = ' permitedownload "SIM"'; |
| 726 | 739 | $dados[] = ' METAESTAT "SIM"'; |
| ... | ... | @@ -906,7 +919,7 @@ class MetaestatInfo{ |
| 906 | 919 | $dados[] = ' NAME "'.$this->nomecache.'"'; |
| 907 | 920 | $dados[] = " TYPE $tipolayer"; |
| 908 | 921 | $dados[] = ' DATA "'.$sqlf.'"'; |
| 909 | - $dados[] = ' CONNECTION "'.$conexao.'"'; | |
| 922 | + $dados[] = ' CONNECTION "metaestat"'; | |
| 910 | 923 | $dados[] = ' CONNECTIONTYPE POSTGIS'; |
| 911 | 924 | $dados[] = ' TEMPLATE "none.htm"'; |
| 912 | 925 | $dados[] = ' STATUS OFF'; |
| ... | ... | @@ -957,7 +970,7 @@ class MetaestatInfo{ |
| 957 | 970 | $dados[] = ' NAME "'.$this->nomecache.'_anno"'; |
| 958 | 971 | $dados[] = " TYPE ANNOTATION"; |
| 959 | 972 | $dados[] = ' DATA "'.$sqlf.'"'; |
| 960 | - $dados[] = ' CONNECTION "'.$conexao.'"'; | |
| 973 | + $dados[] = ' CONNECTION "metaestat"'; | |
| 961 | 974 | $dados[] = ' CONNECTIONTYPE POSTGIS'; |
| 962 | 975 | $dados[] = ' TEMPLATE "none.htm"'; |
| 963 | 976 | $dados[] = ' STATUS OFF'; |
| ... | ... | @@ -1089,7 +1102,7 @@ class MetaestatInfo{ |
| 1089 | 1102 | function valorUnicoMedidaVariavel($id_medida_variavel,$coluna,$filtro=""){ |
| 1090 | 1103 | $sqlf = $this->sqlMedidaVariavel($id_medida_variavel,0,$coluna,"polygon","",false,$filtro); |
| 1091 | 1104 | $sqlf = $sqlf["sqlagrupamento"]; |
| 1092 | - $metaVariavel = $this->listaMedidaVariavel("",$id_medida_variavel); | |
| 1105 | + $metaVariavel = $this->listaTabelaMedidaVariavel($id_medida_variavel); | |
| 1093 | 1106 | if(!empty($metaVariavel["codigo_estat_conexao"])){ |
| 1094 | 1107 | //$c = $this->listaConexao($metaVariavel["codigo_estat_conexao"],true); |
| 1095 | 1108 | $c = $this->listaConexaoMetaestat(); |
| ... | ... | @@ -1373,6 +1386,16 @@ class MetaestatInfo{ |
| 1373 | 1386 | $res = str_replace('"',"'",$res); |
| 1374 | 1387 | return $res; |
| 1375 | 1388 | } |
| 1389 | + function listaTabelaMedidaVariavel($id_medida_variavel=""){ | |
| 1390 | + $sql = "SELECT * "; | |
| 1391 | + $sql .= "FROM ".$this->esquemaadmin."i3geoestat_medida_variavel "; | |
| 1392 | + if($id_medida_variavel != "") { | |
| 1393 | + $sql .= " WHERE id_medida_variavel = $id_medida_variavel "; | |
| 1394 | + } | |
| 1395 | + $res = $this->execSQL($sql,$id_medida_variavel); | |
| 1396 | + $res = str_replace('"',"'",$res); | |
| 1397 | + return $res; | |
| 1398 | + } | |
| 1376 | 1399 | /** |
| 1377 | 1400 | * Lista as regioes vinculadas a uma medida de variavel |
| 1378 | 1401 | * @param id da medida de vriavel |
| ... | ... | @@ -2211,4 +2234,4 @@ class MetaestatInfo{ |
| 2211 | 2234 | } |
| 2212 | 2235 | } |
| 2213 | 2236 | } |
| 2214 | -?> | |
| 2215 | 2237 | \ No newline at end of file |
| 2238 | +?> | ... | ... |