diff --git a/application/configs/WsInterne.ini b/application/configs/WsInterne.ini index f5a437a5..8ec4f82f 100644 --- a/application/configs/WsInterne.ini +++ b/application/configs/WsInterne.ini @@ -53,4 +53,5 @@ Type.51 = "ListeClientsReturn" Type.52 = "Client" Type.53 = "SetMandataireReturn" Type.54 = "SupprAnnonceCollecteReturn" -Type.55 = "SetInfosLoginReturn" \ No newline at end of file +Type.55 = "SetInfosLoginReturn" +Type.56 = "SetInfosEntrepReturn" \ No newline at end of file diff --git a/library/WsScore/Types/InterneTypes.php b/library/WsScore/Types/InterneTypes.php index b85bad21..bcae657f 100644 --- a/library/WsScore/Types/InterneTypes.php +++ b/library/WsScore/Types/InterneTypes.php @@ -889,4 +889,12 @@ class SetInfosLoginReturn public $error; /** @var boolean */ public $result; -} \ No newline at end of file +} + +class SetInfosEntrepReturn +{ + /** @var ErrorType */ + public $error; + /** @var boolean */ + public $result; +} diff --git a/library/WsScore/WsInterne.php b/library/WsScore/WsInterne.php index f139859b..c1149353 100644 --- a/library/WsScore/WsInterne.php +++ b/library/WsScore/WsInterne.php @@ -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; }