Commit 2f0ecbf62b9b62492aa77e0bc85b62823c4a7436

Authored by Edmar Moretti
1 parent 8e89acdf

--no commit message

admin/admin.db
No preview for this file type
admin/php/classe_metaestat.php
... ... @@ -432,9 +432,6 @@ class Metaestat{
432 432 //outros metadados tambem sao utilizados, veja em admin/php/editormapfile.php
433 433 $arq = $this->dir_tmp."/".$this->nomecache.".map";
434 434 if(!file_exists($arq)){
435   - if(empty($tipolayer)){
436   - $tipolayer = "polygon";
437   - }
438 435 $meta = $this->listaMedidaVariavel("",$id_medida_variavel);
439 436 //evita agregar regioes qd nao e necessario
440 437 if($meta["codigo_tipo_regiao"] == $codigo_tipo_regiao || empty($codigo_tipo_regiao) ){
... ... @@ -450,6 +447,14 @@ class Metaestat{
450 447 $d = $this->listaMedidaVariavel("",$id_medida_variavel);
451 448 $codigo_tipo_regiao = $d["codigo_tipo_regiao"];
452 449 }
  450 + //define o tipo correto de layer
  451 + $dg = $this->listaDadosGeometriaRegiao($codigo_tipo_regiao);
  452 + if(empty($tipolayer) || $dg["dimension"] == 0){
  453 + $tipolayer = "point";
  454 + }
  455 + if($dg["dimension"] == 1){
  456 + $tipolayer = "line";
  457 + }
453 458 $sqlf = $sql["sqlmapserver"];
454 459 //echo $sqlf;exit;
455 460 if(!empty($filtro)){
... ... @@ -567,6 +572,14 @@ class Metaestat{
567 572 }
568 573 if(!file_exists($arq)){
569 574 $tipolayer = "polygon";
  575 + //define o tipo correto de layer
  576 + $dg = $this->listaDadosGeometriaRegiao($codigo_tipo_regiao);
  577 + if(empty($tipolayer) || $dg["dimension"] == 0){
  578 + $tipolayer = "point";
  579 + }
  580 + if($dg["dimension"] == 1){
  581 + $tipolayer = "line";
  582 + }
570 583 $meta = $this->listaTipoRegiao($codigo_tipo_regiao);
571 584 $titulolayer = $meta["nome_tipo_regiao"];
572 585 $titulolayer = mb_convert_encoding($titulolayer,"ISO-8859-1",mb_detect_encoding($titulolayer));
... ... @@ -603,8 +616,16 @@ class Metaestat{
603 616 $dados[] = ' NAME ""';
604 617 $dados[] = ' STYLE';
605 618 $dados[] = ' OUTLINECOLOR '.$outlinecolor;
606   - $dados[] = ' COLOR -1 -1 -1';
  619 +
607 620 $dados[] = ' WIDTH '.$width;
  621 + if(strtolower($tipolayer) == "point"){
  622 + $dados[] = ' SYMBOL "ponto"';
  623 + $dados[] = ' SIZE 5';
  624 + $dados[] = ' COLOR 0 0 0 ';
  625 + }
  626 + else{
  627 + $dados[] = ' COLOR -1 -1 -1';
  628 + }
608 629 $dados[] = ' END';
609 630 //$dados[] = ' STYLE';
610 631 //$dados[] = ' OUTLINECOLOR -1 -1 -1';
... ... @@ -1578,6 +1599,22 @@ class Metaestat{
1578 1599 }
1579 1600 return $r;
1580 1601 }
  1602 + function listaDadosGeometriaRegiao($codigo_tipo_regiao){
  1603 + //pega a tabela, esquema e conexao para acessar os dados da regiao
  1604 + $regiao = $this->listaTipoRegiao($codigo_tipo_regiao);
  1605 + $c = $this->listaConexao($regiao["codigo_estat_conexao"],true);
  1606 + $dbh = new PDO('pgsql:dbname='.$c["bancodedados"].';user='.$c["usuario"].';password='.$c["senha"].';host='.$c["host"].';port='.$c["porta"]);
  1607 + $c = $regiao["colunageo"];
  1608 + $s = "ST_dimension($c) as dimension ";
  1609 + $sql = "select $s,".$regiao["colunanomeregiao"]." as nome_regiao,".$regiao["identificador"]." as identificador_regiao from ".$regiao["esquemadb"].".".$regiao["tabela"];
  1610 + $sql .= " limit 1";
  1611 + $q = $dbh->query($sql,PDO::FETCH_ASSOC);
  1612 + $r = array();
  1613 + if($q){
  1614 + $r = $q->fetchAll()[0];
  1615 + }
  1616 + return $r;
  1617 + }
1581 1618 function listaAgregaRegiao($codigo_tipo_regiao,$id_agregaregiao=""){
1582 1619 $sql = "select * from ".$this->esquemaadmin."i3geoestat_agregaregiao ";
1583 1620 if($id_agregaregiao != ""){
... ...
admin/php/metaestat_uploadshp_submit.php
... ... @@ -72,11 +72,12 @@ if (isset($_FILES['i3GEOuploadshp']['name'])){
72 72 $colunasTemp = $layer->getItems();
73 73 $colunas = array();
74 74 foreach($colunasTemp as $c){
75   - if(!is_numeric($c)){
  75 + //abaixo gid e forçado a entrar
  76 + if(!is_numeric($c) && strtolower($c) != "gid"){
76 77 $colunas[] = $c;
77 78 }
78 79 }
79   -
  80 +
80 81 echo "<br>Numshapes: ". $numshapes;
81 82 $tipo = $shapefileObj->type;
82 83 echo "<br>Tipo: ". $tipo;
... ... @@ -142,7 +143,7 @@ if (isset($_FILES[&#39;i3GEOuploadshp&#39;][&#39;name&#39;])){
142 143 } catch (PDOException $e) {
143 144 echo 'Connection failed: ' . $e->getMessage();
144 145 }
145   -
  146 +
146 147 foreach($sqltabela as $linha){
147 148 try {
148 149 $dbh->query($linha);
... ...