Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente |
etudiants:2014:bertrand:bugreport4 [2013/11/29 15:59] – romain | etudiants:2014:bertrand:bugreport4 [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1 |
---|
====== BugReport : plateforme de remonté d'incidents ====== | ====== BugReport : plateforme de remontée d'incidents ====== |
<WRAP center round box 60%> | <WRAP center round box 60%> |
**__Documentation technique - Sommaire :__** | **__Documentations techniques - Sommaire :__** |
- [[etudiants:2014:bertrand:bugreport|Gestion des utilisateurs]] | - [[etudiants:2014:bertrand:bugreport|Sources de l'application]] |
| - [[etudiants:2014:bertrand:bugreport1|Gestion des utilisateurs]] |
- [[etudiants:2014:bertrand:bugreport2|Gestion des applications]] | - [[etudiants:2014:bertrand:bugreport2|Gestion des applications]] |
- [[etudiants:2014:bertrand:bugreport3|Gestion des groupes]] | - [[etudiants:2014:bertrand:bugreport3|Gestion des groupes]] |
- Soumettre un report | - Soumettre un report |
| - [[etudiants:2014:bertrand:bugreport5|Gestion des Droits]] |
| - [[etudiants:2014:bertrand:bugreport6|Affectation d'utilisateurs]] |
| |
| **__Documentations de supports- Sommaire :__** |
| - [[etudiants:2014:bertrand:bugreportUtilisateur|Utilisateur]] |
| - [[etudiants:2014:bertrand:bugreportTechnicien|Technicien]] |
| - [[etudiants:2014:bertrand:bugreportAdministrateur|Administrateur]] |
| |
| **__Documentations de tests - Sommaire :__** |
| - [[etudiants:2014:bertrand:testsmanuels|Tests manuels]] |
| - [[etudiants:2014:bertrand:testsautomatises|Tests automatisés]] |
</WRAP> | </WRAP> |
| |
| ===== Soumettre un rapport ===== |
| |
| ==== 1- Fonctionnalités ==== |
| |
| {{:etudiants:2014:bertrand:capture_-_fonctionnalites_-_soumettrereport.jpg|}} |
| |
| ==== 2- Classes métiers ==== |
| |
| {{:etudiants:2014:bertrand:capture_-_classesmetiers_-_soumettrereport.jpg|}} |
| |
| ==== 3- Variables sessions ($_SESSION) ==== |
| |
| |< 100% 30% 20% ->| |
| ^Nom ^Type ^Descriptif ^ |
| |<html><span class="variable">$_SESSION["user"]</span></html> |String |login de l'utilisateur connecté | |
| |
| ==== 4- Vues ==== |
| |
| === 4.1 vReport === |
| |
| {{:etudiants:2014:bertrand:capture_-_vues_-_vreport.jpg|}} |
| |
| <sxh php;html-script: true;title:views/vReport.php> |
| <form method="POST" action="" id="formReport" name="formReport"> |
| <fieldset class="cadre"> |
| <legend>Soumettre un report</legend> |
| <table> |
| <tr> |
| <td>Application : </td> |
| <td> |
| <select id='application' name='application'> |
| <?php echo $data['appli'];?> |
| </select> |
| </td> |
| </tr> |
| <tr> |
| <td>Cas d'utilisation : </td> |
| <td> |
| <select id='selectUseCase' name='selectUseCase'> |
| </select> |
| <div id=autreUseCase> |
| </div> |
| </td> |
| </tr> |
| <tr> |
| <td>Message système : </td> |
| <td> |
| <input type="text" name="systemMessage" required/> |
| </td> |
| </tr> |
| <tr> |
| <td>Action utilisateur : </td> |
| <td> |
| <input type="text" name="userAction" required/> |
| </td> |
| </tr> |
| <tr> |
| <td>Description : </td> |
| <td> |
| <textarea rows="5" cols="50" name="description" style="resize:none;" required></textarea> |
| </td> |
| </tr> |
| </table> |
| <div class="buttons"> |
| <div id="btSubmitReport" class="btn">Soumettre le report</div> |
| </div> |
| </form> |
| <?php echo $data['js'];?> |
| </fieldset> |
| </sxh> |
| |
| ==== 5- Contrôleurs ==== |
| |
| === 5.1 cReport/index === |
| |
| |< 100% 30% 70% >| |
| ^Fonctionnalité ^Descriptif ^ |
| | Soumettre un report | **Contrôleur de soumission de report**| |
| |::: | <html><span class="method">Appel du contrôleur <u>refresh</u></span></html> | |
| |
| <sxh php;title:cReport/index> |
| public function index(){ |
| $this->refresh(); |
| } |
| </sxh> |
| |
| === 5.2 cReport/refresh === |
| |
| |< 100% 30% 70% >| |
| ^Fonctionnalité ^Descriptif ^ |
| | Liste des applications | **Utilisé pour l'affichage initial et le rafraîchissement après une modification**| |
| |::: | <html><div class="value">Chargement des applications</div> |
| <html><div class="value">Mise en place logique client</div> |
| </html> | |
| |::: | <html><span class="jsp">Passage de variables($js) et affichage de la vue <u>vReport</u></span></html> | |
| |
| <sxh php;title:cReport/refresh> |
| public function refresh(){ |
| |
| $appli="<option selected='selected' value='null' disabled='disabled'>Veuillez selectionner une application</option>"; |
| $applications=DAO::getAll("application"); |
| foreach($applications AS $apps){ |
| $appli.="<option id='".$apps->getId()."' value='".$apps->getId()."'>".$apps->getLibelle()."</option>"; |
| } |
| |
| $js=JsUtils::postAndBindTo("#application", "click", "cReport/useCase", '{}', "#selectUseCase",NULL,"value"); |
| $js.=JsUtils::postFormAndBindTo("#btSubmitReport", "click", "cReport/submitReport","formReport","#module",true); |
| |
| echo JsUtils::doSomethingOn("#operation", "hide",400); |
| echo JsUtils::doSomethingOn("#operation2", "hide",400); |
| echo JsUtils::doSomethingOn("#operation3", "hide",400); |
| |
| $this->loadView("vReport",array("js"=>$js,"appli"=>$appli)); |
| } |
| |
| public function useCase($params){ |
| $use=''; |
| |
| foreach ($params AS $idApplication) |
| { |
| $condition="idApplication=".$idApplication; |
| $useCase=DAO::getAll("usecase", $condition) ; |
| foreach ($useCase AS $usecase){ |
| $use.="<option value='".$usecase->getCode()."'>".$usecase->getLibelle()."</option>"; |
| } |
| } |
| echo $use; |
| |
| } |
| </sxh> |
| |
| === 5.3 cReport/useCase === |
| |
| |< 100% 30% 70% >| |
| ^Fonctionnalité ^Descriptif ^ |
| | Liste des cas d'utiisations | **Utilisé pour l'affichage de la liste des cas d'utilisations dans la liste déroulante**| |
| |::: | <html><div class="xml-cType">Pour chaque cas d'utilisations :</div> |
| <html><div class="value">chargement des cas d'utilisations correspondant a l'application sélectionné</div> |
| <div class="value">affichage des cas dans la liste déroulante</div> |
| </html> | |
| |::: | <html><span class="value">Passage de variables($js) et affichage de la vue <u>vReport</u></span></html> | |
| |
| <sxh php;title:cReport/useCase> |
| public function useCase($params){ |
| $use=''; |
| |
| foreach ($params AS $idApplication) |
| { |
| $condition="idApplication=".$idApplication; |
| $useCase=DAO::getAll("usecase", $condition) ; |
| foreach ($useCase AS $usecase){ |
| $use.="<option value='".$usecase->getCode()."'>".$usecase->getLibelle()."</option>"; |
| } |
| } |
| echo $use; |
| |
| } |
| </sxh> |
| |
| === 5.4 cReport/submitReport === |
| |
| |< 100% 30% 70% >| |
| ^Fonctionnalité ^Descriptif ^ |
| | Enregistre un report de bug | **Utilisé pour l'enregistrement d'un report de bug, dans la base de données**| |
| |::: | <html><div class="value">On récupère les champs du formulaire envoyés en POST</div> |
| <html><div class="value">On applique les fonctions de suppressions de doublons, majuscules...</div> |
| <div class="value">On créer le report</div> |
| <div class="value">On compare le report créer avec les report existants</div> |
| <div class="value">Si le report n'existe pas déjà dans la base, on l'y ajoute</div> |
| <div class="jsp">On affiche le message qui valide ou non si l'opération s'est déroulée correctement</div> |
| </html> | |
| |
| <sxh php;title:cReport/submitReport> |
| public function submitReport(){ |
| |
| if($_SERVER['REQUEST_METHOD']=='POST'){ |
| |
| $searchEngine=new SearchEngine(); |
| |
| $idApplication=$_POST['application']; |
| $idUseCase=$_POST['selectUseCase']; |
| $systemMessage=$_POST['systemMessage']; |
| $userAction=$_POST['userAction']; |
| $description=$_POST['description']; |
| |
| if(isset($_POST['autreUseCase'])){ |
| $autreUseCase=$_POST['autreUseCase']; |
| } |
| |
| $systemMessage=$searchEngine->cleanExpression($systemMessage); |
| $userAction=$searchEngine->cleanExpression($userAction); |
| $description=$searchEngine->cleanExpression($description); |
| |
| $user=$_SESSION['user']; |
| foreach ($user AS $info){ |
| $idUtilisateur=$info->getId(); |
| } |
| |
| $report=new Report(); |
| $report->setIdUtilisateur($idUtilisateur); |
| $report->setIdStatut(1); |
| $report->setCode($idUseCase); |
| $report->setSystemMessage($systemMessage); |
| $report->setDescriptif($description); |
| $report->setUserAction($userAction); |
| $report->setDateCreation(date("Y-m-d")); |
| |
| $reportTest=DAO::getAll("report"); |
| |
| $retour=FALSE; |
| foreach ($reportTest AS $value){ |
| if($searchEngine->compare($report,$value)==TRUE){ |
| $retour=TRUE; |
| } |
| } |
| |
| if(!$retour){ |
| if(DAO::insert($report)){ |
| echo "<div class='send'>Votre report a ete envoye a une equipe de maintenance | Nous essayons de vous repondre dans les meilleurs delais</div>"; |
| }else{ |
| echo "<div class='sendError'>Erreur lors de l'envoi du report | Merci de bien vouloir recommencer</div>"; |
| } |
| }else{ |
| echo "<div class='sendCurrent'>Report identique deja existant | Le probleme sera resolu dans les plus bref delais</div>"; |
| } |
| } |
| } |
| </sxh> |