182 lines
8.8 KiB
PHP
182 lines
8.8 KiB
PHP
<?php
|
|
class Metier_Partenaires_MPrivileges
|
|
{
|
|
public $tabCodeAR = array(
|
|
'00' => "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;
|
|
}
|
|
}
|