2012-01-15 17:43:37 +00:00
|
|
|
<?php
|
|
|
|
class Enrichissement
|
|
|
|
{
|
|
|
|
//Traiter la demande en créant les requetes sql nécessaires
|
|
|
|
protected $tabDico = array(
|
2012-01-19 08:19:02 +00:00
|
|
|
'idSd' => array(
|
|
|
|
'lib' => "Identifiant S&D"
|
|
|
|
),
|
|
|
|
'source' => array(
|
|
|
|
'lib' => "Source S&D"
|
|
|
|
),
|
|
|
|
'triCode' => array(
|
|
|
|
'lib' => "Code Tribunal"
|
|
|
|
),
|
|
|
|
'autre_id' => array(
|
|
|
|
'lib' => "Autre ID (N°RC/Waldec)"
|
|
|
|
),
|
|
|
|
'actif' => array(
|
|
|
|
'lib' => 'ACTIF'
|
|
|
|
),
|
|
|
|
'siege' => array(
|
|
|
|
'lib' => "Siège ou Etablissement"
|
|
|
|
),
|
|
|
|
'raisonSociale' => array(
|
|
|
|
'lib' => "Raison Sociale"
|
|
|
|
),
|
|
|
|
'enseigne' => array(
|
|
|
|
'lib' => "Enseigne"
|
|
|
|
),
|
|
|
|
'sigle' => array(
|
|
|
|
'lib' => "Sigle"
|
|
|
|
),
|
|
|
|
'marques' => array(
|
|
|
|
'lib' => "Marques déposées"
|
|
|
|
),
|
|
|
|
'adr_num' => array(
|
|
|
|
'lib' => "Adresse : Numéro dans la voie"
|
|
|
|
),
|
|
|
|
'adr_btq' => array(
|
|
|
|
'lib' => "Adresse : Bis/Ter/etc.."
|
|
|
|
),
|
|
|
|
'adr_typeVoie' => array(
|
|
|
|
'lib' => "Adresse : Type de voie"
|
|
|
|
),
|
|
|
|
'adr_libVoie' => array(
|
|
|
|
'lib' => "Adresse : Libellé de la voie"
|
|
|
|
),
|
|
|
|
'adr_comp' => array(
|
|
|
|
'lib' => "Adresse : Complément"
|
|
|
|
),
|
|
|
|
'adr_cp' => array(
|
|
|
|
'lib' => "Adresse : Code Postal"
|
|
|
|
),
|
|
|
|
'adr_ville' => array(
|
|
|
|
'lib' => "Adresse : Ville"
|
|
|
|
),
|
|
|
|
'adr_dep' => array(
|
|
|
|
'lib' => "Adresse : Département"
|
|
|
|
),
|
|
|
|
'adr_codeCom' => array(
|
|
|
|
'lib' => "Adresse Code Commune étab"
|
|
|
|
),
|
|
|
|
'telEtab' => array(
|
|
|
|
'lib' => "Téléphone"
|
|
|
|
),
|
|
|
|
'faxEtab' => array(
|
|
|
|
'lib' => "Télécopie"
|
|
|
|
),
|
|
|
|
'cj' => array(
|
|
|
|
'lib' => "Forme juridique"
|
|
|
|
),
|
|
|
|
'capital' => array(
|
|
|
|
'lib' => "Capital"
|
|
|
|
),
|
|
|
|
'capitalDev' => array(
|
|
|
|
'lib' => "Devise du capital"
|
|
|
|
),
|
|
|
|
'ape_etab' => array(
|
|
|
|
'lib' => "NAF de l'établissement"
|
|
|
|
),
|
|
|
|
'ape_entrep' => array(
|
|
|
|
'lib' => "NAF de l'entreprise"
|
|
|
|
),
|
2012-01-19 09:39:57 +00:00
|
|
|
'SiretEnBase' => array(
|
|
|
|
'lib' => "Vérifier la présence en base du siren/siret"
|
|
|
|
),
|
2012-01-19 08:19:02 +00:00
|
|
|
'etActifInsee' => array(
|
2012-01-19 09:39:57 +00:00
|
|
|
'lib' => "Insee : Actif"
|
|
|
|
),
|
|
|
|
'nomInsee' => array(
|
|
|
|
'lib' => 'Insee : Raison Sociale'
|
|
|
|
),
|
|
|
|
'nomInsee2' => array(
|
|
|
|
'lib' => 'Insee : Raison Sociale (suite)'
|
|
|
|
),
|
|
|
|
'sigleInsee' => array(
|
|
|
|
'lib' => 'Insee : Sigle'
|
|
|
|
),
|
|
|
|
'enseigneInsee' => array(
|
|
|
|
'lib' => 'Insee : Enseigne'
|
|
|
|
),
|
|
|
|
'adrNumVoieInsee' => array(
|
|
|
|
'lib' => 'Insee : Adresse - Numéro dans la voie'
|
|
|
|
),
|
|
|
|
'adrBtqInsee' => array(
|
|
|
|
'lib' => 'Insee : Adresse - Bis/Ter/etc'
|
|
|
|
),
|
|
|
|
'adrTypeVoieInsee' => array(
|
|
|
|
'lib' => 'Insee : Adresse - Type de voie'
|
|
|
|
),
|
|
|
|
'adrVoieInsee' => array(
|
|
|
|
'lib' => 'Insee : Adresse - Libellé de la voie'
|
|
|
|
),
|
|
|
|
'adrCompInsee' => array(
|
|
|
|
'lib' => 'Insee : Adresse - Complément'
|
|
|
|
),
|
|
|
|
'adrCPInsee' => array(
|
|
|
|
'lib' => 'Insee : Adresse - Code Postal'
|
|
|
|
),
|
|
|
|
'adrVilleInsee' => array(
|
|
|
|
'lib' => 'Insee : Adresse - Commune'
|
|
|
|
),
|
|
|
|
'adrDistSPInsee' => array(
|
|
|
|
'lib' => 'Insee : Adresse - Distribution spéciale'
|
|
|
|
),
|
|
|
|
'CjInsee' => array(
|
|
|
|
'lib' => "Insee : Forme juridique de l'entreprise"
|
|
|
|
),
|
|
|
|
'nafEnInsee' => array(
|
|
|
|
'lib' => "Insee : Adresse - NAF de l'entreprise"
|
|
|
|
),
|
|
|
|
'nafEtInsee' => array(
|
|
|
|
'lib' => "Insee : Adresse - NAF de l'etablissement"
|
|
|
|
),
|
|
|
|
'APRM' => array(
|
|
|
|
'lib' => "Insee : APRM"
|
|
|
|
),
|
|
|
|
'ACTIVNAT' => array(
|
|
|
|
'lib' => "Insee : ACTIVNAT"
|
|
|
|
),
|
|
|
|
'ORIGINE' => array(
|
|
|
|
'lib' => "Insee : Origine de création"
|
|
|
|
),
|
|
|
|
'MODET' => array(
|
|
|
|
'lib' => "Insee : MODET"
|
|
|
|
),
|
|
|
|
'EXPLET' => array(
|
|
|
|
'lib' => 'Insee : EXPLET'
|
|
|
|
),
|
|
|
|
'LIEUACT' => array(
|
|
|
|
'lib' => "Insee : LIEUACT"
|
|
|
|
),
|
|
|
|
'ACTISURF' => array(
|
|
|
|
'lib' => "Insee : ACTISURF"
|
|
|
|
),
|
|
|
|
'MODEN' => array(
|
|
|
|
'lib' => "Insee : MODEN"
|
|
|
|
),
|
|
|
|
'PRODPART' => array(
|
|
|
|
'lib' => "Insee : PRODPART"
|
|
|
|
),
|
|
|
|
'EXPLEN' => array(
|
|
|
|
'lib' => "Insee : EXPLEN"
|
|
|
|
),
|
|
|
|
'MONOREG' => array(
|
|
|
|
'lib' => "Insee : Mono-régionalité"
|
|
|
|
),
|
|
|
|
'REGIMP' => array(
|
|
|
|
'lib' => "Insee : Principale région d'implantation"
|
|
|
|
),
|
|
|
|
'MONOACT' => array(
|
|
|
|
'lib' => "Insee : Mono-activité"
|
|
|
|
),
|
|
|
|
'DCREN' => array(
|
|
|
|
'lib' => "Insee : Date de création de l'entreprise"
|
|
|
|
),
|
|
|
|
'AUXILT' => array(
|
|
|
|
'lib' => "Insee : Auxiliarité"
|
|
|
|
),
|
|
|
|
'SAISONAT' => array(
|
|
|
|
'lib' => "Insee : Saisonalité"
|
|
|
|
),
|
|
|
|
'CIVILITE' => array(
|
|
|
|
'lib' => "Insee : Civilité"
|
|
|
|
),
|
|
|
|
'TCA' => array(
|
|
|
|
'lib' => "Insee : Tranche de chiffre d'affaire"
|
|
|
|
),
|
|
|
|
'TCAEXP' => array(
|
|
|
|
'lib' => "Insee : Tranche de chiffre d'affaire à l'export"
|
|
|
|
),
|
|
|
|
'EFF_ENT' => array(
|
|
|
|
'lib' => "Insee : Effectif de l'entreprise"
|
|
|
|
),
|
|
|
|
'DCRET' => array(
|
|
|
|
'lib' => "Insee : Date de création de l'établissement"
|
|
|
|
),
|
|
|
|
'EFF_ET' => array(
|
|
|
|
'lib' => "Insee : Effectif de l'établissement"
|
|
|
|
),
|
|
|
|
'CODEVOIE' => array(
|
|
|
|
'lib' => "Insee : Code voie"
|
|
|
|
),
|
|
|
|
'dateMajInsee' => array(
|
|
|
|
'lib' => "Insee : Date de la dernière mise à jour"
|
|
|
|
),
|
|
|
|
'insRPET' => array(
|
|
|
|
'lib' => "Insee : RPET"
|
|
|
|
),
|
|
|
|
'insDEPCOMEN' => array(
|
|
|
|
'lib' => "Insee : Code commune siège"
|
|
|
|
),
|
|
|
|
'insRPEN' => array(
|
|
|
|
'lib' => "Insee : RPEN"
|
|
|
|
),
|
|
|
|
'insARRONET' => array(
|
|
|
|
'lib' => "Insee : Arrondissement de l'établissement"
|
|
|
|
),
|
|
|
|
'insCTONET' => array(
|
|
|
|
'lib' => "Insee : Canton de l'établissement"
|
|
|
|
),
|
|
|
|
'insTCD' => array(
|
|
|
|
'lib' => "Insee : Tranche de commune détaillé"
|
|
|
|
),
|
|
|
|
'insZEMET' => array(
|
|
|
|
'lib' => "Insee : ZEMET"
|
|
|
|
),
|
|
|
|
'insDU' => array(
|
|
|
|
'lib' => "Insee : DU"
|
|
|
|
),
|
|
|
|
'insTU' => array(
|
|
|
|
'lib' => "Insee : TU"
|
|
|
|
),
|
|
|
|
'insUU' => array(
|
|
|
|
'lib' => "Insee : UU"
|
|
|
|
),
|
|
|
|
'insRECME' => array(
|
|
|
|
'lib' => "Insee : RCEM"
|
|
|
|
),
|
|
|
|
'insEAEANT' => array(
|
|
|
|
'lib' => "Insee : EAEANT"
|
|
|
|
),
|
|
|
|
'insEAEAPET' => array(
|
|
|
|
'lib' => "Insee : EAEAPET"
|
|
|
|
),
|
|
|
|
'insEAESEC1T' => array(
|
|
|
|
'lib' => "Insee : EAESEC1T"
|
|
|
|
),
|
|
|
|
'insEAESEC2T' => array(
|
|
|
|
'lib' => "Insee : EAESEC2T"
|
|
|
|
),
|
|
|
|
'insEAEANN' => array(
|
|
|
|
'lib' => "Insee : EAEANN"
|
|
|
|
),
|
|
|
|
'insEAEAPEN' => array(
|
|
|
|
'lib' => "Insee : EAEAPEN"
|
|
|
|
),
|
|
|
|
'insEAESEC1N' => array(
|
|
|
|
'lib' => "Insee : EAESEC1N"
|
|
|
|
),
|
|
|
|
'insEAESEC2N' => array(
|
|
|
|
'lib' => "Insee : EAESEC2N"
|
|
|
|
),
|
|
|
|
'insEAESEC3N' => array(
|
|
|
|
'lib' => "Insee : EAESEC3N"
|
|
|
|
),
|
|
|
|
'insEAESEC4N' => array(
|
|
|
|
'lib' => "Insee : EAESEC4N"
|
|
|
|
),
|
|
|
|
'dateMajNotice' => array(
|
|
|
|
'lib' => "Insee : Date de la dernière MAJ notice"
|
|
|
|
),
|
|
|
|
'entActiveRncs' => array(
|
|
|
|
'lib' => "RNCS : Active"
|
|
|
|
),
|
|
|
|
'numRC2' => array(
|
|
|
|
'lib' => "RNCS : Numéro RC"
|
|
|
|
),
|
|
|
|
'raisonSocialeRncs' => array(
|
|
|
|
'lib' => "RNCS : Raison Sociale"
|
|
|
|
),
|
|
|
|
'sigleRncs' => array(
|
|
|
|
'lib' => "RNCS : Sigle"
|
|
|
|
),
|
|
|
|
'dateNaiss' => array(
|
|
|
|
'lib' => "RNCS : Date Naissance PP"
|
|
|
|
),
|
|
|
|
'lieuNaiss' => array(
|
|
|
|
'lib' => "RNCS : Lieu Naissance PP"
|
|
|
|
),
|
|
|
|
'nationalite' => array(
|
|
|
|
'lib' => "RNCS : Nationalité PP"
|
|
|
|
),
|
|
|
|
'pays' => array(
|
|
|
|
'lib' => "RNCS : Pays"
|
|
|
|
),
|
|
|
|
'nafEnRncs' => array(
|
|
|
|
'lib' => "RNCS : NAF Entrepise"
|
|
|
|
),
|
|
|
|
'cjRncs' => array(
|
|
|
|
'lib' => "RNCS : Forme juridique"
|
|
|
|
),
|
|
|
|
'dateImma' => array(
|
|
|
|
'lib' => "RNCS : Date Immatriculation"
|
|
|
|
),
|
|
|
|
'dateRad' => array(
|
|
|
|
'lib' => "RNCS : Date de radiation"
|
|
|
|
),
|
|
|
|
'capitalType' => array(
|
|
|
|
'lib' => "RNCS : Type de capital"
|
|
|
|
),
|
|
|
|
'dateMajEnRncs' => array(
|
|
|
|
'lib' => "RNCS : Date MAJ Entreprise"
|
|
|
|
),
|
|
|
|
'etActifRncs' => array(
|
|
|
|
'lib' => "RNCS : Actif"
|
|
|
|
),
|
|
|
|
'siegeRncs' => array(
|
|
|
|
'lib' => "RNCS : Siège"
|
|
|
|
),
|
|
|
|
'enseigneRncs' => array(
|
|
|
|
'lib' => "RNCS : Enseigne"
|
|
|
|
),
|
|
|
|
'nomCommercialRncs' => array(
|
|
|
|
'lib' => "RNCS : Nom Commercial"
|
|
|
|
),
|
|
|
|
'adrNumVoieRncs' => array(
|
|
|
|
'lib' => "RNCS : Numéro"
|
|
|
|
),
|
|
|
|
'adrIndRepRncs' => array(
|
|
|
|
'lib' => "RNCS : Adresse - Numéro"
|
|
|
|
),
|
|
|
|
'adrLibVoieRncs' => array(
|
|
|
|
'lib' => "RNCS : Adresse - Bis/Ter/etc"
|
|
|
|
),
|
|
|
|
'adrTypeVoieRncs' => array(
|
|
|
|
'lib' => "RNCS : Adresse - Type de la voie"
|
|
|
|
),
|
|
|
|
'adrVoieRncs' => array(
|
|
|
|
'lib' => "RNCS : Adresse - Libellé de la voie"
|
|
|
|
),
|
|
|
|
'cpRncs' => array(
|
|
|
|
'lib' => "RNCS : Adresse - Code postal"
|
|
|
|
),
|
|
|
|
'villeRncs' => array(
|
|
|
|
'lib' => "RNCS : Adresse - Ville"
|
|
|
|
),
|
|
|
|
'adrCompRncs' => array(
|
|
|
|
'lib' => "RNCS : Adresse - Complément"
|
|
|
|
),
|
|
|
|
'nafEtRncs' => array(
|
|
|
|
'lib' => "RNCS : NAF Etablissement"
|
|
|
|
),
|
|
|
|
'dateMajEtRncs' => array(
|
|
|
|
'lib' => "RNCS : Date MAJ établissement"
|
|
|
|
),
|
|
|
|
'isin' => array(
|
|
|
|
'lib' => "Code ISIN (société en bourse)"
|
|
|
|
),
|
|
|
|
'tel' => array(
|
|
|
|
|
|
|
|
),
|
2012-01-15 17:43:37 +00:00
|
|
|
'fax' => array(),
|
|
|
|
'web' => array(),
|
|
|
|
'mail' => array(),
|
2012-01-19 09:39:57 +00:00
|
|
|
'nicSiege'=> array(
|
|
|
|
'lib' => "NIC du siège (si nic absent)"
|
|
|
|
),
|
2012-01-19 08:19:02 +00:00
|
|
|
'tva'=> array(
|
|
|
|
'lib' => "Numéro de TVA (non validés)"
|
|
|
|
),
|
2012-01-15 17:43:37 +00:00
|
|
|
'dateFermetureEn'=> array(),
|
|
|
|
'dateFermetureEt'=> array(),
|
|
|
|
'activite'=> array(),
|
|
|
|
'situationJuridique'=> array(),
|
|
|
|
'situationParution'=> array(),
|
|
|
|
'situationDernCode'=> array(),
|
|
|
|
'situationDernEven'=> array(),
|
|
|
|
'indiScore'=> array(),
|
|
|
|
'dirigeant'=> array(),
|
|
|
|
'encours'=> array(),
|
|
|
|
'dateBilan'=> array(),
|
2012-01-16 14:19:25 +00:00
|
|
|
'bilanN'=> array('values'=>''),
|
|
|
|
'bilanN1'=> array('values'=>''),
|
|
|
|
'bilanN2'=> array('values'=>''),
|
|
|
|
'annonces'=> array('values'=>''),
|
2012-01-15 17:43:37 +00:00
|
|
|
);
|
|
|
|
|
|
|
|
public function __construct(){}
|
|
|
|
|
|
|
|
//Vérifie que les entêtes du fichier sont correct
|
|
|
|
public function checkFileEntete($pathFile)
|
|
|
|
{
|
|
|
|
$posKeySiren = $posKeySiret = $posKeyNic = false;
|
|
|
|
$row = 0;
|
|
|
|
$error = array();
|
|
|
|
if (($handle = fopen($opts->file, 'r')) !== FALSE) {
|
|
|
|
while (($data = fgetcsv($handle, 0, ',', '"')) !== FALSE) {
|
|
|
|
$num = count($data);
|
|
|
|
//Traitement de la première ligne
|
|
|
|
if ($row == 0) {
|
|
|
|
for ($c=0; $c < $num; $c++) {
|
|
|
|
//Détection clé importante
|
|
|
|
switch(strtolower($data[$c])) {
|
|
|
|
case 'siren':
|
|
|
|
$posKeySiren = $c;
|
|
|
|
break;
|
|
|
|
case 'nic':
|
|
|
|
$posKeyNic = $c;
|
|
|
|
break;
|
|
|
|
case 'siret':
|
|
|
|
$posKeySiret = $c;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
//Détection clé pour enrichissement
|
|
|
|
$values = false;
|
|
|
|
if (preg_match('/(.*)\((.*)\)/', $key, $matches))
|
|
|
|
{
|
|
|
|
$key = $matches[1];
|
|
|
|
$values = $matches[2];
|
|
|
|
} else {
|
|
|
|
$key = $data[$c];
|
|
|
|
}
|
|
|
|
if (!array_key_exists($key, $this->tabDico)){
|
|
|
|
$error[] = "Clé enrichissement $key incorrect";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if ($posKeySiren!==false && $posKeyNic!==false && $posKeySiret!==false || $posKeySiren!==false && $posKeySiret!==false ){
|
|
|
|
$error[] = "Trop de clé!";
|
|
|
|
}
|
|
|
|
if ($posKeySiren===false && $posKeySiret===false){
|
|
|
|
$error[] = "Aucune clé détecté!";
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
//Erreur dans les entetes, on arrete
|
|
|
|
if (count($error)>0){
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$row++;
|
|
|
|
}
|
|
|
|
fclose($handle);
|
|
|
|
if (count($error)>0){
|
|
|
|
return $error;
|
|
|
|
}
|
|
|
|
return $row-1;
|
|
|
|
}
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
//Retourne les clés de dictionnaire pour les données d'enrichissement
|
|
|
|
public function getDico()
|
|
|
|
{
|
2012-01-16 14:19:25 +00:00
|
|
|
return $this->tabDico;
|
2012-01-15 17:43:37 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
//Retourne le libellé pour chaque clés du dictionnaire
|
|
|
|
public function getDicoLib($key)
|
|
|
|
{
|
|
|
|
if (array_key_exists($key, $this->tabDico))
|
|
|
|
{
|
|
|
|
$element = $this->tabDico[$key];
|
|
|
|
if (array_key_exists('lib', $element) && !empty($element['lib'])) {
|
|
|
|
return $element['lib'];
|
|
|
|
}
|
|
|
|
return $key;
|
|
|
|
}
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
//Retourne les caractéristiques des clés
|
|
|
|
public function getDicoDef($key)
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|