880 |
include ("../dyn/var.inc"); |
include ("../dyn/var.inc"); |
881 |
if(!isset($sig)) $sig=0; |
if(!isset($sig)) $sig=0; |
882 |
if(!isset($auto_pos)) $auto_pos=0; |
if(!isset($auto_pos)) $auto_pos=0; |
883 |
|
$this->addToLog("trigger valeur sig :".$sig, EXTRA_VERBOSE_MODE); |
884 |
|
$this->addToLog("trigger valeur auto_pos :".$auto_pos, EXTRA_VERBOSE_MODE); |
885 |
$id=$this->valF['dossier']; // id n est pas valorise en ajout |
$id=$this->valF['dossier']; // id n est pas valorise en ajout |
886 |
if($sig==1 ){ |
if($sig==1 ){ |
887 |
if($val['parcelle']!='') |
if($val['parcelle']!='') |
896 |
include ("../dyn/var.inc"); |
include ("../dyn/var.inc"); |
897 |
if(!isset($sig)) $sig=0; |
if(!isset($sig)) $sig=0; |
898 |
if(!isset($auto_pos)) $auto_pos=0; |
if(!isset($auto_pos)) $auto_pos=0; |
899 |
|
$this->addToLog("trigger valeur sig :".$sig, EXTRA_VERBOSE_MODE); |
900 |
|
$this->addToLog("trigger valeur auto_pos :".$auto_pos, EXTRA_VERBOSE_MODE); |
901 |
// si la parcelle est changée |
// si la parcelle est changée |
902 |
if($sig==1 and $val['parcelle']!=$val['parcelle_archive']){ |
if($sig==1 and $val['parcelle']!=$val['parcelle_archive']){ |
903 |
if($val['parcelle']!='') |
if($val['parcelle']!='') |
911 |
// de maniere automatique |
// de maniere automatique |
912 |
$projection = $db -> getOne("select srid from geometry_columns where f_table_name='dossier'"); |
$projection = $db -> getOne("select srid from geometry_columns where f_table_name='dossier'"); |
913 |
$sql= "select astext(centroid(geom)) from parcelle where parcelle ='".$val["parcelle"]."'"; |
$sql= "select astext(centroid(geom)) from parcelle where parcelle ='".$val["parcelle"]."'"; |
914 |
|
$this->addToLog("recherche centroid parcelle :".$sql, VERBOSE_MODE); |
915 |
$geom = $db -> getOne($sql); |
$geom = $db -> getOne($sql); |
916 |
if($geom!=''){ // la parcelle est exitante dans la table / vue parcelle |
if($geom!=''){ // la parcelle est exitante dans la table / vue parcelle |
917 |
$sql ="update dossier set geom =geometryfromtext('".$geom."', ".$projection." ) where dossier ='".$id."'"; |
$sql ="update dossier set geom =geometryfromtext('".$geom."', ".$projection." ) where dossier ='".$id."'"; |
918 |
|
$this->addToLog("sig_interne maj geom :".$sql, VERBOSE_MODE); |
919 |
$res = $db -> query($sql); |
$res = $db -> query($sql); |
920 |
if (database :: isError($res)){ |
if (database :: isError($res)){ |
921 |
die($res->getMessage()."erreur ".$sql); |
die($res->getMessage()."erreur ".$sql); |
929 |
if($this->maj ==1){ // en maj mettre a null la geometrie si parcelle changée inexistante |
if($this->maj ==1){ // en maj mettre a null la geometrie si parcelle changée inexistante |
930 |
$sql ="update dossier set geom = null where dossier ='".$id."'"; |
$sql ="update dossier set geom = null where dossier ='".$id."'"; |
931 |
$res = $db -> query($sql); |
$res = $db -> query($sql); |
932 |
|
$this->addToLog("requete sig_interne maj parcelle inexistante :".$sql, VERBOSE_MODE); |
933 |
if (database :: isError($res)) |
if (database :: isError($res)) |
934 |
die($res->getMessage()."erreur ".$sql); |
die($res->getMessage()."erreur ".$sql); |
935 |
} |
} |
941 |
// recherche du pos automatique dans le geom de la table / vue pos |
// recherche du pos automatique dans le geom de la table / vue pos |
942 |
$sql="select pos from pos WHERE ST_contains(geom, geometryfromtext('".$geom."', ".$projection."))"; |
$sql="select pos from pos WHERE ST_contains(geom, geometryfromtext('".$geom."', ".$projection."))"; |
943 |
$pos = $db -> getOne($sql); |
$pos = $db -> getOne($sql); |
944 |
|
$this->addToLog("recherche auto_pos :".$sql, VERBOSE_MODE); |
945 |
if($pos!=''){ |
if($pos!=''){ |
946 |
$sql1 ="update dossier set pos = '".$pos."' where dossier = '".$id."'"; |
$sql1 ="update dossier set pos = '".$pos."' where dossier = '".$id."'"; |
947 |
$res1 = $db -> query($sql1); |
$res1 = $db -> query($sql1); |
948 |
|
$this->addToLog("maj auto_pos :".$sql1, VERBOSE_MODE); |
949 |
if (database:: isError($res1)){ // ok |
if (database:: isError($res1)){ // ok |
950 |
die($res1->getMessage()."erreur ".$sql1); |
die($res1->getMessage()."erreur ".$sql1); |
951 |
}else{ |
}else{ |