FRANSBONHOMME : Modification du traitement et integration dans la gestion des flux
This commit is contained in:
parent
fbb76687d2
commit
d84449a53e
@ -55,7 +55,6 @@ $pathClientSend = '/home/data/clients/fransbonhomme/send';
|
|||||||
|
|
||||||
// Stockage SD => Client
|
// Stockage SD => Client
|
||||||
$pathClientRecv = '/home/data/clients/fransbonhomme/recv';
|
$pathClientRecv = '/home/data/clients/fransbonhomme/recv';
|
||||||
$pathFtpRecv = '/home/data/ftp/fransbonhomme/recv';
|
|
||||||
|
|
||||||
//Options
|
//Options
|
||||||
try {
|
try {
|
||||||
@ -129,7 +128,7 @@ $tdate = new WDate();
|
|||||||
// Génération du fichier de demande depuis les logs de consultation indiscore2, indiscore3
|
// Génération du fichier de demande depuis les logs de consultation indiscore2, indiscore3
|
||||||
if ($opts->site)
|
if ($opts->site)
|
||||||
{
|
{
|
||||||
if (empty($opts->site) || $opts->site<20110101)
|
if ($opts->site===true)
|
||||||
{
|
{
|
||||||
$dateDemandes = date('Ymd');
|
$dateDemandes = date('Ymd');
|
||||||
}
|
}
|
||||||
@ -164,19 +163,35 @@ if ($opts->site)
|
|||||||
// Fichier de demande par FTP
|
// Fichier de demande par FTP
|
||||||
if ($opts->ftp)
|
if ($opts->ftp)
|
||||||
{
|
{
|
||||||
$dh = opendir($pathClientSend);
|
/*
|
||||||
while (false !== ($filename = readdir($dh)))
|
* Detecter si la date n'est pas trop ancienne
|
||||||
{
|
*/
|
||||||
if ($filename!='.' && $filename!='..' && strtolower(substr($filename,-4))=='.txt')
|
$dateNow = new Zend_Date();
|
||||||
{
|
$dateIn1 = $dateNow->toString('yyyy-MM-dd HH:mm:ss');
|
||||||
$tailleOctets = filesize($pathClientSend.'/'.$filename);
|
|
||||||
if ($tailleOctets>9)
|
$diff = $dateNow->sub(28, Zend_Date::HOUR);
|
||||||
{
|
$dateIn2 = $diff->toString('yyyy-MM-dd HH:mm:ss');
|
||||||
$tabFichLigneCmd[] = $filename;
|
|
||||||
} else {
|
//client, name, depotType, depotDate, depotFile, nbLines, dateInsert, dateExecute
|
||||||
echo date ('Y/m/d - H:i:s') . " - Attention, la taille du fichier '$filename' est incohérente ($tailleOctets octets)!\n";
|
$fluxinM = new Application_Model_Sdv1FluxFileIn();
|
||||||
}
|
$sql = $fluxinM->select()
|
||||||
|
->where('client=?','fransbonhomme')
|
||||||
|
->where('name=?', 'RAPPORT')
|
||||||
|
->where('depotType=?','FTP')
|
||||||
|
->where('dateExecute=?','0000-00-00 00:00:00')
|
||||||
|
->where("dateInsert BETWEEN '".$dateIn2."' AND '".$dateIn1."' ")
|
||||||
|
->order('dateInsert DESC');
|
||||||
|
|
||||||
|
$pitems = $fluxinM->fetchAll($sql);
|
||||||
|
|
||||||
|
if ( $pitems->count()==0 ) {
|
||||||
|
echo date('Y-m-d H:i:s')." : Aucun traitement à réaliser.".PHP_EOL;
|
||||||
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
foreach ($pitems as $p) {
|
||||||
|
$tabFichLigneCmd[] = $p->depotFile;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -191,6 +206,8 @@ if (count($tabFichLigneCmd) > 0)
|
|||||||
{
|
{
|
||||||
foreach ($tabFichLigneCmd as $fichierIn)
|
foreach ($tabFichLigneCmd as $fichierIn)
|
||||||
{
|
{
|
||||||
|
$dateBegin = date('YmdHis');
|
||||||
|
|
||||||
if ( !file_exists($pathClientSend.'/'.$fichierIn) ) {
|
if ( !file_exists($pathClientSend.'/'.$fichierIn) ) {
|
||||||
die("Erreur fichier '$fichierIn' inexistant !\n");
|
die("Erreur fichier '$fichierIn' inexistant !\n");
|
||||||
}
|
}
|
||||||
@ -548,14 +565,27 @@ if (count($tabFichLigneCmd) > 0)
|
|||||||
'dateHeure' => date('YmdHis'))
|
'dateHeure' => date('YmdHis'))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
} // Fin de lecture des lignes du fichier
|
||||||
|
|
||||||
//Copie des fichiers de rapport dans le FTP
|
//Ecriture dans la table des prestations
|
||||||
if ( !copy($pathClientRecv.'/'.$fichierOut, $pathFtpRecv.'/'.$fichierOut) ) {
|
$fluxoutM = new Application_Model_Sdv1FluxFileOut();
|
||||||
echo date ('Y/m/d - H:i:s')." - Erreur de copie du fichier $fichierOut dans le FTP !\n";
|
$dateEnd = date('YmdHis');
|
||||||
|
$fluxoutM->insert(array(
|
||||||
|
'client' => 'fransbonhomme',
|
||||||
|
'name' => 'RAPPORT',
|
||||||
|
'nbLines' => $iLigne+1,
|
||||||
|
'dateBegin' => $dateBegin,
|
||||||
|
'dateEnd' => $dateEnd,
|
||||||
|
'fileOut' => $fichierOut,
|
||||||
|
'depotType' => 'FTP',
|
||||||
|
'depotDate' => '0000-00-00 00:00:00',
|
||||||
|
));
|
||||||
|
if ($opts->ftp) {
|
||||||
|
//Ecrire la date d'execution dans flux_filein
|
||||||
|
$fluxinM->update(array('dateExecute' => $dateEnd), 'id='.$p->id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} // Fin de lecture des fichier de demande
|
} // Fin de lecture des fichiers de demande
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo date ('Y/m/d - H:i:s') . "Aucun fichier à traiter !\n";
|
echo date ('Y/m/d - H:i:s') . "Aucun fichier à traiter !\n";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user