Loading src/main/java/com/example/demo/controller/HelpRequestController.java +19 −16 Original line number Diff line number Diff line Loading @@ -34,7 +34,6 @@ public class HelpRequestController { @Autowired private HelpRequestValidator helpRequestValidator; @GetMapping("/allHelpRequest") public String getAll(Map<String, Object> model) { model.put("helpRequests", helpRequestRepository.findAll()); Loading @@ -48,7 +47,8 @@ public class HelpRequestController { } @PostMapping("/insertHelpRequest") public ModelAndView insertHelpRequest(@ModelAttribute HelpRequest helpRequest, BindingResult bindingResult, ModelMap modelMap, HttpSession session, Principal principal) { public ModelAndView insertHelpRequest(@ModelAttribute HelpRequest helpRequest, BindingResult bindingResult, ModelMap modelMap, HttpSession session, Principal principal) { ModelAndView modelAndView = new ModelAndView(); helpRequestValidator.validate(helpRequest, bindingResult); Loading @@ -56,8 +56,7 @@ public class HelpRequestController { if (bindingResult.hasErrors()) { modelAndView.addObject("registerMessage", "Registration failed: correct the fields !"); modelMap.addAttribute("bindingResult", bindingResult); } else { } else { String email = SecurityContextHolder.getContext().getAuthentication().getName(); User user = userService.findByEmail(email); helpRequest.setPoulain(user); Loading @@ -80,6 +79,7 @@ public class HelpRequestController { model.put("helpRequests", helpRequestRepository.findByPoulain(user)); return "ProfileHelpRequest"; } @GetMapping("/allRequestByMentor") public String getallPropositionByMentor(Map<String, Object> model, HttpSession session, Principal principal) { String email = SecurityContextHolder.getContext().getAuthentication().getName(); Loading @@ -89,7 +89,8 @@ public class HelpRequestController { } @PostMapping("/acceptRequest") public String acceptRequest(@ModelAttribute HelpRequest helpRequest, Model model, HttpSession session, Principal principal) { public String acceptRequest(@ModelAttribute HelpRequest helpRequest, Model model, HttpSession session, Principal principal) { String email = SecurityContextHolder.getContext().getAuthentication().getName(); User user = userService.findByEmail(email); helpRequest.setMentor(user); Loading @@ -98,7 +99,8 @@ public class HelpRequestController { } @GetMapping("/editRequest/{id}") public String editRequest(@PathVariable("id") Integer helpId, Model model, HttpSession session, Principal principal) { public String editRequest(@PathVariable("id") Integer helpId, Model model, HttpSession session, Principal principal) { HelpRequest helpRequest = helpRequestRepository.findById(helpId); String email = SecurityContextHolder.getContext().getAuthentication().getName(); Loading @@ -108,4 +110,5 @@ public class HelpRequestController { helpRequestRepository.save(helpRequest); return "allHelpRequest"; } } src/main/java/com/example/demo/controller/MainController.java 0 → 100644 +81 −0 Original line number Diff line number Diff line package com.example.demo.controller; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; import com.example.demo.model.HelpProposition; import com.example.demo.model.HelpRequest; import com.example.demo.repository.HelpPropositionRepository; import com.example.demo.repository.HelpRequestRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; @Controller public class MainController { @Autowired HelpRequestRepository helpRequestRepository; @Autowired HelpPropositionRepository helpPropositionRepository; @GetMapping("/search") public String search(Map<String, Object> model, @RequestParam(name = "branch") String branch, @RequestParam(name = "datebegin", required = false) String datebegin, @RequestParam(name = "dateend", required = false) String dateend, @RequestParam(name = "timebegin", required = false) String timebegin, @RequestParam(name = "timeend", required = false) String timeend, @RequestParam(name = "type") int type) throws ParseException { List<HelpRequest> allListHelpRequest = new ArrayList<>(); List<HelpProposition> allListHelpProposition = new ArrayList<>(); if (type == 1){ // HelpRequest allListHelpRequest = helpRequestRepository.findByBranchLike("%"+branch+"%"); } else if (type == 2){ // HelpProposition allListHelpProposition = helpPropositionRepository.findByBranchLike("%"+branch+"%"); } else { // both allListHelpRequest = helpRequestRepository.findByBranchLike("%"+branch+"%"); allListHelpProposition = helpPropositionRepository.findByBranchLike("%"+branch+"%"); } // Date begin if (datebegin != null && datebegin.length() > 0){ Date dateBegin = new SimpleDateFormat("yyyy-MM-dd").parse(datebegin); if (timebegin != null && timebegin.length() > 0){ // time begin dateBegin.setHours(Integer.parseInt(timebegin.substring(0, 2))); dateBegin.setMinutes(Integer.parseInt(timebegin.substring(3, 5))); } allListHelpRequest = allListHelpRequest.stream().filter(x -> x.getDateBegin().after(dateBegin)).collect(Collectors.toList()); allListHelpProposition = allListHelpProposition.stream().filter(x -> x.getDateBegin().after(dateBegin)).collect(Collectors.toList()); model.put("dateBegin", dateBegin); } // Date end if (dateend != null && dateend.length() > 0){ Date dateEnd = new SimpleDateFormat("yyyy-MM-dd").parse(dateend); if (timeend != null && timeend.length() > 0){ // time end dateEnd.setHours(Integer.parseInt(timeend.substring(0, 2))); dateEnd.setMinutes(Integer.parseInt(timeend.substring(3, 5))); } allListHelpRequest = allListHelpRequest.stream().filter(x -> x.getDateBegin().before(dateEnd)).collect(Collectors.toList()); allListHelpProposition = allListHelpProposition.stream().filter(x -> x.getDateEnd().after(dateEnd)).collect(Collectors.toList()); model.put("dateEnd", dateEnd); } model.put("helpRequests", allListHelpRequest); model.put("helpPropositions", allListHelpProposition); model.put("helpRequestsSize", allListHelpRequest.size()); model.put("helpPropositionsSize", allListHelpProposition.size()); model.put("type", type); model.put("branch", branch); return "search"; } } No newline at end of file src/main/java/com/example/demo/repository/HelpPropositionRepository.java +2 −1 Original line number Diff line number Diff line Loading @@ -10,4 +10,5 @@ public interface HelpPropositionRepository extends JpaRepository <HelpPropositio List<HelpProposition> findByMentor(User mentor); List<HelpProposition> findByPoulain(User poulain); HelpProposition findById(Integer id); List<HelpProposition> findByBranchLike(String branch); } src/main/java/com/example/demo/repository/HelpRequestRepository.java +1 −0 Original line number Diff line number Diff line Loading @@ -11,4 +11,5 @@ public interface HelpRequestRepository extends JpaRepository <HelpRequest, Long> List<HelpRequest> findByPoulain(User poulain); List<HelpRequest> findByMentor(User mentor); HelpRequest findById(Integer id); List<HelpRequest> findByBranchLike(String branch); } src/main/resources/roles.sql→src/main/resources/data.sql +0 −0 File moved. View file Loading
src/main/java/com/example/demo/controller/HelpRequestController.java +19 −16 Original line number Diff line number Diff line Loading @@ -34,7 +34,6 @@ public class HelpRequestController { @Autowired private HelpRequestValidator helpRequestValidator; @GetMapping("/allHelpRequest") public String getAll(Map<String, Object> model) { model.put("helpRequests", helpRequestRepository.findAll()); Loading @@ -48,7 +47,8 @@ public class HelpRequestController { } @PostMapping("/insertHelpRequest") public ModelAndView insertHelpRequest(@ModelAttribute HelpRequest helpRequest, BindingResult bindingResult, ModelMap modelMap, HttpSession session, Principal principal) { public ModelAndView insertHelpRequest(@ModelAttribute HelpRequest helpRequest, BindingResult bindingResult, ModelMap modelMap, HttpSession session, Principal principal) { ModelAndView modelAndView = new ModelAndView(); helpRequestValidator.validate(helpRequest, bindingResult); Loading @@ -56,8 +56,7 @@ public class HelpRequestController { if (bindingResult.hasErrors()) { modelAndView.addObject("registerMessage", "Registration failed: correct the fields !"); modelMap.addAttribute("bindingResult", bindingResult); } else { } else { String email = SecurityContextHolder.getContext().getAuthentication().getName(); User user = userService.findByEmail(email); helpRequest.setPoulain(user); Loading @@ -80,6 +79,7 @@ public class HelpRequestController { model.put("helpRequests", helpRequestRepository.findByPoulain(user)); return "ProfileHelpRequest"; } @GetMapping("/allRequestByMentor") public String getallPropositionByMentor(Map<String, Object> model, HttpSession session, Principal principal) { String email = SecurityContextHolder.getContext().getAuthentication().getName(); Loading @@ -89,7 +89,8 @@ public class HelpRequestController { } @PostMapping("/acceptRequest") public String acceptRequest(@ModelAttribute HelpRequest helpRequest, Model model, HttpSession session, Principal principal) { public String acceptRequest(@ModelAttribute HelpRequest helpRequest, Model model, HttpSession session, Principal principal) { String email = SecurityContextHolder.getContext().getAuthentication().getName(); User user = userService.findByEmail(email); helpRequest.setMentor(user); Loading @@ -98,7 +99,8 @@ public class HelpRequestController { } @GetMapping("/editRequest/{id}") public String editRequest(@PathVariable("id") Integer helpId, Model model, HttpSession session, Principal principal) { public String editRequest(@PathVariable("id") Integer helpId, Model model, HttpSession session, Principal principal) { HelpRequest helpRequest = helpRequestRepository.findById(helpId); String email = SecurityContextHolder.getContext().getAuthentication().getName(); Loading @@ -108,4 +110,5 @@ public class HelpRequestController { helpRequestRepository.save(helpRequest); return "allHelpRequest"; } }
src/main/java/com/example/demo/controller/MainController.java 0 → 100644 +81 −0 Original line number Diff line number Diff line package com.example.demo.controller; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; import com.example.demo.model.HelpProposition; import com.example.demo.model.HelpRequest; import com.example.demo.repository.HelpPropositionRepository; import com.example.demo.repository.HelpRequestRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; @Controller public class MainController { @Autowired HelpRequestRepository helpRequestRepository; @Autowired HelpPropositionRepository helpPropositionRepository; @GetMapping("/search") public String search(Map<String, Object> model, @RequestParam(name = "branch") String branch, @RequestParam(name = "datebegin", required = false) String datebegin, @RequestParam(name = "dateend", required = false) String dateend, @RequestParam(name = "timebegin", required = false) String timebegin, @RequestParam(name = "timeend", required = false) String timeend, @RequestParam(name = "type") int type) throws ParseException { List<HelpRequest> allListHelpRequest = new ArrayList<>(); List<HelpProposition> allListHelpProposition = new ArrayList<>(); if (type == 1){ // HelpRequest allListHelpRequest = helpRequestRepository.findByBranchLike("%"+branch+"%"); } else if (type == 2){ // HelpProposition allListHelpProposition = helpPropositionRepository.findByBranchLike("%"+branch+"%"); } else { // both allListHelpRequest = helpRequestRepository.findByBranchLike("%"+branch+"%"); allListHelpProposition = helpPropositionRepository.findByBranchLike("%"+branch+"%"); } // Date begin if (datebegin != null && datebegin.length() > 0){ Date dateBegin = new SimpleDateFormat("yyyy-MM-dd").parse(datebegin); if (timebegin != null && timebegin.length() > 0){ // time begin dateBegin.setHours(Integer.parseInt(timebegin.substring(0, 2))); dateBegin.setMinutes(Integer.parseInt(timebegin.substring(3, 5))); } allListHelpRequest = allListHelpRequest.stream().filter(x -> x.getDateBegin().after(dateBegin)).collect(Collectors.toList()); allListHelpProposition = allListHelpProposition.stream().filter(x -> x.getDateBegin().after(dateBegin)).collect(Collectors.toList()); model.put("dateBegin", dateBegin); } // Date end if (dateend != null && dateend.length() > 0){ Date dateEnd = new SimpleDateFormat("yyyy-MM-dd").parse(dateend); if (timeend != null && timeend.length() > 0){ // time end dateEnd.setHours(Integer.parseInt(timeend.substring(0, 2))); dateEnd.setMinutes(Integer.parseInt(timeend.substring(3, 5))); } allListHelpRequest = allListHelpRequest.stream().filter(x -> x.getDateBegin().before(dateEnd)).collect(Collectors.toList()); allListHelpProposition = allListHelpProposition.stream().filter(x -> x.getDateEnd().after(dateEnd)).collect(Collectors.toList()); model.put("dateEnd", dateEnd); } model.put("helpRequests", allListHelpRequest); model.put("helpPropositions", allListHelpProposition); model.put("helpRequestsSize", allListHelpRequest.size()); model.put("helpPropositionsSize", allListHelpProposition.size()); model.put("type", type); model.put("branch", branch); return "search"; } } No newline at end of file
src/main/java/com/example/demo/repository/HelpPropositionRepository.java +2 −1 Original line number Diff line number Diff line Loading @@ -10,4 +10,5 @@ public interface HelpPropositionRepository extends JpaRepository <HelpPropositio List<HelpProposition> findByMentor(User mentor); List<HelpProposition> findByPoulain(User poulain); HelpProposition findById(Integer id); List<HelpProposition> findByBranchLike(String branch); }
src/main/java/com/example/demo/repository/HelpRequestRepository.java +1 −0 Original line number Diff line number Diff line Loading @@ -11,4 +11,5 @@ public interface HelpRequestRepository extends JpaRepository <HelpRequest, Long> List<HelpRequest> findByPoulain(User poulain); List<HelpRequest> findByMentor(User mentor); HelpRequest findById(Integer id); List<HelpRequest> findByBranchLike(String branch); }