Commit 9fd9dd18128a53cf0ebd79d3c037f1f304e0a2df
1 parent
ade2ba06
Exists in
master
and in
7 other branches
Inclusão opção para remover o filtro de tempo na opção de análise do sistema metaestat
Showing
4 changed files
with
35 additions
and
53 deletions
Show diff stats
admin/admin.db
No preview for this file type
admin/php/classe_metaestat.php
@@ -302,17 +302,7 @@ class Metaestat{ | @@ -302,17 +302,7 @@ class Metaestat{ | ||
302 | $sqlgeo = str_replace("__dadosfiltro__",$dadosfiltro,$sqlgeo); | 302 | $sqlgeo = str_replace("__dadosfiltro__",$dadosfiltro,$sqlgeo); |
303 | //join com a tabela geo | 303 | //join com a tabela geo |
304 | $j = " d.".$dados["colunaidgeo"]."::text = g.".$dadosgeo["identificador"]."::text"; | 304 | $j = " d.".$dados["colunaidgeo"]."::text = g.".$dadosgeo["identificador"]."::text"; |
305 | - /* | ||
306 | - if($filtro){ | ||
307 | - $sqlgeo .= " AND ".$j; | ||
308 | - } | ||
309 | - else{ | ||
310 | - $sqlgeo .= " WHERE ".$j; | ||
311 | - } | ||
312 | - */ | ||
313 | - //if($filtro == false){ | ||
314 | - $sqlgeo .= " WHERE ".$j; | ||
315 | - //} | 305 | + $sqlgeo .= " WHERE ".$j; |
316 | //atencao: cuidado ao alterar essa string pois ') as foo' pode ser usado para replace em outras funcoes | 306 | //atencao: cuidado ao alterar essa string pois ') as foo' pode ser usado para replace em outras funcoes |
317 | $colunas = $this->colunasTabela($dados["codigo_estat_conexao"],$dados["esquemadb"],$dados["tabela"]); | 307 | $colunas = $this->colunasTabela($dados["codigo_estat_conexao"],$dados["esquemadb"],$dados["tabela"]); |
318 | //@TODO - agregacao com uma regiao maior | 308 | //@TODO - agregacao com uma regiao maior |
@@ -346,15 +336,13 @@ class Metaestat{ | @@ -346,15 +336,13 @@ class Metaestat{ | ||
346 | $titulolayer = mb_convert_encoding($titulolayer,"ISO-8859-1",mb_detect_encoding($titulolayer)); | 336 | $titulolayer = mb_convert_encoding($titulolayer,"ISO-8859-1",mb_detect_encoding($titulolayer)); |
347 | $conexao = $this->listaConexao($meta["codigo_estat_conexao"],true); | 337 | $conexao = $this->listaConexao($meta["codigo_estat_conexao"],true); |
348 | $conexao = "user=".$conexao["usuario"]." password=".$conexao["senha"]." dbname=".$conexao["bancodedados"]." host=".$conexao["host"]." port=".$conexao["porta"].""; | 338 | $conexao = "user=".$conexao["usuario"]." password=".$conexao["senha"]." dbname=".$conexao["bancodedados"]." host=".$conexao["host"]." port=".$conexao["porta"].""; |
349 | - //echo $conexao;exit; | ||
350 | - //echo "$id_medida_variavel,$todasascolunas,$agruparpor,$tipolayer,$codigo_tipo_regiao";exit; | ||
351 | $sql = $this->sqlMedidaVariavel($id_medida_variavel,$todasascolunas,$agruparpor,$tipolayer,$codigo_tipo_regiao); | 339 | $sql = $this->sqlMedidaVariavel($id_medida_variavel,$todasascolunas,$agruparpor,$tipolayer,$codigo_tipo_regiao); |
352 | $sqlf = $sql["sqlmapserver"]; | 340 | $sqlf = $sql["sqlmapserver"]; |
353 | if(!empty($filtro)){ | 341 | if(!empty($filtro)){ |
354 | $sqlf = str_replace("__filtro__"," AND ".$filtro." /*FA*//*FA*/ /*FAT*//*FAT*/",$sqlf); | 342 | $sqlf = str_replace("__filtro__"," AND ".$filtro." /*FA*//*FA*/ /*FAT*//*FAT*/",$sqlf); |
355 | } | 343 | } |
356 | else{ | 344 | else{ |
357 | - $sqlf = str_replace("__filtro__","/*FW*//*FW*/ /*FWT*//*FWT*/",$sqlf); | 345 | + $sqlf = str_replace("__filtro__"," /*FA*//*FA*/ /*FAT*//*FAT*/",$sqlf); |
358 | } | 346 | } |
359 | $classes = ""; | 347 | $classes = ""; |
360 | if(!empty($id_classificacao)){ | 348 | if(!empty($id_classificacao)){ |
ferramentas/metaestat/analise.php
@@ -69,6 +69,9 @@ switch (strtoupper($funcao)){ | @@ -69,6 +69,9 @@ switch (strtoupper($funcao)){ | ||
69 | case "APLICAFILTROTEMPO": | 69 | case "APLICAFILTROTEMPO": |
70 | $retorno = analise_aplicaFiltroTempo($map_file,$tema,$pari,$vali,$parf,$valf); | 70 | $retorno = analise_aplicaFiltroTempo($map_file,$tema,$pari,$vali,$parf,$valf); |
71 | break; | 71 | break; |
72 | + case "REMOVEFILTROTEMPO": | ||
73 | + $retorno = analise_removeFiltroTempo($map_file,$tema); | ||
74 | + break; | ||
72 | case "LISTAFILTROTEMPO": | 75 | case "LISTAFILTROTEMPO": |
73 | $retorno = listaFiltroTempoRaiz($map_file,$nivel); | 76 | $retorno = listaFiltroTempoRaiz($map_file,$nivel); |
74 | break; | 77 | break; |
@@ -126,7 +129,6 @@ function analise_listaCamadasFiltroTempo($map_file){ | @@ -126,7 +129,6 @@ function analise_listaCamadasFiltroTempo($map_file){ | ||
126 | } | 129 | } |
127 | return $camadas; | 130 | return $camadas; |
128 | } | 131 | } |
129 | - | ||
130 | function analise_aplicaFiltroTempo($map_file,$tema,$pari,$vali,$parf,$valf){ | 132 | function analise_aplicaFiltroTempo($map_file,$tema,$pari,$vali,$parf,$valf){ |
131 | $mapa = ms_newMapObj($map_file); | 133 | $mapa = ms_newMapObj($map_file); |
132 | $layer = $mapa->getlayerbyname($tema); | 134 | $layer = $mapa->getlayerbyname($tema); |
@@ -152,30 +154,21 @@ function analise_aplicaFiltroTempo($map_file,$tema,$pari,$vali,$parf,$valf){ | @@ -152,30 +154,21 @@ function analise_aplicaFiltroTempo($map_file,$tema,$pari,$vali,$parf,$valf){ | ||
152 | } | 154 | } |
153 | $filtro = implode(" AND ",$filtro); | 155 | $filtro = implode(" AND ",$filtro); |
154 | //substitui as strings de filtro no mapfile | 156 | //substitui as strings de filtro no mapfile |
155 | - //verifica se o sql existente necessita de where | ||
156 | - $where = false; | ||
157 | - if (strpos($data, "/*FW*/") === true){ | ||
158 | - $where = true; | ||
159 | - } | ||
160 | - //se where for verdadeiro, verifica se ja existe o where no filtro normal | ||
161 | - if($where == true){ | ||
162 | - if(strpos($data, "/*FW*//*FW*/") === true){ | ||
163 | - //nesse caso o where deve ir no filtro de tempo | ||
164 | - $s = explode("/*FWT*/",$data); | ||
165 | - $data = $s[0]."/*FWT*/ WHERE ".$filtro." /*FWT*/".$s[2]; | ||
166 | - } | ||
167 | - else{ | ||
168 | - //nesse caso o where ja existe | ||
169 | - $s = explode("/*FWT*/",$data); | ||
170 | - $data = $s[0]."/*FWT*/ ".$filtro." /*FWT*/".$s[2]; | ||
171 | - } | ||
172 | - } | ||
173 | - else{ | ||
174 | - | ||
175 | - } | ||
176 | - //se where for falso, inclui o filtro de tempo normalmente | ||
177 | - | ||
178 | - echo $data;exit; | 157 | + $s = explode("/*FAT*/",$data); |
158 | + $data = $s[0]."/*FAT*/ AND ".$filtro." /*FAT*/".$s[2]; | ||
159 | + $layer->set("data",$data); | ||
160 | + $mapa->save($map_file); | ||
161 | + return "ok"; | ||
162 | +} | ||
163 | +function analise_removeFiltroTempo($map_file,$tema){ | ||
164 | + $mapa = ms_newMapObj($map_file); | ||
165 | + $layer = $mapa->getlayerbyname($tema); | ||
166 | + $data = $layer->data; | ||
167 | + //substitui as strings de filtro no mapfile | ||
168 | + $s = explode("/*FAT*/",$data); | ||
169 | + $data = $s[0]."/*FAT*//*FAT*/".$s[2]; | ||
170 | + $layer->set("data",$data); | ||
171 | + $mapa->save($map_file); | ||
179 | return "ok"; | 172 | return "ok"; |
180 | } | 173 | } |
181 | function analise_listaCamadasMetaestat($map_file){ | 174 | function analise_listaCamadasMetaestat($map_file){ |
@@ -220,20 +213,6 @@ function analise_aplicafiltroregiao($map_file,$codigo_tipo_regiao,$codigo_regiao | @@ -220,20 +213,6 @@ function analise_aplicafiltroregiao($map_file,$codigo_tipo_regiao,$codigo_regiao | ||
220 | $data = $s[0]."/*FA*/ AND ".$filtro." /*FA*/".$s[2]; | 213 | $data = $s[0]."/*FA*/ AND ".$filtro." /*FA*/".$s[2]; |
221 | } | 214 | } |
222 | } | 215 | } |
223 | - else{ | ||
224 | - $s = explode("/*FW*/",$data); | ||
225 | - if(count($s) > 1){ | ||
226 | - if($tipo == ""){ | ||
227 | - $data = $s[0]."/*FW*//*FW*/".$s[2]; | ||
228 | - } | ||
229 | - else{ | ||
230 | - | ||
231 | - $data = $s[0]."/*FW*/ WHERE ".$filtro." /*FW*/".$s[2]; | ||
232 | - //para o caso de ja existir a clausula where no filtro de tempo | ||
233 | - $data = str_replace("/*FWT*/ WHERE ","/*FWT*/ "); | ||
234 | - } | ||
235 | - } | ||
236 | - } | ||
237 | $l->set("data",$data); | 216 | $l->set("data",$data); |
238 | } | 217 | } |
239 | } | 218 | } |
ferramentas/metaestat/index.js
@@ -305,6 +305,7 @@ i3GEOF.metaestat = { | @@ -305,6 +305,7 @@ i3GEOF.metaestat = { | ||
305 | i3GEO.php.listaValoresParametroMedidaVariavel(id_parametro_medida,temp); | 305 | i3GEO.php.listaValoresParametroMedidaVariavel(id_parametro_medida,temp); |
306 | }, | 306 | }, |
307 | adicionaFiltro: function(){ | 307 | adicionaFiltro: function(){ |
308 | + i3GEO.janela.tempoMsg("O filtro de tempo não modifica as camadas que foram criadas considerando-se uma data específica"); | ||
308 | var p,pini,pfim, | 309 | var p,pini,pfim, |
309 | temp = function(retorno){ | 310 | temp = function(retorno){ |
310 | i3GEO.janela.fechaAguarde("aguardeAplicaFiltro"); | 311 | i3GEO.janela.fechaAguarde("aguardeAplicaFiltro"); |
@@ -330,6 +331,20 @@ i3GEOF.metaestat = { | @@ -330,6 +331,20 @@ i3GEOF.metaestat = { | ||
330 | } | 331 | } |
331 | i3GEO.util.ajaxGet(p,temp); | 332 | i3GEO.util.ajaxGet(p,temp); |
332 | }, | 333 | }, |
334 | + removeFiltro: function(){ | ||
335 | + var p, | ||
336 | + temp = function(retorno){ | ||
337 | + i3GEO.janela.fechaAguarde("aguardeAplicaFiltro"); | ||
338 | + i3GEO.Interface.atualizaMapa(); | ||
339 | + }; | ||
340 | + i3GEO.janela.AGUARDEMODAL = true; | ||
341 | + i3GEO.janela.abreAguarde("aguardeAplicaFiltro","Aplicando..."); | ||
342 | + i3GEO.janela.AGUARDEMODAL = false; | ||
343 | + p = i3GEO.configura.locaplic+"/ferramentas/metaestat/analise.php?funcao=removeFiltroTempo" + | ||
344 | + "&tema="+$i("i3GEOF.filtraperiodo.comboCamada").value + | ||
345 | + "&g_sid="+i3GEO.configura.sid; | ||
346 | + i3GEO.util.ajaxGet(p,temp); | ||
347 | + }, | ||
333 | pegaParametros:function(id){ | 348 | pegaParametros:function(id){ |
334 | var c = $i(id).getElementsByTagName("select"), | 349 | var c = $i(id).getElementsByTagName("select"), |
335 | n = c.length, | 350 | n = c.length, |