From 2df8b52238e931eff627e5eb17bd03911e38b089 Mon Sep 17 00:00:00 2001 From: Unknown Date: Tue, 4 Dec 2018 21:15:21 +0100 Subject: [PATCH] Choix du fichier pour la sauvegarde d'une configuration --- PFE06/src/main/java/com/PFE/ServerManager/MainController.java | 34 +++++++++++++++++++++++----------- PFE06/src/main/java/com/PFE/ServerManager/Maj.java | 10 +++++----- PFE06/src/main/java/com/PFE/ServerManager/MajRepository.java | 3 --- PFE06/src/main/resources/static/js/home.js | 36 ------------------------------------ PFE06/src/main/resources/static/js/session.js | 14 ++++++++++++-- PFE06/src/main/resources/templates/session.html | 9 +++++++-- 6 files changed, 47 insertions(+), 59 deletions(-) diff --git a/PFE06/src/main/java/com/PFE/ServerManager/MainController.java b/PFE06/src/main/java/com/PFE/ServerManager/MainController.java index afa8e97..c268cd8 100644 --- a/PFE06/src/main/java/com/PFE/ServerManager/MainController.java +++ b/PFE06/src/main/java/com/PFE/ServerManager/MainController.java @@ -18,7 +18,8 @@ import org.springframework.security.core.Authentication; import javax.servlet.annotation.MultipartConfig; @Controller -@MultipartConfig(fileSizeThreshold = 20971520) +@MultipartConfig(fileSizeThreshold = 20971520) //à changer, taille max des fichiers + public class MainController { @Autowired @@ -57,6 +58,25 @@ public class MainController { modelAndView.addObject("customerName", customer.getEmail().split("@")[0]); modelAndView.addObject("customerRole", customer.getRole()); modelAndView.addObject("customerMaj", customer.getMaj()); + + File file = new File("files"); + File[] dirs = file.listFiles(); + List filesName = new ArrayList(); + + if (dirs != null) { + for (int i = 0; i < dirs.length; i++) { + if (dirs[i].isDirectory() == true) { + if ((dirs[i].getName().split("_")[0]).equals(customer.getEmail().split("@")[0])) { + File dir = new File(dirs[i].getAbsolutePath()); + File[] f = dir.listFiles(); + filesName.add(f[0].getName()); + } + } + } + } + + modelAndView.addObject("customerFiles", filesName); + modelAndView.setViewName("session"); return modelAndView; } @@ -158,10 +178,6 @@ public class MainController { return modelAndView; } - /*@GetMapping(path="/all") - public @ResponseBody Iterable getAllUsers() { - return customerRepository.findAll(); - }*/ @GetMapping(path="/all") public ModelAndView getAllUsers() { ModelAndView modelAndView = new ModelAndView(); @@ -172,11 +188,6 @@ public class MainController { modelAndView.addObject("customerName", customer.getEmail().split("@")[0]); modelAndView.addObject("customerRole", customer.getRole()); - /*List list = new ArrayList(); - Iterator listIterator = customerRepository.findAll().iterator(); - while (listIterator.hasNext()) { - list.add(listIterator.next()); - }*/ List list = customerRepository.findAll(); // attention : la méthode findAll() de JpaRepository retourne une liste alors que celle de CrudRepository retourne un itérable modelAndView.addObject("list", list); return modelAndView; @@ -194,13 +205,14 @@ public class MainController { } @PostMapping(path="/savemaj") - public String saveMaj(@RequestParam String name, @RequestParam String date, @RequestParam String nodes){ + public String saveMaj(@RequestParam String name, @RequestParam String date, @RequestParam String nodes, @RequestParam String file){ Authentication auth = SecurityContextHolder.getContext().getAuthentication(); Customer customer = customerRepository.findByEmail(auth.getName()); Maj maj_c = new Maj(); maj_c.setMaj(name); maj_c.setDate(date); maj_c.setNodes(nodes); + maj_c.setFile(file); maj_c.setMaj_id((int)(majRepository.count() + 1)); majRepository.save(maj_c); // ajouter la mise a jour dans la table HashSet majs = new HashSet(Arrays.asList(maj_c)); diff --git a/PFE06/src/main/java/com/PFE/ServerManager/Maj.java b/PFE06/src/main/java/com/PFE/ServerManager/Maj.java index a77242f..1040df1 100644 --- a/PFE06/src/main/java/com/PFE/ServerManager/Maj.java +++ b/PFE06/src/main/java/com/PFE/ServerManager/Maj.java @@ -16,13 +16,8 @@ public class Maj { @Column(name = "date") private String date; - /* - @Column(name = "nodes") - private String nodes; - @Column(name = "file") private String file; - */ @Column(name = "nodes") private String nodes; @@ -48,4 +43,9 @@ public class Maj { public String getNodes() { return nodes; } + + public void setFile(String file) { + this.file = file; + } + public String getFile() { return file; } } diff --git a/PFE06/src/main/java/com/PFE/ServerManager/MajRepository.java b/PFE06/src/main/java/com/PFE/ServerManager/MajRepository.java index 2c13586..020ee6d 100644 --- a/PFE06/src/main/java/com/PFE/ServerManager/MajRepository.java +++ b/PFE06/src/main/java/com/PFE/ServerManager/MajRepository.java @@ -5,7 +5,4 @@ import org.springframework.stereotype.Repository; @Repository public interface MajRepository extends JpaRepository { - - //Customer findByEmail(String email); - } diff --git a/PFE06/src/main/resources/static/js/home.js b/PFE06/src/main/resources/static/js/home.js index a100041..4125621 100644 --- a/PFE06/src/main/resources/static/js/home.js +++ b/PFE06/src/main/resources/static/js/home.js @@ -1,41 +1,5 @@ $(document).ready(function() { -/********** Tableau **********/ - -/* - var tableNodes = $('#nodes-table').DataTable( { - responsive: true, - select: { - style: 'multi' - } - } ); - - var nodeSet = new Set(); - - tableNodes.on('select', function (e, dt, type, indexes) { - var rowData = tableNodes.rows(indexes).data().toArray()[0]; - nodeSet.add(rowData[0]); - } ); - - tableNodes.on('deselect', function (e, dt, type, indexes) { - var rowData = tableNodes.rows(indexes).data().toArray()[0]; - nodeSet.delete(rowData[0]); - } ); - - document.getElementById("save_maj").addEventListener('click', function() { - var req = new XMLHttpRequest(); - req.open('POST','/test',true); - req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); - req.onreadystatechange = function() {//Call a function when the state changes. - if(req.readyState == 4 && req.status == 200) { - alert(req.responseText); - } - } - req.send("salut"); - }); - - */ - /********** Drop Zone **********/ var formData = new FormData(); diff --git a/PFE06/src/main/resources/static/js/session.js b/PFE06/src/main/resources/static/js/session.js index b2134d2..9bb4180 100644 --- a/PFE06/src/main/resources/static/js/session.js +++ b/PFE06/src/main/resources/static/js/session.js @@ -28,9 +28,9 @@ $(document).ready(function() { form.setAttribute('method', 'post'); var modalContent = document.getElementById("modal-content"); - var majName = document.getElementById("majName").value; var majDate = document.getElementById("majDate").value; + var majFile = document.getElementById("file_choice").value; if(nodeSet.size == 0) { $("#warningFilesNumber").modal(); @@ -46,9 +46,13 @@ $(document).ready(function() { $("#warningFilesNumber").modal(); } + else if(majFile == "" || majFile == "--") { + modalContent.innerHTML = "Veuillez choisir un fichier pour la mise à jour" + $("#warningFilesNumber").modal(); + } + else { var nodes = Array.from(nodeSet); - console.log(nodes); var inputvar1 = document.createElement('input'); inputvar1.setAttribute('type', 'hidden'); @@ -68,6 +72,12 @@ $(document).ready(function() { inputvar3.setAttribute('value', nodes.join(";")); form.appendChild(inputvar3); + var inputvar4 = document.createElement('input'); + inputvar4.setAttribute('type', 'hidden'); + inputvar4.setAttribute('name', 'file'); + inputvar4.setAttribute('value', majFile); + form.appendChild(inputvar4); + document.body.appendChild(form); form.submit(); } diff --git a/PFE06/src/main/resources/templates/session.html b/PFE06/src/main/resources/templates/session.html index 809ff61..834e314 100644 --- a/PFE06/src/main/resources/templates/session.html +++ b/PFE06/src/main/resources/templates/session.html @@ -95,12 +95,17 @@
- +
- + + + -- libgit2 0.21.2