Ajout méthode setInfosEntrep, issue #0000379

This commit is contained in:
Michael RICOIS 2010-11-23 15:12:32 +00:00
parent cdf71413c9
commit f863b90b67
3 changed files with 338 additions and 296 deletions

View File

@ -53,4 +53,5 @@ Type.51 = "ListeClientsReturn"
Type.52 = "Client"
Type.53 = "SetMandataireReturn"
Type.54 = "SupprAnnonceCollecteReturn"
Type.55 = "SetInfosLoginReturn"
Type.55 = "SetInfosLoginReturn"
Type.56 = "SetInfosEntrepReturn"

View File

@ -889,4 +889,12 @@ class SetInfosLoginReturn
public $error;
/** @var boolean */
public $result;
}
}
class SetInfosEntrepReturn
{
/** @var ErrorType */
public $error;
/** @var boolean */
public $result;
}

View File

@ -114,8 +114,9 @@ class WsInterne
* @param string $siret
* @param int $idEntreprise
* @param array $tabInfos
* @return SetInfosEntrepReturn
*/
protected function setInfosEntrep( $siret, $idEntreprise, $tabInfos )
public function setInfosEntrep( $siret, $idEntreprise, $tabInfos )
{
//Authentification
if (!$this->checkAuth($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'], $_SERVER['REMOTE_ADDR']))
@ -124,315 +125,347 @@ class WsInterne
exit;
}
//Initialisation
$tabRet=array();
$iBodacc=new MBodacc();
global $iDbCrm, $tabInfoUser;
if ($tabInfoUser['idClient']<>1)
return array('error'=>array('errnum'=>464561, 'errmsg'=>'Code Client Incorrect'), 'result'=>0);
$tabRet = array();
$iBodacc = new MBodacc();
$result = false;
$siren=substr(''.$siret,0,9)*1;
$iDb=new WDB();
debugLog('W', print_r($tabInfos,true), __LINE__, __FILE__, __FUNCTION__, __CLASS__);
$tabIdentite=$tabInfos['identite'];
$tabJugement=$tabInfos['jugement'];
$tabActio =$tabInfos['actionnaire'];
$tabParti =$tabInfos['participation'];
$tabScores =$tabInfos['score'];
/** Mise à jour de l'identité
**/
if (trim(strtolower($tabIdentite['web']))=='http://') $web='';
else $web=trim($tabIdentite['web']);
$tabUpdate=array( 'isin'=>trim($tabIdentite['isin']),
'tel'=>trim($tabIdentite['tel']),
'fax'=>trim($tabIdentite['fax']),
'web'=>$web,
'mail'=>trim($tabIdentite['mail']),
'activite'=>stripslashes(trim($tabIdentite['activite'])),
'sirenDoublon'=>substr(str_replace(' ','',strtr($tabIdentite['sirenDoublon'], '"\'./- ,\*#()',' ')),0,9),
);
/** @todo non traitées : [capital_mt] => 335400, [capital_dev] => EUR **/
if (!$iDb->update('infos_entrep', $tabUpdate, "siren='$siren'"))
if (!$iDb->insert('infos_entrep', array_merge(array('siren'=>$siren),$tabUpdate)))
return array('error'=>array('errnum'=>76841, 'errmsg'=>'Mise a jour impossible'), 'result'=>0);
if (isset($tabIdentite['moisOppositionInsee']) && $tabIdentite['moisOppositionInsee']>0 &&
$tabIdentite['moisOppositionInsee']<=(date('Ym')*1)) {
$iDb2=new WDB('insee');
if (!$iDb2->insert('insee_nondiff', array('siren'=>$siren, 'mois'=>$tabIdentite['moisOppositionInsee'])))
if ($iDb2->getLastErrorNum()<>1062)
@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des oppositions de la sphère commerciale INSEE pour $siren au mois de ".$tabIdentite['moisOppositionInsee']." : ".EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError());
if ($this->tabInfoUser['idClient']<>1)
{
$error->errnum = 1;
$error->errmsg = 'Code Client Incorrect';
}
else
{
$siren = substr($siret,0,9)*1;
$iDb = new WDB();
debugLog('W', print_r($tabInfos,true), __LINE__, __FILE__, __FUNCTION__, __CLASS__);
$tabIdentite=$tabInfos['identite'];
$tabJugement=$tabInfos['jugement'];
$tabActio =$tabInfos['actionnaire'];
$tabParti =$tabInfos['participation'];
$tabScores =$tabInfos['score'];
if (isset($tabIdentite['domiciliataire']) && $tabIdentite['domiciliataire']=='oui' && $siren>1000) {
if (!$iDb->query(
"INSERT IGNORE INTO jo.tabAdrDom (siren,nic,siege, etActif, nom, sigle, enseigne, adrNum, adrBtq, adrTypVoie, adrLibVoie, ville, cp, depComEt, adrComp, cj, apen,apet, dateInsert)
SELECT siren, nic, siege, actif AS etActif, raisonSociale AS nom, sigle, enseigne, adr_num as adrNum, adr_btq AS adrBtq, adr_typeVoie AS adrTypVoie, adr_libVoie AS adrLibVoie, adr_ville AS ville, adr_cp AS cp, CONCAT(adr_dep,adr_com) AS depComEt, adr_comp AS adrComp, cj, ape_entrep AS apen, ape_etab AS apet, NOW() as dateInsert
FROM jo.etablissements WHERE siren=$siren;", false))
@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription comme entreprise de domiciliation : ".EOL.print_r($tabIdentite, true).EOL.$iDb->getLastError());
}
/** Mise à jour de l'identité **/
if (trim(strtolower($tabIdentite['web']))=='http://') $web='';
else $web=trim($tabIdentite['web']);
$tabUpdate=array(
'isin'=>trim($tabIdentite['isin']),
'tel'=>trim($tabIdentite['tel']),
'fax'=>trim($tabIdentite['fax']),
'web'=>$web,
'mail'=>trim($tabIdentite['mail']),
'activite'=>stripslashes(trim($tabIdentite['activite'])),
'sirenDoublon'=>substr(str_replace(' ','',strtr($tabIdentite['sirenDoublon'], '"\'./- ,\*#()',' ')),0,9),
);
/** Insertion des scores
**/
if (isset($tabScores['encours']) || isset($tabScores['scoreSolv']) ||
isset($tabScores['scoreDir']) || isset($tabScores['scoreConf'])) {
$tabUpdate=array();
$setScore=false;
if (isset($tabScores['encours']) && $tabScores['encours']<>'') { $tabUpdate['encours'] =$tabScores['encours']*1; $setScore=true; }
if (isset($tabScores['scoreSolv']) && $tabScores['scoreSolv']<>'') { $tabUpdate['scoreSolv']=$tabScores['scoreSolv']*1; $setScore=true; }
if (isset($tabScores['scoreDir']) && $tabScores['scoreDir']<>'') { $tabUpdate['scoreDir'] =$tabScores['scoreDir']*1; $setScore=true; }
if (isset($tabScores['scoreConf']) && $tabScores['scoreConf']<>'') { $tabUpdate['scoreConf']=$tabScores['scoreConf']*1; $setScore=true; }
if ($setScore)
// Mise à jour des Cute Offs
if (!$iDb->update('scores_cutoff', $tabUpdate, "siren=$siren"))
if (!$iDb->insert('scores_cutoff', array_merge(array('siren'=>$siren,
'dateInsert'=>date('Ymd')),$tabUpdate)))
@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", print_r($tabScores, true).EOL.$iDb->getLastError());
}
/** Insertion du jugement
**/
//print_r($tabJugement);die();
if (isset($tabJugement['even']) && is_array($tabJugement['even']) && count($tabJugement['even'])>0) {
$idAdmin=str_replace('m','',trim($tabJugement['admin']))*1;
$idMand =str_replace('m','',trim($tabJugement['mand']))*1;
$idOppo =str_replace('m','',trim($tabJugement['oppo']))*1;
/** Nom et Identifiant de l'opérateur de saisie **/
$rep=$iDbCrm->select('utilisateurs', 'id', "login='".$tabInfoUser['login']."'");
$idUser=$rep[0][0];
$tabSource=explode('_',$tabJugement['source']);
$source=@$tabSource[0];
$numJal=@$tabSource[1];
$dateSource=WDate::dateT('d/m/Y', 'Ymd', trim($tabJugement['dateParution']))*1;
if ($dateSource<20000101)
$dateSource=date('YmdHis');
$montant=trim(preg_replace('/[^0-9]/', '', $tabJugement['montant']))*1;
$actionsMt=trim(preg_replace('/[^0-9]/', '', $tabJugement['actionsMt']))*1;
$actionsNb=trim(preg_replace('/[^0-9]/', '', $tabJugement['actionsNb']))*1;
if ($montant>0 && ($actionsNb>0 || $actionsMt>0)) {
if ($actionsNb>0) $actionsMt=$montant/$actionsNb;
elseif ($actionsMt>0) $actionsNb=$montant/$actionsMt;
/** @todo non traitées : [capital_mt] => 335400, [capital_dev] => EUR **/
if (!$iDb->update('infos_entrep', $tabUpdate, "siren='$siren'")){
if (!$iDb->insert('infos_entrep', array_merge(array('siren'=>$siren),$tabUpdate))){
$error->errnum = 1;
$error->errmsg = 'Mise a jour impossible';
$output = new SetInfosEntrepReturn();
$output->error = $error;
$output->result = $result;
return $output;
exit;
}
}
$strDir='';
if ($tabJugement['nouvDir1Fonc']*1>0) {
$strDir.=$iBodacc->getFctDir($tabJugement['nouvDir1Fonc']*1).' : '.$tabJugement['nouvDir1Genre'].' '.ucwords(strtolower($tabJugement['nouvDir1Pre'])).' '.strtoupper($tabJugement['nouvDir1Nom']).', domicilié à '.$tabJugement['nouvDir1Dom'].'. ';
}
if ($tabJugement['nouvDir2Fonc']*1>0) {
$strDir.=$iBodacc->getFctDir($tabJugement['nouvDir2Fonc']*1).' : '.$tabJugement['nouvDir2Genre'].' '.ucwords(strtolower($tabJugement['nouvDir2Pre'])).' '.strtoupper($tabJugement['nouvDir2Nom']).', domicilié à '.$tabJugement['nouvDir2Dom'].'. ';
}
if ($tabJugement['nouvDir3Fonc']*1>0) {
$strDir.=$iBodacc->getFctDir($tabJugement['nouvDir3Fonc']*1).' : '.$tabJugement['nouvDir3Genre'].' '.ucwords(strtolower($tabJugement['nouvDir3Pre'])).' '.strtoupper($tabJugement['nouvDir3Nom']).', domicilié à '.$tabJugement['nouvDir3Dom'].'. ';
if (isset($tabIdentite['moisOppositionInsee']) && $tabIdentite['moisOppositionInsee']>0 &&
$tabIdentite['moisOppositionInsee']<=(date('Ym')*1))
{
$iDb2 = new WDB('insee');
if (!$iDb2->insert('insee_nondiff', array('siren'=>$siren, 'mois'=>$tabIdentite['moisOppositionInsee'])))
if ($iDb2->getLastErrorNum()<>1062)
@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des oppositions de la sphère commerciale INSEE pour $siren au mois de ".$tabIdentite['moisOppositionInsee']." : ".EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError());
}
if (trim($tabJugement['nouvAdrCp'])<>'')
$strAdr=stripslashes(trim($tabJugement['nouvAdr']).', '.trim($tabJugement['nouvAdrCp']).' '.trim($tabJugement['nouvAdrVille']));
else
$strAdr='';
if (isset($tabIdentite['domiciliataire']) && $tabIdentite['domiciliataire']=='oui' && $siren>1000)
{
if (!$iDb->query(
"INSERT IGNORE INTO jo.tabAdrDom (siren,nic,siege, etActif, nom, sigle, enseigne, adrNum, adrBtq, adrTypVoie, adrLibVoie, ville, cp, depComEt, adrComp, cj, apen,apet, dateInsert)
SELECT siren, nic, siege, actif AS etActif, raisonSociale AS nom, sigle, enseigne, adr_num as adrNum, adr_btq AS adrBtq, adr_typeVoie AS adrTypVoie, adr_libVoie AS adrLibVoie, adr_ville AS ville, adr_cp AS cp, CONCAT(adr_dep,adr_com) AS depComEt, adr_comp AS adrComp, cj, ape_entrep AS apen, ape_etab AS apet, NOW() as dateInsert
FROM jo.etablissements WHERE siren=$siren;", false))
@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription comme entreprise de domiciliation : ".EOL.print_r($tabIdentite, true).EOL.$iDb->getLastError());
}
$nic=$tabJugement['nic']*1;
$entrep=$this->iInsee->getIdentiteLight($siren, $nic);
if ($nic>0 && $tabJugement['even'][0]==6700 && $entrep['Siege']==0)
// Radiation d'un établissement
$tabJugement['even'][0]=6600;
/** Insertion des scores **/
if (isset($tabScores['encours']) || isset($tabScores['scoreSolv']) ||
isset($tabScores['scoreDir']) || isset($tabScores['scoreConf']))
{
$tabUpdate=array();
$setScore=false;
if (isset($tabScores['encours']) && $tabScores['encours']<>'') { $tabUpdate['encours'] =$tabScores['encours']*1; $setScore=true; }
if (isset($tabScores['scoreSolv']) && $tabScores['scoreSolv']<>'') { $tabUpdate['scoreSolv']=$tabScores['scoreSolv']*1; $setScore=true; }
if (isset($tabScores['scoreDir']) && $tabScores['scoreDir']<>'') { $tabUpdate['scoreDir'] =$tabScores['scoreDir']*1; $setScore=true; }
if (isset($tabScores['scoreConf']) && $tabScores['scoreConf']<>'') { $tabUpdate['scoreConf']=$tabScores['scoreConf']*1; $setScore=true; }
if ($setScore)
// Mise à jour des Cute Offs
if (!$iDb->update('scores_cutoff', $tabUpdate, "siren=$siren"))
if (!$iDb->insert('scores_cutoff', array_merge(array('siren'=>$siren,
'dateInsert'=>date('Ymd')),$tabUpdate)))
@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", print_r($tabScores, true).EOL.$iDb->getLastError());
}
$tabEven=array();
for($i=1; isset($tabJugement['even'][$i]);$i++)
$tabEven[]=$tabJugement['even'][$i];
$strEven=implode(';',$tabEven);
$tabUpdate=array( 'strEven'=> $strEven,
'sirenValide'=> $this->iInsee->valideSiren($siren),
'dateCessationPaiement'=> WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement['datePaie'])),
'dateEffetFinP'=> WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement['dateFinPeriode'])),
'tribunal'=> trim($tabJugement['tribunal']),
'montant'=> $montant,
'actionsNb'=> $actionsNb,
'inter1type'=> 'A',
'inter1id'=> $idAdmin,
'inter1nom'=> $this->iInsee->getMandatairesParId($idAdmin),
'inter2type'=> 'M',
'inter2id'=> $idMand,
'inter2nom'=> $this->iInsee->getMandatairesParId($idMand),
'inter3type'=> 'O',
'inter3id'=> $idOppo,
'inter3nom'=> $this->iInsee->getMandatairesParId($idOppo),
'complement'=> stripslashes(trim($tabJugement['comp'])),
'nouvActivite'=> stripslashes(trim($tabJugement['nouvActivite'])),
'nouvDir'=> stripslashes(trim($strDir)),
'nouvAdr'=> $strAdr,
'nouvFJ'=> trim($tabJugement['nouvFJ']),
'raisonSociale'=> $entrep['Nom'],
'adresse'=> $entrep['Adresse'],
'codePostal'=> $entrep['CP'],
'ville'=> $entrep['Ville'],
'source'=> $source,
'idSaisie'=> $idUser,
'parutionIdJal'=> $numJal,
'parutionNum'=> $tabJugement['numParution'],
);
$dateJuge=WDate::dateT('d/m/Y','Y-m-d',trim($tabJugement['dateJuge']));
$tabInsert=array_merge($tabUpdate,array('siren'=>$siren,
'dateJugement'=>$dateJuge,
'typeEven'=> $tabJugement['even'][0],
'dateSource'=>$dateSource,
));
if (!$iDb->insert('annonces', array_merge($tabInsert,array('dateInsert'=>date('YmdHis'))), true))
if (!$iDb->update('annonces', $tabUpdate, "siren=$siren AND dateJugement='$dateJuge' AND typeEven=".$tabJugement['even'][0], true))
return array('error'=>array('errnum'=>768741, 'errmsg'=>'Mise a jour impossible'), 'result'=>0);
}
/** Insertion du jugement **/
//print_r($tabJugement);die();
if (isset($tabJugement['even']) && is_array($tabJugement['even']) && count($tabJugement['even'])>0)
{
$idAdmin=str_replace('m','',trim($tabJugement['admin']))*1;
$idMand =str_replace('m','',trim($tabJugement['mand']))*1;
$idOppo =str_replace('m','',trim($tabJugement['oppo']))*1;
/** Insertion de l'actionnaire
**/
if (is_array($tabActio) && trim($tabActio['siren'])<>'') {
// Tableau des actionnaires
//die('Actionnaires:'.print_r($tabActio));
$nom=$pays=$dateMAJ='';
$ppPm='P';
$pct=trim(str_replace(',','.',$tabActio['pct']))*1;
$siren2=preg_replace('/[^0-9]/','', $tabActio['siren']);
$entrep2=$this->iInsee->getIdentiteEntreprise($siren);
$nom2=$entrep2['Nom'];
$pays2=$entrep2['Pays'];
if ($pays2=='') $pays2='FRA';
/** Nom et Identifiant de l'opérateur de saisie **/
$rep=$iDbCrm->select('utilisateurs', 'id', "login='".$this->tabInfoUser['login']."'");
$idUser=$rep[0][0];
if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M';
$entrep=$this->iInsee->getIdentiteEntreprise($siren2);
$nom=$entrep['Nom'];
$pays=trim($entrep['Pays']);
if ($pays=='') $pays='FRA';
if (trim($tabActio['nom'])<>'') $nom=$tabActio['nom'];
if ($tabActio['pays']<>'XXX') $pays=$tabActio['pays'];
$tabSource=explode('_',$tabJugement['source']);
$source=@$tabSource[0];
$numJal=@$tabSource[1];
if (trim($tabActio['dateMAJ'])<>'JJ/MM/AAAA' && trim($tabActio['dateMAJ'])<>'')
$dateMAJ=WDate::dateT('d/m/Y', 'Y-m-d', trim($tabActio['dateMAJ']));
$dateSource=WDate::dateT('d/m/Y', 'Ymd', trim($tabJugement['dateParution']))*1;
if ($dateSource<20000101)
$dateSource=date('YmdHis');
if ($tabActio['majMin']=='maj') $majMin='+';
elseif ($tabActio['majMin']=='min') $majMin='-';
else $majMin='';
$montant=trim(preg_replace('/[^0-9]/', '', $tabJugement['montant']))*1;
$actionsMt=trim(preg_replace('/[^0-9]/', '', $tabJugement['actionsMt']))*1;
$actionsNb=trim(preg_replace('/[^0-9]/', '', $tabJugement['actionsNb']))*1;
$tabUpdate=array( //'Siren1'=> $siren,
'Pmin'=> $pct,
'Pmax'=> $pct,
'MajMin'=> $majMin,
'PpPm'=> $ppPm,
//'Siren2'=> $siren2,
//'RaisonSociale'=> $nom,
//'Pays'=> $pays,
'dateLien'=> $dateMAJ,
);
if ($montant>0 && ($actionsNb>0 || $actionsMt>0)) {
if ($actionsNb>0) $actionsMt=$montant/$actionsNb;
elseif ($actionsMt>0) $actionsNb=$montant/$actionsMt;
}
$strDir='';
if ($tabJugement['nouvDir1Fonc']*1>0) {
$strDir.=$iBodacc->getFctDir($tabJugement['nouvDir1Fonc']*1).' : '.$tabJugement['nouvDir1Genre'].' '.ucwords(strtolower($tabJugement['nouvDir1Pre'])).' '.strtoupper($tabJugement['nouvDir1Nom']).', domicilié à '.$tabJugement['nouvDir1Dom'].'. ';
}
if ($tabJugement['nouvDir2Fonc']*1>0) {
$strDir.=$iBodacc->getFctDir($tabJugement['nouvDir2Fonc']*1).' : '.$tabJugement['nouvDir2Genre'].' '.ucwords(strtolower($tabJugement['nouvDir2Pre'])).' '.strtoupper($tabJugement['nouvDir2Nom']).', domicilié à '.$tabJugement['nouvDir2Dom'].'. ';
}
if ($tabJugement['nouvDir3Fonc']*1>0) {
$strDir.=$iBodacc->getFctDir($tabJugement['nouvDir3Fonc']*1).' : '.$tabJugement['nouvDir3Genre'].' '.ucwords(strtolower($tabJugement['nouvDir3Pre'])).' '.strtoupper($tabJugement['nouvDir3Nom']).', domicilié à '.$tabJugement['nouvDir3Dom'].'. ';
}
$tabInsert1=array_merge($tabUpdate, array( 'ActionPart'=>1),
array( 'Siren1'=> $siren,
'Siren2'=> $siren2,
'RaisonSociale'=> $nom,
'Pays'=> $pays,
'actif'=> 1,
'source'=> 1900,
'dateInsert'=> date('YmdHis')));
$res=$iDb->select('liens', 'count(*)', "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))");
if ($res[0][0]>0) {
if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true))
$errMaj=1016166;
if (trim($tabJugement['nouvAdrCp'])<>'')
$strAdr=stripslashes(trim($tabJugement['nouvAdr']).', '.trim($tabJugement['nouvAdrCp']).' '.trim($tabJugement['nouvAdrVille']));
else
$strAdr='';
$nic=$tabJugement['nic']*1;
$entrep=$this->iInsee->getIdentiteLight($siren, $nic);
if ($nic>0 && $tabJugement['even'][0]==6700 && $entrep['Siege']==0)
// Radiation d'un établissement
$tabJugement['even'][0]=6600;
$tabEven=array();
for($i=1; isset($tabJugement['even'][$i]);$i++)
$tabEven[]=$tabJugement['even'][$i];
$strEven=implode(';',$tabEven);
$tabUpdate=array(
'strEven'=> $strEven,
'sirenValide'=> $this->iInsee->valideSiren($siren),
'dateCessationPaiement'=> WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement['datePaie'])),
'dateEffetFinP'=> WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement['dateFinPeriode'])),
'tribunal'=> trim($tabJugement['tribunal']),
'montant'=> $montant,
'actionsNb'=> $actionsNb,
'inter1type'=> 'A',
'inter1id'=> $idAdmin,
'inter1nom'=> $this->iInsee->getMandatairesParId($idAdmin),
'inter2type'=> 'M',
'inter2id'=> $idMand,
'inter2nom'=> $this->iInsee->getMandatairesParId($idMand),
'inter3type'=> 'O',
'inter3id'=> $idOppo,
'inter3nom'=> $this->iInsee->getMandatairesParId($idOppo),
'complement'=> stripslashes(trim($tabJugement['comp'])),
'nouvActivite'=> stripslashes(trim($tabJugement['nouvActivite'])),
'nouvDir'=> stripslashes(trim($strDir)),
'nouvAdr'=> $strAdr,
'nouvFJ'=> trim($tabJugement['nouvFJ']),
'raisonSociale'=> $entrep['Nom'],
'adresse'=> $entrep['Adresse'],
'codePostal'=> $entrep['CP'],
'ville'=> $entrep['Ville'],
'source'=> $source,
'idSaisie'=> $idUser,
'parutionIdJal'=> $numJal,
'parutionNum'=> $tabJugement['numParution'],
);
$dateJuge=WDate::dateT('d/m/Y','Y-m-d',trim($tabJugement['dateJuge']));
$tabInsert=array_merge($tabUpdate,array('siren'=>$siren,
'dateJugement'=>$dateJuge,
'typeEven'=> $tabJugement['even'][0],
'dateSource'=>$dateSource,
));
if (!$iDb->insert('annonces', array_merge($tabInsert,array('dateInsert'=>date('YmdHis'))), true))
{
if (!$iDb->update('annonces', $tabUpdate, "siren=$siren AND dateJugement='$dateJuge' AND typeEven=".$tabJugement['even'][0], true))
{
$error->errnum = 1;
$error->errmsg = 'Mise a jour impossible';
$output = new SetInfosEntrepReturn();
$output->error = $error;
$output->result = $result;
return $output;
exit;
}
}
}
/** Insertion de l'actionnaire **/
if (is_array($tabActio) && trim($tabActio['siren'])<>'') {
// Tableau des actionnaires
//die('Actionnaires:'.print_r($tabActio));
$nom=$pays=$dateMAJ='';
$ppPm='P';
$pct=trim(str_replace(',','.',$tabActio['pct']))*1;
$siren2=preg_replace('/[^0-9]/','', $tabActio['siren']);
$entrep2=$this->iInsee->getIdentiteEntreprise($siren);
$nom2=$entrep2['Nom'];
$pays2=$entrep2['Pays'];
if ($pays2=='') $pays2='FRA';
if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M';
$entrep=$this->iInsee->getIdentiteEntreprise($siren2);
$nom=$entrep['Nom'];
$pays=trim($entrep['Pays']);
if ($pays=='') $pays='FRA';
if (trim($tabActio['nom'])<>'') $nom=$tabActio['nom'];
if ($tabActio['pays']<>'XXX') $pays=$tabActio['pays'];
if (trim($tabActio['dateMAJ'])<>'JJ/MM/AAAA' && trim($tabActio['dateMAJ'])<>'')
$dateMAJ=WDate::dateT('d/m/Y', 'Y-m-d', trim($tabActio['dateMAJ']));
if ($tabActio['majMin']=='maj') $majMin='+';
elseif ($tabActio['majMin']=='min') $majMin='-';
else $majMin='';
$tabUpdate=array( //'Siren1'=> $siren,
'Pmin'=> $pct,
'Pmax'=> $pct,
'MajMin'=> $majMin,
'PpPm'=> $ppPm,
//'Siren2'=> $siren2,
//'RaisonSociale'=> $nom,
//'Pays'=> $pays,
'dateLien'=> $dateMAJ,
);
$tabInsert1=array_merge($tabUpdate, array( 'ActionPart'=>1),
array( 'Siren1'=> $siren,
'Siren2'=> $siren2,
'RaisonSociale'=> $nom,
'Pays'=> $pays,
'actif'=> 1,
'source'=> 1900,
'dateInsert'=> date('YmdHis')));
$res=$iDb->select('liens', 'count(*)', "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))");
if ($res[0][0]>0) {
if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true))
$errMaj=1016166;
} else {
if (!$iDb->insert('liens', $tabInsert1, true))
$errMaj=1016167;
}
$tabInsert2=array_merge($tabUpdate, array( 'ActionPart'=>2),
array( 'Siren1'=> $siren2,
'Siren2'=> $siren,
'RaisonSociale'=> $nom2,
'Pays'=> $pays2,
'actif'=> 1,
'source'=> 1900,
'dateInsert'=> date('YmdHis')));
$res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))");
if ($res[0][0]>0) {
if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true))
$errMaj=1016168;
} else {
if (!$iDb->insert('liens', $tabInsert2, true))
$errMaj=1016169;
}
}
/** Insertion de la participation
**/
if (is_array($tabParti) && trim($tabParti['siren'])<>'') {
//die('Participation:'.print_r($tabParti));
$nom=$pays=$dateMAJ='';
$ppPm='P';
$pct=trim(str_replace(',','.',$tabParti['pct']))*1;
$siren2=preg_replace('/[^0-9]/','', $tabParti['siren']);
$entrep2=$this->iInsee->getIdentiteEntreprise($siren);
$nom2=$entrep2['Nom'];
$pays2=$entrep2['Pays'];
if ($pays2=='') $pays2='FRA';
if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M';
$entrep=$this->iInsee->getIdentiteEntreprise($siren2);
$nom=$entrep['Nom'];
$pays=trim($entrep['Pays']);
if ($pays=='') $pays='FRA';
if (trim($tabParti['nom'])<>'') $nom=$tabParti['nom'];
if ($tabParti['pays']<>'XXX') $pays=$tabParti['pays'];
if (trim($tabParti['dateMAJ'])<>'JJ/MM/AAAA' && trim($tabParti['dateMAJ'])<>'')
$dateMAJ=WDate::dateT('d/m/Y', 'Y-m-d', trim($tabParti['dateMAJ']));
if ($tabParti['majMin']=='maj') $majMin='+';
elseif ($tabParti['majMin']=='min') $majMin='-';
else $majMin='';
$tabUpdate=array( 'Pmin'=> $pct,
'Pmax'=> $pct,
'MajMin'=> $majMin,
'PpPm'=> $ppPm,
'dateLien'=> $dateMAJ,
);
$tabInsert1=array_merge($tabUpdate, array( 'ActionPart'=>2),
array( 'Siren1'=> $siren,
'Siren2'=> $siren2,
'RaisonSociale'=> $nom,
'Pays'=> $pays,
'actif'=> 1,
'source'=> 1900,
'dateInsert'=> date('YmdHis')));
$res=$iDb->select('liens', 'count(*)', "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))");
if ($res[0][0]>0) {
if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true))
$errMaj=10168;
} else {
if (!$iDb->insert('liens', $tabInsert1, true))
$errMaj=10169;
}
$tabInsert2=array_merge($tabUpdate, array( 'ActionPart'=>1),
array( 'Siren1'=> $siren2,
'Siren2'=> $siren,
'RaisonSociale'=> $nom2,
'Pays'=> $pays2,
'actif'=> 1,
'source'=> 1900,
'dateInsert'=> date('YmdHis')));
$res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))");
if ($res[0][0]>0) {
if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true))
$errMaj=10170;
} else {
if (!$iDb->insert('liens', $tabInsert2, true))
$errMaj=10171;
}
}
if ($errMaj>0){
$error->errnum = 1;
$error->errmsg = 'Mise a jour impossible';
} else {
if (!$iDb->insert('liens', $tabInsert1, true))
$errMaj=1016167;
}
$tabInsert2=array_merge($tabUpdate, array( 'ActionPart'=>2),
array( 'Siren1'=> $siren2,
'Siren2'=> $siren,
'RaisonSociale'=> $nom2,
'Pays'=> $pays2,
'actif'=> 1,
'source'=> 1900,
'dateInsert'=> date('YmdHis')));
$res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))");
if ($res[0][0]>0) {
if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true))
$errMaj=1016168;
} else {
if (!$iDb->insert('liens', $tabInsert2, true))
$errMaj=1016169;
$result = true;
}
}
/** Insertion de la participation
**/
if (is_array($tabParti) && trim($tabParti['siren'])<>'') {
//die('Participation:'.print_r($tabParti));
$nom=$pays=$dateMAJ='';
$ppPm='P';
$pct=trim(str_replace(',','.',$tabParti['pct']))*1;
$siren2=preg_replace('/[^0-9]/','', $tabParti['siren']);
$entrep2=$this->iInsee->getIdentiteEntreprise($siren);
$nom2=$entrep2['Nom'];
$pays2=$entrep2['Pays'];
if ($pays2=='') $pays2='FRA';
if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M';
$entrep=$this->iInsee->getIdentiteEntreprise($siren2);
$nom=$entrep['Nom'];
$pays=trim($entrep['Pays']);
if ($pays=='') $pays='FRA';
if (trim($tabParti['nom'])<>'') $nom=$tabParti['nom'];
if ($tabParti['pays']<>'XXX') $pays=$tabParti['pays'];
if (trim($tabParti['dateMAJ'])<>'JJ/MM/AAAA' && trim($tabParti['dateMAJ'])<>'')
$dateMAJ=WDate::dateT('d/m/Y', 'Y-m-d', trim($tabParti['dateMAJ']));
if ($tabParti['majMin']=='maj') $majMin='+';
elseif ($tabParti['majMin']=='min') $majMin='-';
else $majMin='';
$tabUpdate=array( 'Pmin'=> $pct,
'Pmax'=> $pct,
'MajMin'=> $majMin,
'PpPm'=> $ppPm,
'dateLien'=> $dateMAJ,
);
$tabInsert1=array_merge($tabUpdate, array( 'ActionPart'=>2),
array( 'Siren1'=> $siren,
'Siren2'=> $siren2,
'RaisonSociale'=> $nom,
'Pays'=> $pays,
'actif'=> 1,
'source'=> 1900,
'dateInsert'=> date('YmdHis')));
$res=$iDb->select('liens', 'count(*)', "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))");
if ($res[0][0]>0) {
if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true))
$errMaj=10168;
} else {
if (!$iDb->insert('liens', $tabInsert1, true))
$errMaj=10169;
}
$tabInsert2=array_merge($tabUpdate, array( 'ActionPart'=>1),
array( 'Siren1'=> $siren2,
'Siren2'=> $siren,
'RaisonSociale'=> $nom2,
'Pays'=> $pays2,
'actif'=> 1,
'source'=> 1900,
'dateInsert'=> date('YmdHis')));
$res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))");
if ($res[0][0]>0) {
if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true))
$errMaj=10170;
} else {
if (!$iDb->insert('liens', $tabInsert2, true))
$errMaj=10171;
}
}
if ($errMaj>0)
return array('error'=>array('errnum'=>745741, 'errmsg'=>'Mise a jour impossible'), 'result'=>0);
return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'result'=>1);
$output = new SetInfosEntrepReturn();
$output->error = $error;
$output->result = $result;
return $output;
}
/**
@ -1228,7 +1261,7 @@ class WsInterne
{
$tabUpdate['login']=$login;
$tabUpdate['idClient']=$tabInfoUserWS['idClient'];
if ($iDbCrm->insert('utilisateurs', $tabUpdate))
if ($this->iDbCrm->insert('utilisateurs', $tabUpdate))
{
$result = true;
}
@ -1238,7 +1271,7 @@ class WsInterne
$error->errmsg = 'Création impossible';
}
}
if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'"))
if ($this->iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'"))
{
$result = true;
}