theme = Zend_Registry::get('theme'); $request = $this->getRequest(); $this->siret = $request->getParam('siret'); $this->id = $request->getParam('id', 0); require_once 'Scores/WsScores.php'; } /** * Affichage de la liste des annonces ou d'une annonce */ public function annoncesAction() { $request = $this->getRequest(); $autrePage = $request->getParam('apage'); $idAnn = $request->getParam('idAnn', null); $siren = substr($this->siret, 0,9); $vue = $request->getParam('vue', 'bodacc'); $source = $request->getParam('source'); if (!empty($source)) { switch ($source){ case 1: $vue = 'bodacc'; break; case 2: $vue = 'balo'; break; case 3: $vue = 'asso'; break; } } $session = new Scores_Session_Entreprise($this->siret, $this->id); $fj = $session->getFormeJuridique(); if ($fj > 9000 && $fj < 9999 && intval($siren) == 0) { $vue = 'asso'; } $this->view->assign('id', $session->getId()); $this->view->assign('siren', $siren); $this->view->assign('siret', $this->siret); $this->view->assign('raisonSociale', $session->getRaisonSociale()); $this->view->assign('AutrePage', $autrePage); if ($session->getSource() == '006' || $session->getSourceId() == '007') { $this->view->assign('AutreSource', true); } else { $this->view->assign('vue', $vue); // Pagination $page = $request->getParam('page', 1); if ($page <= 0) { $page = 1; } $nbAffichage = 20; $position = ($page - 1) * $nbAffichage; $ws = new WsScores(); switch ($vue) { case 'balo': $infos = $ws->getAnnoncesBalo($siren, $idAnn, null, $position, $nbAffichage); break; case 'asso': if (intval($siren) == 0 && substr($session->getAutreId(),0,1) == 'W') { $infos = $ws->getAnnoncesAsso($session->getAutreId(), $idAnn, null, $position, $nbAffichage); } elseif (intval($siren) != 0) { $infos = $ws->getAnnoncesAsso($siren, $idAnn, null, $position, $nbAffichage); } else { $idAnn = $session->getSourceId(); $this->redirect($this->view->url(array('controller'=>'juridique', 'action'=>'annonce', 'siret'=>$this->siret, 'id'=>$this->id, 'idAnn'=>$idAnn, 'vue'=>$vue), 'default', true)); } break; case 'bomp': $filtre = $request->getParam('filtre', 'A'); $this->view->assign('filtre', $filtre); Zend_Registry::get('firebug')->info("getAnnoncesBoamp"); $infos = $ws->getAnnoncesBoamp($siren, $idAnn, $filtre, $position, $nbAffichage); break; case 'bodacc': case 'abod': default: if(intval($siren) == 0) { $idAnn = $session->getSourceId(); $this->redirect($this->view->url(array('controller'=>'juridique', 'action'=>'annonce', 'siret'=>$this->siret, 'id'=>$this->id, 'idAnn'=>$idAnn, 'vue'=>$vue), 'default', true)); } $infos = $ws->getAnnoncesLegales($siren, $idAnn, null, $position, $nbAffichage); break; } Zend_Registry::get('firebug')->info($infos); if ($infos === false) { $this->forward('soap', 'error'); } require_once 'Scores/Annonces.php'; $objAnnonces = new Annonces($infos->result->item); $typeAnnonces = array( 'Bodacc', 'Balo', 'Bomp', 'Asso', ); $user = new Scores_Utilisateur(); $this->view->assign('hasModeEdition', $user->checkModeEdition()); $this->view->assign('exportObjet', $infos); $this->view->assign('surveillance', $user->checkPerm('survannonce')); // --- Titre de la page if ( empty($autrePage) ) { if( empty($siren) ){ $titre = 'Identifiant '.$this->id; } else { $titre = 'Siret '.$siren; } $this->view->headTitle()->prepend('Annonces Légales - '.$titre); } // ---- Calcul pagination $nbReponses = count($infos->result->item); $nbReponsesTotal = $infos->nbReponses; if ($nbReponses < $nbReponsesTotal) { $pageTotal = ceil( $nbReponsesTotal / $nbAffichage ); $pageCurrent = $page; $pagePrev = $page - 1; if ($pagePrev < 1) { $pagePrev = 1; } $pageNext = $page + 1; if( $pageNext > $pageTotal ) { $pageNext = $pageTotal; } } else { $pageTotal = $pageCurrent = 1; } $this->view->assign('PageTotal', $pageTotal); $this->view->assign('PagePrev', $pagePrev); $this->view->assign('PageNext', $pageNext); $this->view->assign('PageCurrent', $pageCurrent); $this->view->assign('nbReponses', empty($nbReponses) ? 0 : $nbReponses); $this->view->assign('nbReponsesTotal', empty($nbReponsesTotal) ? 0 : $nbReponsesTotal); $classType = 'annonces'.ucfirst($vue);; $annonces = array(); if (count($objAnnonces->$classType) > 0) { foreach($objAnnonces->$classType as $ann) { $annonces[] = $objAnnonces->getAnnonceResume($ann); } Zend_Registry::get('firebug')->info($annonces); $this->view->assign('annonces', $annonces); } $this->view->headScript()->appendFile($this->theme->pathScript.'/annonces.js', 'text/javascript'); } } /** * Affichage d'une annonce */ public function annonceAction() { $request = $this->getRequest(); $autrePage = $request->getParam('apage'); $idAnn = $request->getParam('idAnn', null); $siren = substr($this->siret, 0,9); $vue = $request->getParam('vue', 'bodacc'); $source = $request->getParam('source'); if (!empty($source)) { switch ($source){ case 1: $vue = 'bodacc'; break; case 2: $vue = 'balo'; break; case 3: $vue = 'asso'; break; } } $session = new Scores_Session_Entreprise($this->siret, $this->id); $fj = $session->getFormeJuridique(); if ($fj > 9000 && $fj < 9999 && intval($siren) == 0) { $vue = 'asso'; } $page = $request->getParam('page'); $this->view->assign('page', $page); $this->view->assign('id', $session->getId()); $this->view->assign('siren', $siren); $this->view->assign('siret', $this->siret); $this->view->assign('raisonSociale', $session->getRaisonSociale()); $this->view->assign('AutrePage', $autrePage); if ($session->getSource() == '006' || $session->getSourceId() == '007') { $this->view->assign('AutreSource', true); } else { $this->view->assign('vue', $vue); $ws = new WsScores(); switch ($vue) { case 'balo': $infos = $ws->getAnnoncesBalo($siren, $idAnn, null, $position, $nbAffichage); break; case 'asso': if ( intval($siren)==0 && substr($session->getAutreId(),0,1)=='W' ) { $infos = $ws->getAnnoncesAsso($session->getAutreId(), $idAnn, null, $position, $nbAffichage); } elseif (intval($siren)!=0) { $infos = $ws->getAnnoncesAsso($siren, $idAnn, null, $position, $nbAffichage); } else { $idAnn = $session->getSourceId(); $infos = $ws->getAnnoncesAsso($siren, $idAnn, null, $position, $nbAffichage); } break; case 'bomp': $filtre = $request->getParam('filtre', 'A'); $this->view->assign('filtre', $filtre); $infos = $ws->getAnnoncesBoamp($siren, $idAnn, $filtre, $position, $nbAffichage); break; case 'bodacc': case 'abod': default: if(intval($siren)==0) { $idAnn = $session->getSourceId(); } $infos = $ws->getAnnoncesLegales($siren, $idAnn, null, $position, $nbAffichage); break; } Zend_Registry::get('firebug')->info($infos); if ($infos === false) { $this->forward('soap', 'error'); } require_once 'Scores/Annonces.php'; $objAnnonces = new Annonces($infos->result->item); $typeAnnonces = array( 'Bodacc', 'Balo', 'Bomp', 'Asso', ); $user = new Scores_Utilisateur(); $this->view->assign('hasModeEdition', $user->checkModeEdition()); $this->view->assign('exportObjet', $infos); $this->view->assign('surveillance', $user->checkPerm('survannonce')); if ( $user->checkModeEdition() ){ $this->view->headScript() ->appendFile($this->theme->pathScript.'/saisieannonces.js', 'text/javascript'); } $classType = 'annonces'.ucfirst($vue); foreach($objAnnonces->$classType as $ann) { if($ann->id==$idAnn) break; } Zend_Registry::get('firebug')->info($ann); $annonce = array( 'Desc' => $objAnnonces->getAnnonceDesc($ann), 'Entree' => $objAnnonces->getAnnonceEntree($ann), 'EntreeSD' => $objAnnonces->getAnnonceEntreeSD($ann), 'Even' => $objAnnonces->getAnnonceEven($ann), 'Texte' => $objAnnonces->getAnnonceTexte($ann), 'Type' => $objAnnonces->getType($ann), 'Code' => $objAnnonces->getCode($ann), 'Annee' => $objAnnonces->getAnnee($ann), 'Num' => $objAnnonces->getNum($ann), 'Deleted' => $objAnnonces->isDeleted($ann), 'Entites' => $objAnnonces->getAnnonceEntite($ann) ); $this->view->assign('source', $session->getSource()); if (intval($this->siret) == 0){ $this->view->assign('sourceId', $session->getSourceId()); } else { $this->view->assign('sourceId', null); } $this->view->assign('idAnn', $idAnn); $this->view->assign('annonce', $annonce); if ($request->getParam('q') == 'ajax') { $this->_helper->layout()->disableLayout(); $this->view->assign('ajax', 1); } else { // Définir url pour téléchargement pdf if (in_array($annonce['Code'], array('BODA', 'BODB', 'BODC'))) { $datePublication = DateTime::createFromFormat('Y-m-d', $ann->DateParution); $dateBodacc = DateTime::createFromFormat('Ymd', '20080101'); $dateTemoinA = DateTime::createFromFormat('Ymd', '20161115'); $dateTemoinB = DateTime::createFromFormat('Ymd', '20161011'); $dateTemoinC = DateTime::createFromFormat('Ymd', '20160223'); $params = null; if ($annonce['Code'] == 'BODA' && $datePublication >= $dateTemoinA) { $params = array('unit'=>1); $this->view->assign('bodaccLinkLabel', 'Télécharger le témoin de publication'); } elseif ($annonce['Code'] == 'BODB' && $datePublication >= $dateTemoinB) { $params = array('unit'=>1); $this->view->assign('bodaccLinkLabel', 'Télécharger le témoin de publication'); } elseif ($annonce['Code'] == 'BODC' && $datePublication >= $dateTemoinC) { $params = array('unit'=>1); $this->view->assign('bodaccLinkLabel', 'Télécharger le témoin de publication'); } elseif ($datePublication >= $dateBodacc) { $params = array(); $this->view->assign('bodaccLinkLabel', 'Télécharger le bulletin officiel'); } if ($params !== null) { $params = array_merge($params, array('controller'=>'juridique', 'action'=>'bodaccpdf', 'siren'=>$siren, 'type'=>substr($annonce['Code'],3,1), 'parution'=>$annonce['Annee'].str_pad($ann->BodaccNum, 4, '0', STR_PAD_LEFT), 'annonce'=>$ann->NumAnnonce )); $lienBodacc = $this->view->url($params, 'default', true); $this->view->assign('bodaccLink', $lienBodacc); } } } } } /** * Liste des contentieux */ public function ctxAction() { $request = $this->getRequest(); $session = new Scores_Session_Entreprise($this->siret, $this->id); $this->view->headTitle()->prepend("Contentieux"); $this->view->headTitle()->prepend("Siret ".$this->siret); $siren = substr($this->siret, 0,9); $type = $request->getParam('type', 'DF'); $this->view->Type = $type; $typeList = array( 'DE' => 'demandeur', 'DF' => 'défendeur', ); $this->view->TypeLabel = ''; if (array_key_exists($type, $typeList)) { $this->view->TypeLabel = $typeList[$type]; } $this->view->TypeList = $typeList; $nbReponses = 20; $page = $request->getParam('page', 1); if ( $page <= 0 ) $page = 1; $position = ($page - 1 ) * $nbReponses; $params = new stdClass(); $params->companyId = $siren; $params->tiers = $type; $params->p = $position; $params->limit = $nbReponses; try { $ws = new Scores_Ws_Client('entreprise', '0.9'); $response = $ws->getGreffeAffaireList($params); if ($response === false) { $this->view->msg = "Erreur"; } else { $this->view->List = $response->List->item; // --- Pagination $nbReponsesTotal = $response->Nb; $pageTotal = $pageCurrent = 1; $pagePrev = null; $pageNext = null; if ($nbReponses < $nbReponsesTotal) { $pageTotal = ceil( $nbReponsesTotal / $nbReponses ); $pageCurrent = $page; $pagePrev = $page - 1; if ($pagePrev < 1) { $pagePrev = 1; } $pageNext = $page + 1; if( $pageNext > $pageTotal ) { $pageNext = $pageTotal; } } $this->view->assign('PageTotal', $pageTotal); $this->view->assign('PagePrev', $pagePrev); $this->view->assign('PageNext', $pageNext); $this->view->assign('PageCurrent', $pageCurrent); $this->view->assign('nbReponses', empty($nbReponses) ? 0 : $nbReponses); $this->view->assign('nbReponsesTotal', empty($nbReponsesTotal) ? 0 : $nbReponsesTotal); $this->view->assign('siren', $siren); $this->view->assign('siret', $this->siret); $this->view->assign('raisonSociale', $session->getRaisonSociale()); } } catch (Exception $e) { $this->view->msg = $e->getMessage(); } } public function ctxdetailAction() { $request = $this->getRequest(); $session = new Scores_Session_Entreprise($this->siret, $this->id); $siren = substr($this->siret, 0,9); $this->view->headTitle()->prepend("Contentieux"); $this->view->headTitle()->prepend("Siret ".$this->siret); $this->view->assign('siren', $siren); $this->view->assign('siret', $this->siret); $this->view->assign('raisonSociale', $session->getRaisonSociale()); $id = $request->getParam('affaireId'); $params = new stdClass(); $params->id = $id; try { $ws = new Scores_Ws_Client('entreprise', '0.9'); $response = $ws->getGreffeAffaireDetail($params); if ($response === false) { $this->view->msg = "Erreur"; } else { $this->view->Affaire = $response; } } catch (Exception $e) { $this->view->msg = $e->getMessage(); } } /** * Affichage infos réglementées */ public function infosregAction() { $this->view->headTitle()->prepend("Informations Réglementées"); $this->view->headTitle()->prepend("Siret ".$this->siret); $request = $this->getRequest(); $idAnn = $request->getParam('idann', false); $siren = substr($this->siret, 0,9); $session = new Scores_Session_Entreprise($this->siret, $this->id); $ws = new WsScores(); if ($idAnn!=false) { $this->view->assign('idAnn', $idAnn); $infos = $ws->getInfosReg($siren,$idAnn); } else { $infos = $ws->getInfosReg($siren); } if ($infos === false) $this->forward('soap', 'error'); if (is_string($infos)){ $this->view->assign('message', $infos); } $objAnnonces = $infos->result->item; $annonces = array(); if (count($objAnnonces)>0) { foreach ( $objAnnonces as $item ) { $dateParution = new Zend_Date($item->DateParution, 'yyyy-MM-dd'); $dateInsertion = new Zend_Date($item->dateInsertionSD, 'yyyy-MM-dd'); $annonces[] = array( 'id' => $item->id, 'titre' => $item->titre, 'communique' => $item->communique, 'source' => $item->source, 'DateParution' => $dateParution->toString('dd/MM/yyyy'), 'dateInsertionSD' => $dateInsertion->toString('dd/MM/yyyy'), ); } } $this->view->assign('annonces', $annonces); $this->view->assign('siren', $siren); $this->view->assign('siret', $this->siret); $this->view->assign('raisonSociale', $session->getRaisonSociale()); $this->view->assign('exportObjet', $infos); } /** * Affichage listes des compétences */ public function competencesAction() { $this->view->headTitle()->prepend("Compétences Territoriales"); $this->view->headTitle()->prepend("Siret ".$this->siret); $request = $this->getRequest(); $type = $request->getParam('type', ''); $siren = substr($this->siret,0,9); $session = new Scores_Session_Entreprise($this->siret, $this->id); $abbrev = array( ' TGI ' => 'TRIBUNAL DE GRANDE INSTANCE DE ', ' TI ' => 'TRIBUNAL D\'INSTANCE DE ', ' TC ' => 'TRIBUNAL DE COMMERCE DE ', ' TGICC ' => 'TRIBUNAL DE GRANDE INSTANCE A COMPETENCE COMMERCIALE ', ' TICC ' => 'TRIBUNAL D\'INSTANCE A COMPETENCE COMMERCIALE ' ); if (!empty($type)){ $ws = new WsScores(); $infos = $ws->getListeCompetences($this->siret, $type, $session->getCodeCommune()); if ($infos === false) $this->_forward('soap', 'error'); $competences = $infos->result->item; Zend_Registry::get('firebug')->info($infos); if( $type=='tri' || $type=='cfe' ) { $i=0; foreach($competences as $comp){ $competences[$i]->Nom = strtr(' '.strtoupper($comp->Nom), $abbrev); $i++; } } $this->view->assign('competences', $competences); $this->view->assign('type', $type); $this->view->assign('exportObjet', $infos); } $this->view->assign('siren', $siren); $this->view->assign('siret', $this->siret); $this->view->assign('raisonSociale', $session->getRaisonSociale()); } /** * Affichage des la listes des conventions collectives * Enter description here ... */ public function conventionsAction() { $this->view->headTitle()->prepend("Conventions Collectives"); $this->view->headTitle()->prepend("Siret ".$this->siret); $siren = substr($this->siret, 0,9); $session = new Scores_Session_Entreprise($this->siret, $this->id); $this->view->assign('siren', $siren); $this->view->assign('siret', $this->siret); $this->view->assign('raisonSociale', $session->getRaisonSociale()); $ws = new WsScores(); $infos = $ws->getListeConventions($siren); $conventions = $infos->result->item; Zend_Registry::get('firebug')->info($conventions); $this->view->assign('conventions', $conventions); $this->view->assign('exportObjet', $infos); } /** * Affichage des marques déposées */ public function marquesAction() { $this->view->headTitle()->prepend("Marques Déposées"); $this->view->headTitle()->prepend("Siret ".$this->siret); $this->view->headScript()->appendFile($this->theme->pathScript.'/marques.js', 'text/javascript'); $request = $this->getRequest(); $idObject = $request->getParam('idObject', 0); $siren = substr($this->siret, 0,9); $session = new Scores_Session_Entreprise($this->siret, $this->id); $this->view->assign('siren', $siren); $this->view->assign('siret', $this->siret); $this->view->assign('raisonSociale', $session->getRaisonSociale()); $ws = new WsScores(); $infos = $ws->getMarques($siren, $idObject); if ($infos === false) $this->_forward('soap', 'error'); $marques = $infos->result->item; $this->view->assign('marques', $marques); $this->view->assign('idObject', $idObject); $this->view->assign('exportObjet', $marques); Zend_Registry::get('firebug')->info($infos); } /** * Affiche le lien pour télécharger le fichier concernant le dépot */ public function getmarqueAction() { $this->_helper->layout()->disableLayout(); $this->_helper->viewRenderer->setNoRender(true); $request = $this->getRequest(); $numdepot = $request->getParam('numdepot', ''); if (empty($numdepot)){ echo 'Paramètres incorrects'; exit; } $c = Zend_Registry::get('config'); $directory = $c->profil->path->shared.'/persist/marques'; $file = $numdepot.'.pdf'; //Le fichier n'existe pas alors on le télécharger if(!file_exists($directory.'/'.$file) || filesize($directory.'/'.$file)==0 ) { $cmd = 'php ' . APPLICATION_PATH . '/../scripts/jobs/getMarque.php ' . $numdepot; Zend_Registry::get('firebug')->info($cmd); $result = exec($cmd); Zend_Registry::get('firebug')->info($result); } //On vérfie que le fichier existe après le téléchargement if(file_exists($directory.'/'.$file) && filesize($directory.'/'.$file)>0) { $href = $this->view->url(array('module'=>'file', 'controller'=>'index', 'action'=>'marque', 'q'=>$file), 'default', true); echo 'Télécharger le PDF de l\'insciption au BOPI.'; } else { echo 'Document introuvable.'; } } /** * Gestion téléchargement du Bodacc au format pdf */ public function bodaccpdfAction() { $this->_helper->layout()->disableLayout(); $this->_helper->viewRenderer->setNoRender(true); $request = $this->getRequest(); $siren = $request->getParam('siren'); $type = $request->getParam('type'); $parution = $request->getParam('parution'); $annonce = $request->getParam('annonce'); $unit = $request->getParam('unit'); $annee = substr($parution,0,4); $c = Zend_Registry::get('config'); $path = $c->profil->path->shared.'/persist/bodacc/'.$type.'/'.$annee; if ($unit == 1) { $file = $path."/BODACC_".$type."_".$annee."_".substr($parution,4)."_".$annonce.".pdf"; } else { $file = $path."/BODACC_".$type."_".$annee."_".substr($parution,4).".pdf"; } if (!file_exists($file)) { $cli = "/../scripts/jobs/getBodaccPdf.php"; $params = "--siren ".$siren."--type ".$type." --parution ".$parution." --annonce ".$annonce; exec('php ' . APPLICATION_PATH . "$cli $params >> getBodaccPdf.log"); } if (file_exists($file)) { $href = $this->view->url(array('module'=>'file', 'controller'=>'bodacc', 'action'=>'actual', 'q' => basename($file)), 'default', true); echo "Cliquer ici pour télécharger le fichier."; } else { echo "Erreur lors du chargement du fichier."; } } public function annoncenumAction() { $this->_helper->layout()->disableLayout(); $request = $this->getRequest(); $siren = $request->getParam('siren'); $ws = new WsScores(); $result = $ws->getAnnoncesNum($siren); Zend_Registry::get('firebug')->info($result); $numWS = array(); if (count($result->item)>0) { foreach ($result->item as $item) { $numWS[$item->type] = $item->num; } } $types = array('bodacc', 'balo', 'boamp', 'asso'); $num = array(); foreach($types as $type) { if ( array_key_exists($type, $numWS) ) { $num['Type'.ucfirst($type)] = $numWS[$type]; } } $this->view->assign('num', $num); } }