webservices = $config->webservices->toArray(); if ( !empty($login) && !empty($password) ){ $this->login = $login; $this->password = $password; } else { $auth = Zend_Auth::getInstance(); $this->login = $auth->getIdentity()->username; $this->password = md5($this->login.'|'.$auth->getIdentity()->password); $this->nbReponses = $auth->getIdentity()->nbReponses; } } /** * getPortefeuille * @param object $filtre * @param integer $position * @param integer $nbAffichage */ public function getPortefeuille($filtre, $position = 0, $nbAffichage = 100) { $params = new StdClass; $params->filtre = $filtre; $params->deb = $position; $params->nbRep = $nbAffichage; $client = $this->loadClient('interne'); try { $reponse = $client->getPortefeuille($params); return $reponse->getPortefeuilleResult; } catch (SoapFault $fault) {; return false; } } /** * getSurveillances * @param string $siret * @param string $source * @param boolean $detail * @param integer $deb * @param integer $nbRep * @param string $tri */ public function getSurveillances($siret='', $source='', $detail=false, $deb=0, $nbRep=100, $tri='siren') { $params = new StdClass; $params->filtre = new StdClass; $params->filtre->siret = $siret; $params->filtre->source = $source; $params->filtre->detail = $detail; $params->filtre->tri = $tri; $params->position = $deb; $params->nbRep = $nbRep; $client = $this->loadClient('entreprise'); try { $reponse = $client->getSurveillances($params); return $reponse->getSurveillancesResult; } catch (SoapFault $fault) { return false; } } /** * getListeBilans * @param string $siren */ public function getListeBilans($siren) { $params = new StdClass; $params->siren = $siren; $client = $this->loadClient('entreprise'); try { $reponse = $client->getListeBilans($params); return $reponse->getListeBilansResult; } catch (SoapFault $fault) { return false; } } /** * getBilan * @param string $siren * @param unknown_type $millesime * @param unknown_type $typeBilan * @param unknown_type $ref */ public function getBilan($siren, $millesime, $typeBilan, $ref) { $params = new StdClass; $params->siren = $siren; $params->millesime = $millesime; $params->typeBilan = $typeBilan; $params->ref = $ref; $client = $this->loadClient('entreprise'); try { $reponse = $client->getBilan($params); return $reponse->getBilanResult; } catch (SoapFault $fault) { return false; } } /** * getBanques * @param string $siren */ public function getBanques($siren) { $params = new StdClass; $params->siren = $siren; $client = $this->loadClient('entreprise'); try { $reponse = $client->getBanques($params); return $reponse->getBanquesResult; } catch (SoapFault $fault) { return false; } } /** * getInfosBourse * @param string $siren */ public function getInfosBourse($siren){ $params = new StdClass; $params->siren = $siren; $client = $this->loadClient('entreprise'); try { $reponse = $client->getInfosBourse($params); return $reponse->getInfosBourseResult; } catch (SoapFault $fault) { return false; } } /** * getRatios * @param string $siren * @param string $page */ public function getRatios($siren, $page = 'ratios') { $params = new StdClass(); $params->siren = $siren; $params->page = $page; $client = $this->loadClient('entreprise'); try { $reponse = $client->getRatios($params); return $reponse->getRatiosResult; } catch (SoapFault $fault) { return false; } } /** * getDirigeants * @param string $siren * @param boolean $histo * */ public function getDirigeants($siren, $histo=false) { $params = new StdClass(); $params->siren = $siren; $params->histo = $histo; $client = $this->loadClient('entreprise'); try { $reponse = $client->getDirigeants($params); return $reponse->getDirigeantsResult; } catch (SoapFault $fault) { return false; } } /** * getIdentite * @param string $siret * @param int $id * @return mixed */ public function getIdentite($siret, $id = 0) { $params = new StdClass(); $params->siret = $siret; $params->id = $id; $client = $this->loadClient('entreprise'); try { $reponse = $client->getIdentite($params); return $reponse->getIdentiteResult; } catch (SoapFault $fault) { return false; } } /** * * getLiens * @param string $siren * @return mixed */ public function getLiens($siren) { $params = new StdClass(); $params->siren = $siren; $params->actifsUniquement = true; $client = $this->loadClient('entreprise'); try { $reponse = $client->getLiens($params); return $reponse->getLiensResult; } catch (SoapFault $fault) { return false; } } /** * getListeEvenements * @param string $siren * @param string $nic * @param integer $position * @param integer $nbRep * @return mixed */ public function getListeEvenements($siren, $nic=0, $position=0, $nbRep=200) { $params = new stdClass(); $params->siren = $siren; $params->nic = $nic; $params->position = $position; $params->nbRep = $nbRep; $client = $this->loadClient('entreprise'); try { $reponse = $client->getListeEvenements($params); return $reponse->getListeEvenementsResult; } catch (SoapFault $fault) { return false; } } /** * getListeEtablissements * @param string $siren * @return mixed */ public function getListeEtablissements($siren) { $params = new StdClass(); $params->siren = $siren; $params->dep = 0; $params->actif = -1; $params->position = 0; $params->nbRep = 100; $client = $this->loadClient('entreprise'); try { $reponse = $client->getListeEtablissements($params); return $reponse->getListeEtablissementsResult; } catch (SoapFault $fault) { return false; } } /** * rechercheEntreprise * @param unknown_type $type * @param unknown_type $criteres * @param unknown_type $position */ public function rechercheEntreprise($type, $criteres, $position = 0) { $params = new StdClass; $params->type = $type; $params->position = $position; $params->nbRep = $this->nbReponses; if ($type == 'ent') { $criteresEntreprise = new StdClass; $criteresEntreprise->identifiant = $criteres['identifiant']; $criteresEntreprise->raisonSociale = $criteres['raisonSociale']; $criteresEntreprise->adresse = $criteres['adresse']; $criteresEntreprise->codePostal = $criteres['codePostal']; $criteresEntreprise->ville = $criteres['ville']; $criteresEntreprise->telFax = $criteres['telFax']; $criteresEntreprise->naf = $criteres['naf']; $criteresEntreprise->siege = false; $criteresEntreprise->actif = false; $criteresDirigeant = new StdClass; $criteresDirigeant->nom = ''; $criteresDirigeant->prenom = ''; $criteresDirigeant->dateNaiss = ''; $criteresDirigeant->lieuNaiss = ''; } else if ($type == 'dir') { $criteresEntreprise = new StdClass; $criteresEntreprise->identifiant = ''; $criteresEntreprise->raisonSociale = ''; $criteresEntreprise->adresse = ''; $criteresEntreprise->codePostal = ''; $criteresEntreprise->ville = ''; $criteresEntreprise->telFax = ''; $criteresEntreprise->naf = ''; $criteresEntreprise->siege = false; $criteresEntreprise->actif = false; $criteresDirigeant = new StdClass; $criteresDirigeant->nom = $criteres['nom']; $criteresDirigeant->prenom = $criteres['prenom']; $criteresDirigeant->dateNaiss = $criteres['dateNaiss']; $criteresDirigeant->lieuNaiss = $criteres['lieuNaiss']; } $params->criteres = new StdClass; $params->criteres->elementEntreprise = $criteresEntreprise; $params->criteres->elementDirigeant = $criteresDirigeant; $client = $this->loadClient('entreprise'); try { $reponse = $client->rechercheEntreprise($params); return $reponse->rechercheEntrepriseResult; } catch (SoapFault $fault) { return false; } } /** * getInfosLogin * @param unknown_type $login * @param unknown_type $ipUtilisateur */ public function getInfosLogin($login, $ipUtilisateur = '') { $params = new stdClass(); $params->login = $login; $params->ipUtilisateur = $ipUtilisateur; try { $client = $this->loadClient('interne'); $reponse = $client->getInfosLogin($params); return $reponse->getInfosLoginResult; } catch (SoapFault $fault) { //Placer exception pour affichage message return false; } } /** * getNextLogin * @param unknown_type $login */ public function getNextLogin($login) { $params = new stdClass(); $params->login = $login; try { $client = $this->loadClient('interne'); $reponse = $client->getNextLogin($params); return $reponse->getNextLoginResult; } catch (SoapFault $fault) { //Placer exception pour affichage message return false; } } /** * getListePrefs */ public function getListePrefs() { try { $client = $this->loadClient('interne'); $reponse = $client->getListePrefs(); return $reponse->getListePrefsResult; } catch (SoapFault $fault) { //Placer exception pour affichage message return false; } } /** * getListeDroits */ public function getListeDroits() { try { $client = $this->loadClient('interne'); $reponse = $client->getListeDroits(); return $reponse->getListeDroitsResult; } catch (SoapFault $fault) { //Placer exception pour affichage message return false; } } /** * soaperror * @param unknown_type $requete * @param unknown_type $reponse * @param unknown_type $fault */ protected function soaperror($requete, $reponse, $fault) { $message = ''; // Quel machine .... $mail = new Zend_Mail(); $mail->setBodyText('Ceci est le texte du message.'); $mail->setSubject('TestSubject'); $mail->setFrom('supportdev@scores-decisions.com', 'SERVEUR'); $mail->addTo('supportdev@scores-decisions.com', 'Support DEV'); $mail->send(); } /** * loadClient * @param unknown_type $webservice */ protected function loadClient($webservice) { $wsdl = $this->webservices[$webservice]['wsdl']; $options = $this->webservices[$webservice]['options']; $options['features'] = SOAP_USE_XSI_ARRAY_TYPE + SOAP_SINGLE_ELEMENT_ARRAYS; $options['login'] = $this->login; $options['password'] = $this->password; if (APPLICATION_ENV != 'production'){ $options['cache_wsdl'] = WSDL_CACHE_NONE; } $options['encoding'] = 'utf-8'; $client = new SoapClient($wsdl, $options); return $client; } }