140 lines
3.3 KiB
PHP
140 lines
3.3 KiB
PHP
<?php
|
|
require_once 'WsScore/WsScore.php';
|
|
require_once realpath(dirname(__FILE__)).'/Types.php';
|
|
|
|
class Extraction extends WsScore
|
|
{
|
|
|
|
/*
|
|
Table SQL pour gérér la queue
|
|
=============================
|
|
Numéro de commande
|
|
reference
|
|
enteteIn
|
|
format json, xml, file
|
|
dataIn
|
|
enteteOut
|
|
isValid => 0
|
|
error
|
|
dateAdded
|
|
dateStart
|
|
nbLigne => nombre de ligne dans le fichier
|
|
nbLigneT => nombre de ligne traités
|
|
dateStop
|
|
*/
|
|
|
|
/**
|
|
* Enregistrement d'une commande avec ces paramètres
|
|
* @param InfoEntete[] $infoEntete
|
|
* Liste des colonnes qui seront fournis, il est nécessaire d'identifier la ou les colonnes clés SIREN/SIRET/NIC
|
|
* @param string[] $infoEnrichissement
|
|
* Liste des clés, dans l'ordre, provenant du dictionnaire pour la génération du fichier d'enrichissement
|
|
* @param string $data
|
|
* Tableau des données
|
|
* @param string $format
|
|
* Format du tableau de données json/
|
|
* @param string $reference
|
|
* @return string
|
|
*/
|
|
public function setCommande($infoEntete = null, $infoEnrichissement = null, $data = null, $format = 'json', $reference = '')
|
|
{
|
|
return $numCommande;
|
|
}
|
|
|
|
/**
|
|
* Retourne les clés possibles et leurs libellés pour le fichier d'enrichissement
|
|
* @param string $categorie
|
|
* @param string $cle
|
|
* @return Dico[]
|
|
*/
|
|
public function getDataDico($categorie = null, $cle = null)
|
|
{
|
|
/*
|
|
Dictionnaire de données - getDataDico
|
|
=======================
|
|
Catégorie Clé Libellé Commentaires bdd.table
|
|
Identite siren Siren de l'entreprise
|
|
*/
|
|
$output = array();
|
|
$dico = new Dico();
|
|
|
|
return $output;
|
|
}
|
|
|
|
/**
|
|
* Validation préalable de la commande
|
|
* @param string $numCommande
|
|
* @param string $type algorithme, existe
|
|
* @param boolean $rejet Si true alors création d'un fichier uniquement des rejets
|
|
* @return string chaine vide ou chemin vers fichier de rejet
|
|
*/
|
|
public function getValidation($numCommande, $type = 'algorithme', $rejet = false)
|
|
{
|
|
/*
|
|
Validation SIREN/SIRET - getValidation
|
|
======================
|
|
Vérifier les SIREN/SIRET/SIREN+NIC
|
|
Numéro de commande
|
|
|
|
Validité suivant algorithme ? Présence dans la base (attention ressources) ?
|
|
|
|
enrichir le nic si vide (prendre le siege)
|
|
|
|
rejet = false/true
|
|
|
|
Renvoyer le fichier original avec les lignes en erreur
|
|
ou Renvoyer seulement les lignes en erreur
|
|
|
|
Seulement pour validation, alors on marque comme complete
|
|
|
|
|
|
|
|
Créer le fichier pour l'extraction et place le marqueur de démarrage
|
|
*/
|
|
}
|
|
|
|
/**
|
|
* Retourne l'état de la commande à tout instant
|
|
* @param string $numCommande
|
|
* @return Etat
|
|
*/
|
|
public function getEtat($numCommande)
|
|
{
|
|
$etat = new Etat();
|
|
//Lecture de la base de données
|
|
|
|
|
|
|
|
return $etat;
|
|
}
|
|
|
|
/**
|
|
* Liste des commmandes
|
|
* @param CommandesCriteres $criteres
|
|
* @param integer $position
|
|
* @return ListeCommandes
|
|
*/
|
|
public function getCommandes($criteres, $position = 0)
|
|
{
|
|
/*
|
|
Liste des commandes
|
|
Toutes
|
|
Par numCommande
|
|
Par réference
|
|
Par date (intervalle)
|
|
*/
|
|
}
|
|
|
|
/**
|
|
* Enter description here ...
|
|
* @param string $numCommande
|
|
*/
|
|
public function getFichierEnrichit($numCommande)
|
|
{
|
|
/*
|
|
L'enrichissement est réalisé par l'intermédiaire d'une tache cron
|
|
Récuperer le fichier (chemin) par le numéro de commande
|
|
Retourne url ou erreur
|
|
*/
|
|
}
|
|
} |