Go to file
2017-03-06 15:37:55 +01:00
application Add logger 2017-01-31 15:41:43 +01:00
data/files/kbis/styles Delete file include in ansible 2016-09-30 14:46:21 +02:00
docs Move assets (pour regles dans vhosts) 2016-08-30 15:14:42 +02:00
library Procol : non prise en compte de la date d'effet 2017-03-06 15:37:55 +01:00
public Ignore file in dev 2016-11-02 09:51:42 +01:00
scripts MRatios : remove ref 2017-01-19 16:19:05 +01:00
.gitignore Move .user.ini 2016-06-01 16:34:43 +02:00
composer.json Add monolog/monolog 2017-01-31 15:41:35 +01:00
composer.lock Add monolog/monolog 2017-01-31 15:41:35 +01:00

WebService
==========

- Créer le vhost, voir le fichier VHOST pour les exemples

- Installer les librairies avec composer

 $ composer install

- Configurer l'application 

 La config (fichier application.ini) est à placer dans "application/configs/"
 
 Exemple de la config dans "docs/config/application.ini"
 (Modifier selon les besoins)

- APPLICATION_ENV
 
 Différent niveau peuvent être utilisé dans l'application pour gérer les erreurs et le comportement.
  
 production
 staging
 development
 testing
 
 Cette variable est accessible dans PHP.

- Créer les repertoires de données nécessaires

 [WORKSPACE]/data/backoffice/
	- clients 	=> lien symbolique vers les fichiers clients
	- conso		=> données à conserver, dossier persistent
	- datafile	=> lien symbolique vers les fichiers PDF, et autres des partenaires
	- export
	- import	
	- log
	- sources	=> lien symbolique vers les données des sources
	- stats
	- upload


Fonctionnement
==============
Obtenir les WSDL 
Pour le service Entreprise

	- En mode développement : http://hostname/entreprise/version?wsdl-auto
	- Générer le WSDL : http://hostname/entreprise/version?wsdl-generate
	- Utiliser le WSDL généré : http://hostname/entreprise/version?wsdl

Pour le service Interne

	http://hostname/interne/version?wsdl

Pour les clients

	http://hostname/clients/nom_du_client/version?wsdl

N.B : Le fichier WSDL est généré automatiquement en appelant 
http://hostname/service?wsdl afin de ne pas provoquer d'erreur 
après une mise en production

Pour définir le mode (vhost d'apache)
	SetEnv APPLICATION_ENV "development"
	SetEnv APPLICATION_ENV "production"
	SetEnv APPLICATION_ENV "staging"
	
En appelant l'url http://hostname/service, le contoller de l'application, 
"service" est automatiquement utiliser. 
Tout ce qui est visible dans la class est utilisé par le controller et se 
retrouve visible dans le service (wsdl, requête)

Si des fonctions ne doivent pas être rendu visible il faut donc les séparer 
dans un autre controller utilisant une autre class.

 
Documentation des méthodes et ajout spécial
===========================================

La documentation est géneré en automatique.

Voici comment définir simplement la documentation d'une méthode

    /**
     * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé
     * @param   string    $key      Siren de l'entreprise ou siret de l'établissement
     * @return  Identite
     */
    public function test($key)
    {
    
    }

Attention ces informations servent aussi pour la structure du WSDL

Pour spécifier un lien vers un fichier ou pour générer un fichier depuis une 
requête SQL à partir de la documentation du service.
Ajouter dans le docblock :
 - Pour un fichier
	@ref fichier:libellé:{nom_du_fichier.ext}
 - Pour une requête SQL
	@ref mysql:libellé:{nom_du_fichier.sql}
	
Les fichiers a télécharger sont à placer dans le répértoire public/fichier et
les fichiers sql dans public/sql	

Pour spécifier des éléments de taille (non pris en compte sur le WSDL)
    @xsd minLength=9
    @xsd maxLength=15