#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini 'Agencement', 2=>'Amiante', 122=>'Appareil production eau chaude sanitaire', 3=>'Arrosage', 4=>'Assainissement', 123=>'Assèchement des murs', 124=>'Bardage', 125=>'Bassin de piscine', 5=>'Bâtiments à ossature bois', 6=>'Béton armé et béton précontraint', 126=>'Brùleur', 7=>'Calfeutrement de joints de construction', 127=>'Calorifugeage', 8=>'Canalisations', 9=>'Carrelages-revêtements-mosaïques', 10=>'Champignons lignivores', 11=>'Chapes', 129=>'Charpente bois lamellé collé', 128=>'Charpente bois (réparation, renforcement)', 12=>'Charpente et structures en bois', 13=>'Charpente et structures industrialisées en bois', 14=>'Charpente patrimoine ancien et monuments historiques', 15=>'Chaudières entretien et dépannage', 16=>'Chauffage', 17=>'Chauffe-eau entretien et dépannage', 130=>'Chaufferie (rénovation)', 18=>'Chaussées', 20=>'Cheminées domestiques', 21=>'Cheminées industrielles', 19=>'Chemisage', 22=>'Climatisation', 23=>'Cloison bois', 24=>'Cloisons métalliques', 25=>'Clôtures et treillages bois', 26=>'Clôtures et treillages fer', 165=>'Combles', 28=>'Construction métallique', 131=>'Construction modulaire et sur système', 27=>'Constructions industrialisées', 29=>'Couverture', 30=>'Couverture patrimoine ancien et monuments historiques', 132=>'Cuvelages', 31=>'Cuvelages, réservoirs et piscines (étanchéité et imperméabilisation)', 32=>'Dallages', 133=>'Déchets', 33=>'Décoration', 34=>'Démolition', 35=>'Désenfumage', 36=>'Echafaudages', 37=>'Enduits', 164=>'Energies renouvelables', 38=>'Enseignes', 39=>'Espaces verts', 40=>'Etaiements', 41=>'Etanchéité', 42=>'Exploitation', 43=>'Expositions', 135=>'Façades en bardages', 44=>'Façades en bardages', 134=>'Façades (imperméabilité)', 45=>'Façades-rideaux', 136=>'Facading', 46=>'Fermetures et protections solaires', 47=>'Ferronnerie', 48=>'Ferronnerie patrimoine ancien et monuments historiques', 49=>'Fluides médicaux', 50=>'Fluides spéciaux', 51=>'Fondations', 156=>'Fouilles', 52=>'Fours industriels', 53=>'Fumisterie', 54=>'Gypserie', 55=>'Hygiène des réseaux aérauliques', 137=>'Incendie (encoffrement, matériaux isolants)', 138=>'Incendie (protection à base de plâtre)', 139=>'Incinération', 56=>'Insectes xylophages', 140=>'Installation eau (maintenance)', 141=>'Installation sanitaire', 142=>'Installation thermique', 57=>'Isolation (acoustique-frigorifique-thermique)', 58=>'Isolation par planchers surélevés', 143=>'Maçonnerie', 59=>'Maçonnerie et béton armé courant', 60=>'Maçonnerie patrimoine ancien et monuments historiques', 144=>'Maçonnerie (réparation, transformation)', 61=>'Mains courantes', 62=>'Maintenance', 64=>'Maquettes', 63=>'Marbrerie', 68=>'Menuiseries des monuments historiques', 65=>'Menuiseries en bois', 66=>'Menuiseries en P.V.C.', 67=>'Menuiseries métalliques', 69=>'Métallerie', 145=>'Métallerie résistant au feu', 70=>'Miroiterie', 71=>'Montage-levage', 146=>'Ordures ménagères', 160=>'Organes de retenue d eau', 73=>'Organes de stockage', 161=>'Ossatures d appareils de levage', 75=>'Ouvrages étanches', 76=>'Paratonnerres', 77=>'Parquets', 78=>'Pavage', 79=>'Peinture', 147=>'Peinture industrielle', 80=>'Pierre (taille et pose)', 163=>'Piscine', 148=>'Plafonds tendus', 81=>'Plaques de plâtre', 82=>'Plâtrerie', 72=>'Plomberie', 83=>'Plomberie - Installations sanitaires', 149=>'Plomb (peinture)', 84=>'Ponts métalliques', 85=>'Poteaux et clôtures', 86=>'Préfabrication béton armé et précontraint', 87=>'Protection contre l\'incendie', 88=>'Protection des façades', 89=>'Protections solaires', 90=>'Pylônes et tours de transmission', 91=>'Ramonage', 92=>'Ravalement maçonnerie', 93=>'Ravalement peinture', 150=>'Régulation', 155=>'Remontée capillaire', 110=>'Renforcement et réparation d ouvrages d art', 95=>'Rénovation de chaufferies', 96=>'Réparation en béton armé', 97=>'Réparation en maçonnerie', 151=>'Reprise en sous-oeuvre', 100=>'Réseaux aérauliques', 152=>'Réseaux (chaleur, froid)', 98=>'Restauration patrimoine ancien et monuments historiques', 99=>'Revêtements (sols et murs)', 157=>'RIA (Robinet Incendie Armé)', 101=>'Sculpture', 162=>'Serrurerie', 102=>'Staff', 103=>'Structures évènementielles', 104=>'Structures textiles', 105=>'Stuc', 158=>'Tapisserie', 106=>'Téléalarme - Télésurveillance - Télégestion', 108=>'Termites', 159=>'Terrassements', 107=>'Terrassements - Fouilles', 109=>'Thermique industrielle', 94=>'Traitement de l amiante en place', 111=>'Traitement des bois et constructions', 112=>'Transformations en maçonnerie', 113=>'Translucides (planchers et panneaux)', 153=>'Tribune', 114=>'Trottoirs', 115=>'Tubage', 74=>'Tuyauterie', 154=>'V.E.A. - V.E.C.', 116=>'Ventilation', 117=>'Vérandas', 121=>'Vidoir ordures ménagères', 118=>'Vitrail', 119=>'Vitrerie', 120=>'Voirie réseaux divers', ); include_once(FWK_PATH.'common/chiffres.php'); include_once(FWK_PATH.'common/dates.php'); include_once(FWK_PATH.'common/ftp.php'); include_once(INCLUDE_PATH.'insee/classMInsee.php'); include_once(INCLUDE_PATH.'partenaires/classMQualibat.php'); include_once(FWK_PATH.'mail/sendMail.php'); $strInfoScript='Usage : '.basename($argv[0]). " [OPTIONS] [numero Orias] Téléchargement et mise à jour de la base Qualibat. Options: -v Mode verbose ou debug -f Forcer la mise à jour depuis Qualibat -m Retourne le dernier numéro Qualibat en base -l Recherche uniquement les Qualibat non encore en base (*): Valeur par défaut ! "; $iQualibat=new MQualibat(); $modeDebug=$force=$max=$annee=$manquants=false; $tMin=7;//70; $tMax=21;//210; $tabQualibat=array(); $argv=$_SERVER['argv']; if ($_SERVER['argc']>1) { for ($i=1; isset($argv[$i]); $i++) { if (substr($argv[$i],0,1)=='-') { switch (substr($argv[$i],1,1)) { case 'v': $modeDebug=true; $tMin=1; $tMax=2; break; case 'f': $force=true; break; case 'm': $max=true; $annee=substr($argv[$i],3); break; case 'l': $manquants=true; break; case '-': case '?': die($strInfoScript); break; default: die('Option '. $argv[$i] . " inconnue !\n"); break; } } else { $tabQualibat[]=$argv[$i]*1; } } } if ($max) { $idQualibat=$iQualibat->getMaxQualibat(); echo date('Y/m/d - H:i:s')." - Dernier id Qualibat : '$idQualibat'.".EOL; die(); } echo date('Y/m/d - H:i:s') ." - DEBUT du programme de récupération des entreprises Qualibat.".EOL; if (count($tabQualibat)==0) { $partiel=false; $idQualibat=$iQualibat->getMaxQualibat(); if ($modeDebug) echo date('Y/m/d - H:i:s')." - Dernier id Qualibat : '$idQualibat'.".EOL; if ($manquants) { $tabQualibat=$iQualibat->getTabQualibatManquants(); $nbQualibatManq=count($tabQualibat); echo date('Y/m/d - H:i:s')." - Il manque $nbQualibatManq id Qualibat en base !".EOL; $numQualibatTmp=$idQualibat; } else { for ($id=1; $id<=$idQualibat; $id++) { $numQualibatTmp=$id; $tabQualibat[]=$numQualibatTmp; } } // Il faudrait rechercher le dernier numéro Orias attribué non encore en base $iQualibat->force=$force; $nbAcces=0; while(true) { $numQualibatTmp++; echo date('Y/m/d - H:i:s')." - Recherche du dernier numéro Qualibat attribué : "; if ($iQualibat->getInfosQualibat(0,$numQualibatTmp)) { if (!$iQualibat->enCache) { randsleep($tMin/10,$tMax/10); $nbAcces++; } else $nbCache++; echo "$numQualibatTmp ".EOL; } else { echo --$numQualibatTmp.' !'.EOL; break; } } shuffle($tabQualibat); echo date('Y/m/d - H:i:s')." - Mise à jour de la base Qualibat...".EOL; } else { $partiel=true; echo date('Y/m/d - H:i:s')." - Chargement de numéros Qualibat...".EOL; } $nb=count($tabQualibat); $nbAcces=$nbCache=0; foreach ($tabQualibat as $i=>$idQualibat) { echo date('Y/m/d - H:i:s')." - $i/$nb: $idQualibat ... "; $iQualibat->force=$force; print_r($iQualibat->getInfosQualibat(0,$idQualibat)); echo date('Y/m/d - H:i:s')." - $i/$nb: $idQualibat ... récupéré "; if (!$partiel && date('Hi')*1>=1930) { //if (date('Hi')*1>=2235) { $nbTot=$nbAcces+$nbCache; $pct=@round($nbCache/$nbTot*100,2); @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Pompe Qualibat - Traitement quotidien", "$nbTot requêtes traitées dont $nbCache en cache ($pct %)"); die(); } if (!$iQualibat->enCache) { echo "via WWW. Attente...".EOL; if (!$partiel) randsleep($tMin,$tMax); $nbAcces++; } else { echo "en cache !".EOL; $nbCache++; } } $nbTot=$nbAcces+$nbCache; $pct=round($nbCache/$nbTot*100,2); if (!$partiel) { @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Pompe Qualibat - Tout est fini !", "FIN des $nbTot requêtes traitées dont $nbCache en cache ($pct %)"); } echo date('Y/m/d - H:i:s')." - FIN des $nbTot requêtes dont $nbCache en cache ($pct %)".EOL; die();