edisonemond.files.wordpress.com  · Web viewEnsuite, après avoir pris connaissance du cahier des...

16
RAPPORT DE STAGE EMOND Edison | BTS SIO |2017 Centrale des Artisans coiffeurs À Metz Développement d’un module Prestashop

Transcript of edisonemond.files.wordpress.com  · Web viewEnsuite, après avoir pris connaissance du cahier des...

RAPPORT DE STAGE

EMOND Edison | BTS SIO |2017

Centrale des Artisans coiffeurs

À Metz

Développement d’un module Prestashop

SOMMAIRE

Remerciements3

Introduction3

Présentation de l’entreprise4

Travail effectué5

Conclusion14

Remerciements

Je tiens à remercier Monsieur Charles COLSON, chef du service web de la Centrale des Artisans Coiffeur pour m’avoir accueilli et permit d’effectuer mon stage du 15/05/2017 au 30/06/2017 dans le cadre du BTS Services Informatiques aux Organisations.

Je tiens aussi à remercier les développeurs présents dans ce service pour m’avoir aidé durant le stage et de m’avoir consacré de leurs temps.

Introduction

Dans le cadre de ma première année de BTS SIO, j’ai dû faire un stage en entreprise d’une durée de 6 semaines, étape obligatoire pour l’obtention du diplôme. Ce stage avait pour objectif de me faire découvrir le monde professionnel et d’en apprendre plus dans le domaine de l’informatique.

J’ai alors intégré l’entreprise la Centrale des Artisans Coiffeurs situé à Scy Chazelles du 15 mai 2017 au 30 juin 2017 dans laquelle on m’a demandé de développer un module Prestashop.

A l’aide de ce rapport de stage je vais vous présenter la Centrale des Artisans Coiffeurs puis je vais vous présenter les

Présentation de l’entreprise

Crée en 1908, la CAC ou Centrale des Artisans Coiffeurs, est au service des artisans coiffeurs pour le développement d’une profession, la coiffure.

1. Situation géographique

Le siège social de la CAC se situe à Scy Chazelles, lieu où j’ai effectué on stage. Mais l‘entreprise ne compte pas moins de 32 magasins repartis en France et environ 20000 clients coiffeurs indépendants en France, au Luxembourg et en Belgique.

2. Activités

Bien plus qu’un distributeur, la Centrale des Artisans Coiffeurs est partenaire de la coiffure depuis plusieurs générations et fourni différents services.

Notamment des formations ou encore des conseils liés à la profession mais aussi la possibilité de faire un site web pour son salon de coiffure.

Travail effectué

La Centrale des Artisans Coiffeurs possède trois sites web : un site vitrine et deux sites e-commerce, un pour les professionnels et un pour les particuliers.

Lors de ce stage, que j’ai effectué avec un binôme, il nous a été demandé de développer un module Prestashop.

Dés lors de notre arrivé en stage, les développeurs du service nous ont briffé sur ce qu’on allait faire. Ils nous ont donné un schéma nous servant de cahier des charges.

Ensuite, après avoir pris connaissance du cahier des charges, les développeurs nous ont expliqué que nous allions développer un module pour Prestashop. Ne connaissant pas Prestashop je me suis procuré la documentation officielle afin de mieux comprendre son fonctionnement. J’en ai aussi profité pour en apprendre plus sur les modules.

Documentation utilisée : http://doc.prestashop.com/pages/viewpage.

action?pageId=20840476.

Après s’être correctement informé sur Prestashop, un développeur nous a envoyé un mail avec différentes indications, comme par exemple le fait qu’il devait y avoir un contrôleur permettant d’afficher plusieurs listes.

Dans ce mail il y avait aussi les deux bases de données utiles pour réaliser ce module (nommé Cylea et jesuiscoiffeur1) et les fichiers permettant d’afficher le site en local, à l’aide de WampServer.

Une fois ces fichiers récupérés et installer dans le répertoire local de WampServer, une erreur apparaît et d’après les développeurs du services ce dysfonctionnement provient du fait qu’il manque un certificat SSL (certificat qui permet de sécuriser l'accès à un site web via le protocole https).

Donc à partir de là j’effectue des recherches de mon côté pour voir s’il est possible d’en créer un en local. J’en arrive à la conclusion que oui.

C’est alors que je me lance dans la création de celui-ci en suivant un tutoriel sur le web, que voici : http://www.blog.florian-bogey.fr/installer-un-certificat-ssl-sous-wamp.html.

Après avoir installé le certificat SSL, voici ce qui s’affiche quand je vais sur le site en local.

J’ai alors sélectionné ‘PARAMÈTRES AVANCES’ puis ceci s’est affiché :

Pour finir, j’ai sélectionné ‘Continuer vers le site jesuiscoiffeur.studionuage.com (dangereux)’ ce qui m’a donc affiché le site avec le certificat SSL installé : 

En haut à gauche on peut voir que le ‘https’ est barré et qu’il est marqué ‘Non sécurisé’ car le certificat SSL n’est pas officiel et il n’a pas besoin d’y être car le site est en local.

Connexion à la base de données.

Une fois le certificat installé, mon binôme et moi avons commencé à développer les premières pages de code du module. Nous avons commencé par faire le ficher PHP qui allait permettre la connexion avec la base de données.

En voici le contenu :

Par la suite nous avons dû créer un autre fichier afin de nous permettre de stocker la connexion à la base de données dans une variable (utilisé par la suite).

Après avoir créé ce fichier, il nous fallait pouvoir installer le module, pour cela il faut se rendre dans le panneau de configuration administrateur du site et se rendre dans la catégorie ‘modules’. Une fois fait, il ne reste plus qu’à chercher le module dans la barre de recherche et de l’installer. Mais quand on créer un module il faut faire en sorte qu’il apparaisse dans les modules à installer, en l’occurrence ici il doit être dans le « hookCustomerAccount » c’est-à-dire dans la partie Mon Compte.

Création d’un nouvel onglet.

Ensuite, d’après le cahier des charges nous avons dû créer un nouvel onglet sur la page ‘Mon compte’ du site, cet onglet se nomme ‘Liste des stages’. Voici ce que ça donne :

On a bien sûr adapté notre code pour que l’onglet soit de même taille, couleurs et police d’écriture.

Création de la première page après avoir sélectionné ‘Liste des stages’.

Pour répondre correctement au cahier des charges il faut faire plusieurs fonctions qui seront par la suite appelé dans le contrôleur. Ces fonctions contiennent du SQL.

Pour afficher une liste de stage il fallait prendre en compte la personne connectée. Cette personne est forcément un manager et il possède des employer (ou pas) qui ont un identifiant (id) unique. D’après le cahier des charges, il faut afficher le nom du stage auquel au minimum un employé a participé, la date de celui-ci et le lieu où il a été effectué. Le tout sous forme de liste s’il y en a plusieurs et trié par date. Voici donc les deux fonctions qui permettent ceci :

Avec la première fonction on sélectionne plusieurs éléments présents dans la base de données qui vont nous permettre d’afficher le nom, la date et le lieu du stage. D’autres éléments sont sélectionnés pour pouvoir effectuer des comparaisons ou des tris. Par exemple, dans la première fonction, le WHERE annonce que le champ nommé ‘cliid’ dans la base de données est égale à la variable nommé ‘idClient’ qui elle-même est égale à l’identifiant du manager connecté (même chose dans le WHERE de la deuxième fonction). Ensuite on a une fonction presque identique mais celle-ci va compter le nombre de stage présent et le total de stage sera stocké dans la variable nommé ‘$nbStage’.

Et donc après avoir manipulé le CSS (plusieurs fois durant tout le stage selon les contraintes imposé), on affiche ces informations dans une sorte de tableau et ça donne ceci pour la première page nommé ‘Mes stages’ :

Création de la page à afficher après avoir sélectionné un stage présent dans la liste affiché.

Pour cette page, le principe est le même que pour la page précédente. Nous avons effectué deux autres fonctions, voici la première :

Cette fonction, de nouveau composé de SQL, permet de récupérer le nom et identifiant du stage sélectionné sur la page précédente mais aussi le lieu du stage, la date de début et l’identifiant des participants ayant fait ce stage.

Ensuite la deuxième partie du code ci-dessus est une condition qui permet de compter le nombre de fichier PDF téléchargeable pour ce stage, des stocker ces fichiers dans un tableau et de les afficher sur la page web.

Et voici la seconde :

Grace à cette fonction, composé encore une fois de SQL, on récupère différentes informations comme nom et prénoms des participants ayant participé au stage sélectionné précédemment mais aussi l’identifiant de leurs société, l’identifiant du stage ou encore l’identifiant du participant lui-même. Ensuite, d’après le cahier des charges, il fallait afficher des documents à télécharger selon la/les personne(s) présente au stage, c’est donc ce que nous avons fait dans cette fonction avec notamment la dernière partie. Il s’agit d’une vérification pour savoir si oui ou non il y a des fichiers à télécharger pour ces personnes. Ensuite ces fichiers sont stockés dans un tableau puis afficher dans sur la page web.

Au final voici à quoi ressemble la page web après avoir sélectionné un stage présent dans la liste :

(Image non enregistré, je mettrais mon rapport à jour prochainement ! Veuillez m’excuser.)

Création du contrôleur.

On a aussi dû créer un contrôleur dans lequel on appelle toutes les fonctions créer précédemment. Le contrôleur permet de gérer la synchronisation de ce qu’il se passe sur la page web, il reçoit des « évènements » de tous les utilisateurs et déclenche les actions à accomplir.

Conclusion

Pour conclure je dirais que ce stage était pour moi une vraie chance car j’ai appris beaucoup de chose. J’ai travaillé sous Prestashop, ce qui est quelque chose de nouveau pour moi. Nous avons fini la mission proposée dans les temps et il nous a même été possible de travailler sur les derniers détails et de commencer à travailler sur une version mobile ou même sur la version 1.7. Il m’a aussi permis de me décider pour la suite de mes études et de ma carrière professionnelle.

Après cette expérience j’aimerais, pour mon prochain stage, me diriger vers une entreprise différente que ce soit par la taille que par la façon de travailler pour vraiment découvrir de nouveaux horizons.