enrichissement/library/Scores/Enrichissement.php

664 lines
17 KiB
PHP
Raw Normal View History

2012-01-15 17:43:37 +00:00
<?php
2012-05-15 15:05:42 +00:00
class Enrichissement
2012-01-15 17:43:37 +00:00
{
//Traiter la demande en créant les requetes sql nécessaires
protected $tabDico = array(
2012-01-19 08:19:02 +00:00
'idSd' => array(
2013-02-05 13:25:09 +00:00
'lib' => "SD : Identifiant - Etablissement",
'help' => "Identifiant interne propre à SD, usage restreint",
'columns' => array(
2013-02-05 13:25:09 +00:00
'id' => 'Identifiant Interne',
)
2012-05-15 15:05:42 +00:00
),
2012-01-19 08:19:02 +00:00
'source' => array(
'lib' => "SD : Source"
2013-02-05 14:09:10 +00:00
//@todo : Yoann
2012-01-19 08:19:02 +00:00
),
'triCode' => array(
2013-02-05 14:09:10 +00:00
'lib' => "?? : Code BODACC du Tribunal - Etablissement",
'help' => "Code BODACC du tribunal, voir la table jo.tribunaux (à confirmer, sortir triNom)
<br/>Entreprise exclusivement INSEE pas de code tribunal",
'columns' => array(
'triCode' => ''
)
2012-01-19 08:19:02 +00:00
),
'autre_id' => array(
2013-02-05 14:09:10 +00:00
'lib' => "Autre ID (SIREN ou WALDEC)",
'help' => "Doublon SIREN (source RNCS) ou WALDEC (source JOAFE) si association",
'columns' => array(
'autre_id' => "Autre ID (SIREN ou WALDEC)",
),
2012-01-19 08:19:02 +00:00
),
'actif' => array(
2013-02-05 14:09:10 +00:00
'lib' => 'SD : ACTIF',
//@todo : Yoann
2012-01-19 08:19:02 +00:00
),
'siege' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Siège ou Etablissement",
'help' => "Valeur : 0 les établissements Secondaires (source INSEE),
1 l'établissement Siège de l'entreprise (source INSEE) ;
2 notion RNCS désignant l'établissement Principal qui n'est pas obligatoirement le siège
http://www.greffe-tc-caen.fr/rcs_etabs.php",
2012-01-19 08:19:02 +00:00
),
'raisonSociale' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Raison Sociale",
'help' => "Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'enseigne' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Enseigne",
'help' => "Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'sigle' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Sigle",
'help' => "Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'marques' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Marques déposées",
'help' => "Chaine de caractère assemblé - Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'adr_num' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Adresse Numéro dans la voie - Etablissement",
'help' => "Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'adr_btq' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Adresse Bis/Ter/etc.. - Etablissement",
'help' => "Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'adr_typeVoie' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Adresse Type de voie - Etablissement",
'help' => "Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'adr_libVoie' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Adresse Libellé de la voie - Etablissement",
'help' => "Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'adr_comp' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Adresse Complément - Etablissement",
'help' => "Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'adr_cp' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Adresse Code Postal - Etablissement",
'help' => "Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'adr_ville' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Adresse Ville - Etablissement",
'help' => "Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'adr_dep' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Adresse Département - Etablissement",
'help' => "Regle de composition de la donnée"
2012-01-19 08:19:02 +00:00
),
'adr_codeCom' => array(
2013-02-05 14:09:10 +00:00
'lib' => "SD : Adresse Code Commune étab - Etablissement",
'help' => "Regle de composition de la donnée"
2012-05-15 15:05:42 +00:00
),
2012-01-19 08:19:02 +00:00
'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(
2013-09-11 13:40:45 +00:00
'lib' => "SD : NAF Etablissement",
'help' => "Code NAF 5 positions",
'columns' => array(
'ape_etab' => "SD : NAF Etablissement",
),
2012-01-19 08:19:02 +00:00
),
'ape_entrep' => array(
2013-09-11 13:40:45 +00:00
'lib' => "SD : NAF Entreprise",
'help' => "Code NAF 5 positions",
'columns' => array(
'ape_entrep' => "SD : NAF Entreprise",
),
),
'NaceEtab' => array(
'lib' => "SD : NACE Etablissement",
'help' => "",
'columns' => array(
'NaceEtab' => "SD : NACE Etablissement",
'NaceEtabLib' => "SD : NACE Etablissement",
),
),
'NaceEn' => array(
'lib' => "SD : NACE Entreprise",
'help' => "",
'columns' => array(
'NaceEn' => "SD : NACE Entreprise",
'NaceEnLib' => "SD : NACE Entreprise",
),
),
2012-01-19 09:39:57 +00:00
'SiretEnBase' => array(
2012-05-15 15:05:42 +00:00
'lib' => "Vérifier la présence en base du siren/siret"
2012-01-19 09:39:57 +00:00
),
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(
2013-01-29 11:09:51 +00:00
'lib' => "Insee : NAF de l'entreprise"
2012-01-19 09:39:57 +00:00
),
'nafEtInsee' => array(
2013-01-29 11:09:51 +00:00
'lib' => "Insee : NAF de l'etablissement"
2012-01-19 09:39:57 +00:00
),
'APRM' => array(
'lib' => "Insee : APRM"
),
'ACTIVNAT' => array(
'lib' => "Insee : ACTIVNAT"
),
'ORIGINE' => array(
2013-04-19 14:49:02 +00:00
'lib' => "Insee : Origine de création de l'établissement"
2012-01-19 09:39:57 +00:00
),
'MODET' => array(
'lib' => "Insee : MODET"
),
'EXPLET' => array(
'lib' => 'Insee : EXPLET'
),
'LIEUACT' => array(
'lib' => "Insee : LIEUACT"
),
'ACTISURF' => array(
'lib' => "Insee : ACTISURF"
),
2013-03-29 15:57:53 +00:00
'DEFET' => array(
'lib' => "Insee : Année MAJ de l'effectif de l'établissement"
),
2012-01-19 09:39:57 +00:00
'MODEN' => array(
'lib' => "Insee : MODEN"
),
'PRODPART' => array(
'lib' => "Insee : PRODPART"
),
2013-03-29 15:57:53 +00:00
'EXPLEN' => array(
2012-01-19 09:39:57 +00:00
'lib' => "Insee : EXPLEN"
),
2013-03-29 15:57:53 +00:00
'DEFEN' => array(
'lib' => "Insee : Année MAJ de l'effectif de l'entreprise"
),
2012-01-19 09:39:57 +00:00
'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"
),
2013-02-14 16:03:40 +00:00
'SIEGE' => array(
'lib' => "Insee : Siege",
'help' => "Qualité de siege ou non de l'établissement",
'columns' => array(
'SIEGE' => 'Insee : Siege',
)
),
2012-01-19 09:39:57 +00:00
'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"
),
2013-03-29 15:57:53 +00:00
'TEFF_ENT' => array(
'lib' => "Insee : Tranche effectif entreprise",
),
2013-02-14 16:03:40 +00:00
'ADR_DEP' => array(
'lib' => "Insee : Adresse - Département",
'help' => "Département de localisation de l'établissement (2 caractères)",
'columns'=> array(
'ADR_DEP' => 'Insee : Departement',
),
),
'ADR_COM' => array(
'lib' => "Insee : Commune de localisation de l'établissement",
'help' => "(3 chiffres)",
'columns' => array(
'ADR_COM' => "Insee : Code commune",
),
),
2013-03-29 15:57:53 +00:00
'EFF_ET' => array(
2012-01-19 09:39:57 +00:00
'lib' => "Insee : Effectif de l'établissement"
),
2013-03-29 15:57:53 +00:00
'TEFF_ET' => array(
'lib' => "Insee : Tranche effectif etablissement",
),
2012-01-19 09:39:57 +00:00
'CODEVOIE' => array(
2013-09-11 11:58:08 +00:00
'lib' => "Insee : Code voie",
'help' => "Code Rivoli / Ex Fantoir",
2012-01-19 09:39:57 +00:00
),
'dateMajInsee' => array(
'lib' => "Insee : Date de la dernière mise à jour"
),
'insRPET' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : RPET"
2012-01-19 09:39:57 +00:00
),
'insDEPCOMEN' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : Code commune siège"
2012-01-19 09:39:57 +00:00
),
'insRPEN' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : RPEN"
2012-01-19 09:39:57 +00:00
),
'insARRONET' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : Arrondissement de l'établissement"
2012-01-19 09:39:57 +00:00
),
'insCTONET' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : Canton de l'établissement"
2012-01-19 09:39:57 +00:00
),
'insTCD' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : Tranche de commune détaillé"
2012-01-19 09:39:57 +00:00
),
'insZEMET' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : ZEMET"
2012-01-19 09:39:57 +00:00
),
'insDU' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : DU"
2012-01-19 09:39:57 +00:00
),
'insTU' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : TU"
2012-01-19 09:39:57 +00:00
),
'insUU' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : UU"
2012-01-19 09:39:57 +00:00
),
2013-04-19 14:49:02 +00:00
'insMMINTRET' => array(
'lib' => "Insee : MMINTRET",
),
'insMMINTREN' => array(
'lib' => "Insee : MMINTREN",
),
2012-01-19 09:39:57 +00:00
'insRECME' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : RCEM"
2012-01-19 09:39:57 +00:00
),
'insEAEANT' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : EAEANT"
2012-01-19 09:39:57 +00:00
),
'insEAEAPET' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : EAEAPET"
2012-01-19 09:39:57 +00:00
),
'insEAESEC1T' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : EAESEC1T"
2012-01-19 09:39:57 +00:00
),
'insEAESEC2T' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : EAESEC2T"
2012-01-19 09:39:57 +00:00
),
'insEAEANN' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : EAEANN"
2012-01-19 09:39:57 +00:00
),
'insEAEAPEN' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : EAEAPEN"
2012-01-19 09:39:57 +00:00
),
'insEAESEC1N' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : EAESEC1N"
2012-01-19 09:39:57 +00:00
),
'insEAESEC2N' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : EAESEC2N"
2012-01-19 09:39:57 +00:00
),
'insEAESEC3N' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : EAESEC3N"
2012-01-19 09:39:57 +00:00
),
'insEAESEC4N' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : EAESEC4N"
2012-01-19 09:39:57 +00:00
),
'dateMajNotice' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Insee : Date de la dernière MAJ notice"
2012-01-19 09:39:57 +00:00
),
'NBETEXPL' => array(
2013-01-29 11:09:51 +00:00
'lib' => "Insee : Nombre d'établissement exploitant actif"
),
2012-01-19 09:39:57 +00:00
'entActiveRncs' => array(
2013-01-29 11:09:51 +00:00
'lib' => "RNCS : Actif - Entreprise"
2012-01-19 09:39:57 +00:00
),
'numRC2' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Numéro RC"
2012-01-19 09:39:57 +00:00
),
'raisonSocialeRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Raison Sociale"
2012-01-19 09:39:57 +00:00
),
'sigleRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Sigle"
2012-01-19 09:39:57 +00:00
),
'dateNaiss' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Date Naissance PP"
2012-01-19 09:39:57 +00:00
),
'lieuNaiss' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Lieu Naissance PP"
2012-01-19 09:39:57 +00:00
),
'nationalite' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Nationalité PP"
2012-01-19 09:39:57 +00:00
),
'pays' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Pays"
2012-01-19 09:39:57 +00:00
),
'nafEnRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : NAF Entrepise"
2012-01-19 09:39:57 +00:00
),
'cjRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Forme juridique"
2012-01-19 09:39:57 +00:00
),
'dateImma' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Date Immatriculation"
2012-01-19 09:39:57 +00:00
),
'dateRad' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Date de radiation"
2012-01-19 09:39:57 +00:00
),
'capitalType' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Type de capital"
2012-01-19 09:39:57 +00:00
),
'dateMajEnRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Date MAJ Entreprise"
2012-01-19 09:39:57 +00:00
),
'etActifRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Actif"
2012-01-19 09:39:57 +00:00
),
'siegeRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Siège"
2012-01-19 09:39:57 +00:00
),
'enseigneRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Enseigne"
2012-01-19 09:39:57 +00:00
),
'nomCommercialRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Nom Commercial"
2012-01-19 09:39:57 +00:00
),
'adrNumVoieRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Numéro"
2012-01-19 09:39:57 +00:00
),
'adrIndRepRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Adresse - Numéro"
2012-01-19 09:39:57 +00:00
),
'adrLibVoieRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Adresse - Bis/Ter/etc"
2012-01-19 09:39:57 +00:00
),
'adrTypeVoieRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Adresse - Type de la voie"
2012-01-19 09:39:57 +00:00
),
'adrVoieRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Adresse - Libellé de la voie"
2012-01-19 09:39:57 +00:00
),
2012-05-15 15:05:42 +00:00
'cpRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Adresse - Code postal"
2012-01-19 09:39:57 +00:00
),
'villeRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Adresse - Ville"
2012-01-19 09:39:57 +00:00
),
'adrCompRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Adresse - Complément"
2012-01-19 09:39:57 +00:00
),
'nafEtRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : NAF Etablissement"
2012-01-19 09:39:57 +00:00
),
'dateMajEtRncs' => array(
2012-04-06 13:11:46 +00:00
'lib' => "RNCS : Date MAJ établissement"
2012-01-19 09:39:57 +00:00
),
'isin' => array(
2012-04-06 13:11:46 +00:00
'lib' => "Code ISIN (société en bourse)"
2012-01-19 09:39:57 +00:00
),
'tel' => array(
2012-05-15 15:05:42 +00:00
2012-01-19 09:39:57 +00:00
),
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(),
'indiScore'=> array(
'lib' => 'SD : indiScore',
),
'AdresseNormalise' => array(
2013-04-19 14:49:02 +00:00
'lib' => 'AdresseNormalise',
'columns' => array(
'AdresseL1_NOM' => '',
'AdresseL2_NOM2' => '',
'AdresseL3_ADRCOMP' => '',
'AdresseL4_VOIE' => '',
'AdresseL5_DISTSP' => '',
'AdresseL6_POST' => '',
'AdresseL7_PAYS' => '',
),
),
'AdresseNormaliseInsee' => array(
'lib' => 'AdresseNormaliseInsee',
'columns' => array(
'L1_NOM' => 'L1_NOMEN',
'L2_NOM2' => 'L2_COMP',
'L3_ADRCOMP' => 'L3_CADR',
'L4_VOIE' => 'L4_VOIE',
'L5_DISTSP' => 'L5_DISP',
'L6_POST' => 'L6_POST',
'L7_PAYS' => 'L7_ETRG',
),
),
'SiretSuc' => array(
'lib' => 'INSEE : Siret Successeur',
'help' => "",
'columns' => array(
'SiretSuc' => '',
'SiretSucNbDem' => '',
'SiretSucSiege' => '',
'SiretSucActif' => '',
'SiretSucCodeEve' => '',
'SiretSucDateEve' => '',
'SiretSucOrigine' => '',
)
),
2012-01-15 17:43:37 +00:00
'dirigeant'=> array(),
2012-01-16 14:19:25 +00:00
'bilanN'=> array('values'=>''),
'bilanN1'=> array('values'=>''),
'bilanN2'=> array('values'=>''),
'annonces'=> array('values'=>''),
2013-01-29 13:50:23 +00:00
'privilege' => array(),
2013-02-14 16:03:40 +00:00
'GPS' => array(
'lib' => 'SD : Coordonnées GPS - Etablissement',
'help' => "",
'columns' => array(
'latitude' => "Latitude en degrés et décimales de degrés",
'longitude' => "Longitude en degrés et décimales de degrés",
'altitude' => "Altitude en mètres",
'precis' => "Précision du géocodage (de 0=non géocodé à 8/9=géocodage à l'adresse)",
)
),
2014-04-10 14:20:22 +00:00
'TelOrder' => array(
'lib' => 'Telephone priorisé',
'help' => "",
'columns' => array()
),
2014-04-14 14:39:49 +00:00
'LienHead' => array(
'lib' => 'Tête de lien',
'help' => "",
'columns' => array()
),
2012-01-15 17:43:37 +00:00
);
2012-05-15 15:05:42 +00:00
2012-01-15 17:43:37 +00:00
public function __construct(){}
2012-05-15 15:05:42 +00:00
2012-01-15 17:43:37 +00:00
//Vérifie que les entêtes du fichier sont correct
public function checkFileEntete($pathFile)
{
$posKeySiren = $posKeySiret = $posKeyNic = false;
$row = 0;
$error = array();
2012-01-19 15:25:47 +00:00
if (($handle = fopen($pathFile, 'r')) !== FALSE) {
2012-01-15 17:43:37 +00:00
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;
2012-05-15 15:05:42 +00:00
case 'ref':
//Clé réference
2012-01-19 15:25:47 +00:00
break;
default:
//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";
}
break;
2012-01-15 17:43:37 +00:00
}
2012-05-15 15:05:42 +00:00
2012-01-15 17:43:37 +00:00
}
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;
}
2012-05-15 15:05:42 +00:00
return $row-1;
2012-01-15 17:43:37 +00:00
}
return false;
}
2012-05-15 15:05:42 +00:00
2012-01-15 17:43:37 +00:00
//Retourne les clés de dictionnaire pour les données d'enrichissement
public function getDico()
{
2012-05-15 15:05:42 +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)
{
2012-04-06 09:10:35 +00:00
//Si () alors traitement champs spécial
if ( preg_match('/(.*)\((.*)\)/', $key, $matches) ) {
$key = $matches[1];
}
2012-05-15 15:05:42 +00:00
2012-01-15 17:43:37 +00:00
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;
2012-05-15 15:05:42 +00:00
}
return false;
2012-01-15 17:43:37 +00:00
}
2012-05-15 15:05:42 +00:00
//Retourne le texte d'aide
public function getDicoHelp($key)
2012-01-15 17:43:37 +00:00
{
if (array_key_exists($key, $this->tabDico))
{
$element = $this->tabDico[$key];
if (array_key_exists('help', $element) && !empty($element['help'])) {
return $element['help'];
}
return '';
}
return false;
}
2012-05-15 15:05:42 +00:00
//Retourne les colonnes de sortie
public function getDicoColumns($key)
{
if (array_key_exists($key, $this->tabDico))
{
$element = $this->tabDico[$key];
if ( array_key_exists('columns', $element) ) {
return $element['columns'];
}
2013-02-05 14:09:10 +00:00
return array();
}
return false;
2012-01-15 17:43:37 +00:00
}
2012-05-15 15:05:42 +00:00
2012-01-15 17:43:37 +00:00
}