From a675b7270d1a2938fc16c8a90a6361262dfbd8d9 Mon Sep 17 00:00:00 2001 From: bayard Date: Thu, 21 Nov 2024 15:11:11 +0100 Subject: [PATCH] push de controller --- composer.lock | 360 +++++++++--------- migrations/Version20241010155711.php | 109 ++++++ public/css/list.css | 77 ++++ src/Controller/ClientsController.php | 81 ++++ src/Controller/CommandesController.php | 81 ++++ src/Controller/CuisinierController.php | 46 --- src/Controller/DetailsCommandeController.php | 81 ++++ src/Controller/PlatsController.php | 81 ++++ src/Controller/ReductionsController.php | 81 ++++ src/Entity/Clients.php | 3 +- src/Form/ClientsType.php | 41 ++ src/Form/CommandesType.php | 47 +++ src/Form/DetailsCommandeType.php | 32 ++ src/Form/PlatsType.php | 42 ++ src/Form/ReductionsType.php | 34 ++ templates/clients/_delete_form.html.twig | 4 + templates/clients/_form.html.twig | 4 + templates/clients/edit.html.twig | 13 + templates/clients/index.html.twig | 44 +++ templates/clients/new.html.twig | 11 + templates/clients/show.html.twig | 38 ++ templates/commande/index.html.twig | 23 ++ templates/commandes/_delete_form.html.twig | 4 + templates/commandes/_form.html.twig | 4 + templates/commandes/edit.html.twig | 13 + templates/commandes/index.html.twig | 42 ++ templates/commandes/new.html.twig | 11 + templates/commandes/show.html.twig | 34 ++ .../details_commande/_delete_form.html.twig | 4 + templates/details_commande/_form.html.twig | 4 + templates/details_commande/edit.html.twig | 13 + templates/details_commande/index.html.twig | 41 ++ templates/details_commande/new.html.twig | 11 + templates/details_commande/show.html.twig | 30 ++ templates/plats/_delete_form.html.twig | 4 + templates/plats/_form.html.twig | 4 + templates/plats/edit.html.twig | 13 + templates/plats/index.html.twig | 48 +++ templates/plats/new.html.twig | 11 + templates/plats/show.html.twig | 46 +++ templates/reductions/_delete_form.html.twig | 4 + templates/reductions/_form.html.twig | 4 + templates/reductions/edit.html.twig | 13 + templates/reductions/index.html.twig | 48 +++ templates/reductions/new.html.twig | 11 + templates/reductions/show.html.twig | 46 +++ 46 files changed, 1570 insertions(+), 226 deletions(-) create mode 100644 migrations/Version20241010155711.php create mode 100644 public/css/list.css create mode 100644 src/Controller/ClientsController.php create mode 100644 src/Controller/CommandesController.php delete mode 100644 src/Controller/CuisinierController.php create mode 100644 src/Controller/DetailsCommandeController.php create mode 100644 src/Controller/PlatsController.php create mode 100644 src/Controller/ReductionsController.php create mode 100644 src/Form/ClientsType.php create mode 100644 src/Form/CommandesType.php create mode 100644 src/Form/DetailsCommandeType.php create mode 100644 src/Form/PlatsType.php create mode 100644 src/Form/ReductionsType.php create mode 100644 templates/clients/_delete_form.html.twig create mode 100644 templates/clients/_form.html.twig create mode 100644 templates/clients/edit.html.twig create mode 100644 templates/clients/index.html.twig create mode 100644 templates/clients/new.html.twig create mode 100644 templates/clients/show.html.twig create mode 100644 templates/commande/index.html.twig create mode 100644 templates/commandes/_delete_form.html.twig create mode 100644 templates/commandes/_form.html.twig create mode 100644 templates/commandes/edit.html.twig create mode 100644 templates/commandes/index.html.twig create mode 100644 templates/commandes/new.html.twig create mode 100644 templates/commandes/show.html.twig create mode 100644 templates/details_commande/_delete_form.html.twig create mode 100644 templates/details_commande/_form.html.twig create mode 100644 templates/details_commande/edit.html.twig create mode 100644 templates/details_commande/index.html.twig create mode 100644 templates/details_commande/new.html.twig create mode 100644 templates/details_commande/show.html.twig create mode 100644 templates/plats/_delete_form.html.twig create mode 100644 templates/plats/_form.html.twig create mode 100644 templates/plats/edit.html.twig create mode 100644 templates/plats/index.html.twig create mode 100644 templates/plats/new.html.twig create mode 100644 templates/plats/show.html.twig create mode 100644 templates/reductions/_delete_form.html.twig create mode 100644 templates/reductions/_form.html.twig create mode 100644 templates/reductions/edit.html.twig create mode 100644 templates/reductions/index.html.twig create mode 100644 templates/reductions/new.html.twig create mode 100644 templates/reductions/show.html.twig diff --git a/composer.lock b/composer.lock index d8184ac..c0e03e7 100644 --- a/composer.lock +++ b/composer.lock @@ -2645,16 +2645,16 @@ }, { "name": "monolog/monolog", - "version": "3.7.0", + "version": "3.8.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "f4393b648b78a5408747de94fca38beb5f7e9ef8" + "reference": "32e515fdc02cdafbe4593e30a9350d486b125b67" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/f4393b648b78a5408747de94fca38beb5f7e9ef8", - "reference": "f4393b648b78a5408747de94fca38beb5f7e9ef8", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/32e515fdc02cdafbe4593e30a9350d486b125b67", + "reference": "32e515fdc02cdafbe4593e30a9350d486b125b67", "shasum": "" }, "require": { @@ -2674,12 +2674,14 @@ "guzzlehttp/psr7": "^2.2", "mongodb/mongodb": "^1.8", "php-amqplib/php-amqplib": "~2.4 || ^3", - "phpstan/phpstan": "^1.9", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-strict-rules": "^1.4", - "phpunit/phpunit": "^10.5.17", + "php-console/php-console": "^3.1.8", + "phpstan/phpstan": "^2", + "phpstan/phpstan-deprecation-rules": "^2", + "phpstan/phpstan-strict-rules": "^2", + "phpunit/phpunit": "^10.5.17 || ^11.0.7", "predis/predis": "^1.1 || ^2", - "ruflin/elastica": "^7", + "rollbar/rollbar": "^4.0", + "ruflin/elastica": "^7 || ^8", "symfony/mailer": "^5.4 || ^6", "symfony/mime": "^5.4 || ^6" }, @@ -2730,7 +2732,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/3.7.0" + "source": "https://github.com/Seldaek/monolog/tree/3.8.0" }, "funding": [ { @@ -2742,7 +2744,7 @@ "type": "tidelift" } ], - "time": "2024-06-28T09:40:51+00:00" + "time": "2024-11-12T13:57:08+00:00" }, { "name": "phpdocumentor/reflection-common", @@ -2799,16 +2801,16 @@ }, { "name": "phpdocumentor/reflection-docblock", - "version": "5.4.1", + "version": "5.6.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c" + "reference": "f3558a4c23426d12bffeaab463f8a8d8b681193c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c", - "reference": "9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/f3558a4c23426d12bffeaab463f8a8d8b681193c", + "reference": "f3558a4c23426d12bffeaab463f8a8d8b681193c", "shasum": "" }, "require": { @@ -2817,17 +2819,17 @@ "php": "^7.4 || ^8.0", "phpdocumentor/reflection-common": "^2.2", "phpdocumentor/type-resolver": "^1.7", - "phpstan/phpdoc-parser": "^1.7", + "phpstan/phpdoc-parser": "^1.7|^2.0", "webmozart/assert": "^1.9.1" }, "require-dev": { - "mockery/mockery": "~1.3.5", + "mockery/mockery": "~1.3.5 || ~1.6.0", "phpstan/extension-installer": "^1.1", "phpstan/phpstan": "^1.8", "phpstan/phpstan-mockery": "^1.1", "phpstan/phpstan-webmozart-assert": "^1.2", "phpunit/phpunit": "^9.5", - "vimeo/psalm": "^5.13" + "psalm/phar": "^5.26" }, "type": "library", "extra": { @@ -2857,29 +2859,29 @@ "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", "support": { "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", - "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.4.1" + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.6.0" }, - "time": "2024-05-21T05:55:05+00:00" + "time": "2024-11-12T11:25:25+00:00" }, { "name": "phpdocumentor/type-resolver", - "version": "1.8.2", + "version": "1.10.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "153ae662783729388a584b4361f2545e4d841e3c" + "reference": "679e3ce485b99e84c775d28e2e96fade9a7fb50a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/153ae662783729388a584b4361f2545e4d841e3c", - "reference": "153ae662783729388a584b4361f2545e4d841e3c", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/679e3ce485b99e84c775d28e2e96fade9a7fb50a", + "reference": "679e3ce485b99e84c775d28e2e96fade9a7fb50a", "shasum": "" }, "require": { "doctrine/deprecations": "^1.0", "php": "^7.3 || ^8.0", "phpdocumentor/reflection-common": "^2.0", - "phpstan/phpdoc-parser": "^1.13" + "phpstan/phpdoc-parser": "^1.18|^2.0" }, "require-dev": { "ext-tokenizer": "*", @@ -2915,9 +2917,9 @@ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", "support": { "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.8.2" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.10.0" }, - "time": "2024-02-23T11:10:43+00:00" + "time": "2024-11-09T15:12:26+00:00" }, { "name": "phpstan/phpdoc-parser", @@ -3396,16 +3398,16 @@ }, { "name": "symfony/asset-mapper", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/asset-mapper.git", - "reference": "f918f7e4cb2f4c1f29cc43f986473ddb2392a445" + "reference": "bd09ac29c8553e39832f6100a8365240c1c697a6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/asset-mapper/zipball/f918f7e4cb2f4c1f29cc43f986473ddb2392a445", - "reference": "f918f7e4cb2f4c1f29cc43f986473ddb2392a445", + "url": "https://api.github.com/repos/symfony/asset-mapper/zipball/bd09ac29c8553e39832f6100a8365240c1c697a6", + "reference": "bd09ac29c8553e39832f6100a8365240c1c697a6", "shasum": "" }, "require": { @@ -3455,7 +3457,7 @@ "description": "Maps directories of assets & makes them available in a public directory with versioned filenames.", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/asset-mapper/tree/v7.1.6" + "source": "https://github.com/symfony/asset-mapper/tree/v7.1.8" }, "funding": [ { @@ -3471,20 +3473,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-11-09T09:16:45+00:00" }, { "name": "symfony/cache", - "version": "v7.1.6", + "version": "v7.1.7", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "567ef6de47fdcba56eb6c0b344b857d1fce1cce0" + "reference": "23b61c9592ee72233c31625f0ae805dd1571e928" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/567ef6de47fdcba56eb6c0b344b857d1fce1cce0", - "reference": "567ef6de47fdcba56eb6c0b344b857d1fce1cce0", + "url": "https://api.github.com/repos/symfony/cache/zipball/23b61c9592ee72233c31625f0ae805dd1571e928", + "reference": "23b61c9592ee72233c31625f0ae805dd1571e928", "shasum": "" }, "require": { @@ -3552,7 +3554,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v7.1.6" + "source": "https://github.com/symfony/cache/tree/v7.1.7" }, "funding": [ { @@ -3568,7 +3570,7 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:39:55+00:00" + "time": "2024-11-05T15:34:55+00:00" }, { "name": "symfony/cache-contracts", @@ -3722,16 +3724,16 @@ }, { "name": "symfony/config", - "version": "v7.1.6", + "version": "v7.1.7", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "5c6152766251ff45a44b76affadd5287e253fb27" + "reference": "dc373a5cbd345354696f5dfd39c5c7a8ea23f4c8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/5c6152766251ff45a44b76affadd5287e253fb27", - "reference": "5c6152766251ff45a44b76affadd5287e253fb27", + "url": "https://api.github.com/repos/symfony/config/zipball/dc373a5cbd345354696f5dfd39c5c7a8ea23f4c8", + "reference": "dc373a5cbd345354696f5dfd39c5c7a8ea23f4c8", "shasum": "" }, "require": { @@ -3777,7 +3779,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v7.1.6" + "source": "https://github.com/symfony/config/tree/v7.1.7" }, "funding": [ { @@ -3793,20 +3795,20 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:11:02+00:00" + "time": "2024-11-04T11:34:07+00:00" }, { "name": "symfony/console", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "bb5192af6edc797cbab5c8e8ecfea2fe5f421e57" + "reference": "ff04e5b5ba043d2badfb308197b9e6b42883fcd5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/bb5192af6edc797cbab5c8e8ecfea2fe5f421e57", - "reference": "bb5192af6edc797cbab5c8e8ecfea2fe5f421e57", + "url": "https://api.github.com/repos/symfony/console/zipball/ff04e5b5ba043d2badfb308197b9e6b42883fcd5", + "reference": "ff04e5b5ba043d2badfb308197b9e6b42883fcd5", "shasum": "" }, "require": { @@ -3870,7 +3872,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.1.6" + "source": "https://github.com/symfony/console/tree/v7.1.8" }, "funding": [ { @@ -3886,20 +3888,20 @@ "type": "tidelift" } ], - "time": "2024-10-09T08:46:59+00:00" + "time": "2024-11-06T14:23:19+00:00" }, { "name": "symfony/dependency-injection", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "1f12f9d580ef8dd09e3b756aa111cc2d5f311bfd" + "reference": "e4d13f0f394f4d02a041ff76acd31c5a20a5f70b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/1f12f9d580ef8dd09e3b756aa111cc2d5f311bfd", - "reference": "1f12f9d580ef8dd09e3b756aa111cc2d5f311bfd", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/e4d13f0f394f4d02a041ff76acd31c5a20a5f70b", + "reference": "e4d13f0f394f4d02a041ff76acd31c5a20a5f70b", "shasum": "" }, "require": { @@ -3950,7 +3952,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v7.1.6" + "source": "https://github.com/symfony/dependency-injection/tree/v7.1.8" }, "funding": [ { @@ -3966,7 +3968,7 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:11:02+00:00" + "time": "2024-11-09T09:16:45+00:00" }, { "name": "symfony/deprecation-contracts", @@ -4291,16 +4293,16 @@ }, { "name": "symfony/error-handler", - "version": "v7.1.6", + "version": "v7.1.7", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "d60117093c2a9fe667baa8fedf84e8a09b9c592f" + "reference": "010e44661f4c6babaf8c4862fe68c24a53903342" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/d60117093c2a9fe667baa8fedf84e8a09b9c592f", - "reference": "d60117093c2a9fe667baa8fedf84e8a09b9c592f", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/010e44661f4c6babaf8c4862fe68c24a53903342", + "reference": "010e44661f4c6babaf8c4862fe68c24a53903342", "shasum": "" }, "require": { @@ -4346,7 +4348,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v7.1.6" + "source": "https://github.com/symfony/error-handler/tree/v7.1.7" }, "funding": [ { @@ -4362,7 +4364,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-11-05T15:34:55+00:00" }, { "name": "symfony/event-dispatcher", @@ -5029,16 +5031,16 @@ }, { "name": "symfony/http-client", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/http-client.git", - "reference": "274e2f6886b43a36f8bd5dfeb67215f7ebf9e291" + "reference": "c30d91a1deac0dc3ed5e604683cf2e1dfc635b8a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/274e2f6886b43a36f8bd5dfeb67215f7ebf9e291", - "reference": "274e2f6886b43a36f8bd5dfeb67215f7ebf9e291", + "url": "https://api.github.com/repos/symfony/http-client/zipball/c30d91a1deac0dc3ed5e604683cf2e1dfc635b8a", + "reference": "c30d91a1deac0dc3ed5e604683cf2e1dfc635b8a", "shasum": "" }, "require": { @@ -5103,7 +5105,7 @@ "http" ], "support": { - "source": "https://github.com/symfony/http-client/tree/v7.1.6" + "source": "https://github.com/symfony/http-client/tree/v7.1.8" }, "funding": [ { @@ -5119,7 +5121,7 @@ "type": "tidelift" } ], - "time": "2024-10-22T09:40:50+00:00" + "time": "2024-11-13T13:40:27+00:00" }, { "name": "symfony/http-client-contracts", @@ -5201,16 +5203,16 @@ }, { "name": "symfony/http-foundation", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "3d7bbf071b25f802f7d55524d408bed414ea71e2" + "reference": "f4419ec69ccfc3f725a4de7c20e4e57626d10112" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/3d7bbf071b25f802f7d55524d408bed414ea71e2", - "reference": "3d7bbf071b25f802f7d55524d408bed414ea71e2", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/f4419ec69ccfc3f725a4de7c20e4e57626d10112", + "reference": "f4419ec69ccfc3f725a4de7c20e4e57626d10112", "shasum": "" }, "require": { @@ -5220,12 +5222,12 @@ }, "conflict": { "doctrine/dbal": "<3.6", - "symfony/cache": "<6.4" + "symfony/cache": "<6.4.12|>=7.0,<7.1.5" }, "require-dev": { "doctrine/dbal": "^3.6|^4", "predis/predis": "^1.1|^2.0", - "symfony/cache": "^6.4|^7.0", + "symfony/cache": "^6.4.12|^7.1.5", "symfony/dependency-injection": "^6.4|^7.0", "symfony/expression-language": "^6.4|^7.0", "symfony/http-kernel": "^6.4|^7.0", @@ -5258,7 +5260,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v7.1.6" + "source": "https://github.com/symfony/http-foundation/tree/v7.1.8" }, "funding": [ { @@ -5274,20 +5276,20 @@ "type": "tidelift" } ], - "time": "2024-10-11T19:23:14+00:00" + "time": "2024-11-09T09:16:45+00:00" }, { "name": "symfony/http-kernel", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "5d8315899cd76b2e7e29179bf5fea103e41bdf03" + "reference": "33fef24e3dc79d6d30bf4936531f2f4bd2ca189e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/5d8315899cd76b2e7e29179bf5fea103e41bdf03", - "reference": "5d8315899cd76b2e7e29179bf5fea103e41bdf03", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/33fef24e3dc79d6d30bf4936531f2f4bd2ca189e", + "reference": "33fef24e3dc79d6d30bf4936531f2f4bd2ca189e", "shasum": "" }, "require": { @@ -5372,7 +5374,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v7.1.6" + "source": "https://github.com/symfony/http-kernel/tree/v7.1.8" }, "funding": [ { @@ -5388,20 +5390,20 @@ "type": "tidelift" } ], - "time": "2024-10-27T13:54:21+00:00" + "time": "2024-11-13T14:25:32+00:00" }, { "name": "symfony/intl", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/intl.git", - "reference": "c65630cc9c22acd9b511a87a3f4734e48e500932" + "reference": "e56b243fc0afa5a12bd11dace4002ada5a7d99f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/intl/zipball/c65630cc9c22acd9b511a87a3f4734e48e500932", - "reference": "c65630cc9c22acd9b511a87a3f4734e48e500932", + "url": "https://api.github.com/repos/symfony/intl/zipball/e56b243fc0afa5a12bd11dace4002ada5a7d99f8", + "reference": "e56b243fc0afa5a12bd11dace4002ada5a7d99f8", "shasum": "" }, "require": { @@ -5458,7 +5460,7 @@ "localization" ], "support": { - "source": "https://github.com/symfony/intl/tree/v7.1.6" + "source": "https://github.com/symfony/intl/tree/v7.1.8" }, "funding": [ { @@ -5474,7 +5476,7 @@ "type": "tidelift" } ], - "time": "2024-10-09T08:46:59+00:00" + "time": "2024-11-08T15:46:42+00:00" }, { "name": "symfony/mailer", @@ -5558,16 +5560,16 @@ }, { "name": "symfony/messenger", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/messenger.git", - "reference": "a391d2cb2b15436c0e3fbdf983440e762a30f88b" + "reference": "86d9aead6c40a56a528f2fb881a8be253efbbd1f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/messenger/zipball/a391d2cb2b15436c0e3fbdf983440e762a30f88b", - "reference": "a391d2cb2b15436c0e3fbdf983440e762a30f88b", + "url": "https://api.github.com/repos/symfony/messenger/zipball/86d9aead6c40a56a528f2fb881a8be253efbbd1f", + "reference": "86d9aead6c40a56a528f2fb881a8be253efbbd1f", "shasum": "" }, "require": { @@ -5624,7 +5626,7 @@ "description": "Helps applications send and receive messages to/from other applications or via message queues", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/messenger/tree/v7.1.6" + "source": "https://github.com/symfony/messenger/tree/v7.1.8" }, "funding": [ { @@ -5640,7 +5642,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-11-09T09:16:45+00:00" }, { "name": "symfony/mime", @@ -6586,16 +6588,16 @@ }, { "name": "symfony/process", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "6aaa189ddb4ff6b5de8fa3210f2fb42c87b4d12e" + "reference": "42783370fda6e538771f7c7a36e9fa2ee3a84892" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/6aaa189ddb4ff6b5de8fa3210f2fb42c87b4d12e", - "reference": "6aaa189ddb4ff6b5de8fa3210f2fb42c87b4d12e", + "url": "https://api.github.com/repos/symfony/process/zipball/42783370fda6e538771f7c7a36e9fa2ee3a84892", + "reference": "42783370fda6e538771f7c7a36e9fa2ee3a84892", "shasum": "" }, "require": { @@ -6627,7 +6629,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.1.6" + "source": "https://github.com/symfony/process/tree/v7.1.8" }, "funding": [ { @@ -6643,7 +6645,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-11-06T14:23:19+00:00" }, { "name": "symfony/property-access", @@ -6723,16 +6725,16 @@ }, { "name": "symfony/property-info", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/property-info.git", - "reference": "6b630ff585d9fdc72f50369885ad4364a849cf02" + "reference": "3748f85f64351d282fd028e44309856f1d79142e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-info/zipball/6b630ff585d9fdc72f50369885ad4364a849cf02", - "reference": "6b630ff585d9fdc72f50369885ad4364a849cf02", + "url": "https://api.github.com/repos/symfony/property-info/zipball/3748f85f64351d282fd028e44309856f1d79142e", + "reference": "3748f85f64351d282fd028e44309856f1d79142e", "shasum": "" }, "require": { @@ -6748,7 +6750,7 @@ }, "require-dev": { "phpdocumentor/reflection-docblock": "^5.2", - "phpstan/phpdoc-parser": "^1.0", + "phpstan/phpdoc-parser": "^1.0|^2.0", "symfony/cache": "^6.4|^7.0", "symfony/dependency-injection": "^6.4|^7.0", "symfony/serializer": "^6.4|^7.0" @@ -6787,7 +6789,7 @@ "validator" ], "support": { - "source": "https://github.com/symfony/property-info/tree/v7.1.6" + "source": "https://github.com/symfony/property-info/tree/v7.1.8" }, "funding": [ { @@ -6803,7 +6805,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-11-09T07:07:11+00:00" }, { "name": "symfony/routing", @@ -6888,16 +6890,16 @@ }, { "name": "symfony/runtime", - "version": "v7.1.6", + "version": "v7.1.7", "source": { "type": "git", "url": "https://github.com/symfony/runtime.git", - "reference": "5f556dcd917234d11d56763d4c81bbe8f527bcad" + "reference": "9889783c17e8a68fa5e88c8e8a1a85e802558dba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/runtime/zipball/5f556dcd917234d11d56763d4c81bbe8f527bcad", - "reference": "5f556dcd917234d11d56763d4c81bbe8f527bcad", + "url": "https://api.github.com/repos/symfony/runtime/zipball/9889783c17e8a68fa5e88c8e8a1a85e802558dba", + "reference": "9889783c17e8a68fa5e88c8e8a1a85e802558dba", "shasum": "" }, "require": { @@ -6947,7 +6949,7 @@ "runtime" ], "support": { - "source": "https://github.com/symfony/runtime/tree/v7.1.6" + "source": "https://github.com/symfony/runtime/tree/v7.1.7" }, "funding": [ { @@ -6963,7 +6965,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-11-05T16:45:54+00:00" }, { "name": "symfony/security-bundle", @@ -7227,16 +7229,16 @@ }, { "name": "symfony/security-http", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/security-http.git", - "reference": "a4af93423bb89f8330ce2c5d3b5af371788aedc5" + "reference": "e11ea7f98fba4921a6c847a0c6a77d1befa9698f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-http/zipball/a4af93423bb89f8330ce2c5d3b5af371788aedc5", - "reference": "a4af93423bb89f8330ce2c5d3b5af371788aedc5", + "url": "https://api.github.com/repos/symfony/security-http/zipball/e11ea7f98fba4921a6c847a0c6a77d1befa9698f", + "reference": "e11ea7f98fba4921a6c847a0c6a77d1befa9698f", "shasum": "" }, "require": { @@ -7295,7 +7297,7 @@ "description": "Symfony Security Component - HTTP Integration", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-http/tree/v7.1.6" + "source": "https://github.com/symfony/security-http/tree/v7.1.8" }, "funding": [ { @@ -7311,20 +7313,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-11-13T13:40:27+00:00" }, { "name": "symfony/serializer", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/serializer.git", - "reference": "537f125ed7ddb8fffac34a83dfd6905e044ca76f" + "reference": "6066de113408496e1e3d4bf9e21fb209d344768b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/serializer/zipball/537f125ed7ddb8fffac34a83dfd6905e044ca76f", - "reference": "537f125ed7ddb8fffac34a83dfd6905e044ca76f", + "url": "https://api.github.com/repos/symfony/serializer/zipball/6066de113408496e1e3d4bf9e21fb209d344768b", + "reference": "6066de113408496e1e3d4bf9e21fb209d344768b", "shasum": "" }, "require": { @@ -7345,7 +7347,7 @@ }, "require-dev": { "phpdocumentor/reflection-docblock": "^3.2|^4.0|^5.0", - "phpstan/phpdoc-parser": "^1.0", + "phpstan/phpdoc-parser": "^1.0|^2.0", "seld/jsonlint": "^1.10", "symfony/cache": "^6.4|^7.0", "symfony/config": "^6.4|^7.0", @@ -7394,7 +7396,7 @@ "description": "Handles serializing and deserializing data structures, including object graphs, into array structures or other formats like XML and JSON.", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/serializer/tree/v7.1.6" + "source": "https://github.com/symfony/serializer/tree/v7.1.8" }, "funding": [ { @@ -7410,7 +7412,7 @@ "type": "tidelift" } ], - "time": "2024-10-09T08:46:59+00:00" + "time": "2024-11-09T09:16:45+00:00" }, { "name": "symfony/service-contracts", @@ -7628,16 +7630,16 @@ }, { "name": "symfony/string", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "61b72d66bf96c360a727ae6232df5ac83c71f626" + "reference": "591ebd41565f356fcd8b090fe64dbb5878f50281" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/61b72d66bf96c360a727ae6232df5ac83c71f626", - "reference": "61b72d66bf96c360a727ae6232df5ac83c71f626", + "url": "https://api.github.com/repos/symfony/string/zipball/591ebd41565f356fcd8b090fe64dbb5878f50281", + "reference": "591ebd41565f356fcd8b090fe64dbb5878f50281", "shasum": "" }, "require": { @@ -7695,7 +7697,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.6" + "source": "https://github.com/symfony/string/tree/v7.1.8" }, "funding": [ { @@ -7711,7 +7713,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-11-13T13:31:21+00:00" }, { "name": "symfony/translation", @@ -7887,16 +7889,16 @@ }, { "name": "symfony/twig-bridge", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/twig-bridge.git", - "reference": "91c67942b0e535272e4d7a89619094a5acd8479d" + "reference": "535ab0be4fc563b2bc5fc0cc9e388626d226c63f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/91c67942b0e535272e4d7a89619094a5acd8479d", - "reference": "91c67942b0e535272e4d7a89619094a5acd8479d", + "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/535ab0be4fc563b2bc5fc0cc9e388626d226c63f", + "reference": "535ab0be4fc563b2bc5fc0cc9e388626d226c63f", "shasum": "" }, "require": { @@ -7976,7 +7978,7 @@ "description": "Provides integration for Twig with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/twig-bridge/tree/v7.1.6" + "source": "https://github.com/symfony/twig-bridge/tree/v7.1.8" }, "funding": [ { @@ -7992,7 +7994,7 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:11:02+00:00" + "time": "2024-11-10T02:47:09+00:00" }, { "name": "symfony/twig-bundle", @@ -8080,16 +8082,16 @@ }, { "name": "symfony/type-info", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/type-info.git", - "reference": "a13032128c307470955c45c99201349b15cd7f4a" + "reference": "51535dde21c7abf65c9d000a30bb15f6478195e6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/type-info/zipball/a13032128c307470955c45c99201349b15cd7f4a", - "reference": "a13032128c307470955c45c99201349b15cd7f4a", + "url": "https://api.github.com/repos/symfony/type-info/zipball/51535dde21c7abf65c9d000a30bb15f6478195e6", + "reference": "51535dde21c7abf65c9d000a30bb15f6478195e6", "shasum": "" }, "require": { @@ -8102,7 +8104,7 @@ "symfony/property-info": "<6.4" }, "require-dev": { - "phpstan/phpdoc-parser": "^1.0", + "phpstan/phpdoc-parser": "^1.0|^2.0", "symfony/dependency-injection": "^6.4|^7.0", "symfony/property-info": "^6.4|^7.0" }, @@ -8142,7 +8144,7 @@ "type" ], "support": { - "source": "https://github.com/symfony/type-info/tree/v7.1.6" + "source": "https://github.com/symfony/type-info/tree/v7.1.8" }, "funding": [ { @@ -8158,7 +8160,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-11-07T15:49:33+00:00" }, { "name": "symfony/ux-icons", @@ -8349,16 +8351,16 @@ }, { "name": "symfony/validator", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/validator.git", - "reference": "6c9fc7b87bc7a7056c0fdbe3ff87b12690942ffb" + "reference": "85a90c0a4ab0d10c118d3cdf39115e00d9cca7d0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/validator/zipball/6c9fc7b87bc7a7056c0fdbe3ff87b12690942ffb", - "reference": "6c9fc7b87bc7a7056c0fdbe3ff87b12690942ffb", + "url": "https://api.github.com/repos/symfony/validator/zipball/85a90c0a4ab0d10c118d3cdf39115e00d9cca7d0", + "reference": "85a90c0a4ab0d10c118d3cdf39115e00d9cca7d0", "shasum": "" }, "require": { @@ -8426,7 +8428,7 @@ "description": "Provides tools to validate values", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/validator/tree/v7.1.6" + "source": "https://github.com/symfony/validator/tree/v7.1.8" }, "funding": [ { @@ -8442,20 +8444,20 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:11:02+00:00" + "time": "2024-11-08T15:46:42+00:00" }, { "name": "symfony/var-dumper", - "version": "v7.1.6", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "cb5bd55a6b8c2c1c7fb68b0aeae0e257948a720c" + "reference": "7bb01a47b1b00428d32b5e7b4d3b2d1aa58d3db8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/cb5bd55a6b8c2c1c7fb68b0aeae0e257948a720c", - "reference": "cb5bd55a6b8c2c1c7fb68b0aeae0e257948a720c", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/7bb01a47b1b00428d32b5e7b4d3b2d1aa58d3db8", + "reference": "7bb01a47b1b00428d32b5e7b4d3b2d1aa58d3db8", "shasum": "" }, "require": { @@ -8509,7 +8511,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v7.1.6" + "source": "https://github.com/symfony/var-dumper/tree/v7.1.8" }, "funding": [ { @@ -8525,7 +8527,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-11-08T15:46:42+00:00" }, { "name": "symfony/var-exporter", @@ -8833,16 +8835,16 @@ }, { "name": "twig/twig", - "version": "v3.14.0", + "version": "v3.14.2", "source": { "type": "git", "url": "https://github.com/twigphp/Twig.git", - "reference": "126b2c97818dbff0cdf3fbfc881aedb3d40aae72" + "reference": "0b6f9d8370bb3b7f1ce5313ed8feb0fafd6e399a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig/zipball/126b2c97818dbff0cdf3fbfc881aedb3d40aae72", - "reference": "126b2c97818dbff0cdf3fbfc881aedb3d40aae72", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/0b6f9d8370bb3b7f1ce5313ed8feb0fafd6e399a", + "reference": "0b6f9d8370bb3b7f1ce5313ed8feb0fafd6e399a", "shasum": "" }, "require": { @@ -8896,7 +8898,7 @@ ], "support": { "issues": "https://github.com/twigphp/Twig/issues", - "source": "https://github.com/twigphp/Twig/tree/v3.14.0" + "source": "https://github.com/twigphp/Twig/tree/v3.14.2" }, "funding": [ { @@ -8908,7 +8910,7 @@ "type": "tidelift" } ], - "time": "2024-09-09T17:55:12+00:00" + "time": "2024-11-07T12:36:22+00:00" }, { "name": "webmozart/assert", @@ -9039,16 +9041,16 @@ }, { "name": "myclabs/deep-copy", - "version": "1.12.0", + "version": "1.12.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c" + "reference": "123267b2c49fbf30d78a7b2d333f6be754b94845" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", - "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/123267b2c49fbf30d78a7b2d333f6be754b94845", + "reference": "123267b2c49fbf30d78a7b2d333f6be754b94845", "shasum": "" }, "require": { @@ -9087,7 +9089,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.12.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.12.1" }, "funding": [ { @@ -9095,7 +9097,7 @@ "type": "tidelift" } ], - "time": "2024-06-12T14:39:25+00:00" + "time": "2024-11-08T17:47:46+00:00" }, { "name": "nikic/php-parser", @@ -11108,16 +11110,16 @@ }, { "name": "symfony/web-profiler-bundle", - "version": "v7.1.6", + "version": "v7.1.7", "source": { "type": "git", "url": "https://github.com/symfony/web-profiler-bundle.git", - "reference": "49d95d20f32a4b5bb711f55a6fc73e7a8e37b32e" + "reference": "13d97a9acb23663550495fa2480e8cc95033ad61" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/49d95d20f32a4b5bb711f55a6fc73e7a8e37b32e", - "reference": "49d95d20f32a4b5bb711f55a6fc73e7a8e37b32e", + "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/13d97a9acb23663550495fa2480e8cc95033ad61", + "reference": "13d97a9acb23663550495fa2480e8cc95033ad61", "shasum": "" }, "require": { @@ -11169,7 +11171,7 @@ "dev" ], "support": { - "source": "https://github.com/symfony/web-profiler-bundle/tree/v7.1.6" + "source": "https://github.com/symfony/web-profiler-bundle/tree/v7.1.7" }, "funding": [ { @@ -11185,7 +11187,7 @@ "type": "tidelift" } ], - "time": "2024-10-01T08:54:22+00:00" + "time": "2024-11-05T07:52:02+00:00" }, { "name": "theseer/tokenizer", @@ -11240,7 +11242,7 @@ ], "aliases": [], "minimum-stability": "stable", - "stability-flags": {}, + "stability-flags": [], "prefer-stable": true, "prefer-lowest": false, "platform": { @@ -11248,6 +11250,6 @@ "ext-ctype": "*", "ext-iconv": "*" }, - "platform-dev": {}, - "plugin-api-version": "2.6.0" + "platform-dev": [], + "plugin-api-version": "2.3.0" } diff --git a/migrations/Version20241010155711.php b/migrations/Version20241010155711.php new file mode 100644 index 0000000..cb95793 --- /dev/null +++ b/migrations/Version20241010155711.php @@ -0,0 +1,109 @@ +addSql('DROP SEQUENCE eat_id_seq CASCADE'); + $this->addSql('CREATE TABLE customer (id INT NOT NULL, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, email VARCHAR(255) NOT NULL, number_phone VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE customer_table (customer_id INT NOT NULL, table_id INT NOT NULL, PRIMARY KEY(customer_id, table_id))'); + $this->addSql('CREATE INDEX IDX_381CFA7D9395C3F3 ON customer_table (customer_id)'); + $this->addSql('CREATE INDEX IDX_381CFA7DECFF285C ON customer_table (table_id)'); + $this->addSql('CREATE TABLE discount (id INT NOT NULL, id_dishes_id INT DEFAULT NULL, description VARCHAR(255) NOT NULL, percentage VARCHAR(255) NOT NULL, fixed_amount DOUBLE PRECISION NOT NULL, start_date DATE NOT NULL, date_end DATE NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_E1E0B40E20686F5D ON discount (id_dishes_id)'); + $this->addSql('CREATE TABLE dishes (id INT NOT NULL, name VARCHAR(255) NOT NULL, description VARCHAR(255) NOT NULL, price DOUBLE PRECISION NOT NULL, category VARCHAR(255) NOT NULL, status VARCHAR(255) NOT NULL, number_order VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE "order" (id INT NOT NULL, id_order_detail_id INT NOT NULL, id_status_order_id INT NOT NULL, date_time DOUBLE PRECISION NOT NULL, status VARCHAR(255) NOT NULL, total VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_F52993988D09BBCB ON "order" (id_order_detail_id)'); + $this->addSql('CREATE INDEX IDX_F5299398F91B0968 ON "order" (id_status_order_id)'); + $this->addSql('CREATE TABLE order_user (order_id INT NOT NULL, user_id INT NOT NULL, PRIMARY KEY(order_id, user_id))'); + $this->addSql('CREATE INDEX IDX_C062EC5E8D9F6D38 ON order_user (order_id)'); + $this->addSql('CREATE INDEX IDX_C062EC5EA76ED395 ON order_user (user_id)'); + $this->addSql('CREATE TABLE order_dishes (order_id INT NOT NULL, dishes_id INT NOT NULL, PRIMARY KEY(order_id, dishes_id))'); + $this->addSql('CREATE INDEX IDX_9BC2C3888D9F6D38 ON order_dishes (order_id)'); + $this->addSql('CREATE INDEX IDX_9BC2C388A05DD37A ON order_dishes (dishes_id)'); + $this->addSql('CREATE TABLE order_detail (id INT NOT NULL, quantity DOUBLE PRECISION NOT NULL, unit_price DOUBLE PRECISION NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE reservation (id INT NOT NULL, date_time DOUBLE PRECISION NOT NULL, number_people INT NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE reservation_user (reservation_id INT NOT NULL, user_id INT NOT NULL, PRIMARY KEY(reservation_id, user_id))'); + $this->addSql('CREATE INDEX IDX_9BAA1B21B83297E7 ON reservation_user (reservation_id)'); + $this->addSql('CREATE INDEX IDX_9BAA1B21A76ED395 ON reservation_user (user_id)'); + $this->addSql('CREATE TABLE status_order (id INT NOT NULL, libelle VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE status_table (id INT NOT NULL, libelle VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE "table" (id INT NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE "user" (id INT NOT NULL, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, mail VARCHAR(255) NOT NULL, role VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE messenger_messages (id BIGSERIAL NOT NULL, body TEXT NOT NULL, headers TEXT NOT NULL, queue_name VARCHAR(190) NOT NULL, created_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, available_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, delivered_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_75EA56E0FB7336F0 ON messenger_messages (queue_name)'); + $this->addSql('CREATE INDEX IDX_75EA56E0E3BD61CE ON messenger_messages (available_at)'); + $this->addSql('CREATE INDEX IDX_75EA56E016BA31DB ON messenger_messages (delivered_at)'); + $this->addSql('COMMENT ON COLUMN messenger_messages.created_at IS \'(DC2Type:datetime_immutable)\''); + $this->addSql('COMMENT ON COLUMN messenger_messages.available_at IS \'(DC2Type:datetime_immutable)\''); + $this->addSql('COMMENT ON COLUMN messenger_messages.delivered_at IS \'(DC2Type:datetime_immutable)\''); + $this->addSql('CREATE OR REPLACE FUNCTION notify_messenger_messages() RETURNS TRIGGER AS $$ + BEGIN + PERFORM pg_notify(\'messenger_messages\', NEW.queue_name::text); + RETURN NEW; + END; + $$ LANGUAGE plpgsql;'); + $this->addSql('DROP TRIGGER IF EXISTS notify_trigger ON messenger_messages;'); + $this->addSql('CREATE TRIGGER notify_trigger AFTER INSERT OR UPDATE ON messenger_messages FOR EACH ROW EXECUTE PROCEDURE notify_messenger_messages();'); + $this->addSql('ALTER TABLE customer_table ADD CONSTRAINT FK_381CFA7D9395C3F3 FOREIGN KEY (customer_id) REFERENCES customer (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE customer_table ADD CONSTRAINT FK_381CFA7DECFF285C FOREIGN KEY (table_id) REFERENCES "table" (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE discount ADD CONSTRAINT FK_E1E0B40E20686F5D FOREIGN KEY (id_dishes_id) REFERENCES dishes (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE "order" ADD CONSTRAINT FK_F52993988D09BBCB FOREIGN KEY (id_order_detail_id) REFERENCES order_detail (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE "order" ADD CONSTRAINT FK_F5299398F91B0968 FOREIGN KEY (id_status_order_id) REFERENCES status_order (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE order_user ADD CONSTRAINT FK_C062EC5E8D9F6D38 FOREIGN KEY (order_id) REFERENCES "order" (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE order_user ADD CONSTRAINT FK_C062EC5EA76ED395 FOREIGN KEY (user_id) REFERENCES "user" (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE order_dishes ADD CONSTRAINT FK_9BC2C3888D9F6D38 FOREIGN KEY (order_id) REFERENCES "order" (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE order_dishes ADD CONSTRAINT FK_9BC2C388A05DD37A FOREIGN KEY (dishes_id) REFERENCES dishes (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE reservation_user ADD CONSTRAINT FK_9BAA1B21B83297E7 FOREIGN KEY (reservation_id) REFERENCES reservation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE reservation_user ADD CONSTRAINT FK_9BAA1B21A76ED395 FOREIGN KEY (user_id) REFERENCES "user" (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('CREATE SCHEMA public'); + $this->addSql('CREATE SEQUENCE eat_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('ALTER TABLE customer_table DROP CONSTRAINT FK_381CFA7D9395C3F3'); + $this->addSql('ALTER TABLE customer_table DROP CONSTRAINT FK_381CFA7DECFF285C'); + $this->addSql('ALTER TABLE discount DROP CONSTRAINT FK_E1E0B40E20686F5D'); + $this->addSql('ALTER TABLE "order" DROP CONSTRAINT FK_F52993988D09BBCB'); + $this->addSql('ALTER TABLE "order" DROP CONSTRAINT FK_F5299398F91B0968'); + $this->addSql('ALTER TABLE order_user DROP CONSTRAINT FK_C062EC5E8D9F6D38'); + $this->addSql('ALTER TABLE order_user DROP CONSTRAINT FK_C062EC5EA76ED395'); + $this->addSql('ALTER TABLE order_dishes DROP CONSTRAINT FK_9BC2C3888D9F6D38'); + $this->addSql('ALTER TABLE order_dishes DROP CONSTRAINT FK_9BC2C388A05DD37A'); + $this->addSql('ALTER TABLE reservation_user DROP CONSTRAINT FK_9BAA1B21B83297E7'); + $this->addSql('ALTER TABLE reservation_user DROP CONSTRAINT FK_9BAA1B21A76ED395'); + $this->addSql('DROP TABLE customer'); + $this->addSql('DROP TABLE customer_table'); + $this->addSql('DROP TABLE discount'); + $this->addSql('DROP TABLE dishes'); + $this->addSql('DROP TABLE "order"'); + $this->addSql('DROP TABLE order_user'); + $this->addSql('DROP TABLE order_dishes'); + $this->addSql('DROP TABLE order_detail'); + $this->addSql('DROP TABLE reservation'); + $this->addSql('DROP TABLE reservation_user'); + $this->addSql('DROP TABLE status_order'); + $this->addSql('DROP TABLE status_table'); + $this->addSql('DROP TABLE "table"'); + $this->addSql('DROP TABLE "user"'); + $this->addSql('DROP TABLE messenger_messages'); + } +} diff --git a/public/css/list.css b/public/css/list.css new file mode 100644 index 0000000..c1125b4 --- /dev/null +++ b/public/css/list.css @@ -0,0 +1,77 @@ +/* Global styles */ +body { + font-family: Arial, sans-serif; + margin: 20px; + background-color: #f9f9f9; + color: #333; +} + +h1 { + text-align: center; + color: #db5559; + margin-bottom: 20px; +} + +/* Table styles */ +.table { + width: 100%; + border-collapse: collapse; + margin-bottom: 20px; + background-color: #fff; + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); +} + +.table th, .table td { + padding: 12px; + text-align: left; + border: 1px solid #ddd; +} + +.table th { + background-color: #db5559; + color: white; +} + +.table tr:nth-child(even) { + background-color: #f2f2f2; +} + +.table tr:hover { + background-color: #ddd; +} + +/* Action links */ +a { + text-decoration: none; + color: #db5559; + font-weight: bold; +} + +a:hover { + color: #38538e; + text-decoration: underline; +} + +/* New client button */ +a[href*="app_clients_new"] { + display: inline-block; + margin-top: 20px; + padding: 10px 20px; + background-color: #4CAF50; + color: white; + border-radius: 5px; + font-size: 16px; + text-align: center; + transition: background-color 0.3s ease; +} + +a[href*="app_clients_new"]:hover { + background-color: #388E3C; +} + +/* Empty table row message */ +.table td[colspan="6"] { + text-align: center; + font-style: italic; + color: #666; +} diff --git a/src/Controller/ClientsController.php b/src/Controller/ClientsController.php new file mode 100644 index 0000000..bf6701d --- /dev/null +++ b/src/Controller/ClientsController.php @@ -0,0 +1,81 @@ +render('clients/index.html.twig', [ + 'clients' => $clientsRepository->findAll(), + ]); + } + + #[Route('/new', name: 'app_clients_new', methods: ['GET', 'POST'])] + public function new(Request $request, EntityManagerInterface $entityManager): Response + { + $client = new Clients(); + $form = $this->createForm(ClientsType::class, $client); + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + $entityManager->persist($client); + $entityManager->flush(); + + return $this->redirectToRoute('app_clients_index', [], Response::HTTP_SEE_OTHER); + } + + return $this->render('clients/new.html.twig', [ + 'client' => $client, + 'form' => $form, + ]); + } + + #[Route('/{id}', name: 'app_clients_show', methods: ['GET'])] + public function show(Clients $client): Response + { + return $this->render('clients/show.html.twig', [ + 'client' => $client, + ]); + } + + #[Route('/{id}/edit', name: 'app_clients_edit', methods: ['GET', 'POST'])] + public function edit(Request $request, Clients $client, EntityManagerInterface $entityManager): Response + { + $form = $this->createForm(ClientsType::class, $client); + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + $entityManager->flush(); + + return $this->redirectToRoute('app_clients_index', [], Response::HTTP_SEE_OTHER); + } + + return $this->render('clients/edit.html.twig', [ + 'client' => $client, + 'form' => $form, + ]); + } + + #[Route('/{id}', name: 'app_clients_delete', methods: ['POST'])] + public function delete(Request $request, Clients $client, EntityManagerInterface $entityManager): Response + { + if ($this->isCsrfTokenValid('delete'.$client->getId(), $request->getPayload()->getString('_token'))) { + $entityManager->remove($client); + $entityManager->flush(); + } + + return $this->redirectToRoute('app_clients_index', [], Response::HTTP_SEE_OTHER); + } +} diff --git a/src/Controller/CommandesController.php b/src/Controller/CommandesController.php new file mode 100644 index 0000000..7d2ea04 --- /dev/null +++ b/src/Controller/CommandesController.php @@ -0,0 +1,81 @@ +render('commandes/index.html.twig', [ + 'commandes' => $commandesRepository->findAll(), + ]); + } + + #[Route('/new', name: 'app_commandes_new', methods: ['GET', 'POST'])] + public function new(Request $request, EntityManagerInterface $entityManager): Response + { + $commande = new Commandes(); + $form = $this->createForm(CommandesType::class, $commande); + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + $entityManager->persist($commande); + $entityManager->flush(); + + return $this->redirectToRoute('app_commandes_index', [], Response::HTTP_SEE_OTHER); + } + + return $this->render('commandes/new.html.twig', [ + 'commande' => $commande, + 'form' => $form, + ]); + } + + #[Route('/{id}', name: 'app_commandes_show', methods: ['GET'])] + public function show(Commandes $commande): Response + { + return $this->render('commandes/show.html.twig', [ + 'commande' => $commande, + ]); + } + + #[Route('/{id}/edit', name: 'app_commandes_edit', methods: ['GET', 'POST'])] + public function edit(Request $request, Commandes $commande, EntityManagerInterface $entityManager): Response + { + $form = $this->createForm(CommandesType::class, $commande); + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + $entityManager->flush(); + + return $this->redirectToRoute('app_commandes_index', [], Response::HTTP_SEE_OTHER); + } + + return $this->render('commandes/edit.html.twig', [ + 'commande' => $commande, + 'form' => $form, + ]); + } + + #[Route('/{id}', name: 'app_commandes_delete', methods: ['POST'])] + public function delete(Request $request, Commandes $commande, EntityManagerInterface $entityManager): Response + { + if ($this->isCsrfTokenValid('delete'.$commande->getId(), $request->getPayload()->getString('_token'))) { + $entityManager->remove($commande); + $entityManager->flush(); + } + + return $this->redirectToRoute('app_commandes_index', [], Response::HTTP_SEE_OTHER); + } +} diff --git a/src/Controller/CuisinierController.php b/src/Controller/CuisinierController.php deleted file mode 100644 index c2097ea..0000000 --- a/src/Controller/CuisinierController.php +++ /dev/null @@ -1,46 +0,0 @@ -createForm(CuisinierType::class, $cuisinier); - - $form->handleRequest($request); - if ($form->isSubmitted() && $form->isValid()) { - $entityManager->persist($cuisinier); - $entityManager->flush(); - - $this->addFlash('success', 'Cuisinier ajouté avec succès !'); - return $this->redirectToRoute('ajouter_cuisinier'); - } - - return $this->render('cuisinier/ajouter.html.twig', [ - 'form' => $form->createView(), - ]); - } - - #[Route('/cuisinier/supprimer/{id}', name: 'supprimer_cuisinier', methods: ['POST'])] - public function supprimer(int $id, EntityManagerInterface $entityManager): Response - { - $cuisinier = $entityManager->getRepository(Cuisinier::class)->find($id); - - if (!$cuisinier) { - throw $this->createNotFoundException('Ce cuisinier n\'existe pas'); - } - - $entityManager->remove($cuisinier); - $entityManager->flush(); - - $this->addFlash('success', 'Cuisinier supprimé avec succès !'); - return $this->redirectToRoute('ajouter_cuisinier'); - } -} \ No newline at end of file diff --git a/src/Controller/DetailsCommandeController.php b/src/Controller/DetailsCommandeController.php new file mode 100644 index 0000000..21139a1 --- /dev/null +++ b/src/Controller/DetailsCommandeController.php @@ -0,0 +1,81 @@ +render('details_commande/index.html.twig', [ + 'details_commandes' => $detailsCommandeRepository->findAll(), + ]); + } + + #[Route('/new', name: 'app_details_commande_new', methods: ['GET', 'POST'])] + public function new(Request $request, EntityManagerInterface $entityManager): Response + { + $detailsCommande = new DetailsCommande(); + $form = $this->createForm(DetailsCommandeType::class, $detailsCommande); + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + $entityManager->persist($detailsCommande); + $entityManager->flush(); + + return $this->redirectToRoute('app_details_commande_index', [], Response::HTTP_SEE_OTHER); + } + + return $this->render('details_commande/new.html.twig', [ + 'details_commande' => $detailsCommande, + 'form' => $form, + ]); + } + + #[Route('/{id}', name: 'app_details_commande_show', methods: ['GET'])] + public function show(DetailsCommande $detailsCommande): Response + { + return $this->render('details_commande/show.html.twig', [ + 'details_commande' => $detailsCommande, + ]); + } + + #[Route('/{id}/edit', name: 'app_details_commande_edit', methods: ['GET', 'POST'])] + public function edit(Request $request, DetailsCommande $detailsCommande, EntityManagerInterface $entityManager): Response + { + $form = $this->createForm(DetailsCommandeType::class, $detailsCommande); + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + $entityManager->flush(); + + return $this->redirectToRoute('app_details_commande_index', [], Response::HTTP_SEE_OTHER); + } + + return $this->render('details_commande/edit.html.twig', [ + 'details_commande' => $detailsCommande, + 'form' => $form, + ]); + } + + #[Route('/{id}', name: 'app_details_commande_delete', methods: ['POST'])] + public function delete(Request $request, DetailsCommande $detailsCommande, EntityManagerInterface $entityManager): Response + { + if ($this->isCsrfTokenValid('delete'.$detailsCommande->getId(), $request->getPayload()->getString('_token'))) { + $entityManager->remove($detailsCommande); + $entityManager->flush(); + } + + return $this->redirectToRoute('app_details_commande_index', [], Response::HTTP_SEE_OTHER); + } +} diff --git a/src/Controller/PlatsController.php b/src/Controller/PlatsController.php new file mode 100644 index 0000000..e9c034d --- /dev/null +++ b/src/Controller/PlatsController.php @@ -0,0 +1,81 @@ +render('plats/index.html.twig', [ + 'plats' => $platsRepository->findAll(), + ]); + } + + #[Route('/new', name: 'app_plats_new', methods: ['GET', 'POST'])] + public function new(Request $request, EntityManagerInterface $entityManager): Response + { + $plat = new Plats(); + $form = $this->createForm(PlatsType::class, $plat); + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + $entityManager->persist($plat); + $entityManager->flush(); + + return $this->redirectToRoute('app_plats_index', [], Response::HTTP_SEE_OTHER); + } + + return $this->render('plats/new.html.twig', [ + 'plat' => $plat, + 'form' => $form, + ]); + } + + #[Route('/{id}', name: 'app_plats_show', methods: ['GET'])] + public function show(Plats $plat): Response + { + return $this->render('plats/show.html.twig', [ + 'plat' => $plat, + ]); + } + + #[Route('/{id}/edit', name: 'app_plats_edit', methods: ['GET', 'POST'])] + public function edit(Request $request, Plats $plat, EntityManagerInterface $entityManager): Response + { + $form = $this->createForm(PlatsType::class, $plat); + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + $entityManager->flush(); + + return $this->redirectToRoute('app_plats_index', [], Response::HTTP_SEE_OTHER); + } + + return $this->render('plats/edit.html.twig', [ + 'plat' => $plat, + 'form' => $form, + ]); + } + + #[Route('/{id}', name: 'app_plats_delete', methods: ['POST'])] + public function delete(Request $request, Plats $plat, EntityManagerInterface $entityManager): Response + { + if ($this->isCsrfTokenValid('delete'.$plat->getId(), $request->getPayload()->getString('_token'))) { + $entityManager->remove($plat); + $entityManager->flush(); + } + + return $this->redirectToRoute('app_plats_index', [], Response::HTTP_SEE_OTHER); + } +} diff --git a/src/Controller/ReductionsController.php b/src/Controller/ReductionsController.php new file mode 100644 index 0000000..c26f767 --- /dev/null +++ b/src/Controller/ReductionsController.php @@ -0,0 +1,81 @@ +render('reductions/index.html.twig', [ + 'reductions' => $reductionsRepository->findAll(), + ]); + } + + #[Route('/new', name: 'app_reductions_new', methods: ['GET', 'POST'])] + public function new(Request $request, EntityManagerInterface $entityManager): Response + { + $reduction = new Reductions(); + $form = $this->createForm(ReductionsType::class, $reduction); + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + $entityManager->persist($reduction); + $entityManager->flush(); + + return $this->redirectToRoute('app_reductions_index', [], Response::HTTP_SEE_OTHER); + } + + return $this->render('reductions/new.html.twig', [ + 'reduction' => $reduction, + 'form' => $form, + ]); + } + + #[Route('/{id}', name: 'app_reductions_show', methods: ['GET'])] + public function show(Reductions $reduction): Response + { + return $this->render('reductions/show.html.twig', [ + 'reduction' => $reduction, + ]); + } + + #[Route('/{id}/edit', name: 'app_reductions_edit', methods: ['GET', 'POST'])] + public function edit(Request $request, Reductions $reduction, EntityManagerInterface $entityManager): Response + { + $form = $this->createForm(ReductionsType::class, $reduction); + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + $entityManager->flush(); + + return $this->redirectToRoute('app_reductions_index', [], Response::HTTP_SEE_OTHER); + } + + return $this->render('reductions/edit.html.twig', [ + 'reduction' => $reduction, + 'form' => $form, + ]); + } + + #[Route('/{id}', name: 'app_reductions_delete', methods: ['POST'])] + public function delete(Request $request, Reductions $reduction, EntityManagerInterface $entityManager): Response + { + if ($this->isCsrfTokenValid('delete'.$reduction->getId(), $request->getPayload()->getString('_token'))) { + $entityManager->remove($reduction); + $entityManager->flush(); + } + + return $this->redirectToRoute('app_reductions_index', [], Response::HTTP_SEE_OTHER); + } +} diff --git a/src/Entity/Clients.php b/src/Entity/Clients.php index 35a78f3..4cd28f9 100644 --- a/src/Entity/Clients.php +++ b/src/Entity/Clients.php @@ -2,12 +2,13 @@ namespace App\Entity; +use AllowDynamicProperties; use App\Repository\ClientsRepository; use Doctrine\Common\Collections\ArrayCollection; use Doctrine\Common\Collections\Collection; use Doctrine\ORM\Mapping as ORM; -#[ORM\Entity(repositoryClass: ClientsRepository::class)] +#[AllowDynamicProperties] #[ORM\Entity(repositoryClass: ClientsRepository::class)] class Clients { #[ORM\Id] diff --git a/src/Form/ClientsType.php b/src/Form/ClientsType.php new file mode 100644 index 0000000..bdcd973 --- /dev/null +++ b/src/Form/ClientsType.php @@ -0,0 +1,41 @@ +add('Prenom') + ->add('Nom') + ->add('Email') + ->add('Telephone') + ->add('table', EntityType::class, [ + 'class' => Tables::class, + 'choice_label' => 'id', + 'multiple' => true, + ]) + ->add('commandes', EntityType::class, [ + 'class' => Commandes::class, + 'choice_label' => 'id', + 'multiple' => true, + ]) + ; + } + + public function configureOptions(OptionsResolver $resolver): void + { + $resolver->setDefaults([ + 'data_class' => Clients::class, + ]); + } +} diff --git a/src/Form/CommandesType.php b/src/Form/CommandesType.php new file mode 100644 index 0000000..5dcc39b --- /dev/null +++ b/src/Form/CommandesType.php @@ -0,0 +1,47 @@ +add('DateHeure', null, [ + 'widget' => 'single_text', + ]) + ->add('Statut') + ->add('Total') + ->add('Client', EntityType::class, [ + 'class' => Clients::class, + 'choice_label' => 'id', + 'multiple' => true, + ]) + ->add('plats', EntityType::class, [ + 'class' => Plats::class, + 'choice_label' => 'id', + 'multiple' => true, + ]) + ->add('StatutCommande', EntityType::class, [ + 'class' => StatutCommandes::class, + 'choice_label' => 'id', + ]) + ; + } + + public function configureOptions(OptionsResolver $resolver): void + { + $resolver->setDefaults([ + 'data_class' => Commandes::class, + ]); + } +} diff --git a/src/Form/DetailsCommandeType.php b/src/Form/DetailsCommandeType.php new file mode 100644 index 0000000..3d4eba3 --- /dev/null +++ b/src/Form/DetailsCommandeType.php @@ -0,0 +1,32 @@ +add('Quantite') + ->add('PrixUnitaire') + ->add('Commande', EntityType::class, [ + 'class' => Commandes::class, + 'choice_label' => 'id', + ]) + ; + } + + public function configureOptions(OptionsResolver $resolver): void + { + $resolver->setDefaults([ + 'data_class' => DetailsCommande::class, + ]); + } +} diff --git a/src/Form/PlatsType.php b/src/Form/PlatsType.php new file mode 100644 index 0000000..5946a7d --- /dev/null +++ b/src/Form/PlatsType.php @@ -0,0 +1,42 @@ +add('Nom') + ->add('Description') + ->add('Prix') + ->add('Categorie') + ->add('Statut') + ->add('Nb_de_commande') + ->add('Commande', EntityType::class, [ + 'class' => Commandes::class, + 'choice_label' => 'id', + 'multiple' => true, + ]) + ->add('Reduction', EntityType::class, [ + 'class' => Reductions::class, + 'choice_label' => 'id', + ]) + ; + } + + public function configureOptions(OptionsResolver $resolver): void + { + $resolver->setDefaults([ + 'data_class' => Plats::class, + ]); + } +} diff --git a/src/Form/ReductionsType.php b/src/Form/ReductionsType.php new file mode 100644 index 0000000..ff5957e --- /dev/null +++ b/src/Form/ReductionsType.php @@ -0,0 +1,34 @@ +add('Description') + ->add('Prix') + ->add('Pourcentage') + ->add('MontantFixe') + ->add('DateDebut', null, [ + 'widget' => 'single_text', + ]) + ->add('DateFin', null, [ + 'widget' => 'single_text', + ]) + ; + } + + public function configureOptions(OptionsResolver $resolver): void + { + $resolver->setDefaults([ + 'data_class' => Reductions::class, + ]); + } +} diff --git a/templates/clients/_delete_form.html.twig b/templates/clients/_delete_form.html.twig new file mode 100644 index 0000000..f4deca2 --- /dev/null +++ b/templates/clients/_delete_form.html.twig @@ -0,0 +1,4 @@ +
+ + +
diff --git a/templates/clients/_form.html.twig b/templates/clients/_form.html.twig new file mode 100644 index 0000000..bf20b98 --- /dev/null +++ b/templates/clients/_form.html.twig @@ -0,0 +1,4 @@ +{{ form_start(form) }} + {{ form_widget(form) }} + +{{ form_end(form) }} diff --git a/templates/clients/edit.html.twig b/templates/clients/edit.html.twig new file mode 100644 index 0000000..1f671c7 --- /dev/null +++ b/templates/clients/edit.html.twig @@ -0,0 +1,13 @@ +{% extends 'base.html.twig' %} + +{% block title %}Edit Clients{% endblock %} + +{% block body %} +

Edit Clients

+ + {{ include('clients/_form.html.twig', {'button_label': 'Update'}) }} + + back to list + + {{ include('clients/_delete_form.html.twig') }} +{% endblock %} diff --git a/templates/clients/index.html.twig b/templates/clients/index.html.twig new file mode 100644 index 0000000..3c9222f --- /dev/null +++ b/templates/clients/index.html.twig @@ -0,0 +1,44 @@ +{% extends 'base.html.twig' %} + +{% block title %}Clients index{% endblock %} +{% block stylesheets %} + + +{% endblock %} +{% block body %} +

Clients index

+ + + + + + + + + + + + + + {% for client in clients %} + + + + + + + + + {% else %} + + + + {% endfor %} + +
IdPrenomNomEmailTelephoneactions
{{ client.id }}{{ client.Prenom }}{{ client.Nom }}{{ client.Email }}{{ client.Telephone }} + show + edit +
no records found
+ + Créer un nouveau client +{% endblock %} diff --git a/templates/clients/new.html.twig b/templates/clients/new.html.twig new file mode 100644 index 0000000..616aca7 --- /dev/null +++ b/templates/clients/new.html.twig @@ -0,0 +1,11 @@ +{% extends 'base.html.twig' %} + +{% block title %}New Clients{% endblock %} + +{% block body %} +

Create new Clients

+ + {{ include('clients/_form.html.twig') }} + + back to list +{% endblock %} diff --git a/templates/clients/show.html.twig b/templates/clients/show.html.twig new file mode 100644 index 0000000..254ae62 --- /dev/null +++ b/templates/clients/show.html.twig @@ -0,0 +1,38 @@ +{% extends 'base.html.twig' %} + +{% block title %}Clients{% endblock %} + +{% block body %} +

Clients

+ + + + + + + + + + + + + + + + + + + + + + + + +
Id{{ client.id }}
Prenom{{ client.Prenom }}
Nom{{ client.Nom }}
Email{{ client.Email }}
Telephone{{ client.Telephone }}
+ + back to list + + edit + + {{ include('clients/_delete_form.html.twig') }} +{% endblock %} diff --git a/templates/commande/index.html.twig b/templates/commande/index.html.twig new file mode 100644 index 0000000..5d09fae --- /dev/null +++ b/templates/commande/index.html.twig @@ -0,0 +1,23 @@ +{% extends 'base.html.twig' %} + +{% block title %}Hello CommandeController!{% endblock %} +{% block stylesheets %} + + +{% endblock %} +{% block body %} + + +
+

Hello {{ controller_name }}! ✅

+ + This friendly message is coming from: + +
+{% endblock %} diff --git a/templates/commandes/_delete_form.html.twig b/templates/commandes/_delete_form.html.twig new file mode 100644 index 0000000..af65114 --- /dev/null +++ b/templates/commandes/_delete_form.html.twig @@ -0,0 +1,4 @@ +
+ + +
diff --git a/templates/commandes/_form.html.twig b/templates/commandes/_form.html.twig new file mode 100644 index 0000000..bf20b98 --- /dev/null +++ b/templates/commandes/_form.html.twig @@ -0,0 +1,4 @@ +{{ form_start(form) }} + {{ form_widget(form) }} + +{{ form_end(form) }} diff --git a/templates/commandes/edit.html.twig b/templates/commandes/edit.html.twig new file mode 100644 index 0000000..ce8c20e --- /dev/null +++ b/templates/commandes/edit.html.twig @@ -0,0 +1,13 @@ +{% extends 'base.html.twig' %} + +{% block title %}Edit Commandes{% endblock %} + +{% block body %} +

Edit Commandes

+ + {{ include('commandes/_form.html.twig', {'button_label': 'Update'}) }} + + back to list + + {{ include('commandes/_delete_form.html.twig') }} +{% endblock %} diff --git a/templates/commandes/index.html.twig b/templates/commandes/index.html.twig new file mode 100644 index 0000000..63e9977 --- /dev/null +++ b/templates/commandes/index.html.twig @@ -0,0 +1,42 @@ +{% extends 'base.html.twig' %} + +{% block title %}Commandes index{% endblock %} +{% block stylesheets %} + + +{% endblock %} +{% block body %} +

Commandes index

+ + + + + + + + + + + + + {% for commande in commandes %} + + + + + + + + {% else %} + + + + {% endfor %} + +
IdDateHeureStatutTotalactions
{{ commande.id }}{{ commande.DateHeure ? commande.DateHeure|date('Y-m-d H:i:s') : '' }}{{ commande.Statut ? 'Yes' : 'No' }}{{ commande.Total }} + show + edit +
pas de commande crée
+ + Créer une nouvelle commande +{% endblock %} diff --git a/templates/commandes/new.html.twig b/templates/commandes/new.html.twig new file mode 100644 index 0000000..af63760 --- /dev/null +++ b/templates/commandes/new.html.twig @@ -0,0 +1,11 @@ +{% extends 'base.html.twig' %} + +{% block title %}New Commandes{% endblock %} + +{% block body %} +

Create new Commandes

+ + {{ include('commandes/_form.html.twig') }} + + back to list +{% endblock %} diff --git a/templates/commandes/show.html.twig b/templates/commandes/show.html.twig new file mode 100644 index 0000000..ce527e4 --- /dev/null +++ b/templates/commandes/show.html.twig @@ -0,0 +1,34 @@ +{% extends 'base.html.twig' %} + +{% block title %}Commandes{% endblock %} + +{% block body %} +

Commandes

+ + + + + + + + + + + + + + + + + + + + +
Id{{ commande.id }}
DateHeure{{ commande.DateHeure ? commande.DateHeure|date('Y-m-d H:i:s') : '' }}
Statut{{ commande.Statut ? 'Yes' : 'No' }}
Total{{ commande.Total }}
+ + back to list + + edit + + {{ include('commandes/_delete_form.html.twig') }} +{% endblock %} diff --git a/templates/details_commande/_delete_form.html.twig b/templates/details_commande/_delete_form.html.twig new file mode 100644 index 0000000..465f168 --- /dev/null +++ b/templates/details_commande/_delete_form.html.twig @@ -0,0 +1,4 @@ +
+ + +
diff --git a/templates/details_commande/_form.html.twig b/templates/details_commande/_form.html.twig new file mode 100644 index 0000000..bf20b98 --- /dev/null +++ b/templates/details_commande/_form.html.twig @@ -0,0 +1,4 @@ +{{ form_start(form) }} + {{ form_widget(form) }} + +{{ form_end(form) }} diff --git a/templates/details_commande/edit.html.twig b/templates/details_commande/edit.html.twig new file mode 100644 index 0000000..7e0c933 --- /dev/null +++ b/templates/details_commande/edit.html.twig @@ -0,0 +1,13 @@ +{% extends 'base.html.twig' %} + +{% block title %}Edit DetailsCommande{% endblock %} + +{% block body %} +

Edit DetailsCommande

+ + {{ include('details_commande/_form.html.twig', {'button_label': 'Update'}) }} + + back to list + + {{ include('details_commande/_delete_form.html.twig') }} +{% endblock %} diff --git a/templates/details_commande/index.html.twig b/templates/details_commande/index.html.twig new file mode 100644 index 0000000..79715cf --- /dev/null +++ b/templates/details_commande/index.html.twig @@ -0,0 +1,41 @@ +{% extends 'base.html.twig' %} + +{% block title %}DetailsCommande index{% endblock %} + +{% block stylesheets %} + +{% endblock %} + +{% block body %} +

DetailsCommande index

+ + + + + + + + + + + + {% for details_commande in details_commandes %} + + + + + + + {% else %} + + + + {% endfor %} + +
IdQuantitePrixUnitaireactions
{{ details_commande.id }}{{ details_commande.Quantite }}{{ details_commande.PrixUnitaire }} + show + edit +
pas de détails de commande disponible
+ + Créer le détails d'une commande +{% endblock %} diff --git a/templates/details_commande/new.html.twig b/templates/details_commande/new.html.twig new file mode 100644 index 0000000..c3cae39 --- /dev/null +++ b/templates/details_commande/new.html.twig @@ -0,0 +1,11 @@ +{% extends 'base.html.twig' %} + +{% block title %}New DetailsCommande{% endblock %} + +{% block body %} +

Create new DetailsCommande

+ + {{ include('details_commande/_form.html.twig') }} + + back to list +{% endblock %} diff --git a/templates/details_commande/show.html.twig b/templates/details_commande/show.html.twig new file mode 100644 index 0000000..88478e5 --- /dev/null +++ b/templates/details_commande/show.html.twig @@ -0,0 +1,30 @@ +{% extends 'base.html.twig' %} + +{% block title %}DetailsCommande{% endblock %} + +{% block body %} +

DetailsCommande

+ + + + + + + + + + + + + + + + +
Id{{ details_commande.id }}
Quantite{{ details_commande.Quantite }}
PrixUnitaire{{ details_commande.PrixUnitaire }}
+ + back to list + + edit + + {{ include('details_commande/_delete_form.html.twig') }} +{% endblock %} diff --git a/templates/plats/_delete_form.html.twig b/templates/plats/_delete_form.html.twig new file mode 100644 index 0000000..bc89faf --- /dev/null +++ b/templates/plats/_delete_form.html.twig @@ -0,0 +1,4 @@ +
+ + +
diff --git a/templates/plats/_form.html.twig b/templates/plats/_form.html.twig new file mode 100644 index 0000000..bf20b98 --- /dev/null +++ b/templates/plats/_form.html.twig @@ -0,0 +1,4 @@ +{{ form_start(form) }} + {{ form_widget(form) }} + +{{ form_end(form) }} diff --git a/templates/plats/edit.html.twig b/templates/plats/edit.html.twig new file mode 100644 index 0000000..14afd7b --- /dev/null +++ b/templates/plats/edit.html.twig @@ -0,0 +1,13 @@ +{% extends 'base.html.twig' %} + +{% block title %}Edit Plats{% endblock %} + +{% block body %} +

Edit Plats

+ + {{ include('plats/_form.html.twig', {'button_label': 'Update'}) }} + + back to list + + {{ include('plats/_delete_form.html.twig') }} +{% endblock %} diff --git a/templates/plats/index.html.twig b/templates/plats/index.html.twig new file mode 100644 index 0000000..a7d2eff --- /dev/null +++ b/templates/plats/index.html.twig @@ -0,0 +1,48 @@ +{% extends 'base.html.twig' %} + +{% block title %}Plats index{% endblock %} +{% block stylesheets %} + + +{% endblock %} +{% block body %} +

Plats index

+ + + + + + + + + + + + + + + + {% for plat in plats %} + + + + + + + + + + + {% else %} + + + + {% endfor %} + +
IdNomDescriptionPrixCategorieStatutNb_de_commandeactions
{{ plat.id }}{{ plat.Nom }}{{ plat.Description }}{{ plat.Prix }}{{ plat.Categorie }}{{ plat.Statut ? 'Yes' : 'No' }}{{ plat.NbDeCommande }} + show + edit +
pas de plats disponible
+ + Créer un nouveaux plat +{% endblock %} diff --git a/templates/plats/new.html.twig b/templates/plats/new.html.twig new file mode 100644 index 0000000..a59e66b --- /dev/null +++ b/templates/plats/new.html.twig @@ -0,0 +1,11 @@ +{% extends 'base.html.twig' %} + +{% block title %}New Plats{% endblock %} + +{% block body %} +

Create new Plats

+ + {{ include('plats/_form.html.twig') }} + + back to list +{% endblock %} diff --git a/templates/plats/show.html.twig b/templates/plats/show.html.twig new file mode 100644 index 0000000..41fa96e --- /dev/null +++ b/templates/plats/show.html.twig @@ -0,0 +1,46 @@ +{% extends 'base.html.twig' %} + +{% block title %}Plats{% endblock %} + +{% block body %} +

Plats

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Id{{ plat.id }}
Nom{{ plat.Nom }}
Description{{ plat.Description }}
Prix{{ plat.Prix }}
Categorie{{ plat.Categorie }}
Statut{{ plat.Statut ? 'Yes' : 'No' }}
Nb_de_commande{{ plat.NbDeCommande }}
+ + back to list + + edit + + {{ include('plats/_delete_form.html.twig') }} +{% endblock %} diff --git a/templates/reductions/_delete_form.html.twig b/templates/reductions/_delete_form.html.twig new file mode 100644 index 0000000..20968bd --- /dev/null +++ b/templates/reductions/_delete_form.html.twig @@ -0,0 +1,4 @@ +
+ + +
diff --git a/templates/reductions/_form.html.twig b/templates/reductions/_form.html.twig new file mode 100644 index 0000000..bf20b98 --- /dev/null +++ b/templates/reductions/_form.html.twig @@ -0,0 +1,4 @@ +{{ form_start(form) }} + {{ form_widget(form) }} + +{{ form_end(form) }} diff --git a/templates/reductions/edit.html.twig b/templates/reductions/edit.html.twig new file mode 100644 index 0000000..7e82b78 --- /dev/null +++ b/templates/reductions/edit.html.twig @@ -0,0 +1,13 @@ +{% extends 'base.html.twig' %} + +{% block title %}Edit Reductions{% endblock %} + +{% block body %} +

Edit Reductions

+ + {{ include('reductions/_form.html.twig', {'button_label': 'Update'}) }} + + back to list + + {{ include('reductions/_delete_form.html.twig') }} +{% endblock %} diff --git a/templates/reductions/index.html.twig b/templates/reductions/index.html.twig new file mode 100644 index 0000000..a9788fd --- /dev/null +++ b/templates/reductions/index.html.twig @@ -0,0 +1,48 @@ +{% extends 'base.html.twig' %} + +{% block title %}Reductions index{% endblock %} +{% block stylesheets %} + + +{% endblock %} +{% block body %} +

Reductions index

+ + + + + + + + + + + + + + + + {% for reduction in reductions %} + + + + + + + + + + + {% else %} + + + + {% endfor %} + +
IdDescriptionPrixPourcentageMontantFixeDateDebutDateFinactions
{{ reduction.id }}{{ reduction.Description }}{{ reduction.Prix }}{{ reduction.Pourcentage }}{{ reduction.MontantFixe }}{{ reduction.DateDebut ? reduction.DateDebut|date('Y-m-d H:i:s') : '' }}{{ reduction.DateFin ? reduction.DateFin|date('Y-m-d H:i:s') : '' }} + show + edit +
pas encore de réductions
+ + Créer une réduction +{% endblock %} diff --git a/templates/reductions/new.html.twig b/templates/reductions/new.html.twig new file mode 100644 index 0000000..3b23736 --- /dev/null +++ b/templates/reductions/new.html.twig @@ -0,0 +1,11 @@ +{% extends 'base.html.twig' %} + +{% block title %}New Reductions{% endblock %} + +{% block body %} +

Create new Reductions

+ + {{ include('reductions/_form.html.twig') }} + + back to list +{% endblock %} diff --git a/templates/reductions/show.html.twig b/templates/reductions/show.html.twig new file mode 100644 index 0000000..4841c98 --- /dev/null +++ b/templates/reductions/show.html.twig @@ -0,0 +1,46 @@ +{% extends 'base.html.twig' %} + +{% block title %}Reductions{% endblock %} + +{% block body %} +

Reductions

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Id{{ reduction.id }}
Description{{ reduction.Description }}
Prix{{ reduction.Prix }}
Pourcentage{{ reduction.Pourcentage }}
MontantFixe{{ reduction.MontantFixe }}
DateDebut{{ reduction.DateDebut ? reduction.DateDebut|date('Y-m-d H:i:s') : '' }}
DateFin{{ reduction.DateFin ? reduction.DateFin|date('Y-m-d H:i:s') : '' }}
+ + back to list + + edit + + {{ include('reductions/_delete_form.html.twig') }} +{% endblock %}