az58 / emotion

secound try
GNU General Public License v3.0
0 stars 0 forks source link

Ajout de la fonction « cacher un véhicule » #21

Open loryleticee opened 5 years ago

loryleticee commented 5 years ago

Pour permettre de ne pas afficher certain véhicule dans le cas d’une recherche .

Il me faudra procéder comme suit :

1-creer le champs « available »dans la base de donner

OU

1-bis ne pas créer de table et gérer dynamiquement le status (Caché ou visible ) de la voiture .

Grâce à l’heure de récupération et l’heure de dépôt de la voiture ,on peut calculer la différence entre les deux heures pour avoir le nombre de temps écouler entres elles

2-Si l’on choisie d’ajouter un champs dans la table Véhicle

Pour cela il faut se diriger dans le fichier de migration de la table vehicle

-> app/database/migration/%vehicle%

La colonne available sera donc de type binaire(exemple : Booléen, TinyInt ou de type enum )

Ajouter la ligne ‘available’ de type binaire choisi .

Maintenant que notre fichier de migration est prêt , il faut ajouter la colonne ‘available’ au fichier « Seeder » afin qu’à la création de la table vehicle , l’unique vehicle crée par le fichier de fixture(Le fichier Seeder) puissent avoir une valeur par défaut pour la colonne ‘available’.

-> app/database/Seeder.*

Une fois que la fonction de notre fixture pour la création du premier vehicle de notre base de données a été modifié, on vas répercuter ce changement à toutes les lignes de véhicule crée par le script SQL qui accompagne cette issue

Notre colonne available est à une place précise dans notre nouveau schéma de la table véhicule,

Entre la colonne X et la colonne Y

Dans le script Sql , pour chaque ligne ,il faudra rajouter au même endroit la valeur de la colonne available qu’on souhaite lui attribuer.

Par exemple : (3, 'car', 'hyundai', 'kona', 'green', 'caen', 'CH-001-EG', '40500', 'VF7ABHUR0EW554825', '0000-00-00 00:00:00', 38400, 20, 76, 'Lithium', 'http://vrent.fr/img/hyundai_kona.png', la valeur de ma colonne available,'0000-00-00 00:00:00', '0000-00-00 00:00:00'),

Une fois que cela est fait on est prêt a renouvelé le schéma de notre base de donné . On fais cette action en lançant une commande laravel qui va supprimer les tables et les recréer selon le schéma que l’on lui a donné dans chaque fichiers de migration.

php artisan migrate:refresh

Maintenant que le schéma de notre base de donnée a été mise à jour nous allons remplir la base de donné grâce au fichiers Seeder qui contient les fixtures.

php artisan db:seed

BraVo!!!

Nous avons maintenant plusieur utilisateur ,plusieur bookings et un véhicule disponible dans notre base de donné

3- on va maintenant jouer le script SQL pour rajouter d’autre véhicule à notre table vehicle

-On se rend sur phpmyadmin

Dans l’onglet SQL ,on copie notre nouveau script et on click sur « GO »

Voilà notre table véhicule contient maintenant plusieur véhicules avec une colonne qui servira à savoir si oui ou non un véhicule est disponible

INSERT INTO vehicle (id, category, brand, type, color, current_place, licence_plate, kilometer, serial_number, date_purchase, buying_price, day_price, battery_level, battery_brand, picture, created_at, updated_at) VALUES (2, 'car', 'nissan', 'leaf', 'white', 'marseille', 'AA-463-GF', '50000', 'VF7SBHUR0EW554823', '0000-00-00 00:00:00', 35400, 20, 86, 'Lithium', 'http://vrent.fr/img/nissan_leaf.png', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (3, 'car', 'hyundai', 'kona', 'green', 'caen', 'CH-001-EG', '40500', 'VF7ABHUR0EW554825', '0000-00-00 00:00:00', 38400, 20, 76, 'Lithium', 'http://vrent.fr/img/hyundai_kona.png', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (4, 'car', 'hyundai', 'ioniq', 'white', 'valencienne', 'DS-001-MF', '26900', 'VF7ABHUR0IO554823', '0000-00-00 00:00:00', 35850, 20, 67, 'Cadmium nickel', 'http://vrent.fr/img/hyundai_ioniq.png', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (5, 'car', 'kia', 'soul Ev', 'white', 'cachan', 'FK-495-KJ', '39400', 'VF7ABIUR0IO554827', '0000-00-00 00:00:00', 35400, 20, 94, 'Lithium-ion', 'http://vrent.fr/img/kia_soul-ev.png', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (12, 'car', 'kia', 'e-Niro', 'grey', 'paris', 'ET-897-DT', '33950', 'VF9BBIAR9IO564822', '0000-00-00 00:00:00', 38500, 20, 90, 'Cadmium nickel', 'http://vrent.fr/img/kia_e-niro.png', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (13, 'scooter', 'niu', 'm+', 'red', 'paris', 'EV-897-DT', '350', 'VF9BQIAR9IO564829', '0000-00-00 00:00:00', 2599, 20, 100, 'Cadmium nickel', 'http://vrent.fr/img/niu_m+.png', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (14, 'scooter', 'niu', 'm1 pro', 'blue', 'paris', 'AT-797-DI', '33950', 'VF9BBIOR9IO564821', '0000-00-00 00:00:00', 2300, 20, 90, 'Cadmium nickel', 'http://vrent.fr/img/niu-m1 pro.png', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (15, 'scooter', 'niu', 'n1s', 'black', 'paris', 'MO-191-DL', '33950', 'VF9BBIJR9IO564820', '0000-00-00 00:00:00', 2899, 20, 90, 'Cadmium nickel', 'http://vrent.fr/img/nui_n1s.png', '0000-00-00 00:00:00', '0000-00-00 00:00:00');

loryleticee commented 5 years ago

@az58 Coucou , je la complète petit à petit mais tu peu déjà faire avec ces explications . Have a nice day !