"Surveillance RCS posée/Demande de suppression acceptée/Surveillance PRIV posée : pas d'inscription existante sur le dossier", '01' => "Surveillance PRIV posée : inscription existante sur le dossier", '02' => "GAGI,GREFTEL,INTERGREFFE-code 1-surveillance acceptée mais qui n'a pas encore fait l'objet d'un AR", '03' => "GAGI,GREFTEL,INTERGREFFE-code 2 - surveillance acceptée avec CREATION d'une fiche débiteur, qui n'a pas fait l'objet d'un AR", '04' => "GAGI-surveillance en attente envoyée au GAGI", '05' => "Surveillance en attente de validation au greffe", '06' => "Erreur de chargement", '10' => "Surveillance impossible car société radiée", '11' => "Surveillance impossible car société transférée dans un autre greffe", '12' => "SIREN inconnu", '13' => "Raison sociale erronée", '14' => "Adresse erronée", '15' => "Surveillance impossible sur un établissement secondaire", '16' => "Demande incomplète ou incorrecte", '17' => "Surveillance Privilège impossible", '18' => "Surveillance impossible par le greffe", '19' => "Surveillance RCS impossible", '20' => "Cette surveillance concerne un autre Greffe", '21' => "Surveillance BILAN impossible car la ste n'est pas tenue de déposer ses Comptes Annuels (ste de droit étranger)", '22' => "Plusieurs Bottins (débiteurs) (GAGI)", '23' => "Société de fait (GAGI) : Société non enregistrée au Registre du Commerce", '24' => "Surveillance impossible car société en liquidation judiciaire", '25' => "Greffe inconnu", '26' => "Millésime bilan à surveiller incorrect", '27' => "Références EXTELIA erronées ou incomplètes (ces reférences sont obligatoires en cas de demande de suppression)", '28' => "Surveillance impossible sur un dossier non informatisé (dossier dit non repris ou figé)", '30' => "Siren absent (ne concerne que les surveillances de type WebService)", '31' => "Surveillance BILAN impossible sur une société non commerciale (statut <> B)", '50' => "Ce greffe ne traite pas les surveillances car le groupement de ce greffe n'est pas surveillé", '51' => "Etablissement non trouvé", '52' => "Code catalogue de la surveillance non renseigné ou incorrect", '53' => "le siren est déjà sous surveillance", '54' => "DOSSIER AGORA : votre prestation ne comprend pas la couverture de ce groupement", '55' => "DOSSIER INTERGREFFE : votre prestation ne comprend pas la couverture de ce groupement de greffes", '56' => "Le siren est déjà en attente de validation par le greffe", '57' => "Surveillance impossible sur un dossier dit non inscrit au RCS (statut F:artisan)", '58' => "Surveillance impossible sur un agent commercial (statut P ou M)", '59' => 'Surveillance impossible sur une société non RCS ?', '88' => "Rejet temporaire : surveillance sur un greffe absorbé rejetée pendant la phase de rechargement", '99' => "Surveillance impossible pour raisons à examiner", ); public $tabTypePriv = array( '01' => "NANTISSEMENTS DU FONDS DE COMMERCE", '02' => "PRIVILEGES DE VENDEUR ET ACTION RESOLUTOIRE", '03' => "PRIVILEGES DE LA SECURITE SOCIALE ET DES REGIMES COMPLEMENTAIRES", '04' => "PRIVILEGES DU TRESOR PUBLIC", '05' => "OPERATIONS DE CREDIT-BAIL EN MATIERE MOBILIERE", '06' => "PROTETS", '07' => "NANTISSEMENTS DE L'OUTILLAGE, MATERIEL ET EQUIPEMENT", '08' => "WARRANTS (HOTELIER, PETROLIER, INDUSTRIEL OU AGRICOLE)", '10' => "NANTISSEMENTS DE PARTS DE SOCIETE CIVILE", '17' => "PUBLICITES DE CONTRATS DE LOCATION", '18' => "PUBLICITES DE CLAUSES DE RESERVE DE PROPRIETE", '19' => "PRETS ET DELAIS", '20' => "DECLARATIONS DE CREANCES", '21' => "NANTISSEMENTS JUDICIAIRES", '23' => "BIENS INALIENABLES", '24' => "HYPOTHEQUES FLUVIALES", '25' => "NANTISSEMENTS DU FONDS ARTISANAL", '27' => "GAGE SANS DEPOSSESSION", '28' => "GAGE DES STOCKS", ); protected $iDb; public function __construct($db = null) { if ( $db === null ) { $this->iDb = new Metier_Util_Db(); } else { $this->iDb = $db; } } /** * Détail des privileges * * @param string $siren * @param array $tabTypes * @return array */ public function getPrivilegesDetail($siren, $tabTypes=array('03','04')) { $strTypes = implode("','", $tabTypes); if ($strTypes != '') { $strTypes=" AND i.insType IN ('$strTypes') "; } $fields = "i.id, i.dateEven, i.greffe , i.numDebiteur, i.sirenage, i.typeEven, i.dateFraiche, i.codeRev , i.debRaisonSociale , i.debSigle , i.debCiv , i.debNom , i.debPrenom , i.debConjoint , i.debUsage , i.debEnseigne , i.debActivite , i.debFj , i.debFjLib , i.debResidence , i.debNumVoie , i.debTypVoie , i.debLibVoie , i.debAdrComp , i.debCP , i.debVille , i.debPays , i.insType , i.insLib , i.insNum , i.insDate , i.insObjet , i.insMontant , i.insDev , i.insDateEch , i.insDateFin , i.insNanTx , i.insNanTitre , i.insNanOppo , i.insProNat , i.insProHui , i.insProRep , i.insNSCA , i.insNSCParts , i.insNSCSigni , i.creNom , i.creNumVoi, i.creTypVoi, i.creLibVoi, i.creAdrComp1, i.creAdrComp2, i.creCP, i.creVille, i.crePays, i.creAutres, i.radDate, i.radMention, i.radPartiel, i.radPartMt, i.radDev, i.radDiv, i.idFichier, i.dateInsert"; $where = "i.siren=$siren $strTypes AND ( (i.insType='03' AND DATEDIFF(NOW(),i.insDate)<=900) /** Durée de vie PRIV Sécu **/ OR (i.insType='04' AND DATEDIFF(NOW(),i.insDate)<=1460) /** Durée de vie PRIV Trésor **/ )"; $where.= " ORDER BY i.dateFraiche DESC, i.insType ASC, i.insDate ASC;"; $tables = "jo.greffes_privileges i"; $iRncs = new Metier_Partenaires_MRncs($this->iDb); $tabRet = array(); $tabPriv = $this->iDb->select($tables, $fields, $where, true, MYSQL_ASSOC); if (count($tabPriv) > 0) { foreach ($tabPriv as $i => $priv) { if ($i >0 && $priv['dateFraiche'] != $dateFraiche) { break; } $tabRet[] = array( 'numDebiteur' => $priv['numDebiteur'], 'greffe' => $priv['greffe'], 'greffeLib' => $iRncs->getLibTribunal($priv['greffe']), 'dateEven' => $priv['dateEven'], 'dateFraiche' => $priv['dateFraiche'], 'dateSD' => $priv['dateInsert'], 'insType' => $priv['insType'], 'insTypeLib' => $this->tabTypePriv[$priv['insType']], 'insNum' => $priv['insNum'], 'insDate' => $priv['insDate'], 'insDateEch' => $priv['insDateEch'], 'insObjet' => $priv['insObjet'], 'insMontant' => $priv['insMontant'], 'insDev' => $priv['insDev'], 'insDateFin' => $priv['insDateFin'], 'radDate' => $priv['radDate'], 'radMention' => $priv['radMention'], 'radPartiel' => $priv['radPartiel'], 'radPartMt' => $priv['radPartMt'], 'radDev' => $priv['radDev'], 'creNom' => $priv['creNom'], 'creAdresse1' => trim(preg_replace('/ +/', ' ', $priv['creNumVoi'].' '.$priv['creTypVoi'].' '.$priv['creLibVoi'])), 'creAdresse2' => $priv['creAdrComp1'], 'creAdresse3' => $priv['creAdrComp2'], 'creCP' => $priv['creCP'], 'creVille' => $priv['creVille'], 'crePays' => $priv['crePays'], 'creAutres' => $priv['creAutres'], ); $dateFraiche = $priv['dateFraiche']; } } return $tabRet; } /** * Cummul des privilèges * * @param string $siren * @param array $tabTypes * @return array */ public function getPrivilegesCumul($siren, $tabTypes=array('03','04')) { $iRncs = new Metier_Partenaires_MRncs($this->iDb); $tabRet = array(); $tabTmp = $this->getPrivilegesDetail($siren, $tabTypes); if (count($tabTmp) > 0) { foreach($tabTmp as $i => $priv) { $type = $priv['insType']; if (array_key_exists($type, $tabRet)) { $tStock = $tabRet[$type]; $tStock['nb'] ++; $tStock['insCumul'] += $priv['insMontant']; } else { $tStock['nb'] = 1; $tStock['insCumul'] = $priv['insMontant']; } $tStock['insTypeLib'] = $priv['insTypeLib']; $tStock['dateFraiche'] = $priv['dateFraiche']; $tStock['dateDerInsc'] = $priv['insDate']; $tStock['nomDerCre'] = $priv['creNom']; $tStock['numDebiteur'] = $priv['numDebiteur']; $tStock['greffeLib'] = $iRncs->getLibTribunal($priv['greffe']); $tStock['dateMajSD'] = $priv['dateSD']; $tabRet[$type] = $tStock; } } return $tabRet; } }