Ce fichier est un .md, c'est à dire qu'il est rédigé en markdown et nécéssite d'être ouvert comme tel, et non pas dans un bloc-note.
Version | Date | Auteur |
---|---|---|
1.0 | 2023.03.01 | BLUMSTEIN Thomas |
Pour la mise en place du projet, plusieurs prérequis sont nécessaires à l'installation. Ils sont listés ci-dessus, et le détail de l'installation ainsi que les résolutions d'erreurs possibles se trouvent ci-dessous.
Les librairies utilisées dans le projet nécessitent une version de Php antérieure à la version 8.0.0.
php.ini-development
et renommez le php.ini
en changeant son extension.extension_dir = "ext"
extension=pdo_sqlite
var
dans la barre de recherche du pc et sélectionnez l'option "*Modifier les variables
d'environnement système*" Dans la fenêtre qui s'ouvre, cliquez sur "*Variables d'environnement*" dans l'onglet "*Paramètres système avancés*" puis sur "*Variables d'environnement*"
cmd
dans la barre de recherche du pc et tapez la commande php -v
pour vérifier que la version de Php installée est bien antérieure à la version 8.0.0. Si ce n'est pas le cas, recommencez les étapes précédentes en téléchargeant une version antérieure à la version 8.0.0. Si le terminal affiche "command not found", essayez de fermer le terminal et de recommencer sur un nouveau.
Nous allons ensuite avoir besoin de Composer pour installer les différentes librairies.
cmd
dans la barre de recherche du pc et tapez la commande composer
pour vérifier que l'installation s'est bien déroulée. Il devrait alors apparaître ce dessin ainsi qu'une liste de commandes possibles : Si le terminal affiche "command not found", essayez de fermer le terminal et de recommencer sur un nouveau.
set-ExecutionPolicy RemoteSigned -scope CurrentUser
iwr -useb get.scoop.sh | iex
-
.\install.ps1 -RunAsAdmin`La phase suivante concerne l’installation de NodeJS qui nous servira par la suite pour la compilation de nos ressources graphiques.
cmd
dans la barre de recherche du pc et tapez la commande node -v
pour vérifier que l'installation s'est bien déroulée. Il devrait alors apparaître la version de node téléchargée : Si le terminal affiche "command not found", essayez de fermer le terminal et de recommencer sur un nouveau.
scoop install symfony-cli
symfony local:php:list -vvv
Le code source du projet est disponible sur le dépôt Github.
- Pensez à bien vous placer sur la branche où se trouve le code vous interessant : Import-Export pour l'outil de planification ou Test-Tool pour l'outil d'ordonnancement
cd C:[User]\PRD
)echo [votre-version-php] > .php-version
(ex : echo 7.4.0 > .php-version
)symfony server:start
pour démarrer le serveur Si cette erreur s'affiche:
![]()
Il faut alors installer symfony en allant sur le site Symfony
- Ajoutez le dossier d'extraction de symfony à la variable d'environnement Path si ce n'est pas fait
- Tapez la commande
symfony -V
pour vérifier que l'installation s'est déroulée sans problème (la majuscule est
importante)
Le projet est organisé en modèle Modèle Vue Contrôleur (MVC) Symfony reliant le site à une base de donnée et en 3 dossiers principaux.
Au 29/03/2023, les versions utilisées sont les suivantes :
La base de données est une base SQLITE3. Elle est située dans le dossier src/var
et est nommée database.sqlite
. Le serveur Symfony y accède sous forme d'entités qui sont situées dans le dossier src/Entity
. Chaque entité correspond à une table de la base de données. (ex : src/Entity/Appointment.php
correspond à la table Appointment
de la base de données et permet de générer des objets Appointment
qui seront utilisés dans le code du projet et qui correpondent aux entrées de la table.)
La base de données est organisée suivant le modèle relationnel suivant :
La table SimulationInfos
n'est utilisée que dans l'outil de simulation et n'existe pas dans la base de données de l'outil de planification.
Le frontend est composé de 2 dossiers principaux :
public
: contient les fichiers statiques (css, js, images, etc.) chacun dans un sous-dossier séparétemplates
: contient les fichiers twig (fichiers html utilisés par symfony) qui seront affichés par le navigateurLes fichiers utilisés par le serveur Symfony sont situés dans le dossier src
et organisés en 3 sous-dossiers :
Controller
: contient les fichiers php qui gèrent les requêtes du navigateur et qui renvoient les pages twigEntity
: contient les fichiers php qui correspondent aux entités de la base de donnéesRepository
: contient les fichiers php qui permettent de récupérer les données de la base de données