Ce projet Symfony est une application de gestion de stock pour des produits, avec gestion des types de produits, catégories, marques, et mouvements de stock. Il inclut également la génération de QR codes pour chaque produit en fonction de leur numéro de série.
Avant de commencer, assurez-vous d'avoir les éléments suivants installés sur votre machine :
git clone https://github.com/votre-utilisateur/nom-du-repo.git
cd nom-du-repo
composer install
Créez un fichier .env.local
pour surcharger les variables d'environnement par défaut. Cela inclura la configuration de la base de données :
cp .env .env.local
Ensuite, ouvrez le fichier .env.local
et configurez les paramètres suivants en fonction de votre environnement de développement, notamment la connexion à la base de données :
### Exemple pour une base de données MySQL
DATABASE_URL="mysql://db_user:[email protected]:3306/db_name?serverVersion=5.7"
Créez la base de données, exécutez les migrations, et ajoutez des jeux de données si nécessaire :
# Créer la base de données
php bin/console doctrine:database:create
# Exécuter les migrations pour créer les tables
php bin/console doctrine:migrations:migrate
Si vous avez des fixtures pour pré-remplir la base de données avec des données de test, exécutez cette commande :
php bin/console doctrine:fixtures:load
Si vous utilisez Webpack Encore pour la gestion des assets front-end (CSS, JavaScript), installez les dépendances Node.js et compilez les assets :
# Installer les dépendances front-end
npm install
# Compiler les assets
npm run dev
Pour exécuter l'application en mode développement, utilisez la commande Symfony CLI :
symfony serve
Votre application sera accessible sur http://localhost:8000.
Le projet utilise la bibliothèque endroid/qr-code-bundle
pour générer des QR codes. Le service QrCodeService
est utilisé pour générer un QR code pour chaque produit à partir de son numéro de série.
Lorsque vous accédez à la page de détails d'un produit, un QR code correspondant à son numéro de série sera affiché.
php bin/console doctrine:database:create
php bin/console doctrine:migrations:migrate
php bin/console doctrine:fixtures:load
symfony serve
Le projet utilise Symfony Security pour l'authentification et la gestion des utilisateurs. Les utilisateurs doivent être authentifiés pour accéder aux fonctionnalités de gestion de stock. Si vous souhaitez modifier les rôles ou les routes sécurisées, consultez le fichier security.yaml
dans config/packages
.
Si vous avez mis en place des tests, exécutez-les avec la commande suivante :
php bin/phpunit
Pour déployer cette application sur un serveur de production, suivez ces étapes :
.env
ou .env.local
.composer install --no-dev --optimize-autoloader
pour installer les dépendances sans les outils de développement.php bin/console doctrine:migrations:migrate
.npm run build
(si applicable).