Nouveau traitement de supprAnnonce

This commit is contained in:
Michael RICOIS 2012-01-04 15:40:00 +00:00
parent 9a353e731b
commit 0661b2caa5

View File

@ -949,11 +949,11 @@ class Saisie extends WsScore
switch ($source)
{
case 0:
$idAnn=preg_replace('/^0\./','', ''.$idAnn)*1;
$idAnn = preg_replace('/^0\./','', ''.$idAnn)*1;
$table = 'annonces';
break;
case 1:
if ($idAnn<0){
if (intval($idAnn)<0){
$error->errnum = 1;
$error->errmsg = 'Code annonce Incorrect';
} else {
@ -971,7 +971,7 @@ class Saisie extends WsScore
$error->errmsg = 'Cas non géré';
break;
}
if ($idAnn>0 && $iDb->update( $table, array(
if (intval($idAnn)>0 && $iDb->update($table, array(
'dateSuppr' => date('YmdHis'),
'idSuppr' => $this->tabInfoUser['id']),
"id=$idAnn $strSql", false))
@ -1028,8 +1028,8 @@ class Saisie extends WsScore
switch ($source)
{
case 0:
$idAnn=preg_replace('/^0\./','', ''.$idAnn)*1;
$table='annonces';
$idAnn = preg_replace('/^0\./','', ''.$idAnn)*1;
$table = 'annonces';
break;
case 1:
if (intval($idAnn)<0){
@ -1037,11 +1037,11 @@ class Saisie extends WsScore
$error->errmsg = 'Code annonce Incorrect';
} else {
if (intval($sirenIn)>0) $strSql.="AND siren=$sirenIn";
$table='bodacc_detail';
$table = 'bodacc_detail';
}
break;
case 3:
$table='asso';
$table = 'asso';
break;
case 2:
case 4:
@ -1053,37 +1053,87 @@ class Saisie extends WsScore
if (intval($idAnn)>0) {
$res = $iDb->select($table, '*', "id=$idAnn $strSql", false, MYSQL_ASSOC);
if (count($res)==0) {
$error->errnum = 1;
$error->errmsg = 'Annonce inexistante';
} else {
$annonce = $res[0];
$annonce['siren'] = $sirenOut;
$annonce['sirenValide']=2;
$annonce['dateInsert']=date('YmdHis');
if ($source==0) {
/* Si table = asso => UPDATE de la ligne */
if ($table == 'asso'){
$data = array( 'siren' => $sirenOut );
if ($iDb->update($table, $data, "id=".$idAnn, true, true)){
debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__);
$result = true;
} else {
debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__);
$error->errnum = 1;
$error->errmsg = "Duplication de l'annonce impossible";
}
}
/* Si sirenIn = 0 et table = bodacc_detail => INSERT + UPDATE */
elseif ($sirenIn == 0 && $table == 'bodacc_detail' ){
$annonce = $res[0];
$annonce['siren'] = $sirenOut;
$annonce['sirenValide'] = 2;
$annonce['dateInsert'] = date('YmdHis');
$annonce['idSirenage'] = $this->tabInfoUser['id'];
$annonce['nic'] = $nicOut;
if ($nicOut>0) $annonce['nicValide'] = 2;
if ($iDb->insert($table, $annonce, true, true)) {
debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__);
$result = true;
$data = array(
'idSuppr' => $this->tabInfoUser['id'],
'dateSuppr' => date('YmdHis'),
);
$iDb->update($table, $data, "id=$idAnn $strSql", true, true);
} else {
debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__);
$error->errnum = 1;
$error->errmsg = "Duplication de l'annonce impossible";
}
}
/* si sirenIn != 0 et table = bodacc_detail => insert */
elseif ($sirenIn != 0 && $table == 'bodacc_detail'){
$annonce = $res[0];
$annonce['siren'] = $sirenOut;
$annonce['sirenValide'] = 2;
$annonce['dateInsert'] = date('YmdHis');
$annonce['idSirenage'] = $this->tabInfoUser['id'];
$annonce['nic'] = $nicOut;
if ($nicOut>0) $annonce['nicValide'] = 2;
if ($iDb->insert($table, $annonce, true, true)) {
debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__);
$result = true;
} else {
debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__);
$error->errnum = 1;
$error->errmsg = "Duplication de l'annonce impossible";
}
}
/* Si table = annonces => INSERT */
elseif ($table == 'annonces'){
$annonce = $res[0];
// Suppression des zones inexistantes dans la table ou devant être vides
unset($annonce['id']);
unset($annonce['nic']);
$annonce['idSaisie']=$this->tabInfoUser['id'];
} else {
$annonce['idSirenage']=$this->tabInfoUser['id'];
$annonce['nic']=$nicOut;
if ($nicOut>0) $annonce['nicValide']=2;
}
if ($iDb->insert($table, $annonce, true, true)) {
debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__);
$result = true;
} else {
debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__);
$error->errnum = 1;
$error->errmsg = 'Duplication de l\'annonce impossible';
$annonce['idSaisie'] = $this->tabInfoUser['id'];
if ($iDb->insert($table, $annonce, true, true)) {
debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__);
$result = true;
} else {
debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__);
$error->errnum = 1;
$error->errmsg = "Duplication de l'annonce impossible";
}
}
}
} else {
debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__);
$error->errnum = 1;
$error->errmsg = 'Duplication de l\'annonce impossible';
$error->errmsg = "Duplication de l'annonce impossible";
}
}
$output = new DupliqueAnnonceReturn();