diff --git a/schleicherhof_pms/src/main/java/de/thd/pms/controller/BuchungController.java b/schleicherhof_pms/src/main/java/de/thd/pms/controller/BuchungController.java index 7dd08714c432e35c2f8460960e8ca7303dba1149..066a8d1d95717409bdddcda1633fa4d8d51c82de 100644 --- a/schleicherhof_pms/src/main/java/de/thd/pms/controller/BuchungController.java +++ b/schleicherhof_pms/src/main/java/de/thd/pms/controller/BuchungController.java @@ -35,15 +35,14 @@ public class BuchungController { @RequestMapping(value="/edit2", method=RequestMethod.GET) - public ModelAndView edit(@RequestParam(required=true) Long zimmerid) { + public ModelAndView edit(@RequestParam(required=true) Long zimmerid, Long kundenid) { log.debug("edit id=" + zimmerid); ModelAndView mv = new ModelAndView(); mv.addObject(new Buchung(zimmerid)); - mv.addObject(new Kunde()); mv.addObject("title", "Buchung"); mv.addObject("message", "Bitte geben Sie hier Ihre Buchungsdaten ein und bestätigen die Buchung durch den Button 'Buchen'"); mv.addObject("zimmer", zimmerService.findById(zimmerid)); - mv.addObject("kunden", kundeService.findAll()); + mv.addObject("kunden", kundeService.findById(kundenid)); mv.setViewName("buchung"); return mv; } @@ -56,7 +55,7 @@ public class BuchungController { buchungService.save(buchung); model.addAttribute("statusMessageKey", "buchung.form.msg.success"); - return new ModelAndView("home"); + return new ModelAndView("bestaetigung"); } diff --git a/schleicherhof_pms/src/main/java/de/thd/pms/controller/KundeController.java b/schleicherhof_pms/src/main/java/de/thd/pms/controller/KundeController.java index ff07869277ff23942d68103e2682de7214553b35..fa40acadce444eb9a44aed68bdbb973e7419fc41 100644 --- a/schleicherhof_pms/src/main/java/de/thd/pms/controller/KundeController.java +++ b/schleicherhof_pms/src/main/java/de/thd/pms/controller/KundeController.java @@ -12,9 +12,12 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.servlet.ModelAndView; + +import de.thd.pms.model.Buchung; import de.thd.pms.model.Kunde; import de.thd.pms.service.KundeService; +import de.thd.pms.service.ZimmerService; @JavaBean @Controller @@ -24,18 +27,19 @@ public class KundeController { @Autowired private KundeService kundeService; + @Autowired + private ZimmerService zimmerService; @RequestMapping(value="/edit", method=RequestMethod.GET) - public ModelAndView edit(@RequestParam(required=false) Long id) { - log.debug("edit id=" + id); + public ModelAndView edit(@RequestParam(required=false) Long zimmerid) { + log.debug("edit id=" + zimmerid); ModelAndView mv = new ModelAndView(); - if (id == null) { - mv.addObject(new Kunde()); - } else { - mv.addObject(kundeService.findById(id)); - } + mv.addObject(new Kunde(zimmerid)); + mv.addObject("title", "Kundendaten"); + mv.addObject("message", "Bitte geben Sie hier Ihre Kundendaten ein'"); + mv.addObject("zimmer", zimmerService.findById(zimmerid)); mv.setViewName("kunde"); return mv; } @@ -46,8 +50,9 @@ public class KundeController { kundeService.save(kunde); model.addAttribute("statusMessageKey", "person.form.msg.success"); - return "redirect:edit?id=" + kunde.getId(); + return "redirect:edit?"; } + } diff --git a/schleicherhof_pms/src/main/java/de/thd/pms/model/Buchung.java b/schleicherhof_pms/src/main/java/de/thd/pms/model/Buchung.java index 2b9eea80179effd6186aee2cc68917763493e498..f6379cdc90181cc9e852d3b08780983cecb80d80 100644 --- a/schleicherhof_pms/src/main/java/de/thd/pms/model/Buchung.java +++ b/schleicherhof_pms/src/main/java/de/thd/pms/model/Buchung.java @@ -27,7 +27,7 @@ public class Buchung { private int kundsum; private int erwa_anz; private int kind_anz; - private int kundenid; + private Long kundenid; @ManyToMany(targetEntity=de.thd.pms.model.Zimmer.class) @JoinColumn(name="zimmerid", nullable=false) @@ -78,10 +78,10 @@ public class Buchung { public void setZimmerid(Long zimmerid) { this.zimmerid = zimmerid; } - public int getKundenid() { + public Long getKundenid() { return kundenid; } - public void setKundenid(int kundenid) { + public void setKundenid(Long kundenid) { this.kundenid = kundenid; } diff --git a/schleicherhof_pms/src/main/java/de/thd/pms/model/Kunde.java b/schleicherhof_pms/src/main/java/de/thd/pms/model/Kunde.java index 1250841328d55c3b7197702c1fbe0390d81891ee..02a8f38b3ffffe5d25e59eead504e1f038a7f5f5 100644 --- a/schleicherhof_pms/src/main/java/de/thd/pms/model/Kunde.java +++ b/schleicherhof_pms/src/main/java/de/thd/pms/model/Kunde.java @@ -7,7 +7,8 @@ import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; - +import javax.persistence.JoinColumn; +import javax.persistence.ManyToMany; import javax.persistence.Table; //Annotation @@ -23,9 +24,15 @@ public class Kunde { private String nachname; private String email; private int telefon; + + + private Long zimmerid; - public Kunde() { - + public Kunde() + {} + + public Kunde(Long id2) { + zimmerid = id2; } @@ -68,5 +75,15 @@ public class Kunde { public void setNachname(String nachname) { this.nachname = nachname; } + + + public Long getZimmerid() { + return zimmerid; + } + + + public void setZimmerid(long zimmerid) { + this.zimmerid = zimmerid; + } } diff --git a/schleicherhof_pms/src/main/java/de/thd/pms/service/BuchungService.java b/schleicherhof_pms/src/main/java/de/thd/pms/service/BuchungService.java index ca626f26685cfbd3ab84af751ad0913dbae0b044..da5e6ac216c7923e3814727fc1e88d102a49e331 100644 --- a/schleicherhof_pms/src/main/java/de/thd/pms/service/BuchungService.java +++ b/schleicherhof_pms/src/main/java/de/thd/pms/service/BuchungService.java @@ -24,7 +24,7 @@ public class BuchungService { buchungRepository.save(b); } - public void createBuchung(Long zimmerid, Date belegtvon, Date belegtbis, Integer belegtsum, Integer erwa_anz, Integer kind_anz, Integer kundenid ) { + public void createBuchung(Long zimmerid, Date belegtvon, Date belegtbis, Integer belegtsum, Integer erwa_anz, Integer kind_anz, Long kundenid ) { Buchung b = new Buchung(); b.setZimmerid(zimmerid); b.setBelegtvon(belegtvon); diff --git a/schleicherhof_pms/src/main/java/de/thd/pms/service/KundeService.java b/schleicherhof_pms/src/main/java/de/thd/pms/service/KundeService.java index 1bf9b63648f49a6c01b3ded30be6d891cfa179e2..4ec7a346016872d5b455b55c3dc8bca1ab4e2b15 100644 --- a/schleicherhof_pms/src/main/java/de/thd/pms/service/KundeService.java +++ b/schleicherhof_pms/src/main/java/de/thd/pms/service/KundeService.java @@ -21,12 +21,13 @@ public class KundeService { - public void create(String vorname, String nachname, String email, Integer telefon) { + public void create(String vorname, String nachname, String email, Integer telefon, Long zimmerid) { Kunde k = new Kunde(); k.setVorname(vorname); k.setNachname(nachname); k.setEmail(email); k.setTelefon(telefon); + k.setZimmerid(zimmerid); kundeRepository.save(k); } diff --git a/schleicherhof_pms/src/main/resources/templates/buchung.html b/schleicherhof_pms/src/main/resources/templates/buchung.html index 9a57b350ee507590681c116a56ff5303942729ff..5de2a37f2e4605b0abf8eb2dfe88f7aa0eaa617f 100644 --- a/schleicherhof_pms/src/main/resources/templates/buchung.html +++ b/schleicherhof_pms/src/main/resources/templates/buchung.html @@ -49,7 +49,11 @@ </div> + <div class="form-group"> + + <input type="hidden" name="kundenid" th:value="${kunden.id}" /> + </div> <div class="container-fluid"> <button type="submit" class="btn btn-default">Buchen</button> diff --git a/schleicherhof_pms/src/main/resources/templates/home.html b/schleicherhof_pms/src/main/resources/templates/home.html index e4d32088191536bae1acf66e2de1dbfdf0aa2f1f..ad23e6aa0c6f2d5dda7c219f44aa21e61d8106d5 100644 --- a/schleicherhof_pms/src/main/resources/templates/home.html +++ b/schleicherhof_pms/src/main/resources/templates/home.html @@ -7,11 +7,14 @@ <h1><img th:src="@{/photos/logo.png}" alt="Logo" width="470" height="150"/></h1> </div> - + <div style="background-color: white; opacity:0.8;"> <nav th:include="menu::menu" ></nav> + </div> - - <div style="background-color: white; opacity:0.5;"> + <br> + <br> + <br> + <div style="background-color: white; opacity:0.8;"> <div class="container"><h2 th:text="${title}">Titel</h2></div> <div class="container"><h3 th:text="${title2}">Titel</h3></div> <div class="container"><p th:text="${message}">Nachricht</p></div> diff --git a/schleicherhof_pms/src/main/resources/templates/kunde.html b/schleicherhof_pms/src/main/resources/templates/kunde.html index b53f4dc5ad43d0ae68f1a7fbc9a88490179c8600..0f1bc4b3d7dabed80754360a8d84e53232f2d5e0 100644 --- a/schleicherhof_pms/src/main/resources/templates/kunde.html +++ b/schleicherhof_pms/src/main/resources/templates/kunde.html @@ -29,11 +29,16 @@ class="form-control" id="telefon" name="telefon" th:value="*{telefon}" /> </div> + <div class="form-group"> + + <input type="hidden" name="zimmerid" th:value="${zimmer.id}" /> + + </div> <button type="submit" class="btn btn-default">Kundendaten speichern</button> - <a class="navbar-brand" th:href="@{~/buchung/edit2}">weiter zur Buchung </a> + <a class="navbar-brand" th:href="@{~/buchung/edit2(kundenid=*{id}),(zimmerid=*{zimmerid})}">weiter zur Buchung </a> </form> </div> - + <div th:include="foot::foot"></div> </body> diff --git a/schleicherhof_pms/src/main/resources/templates/list-zimmer.html b/schleicherhof_pms/src/main/resources/templates/list-zimmer.html index 956eb48f45cc8a552599254b0d346173d75808c7..40039cbc0ae8adb4c57291c55e2896bfd51d0c71 100644 --- a/schleicherhof_pms/src/main/resources/templates/list-zimmer.html +++ b/schleicherhof_pms/src/main/resources/templates/list-zimmer.html @@ -21,9 +21,9 @@ </tr> <tr th:each="zimmer : ${zimmer}"> - <td><a th:href="@{~/buchung/edit2(zimmerid=${zimmer.id})}" th:text="${zimmer.zimmername}"></a></td> - <td th:text="${zimmer.preisErw}"></td> - <td th:text="${zimmer.preisKind}"></td> + <td><a th:href="@{~/kunde/edit(zimmerid=${zimmer.id})}" th:text="${zimmer.zimmername}"></a></td> + <td th:text="${#numbers.formatCurrency(zimmer.preisErw)}"></td> + <td th:text="${#numbers.formatCurrency(zimmer.preisKind)}"></td> <td th:text="${zimmer.anzbett}"></td> </tr> </tbody> @@ -40,10 +40,10 @@ <td class="fliesstext"> <strong>Zimmer 1</strong> <br> - "Hier können Sie nun einen Blick in unser Zimmer 1 werfen." + Hier können Sie nun einen Blick in unser Zimmer 1 werfen. <br> <br> - "Doppelbett mit Etagenbett" + Doppelbett mit Etagenbett <br> </td> <td> </td> diff --git a/schleicherhof_pms/src/main/resources/templates/menu.html b/schleicherhof_pms/src/main/resources/templates/menu.html index d9a57bb3e297707103d50ccec33aeedfb4cf05ff..77816d68d697623e10447fa2073d837ea21313d6 100644 --- a/schleicherhof_pms/src/main/resources/templates/menu.html +++ b/schleicherhof_pms/src/main/resources/templates/menu.html @@ -1,10 +1,10 @@ <html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"> -<nav th:fragment="menu" class="navbar navbar-default"> +<nav th:fragment="menu" class="navbar navbar-default" > - <div class="navbar-header"> + <div class="navbar-header" > <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"> <span class="sr-only">Menü umschalten</span> <span class="icon-bar"></span> @@ -15,12 +15,12 @@ </div> - <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1" style="color: white"> + <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1" > <ul class="nav navbar-nav"> <li class="dropdown" > <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Zimmer <span class="caret"></span></a> <ul class="dropdown-menu"> - <li><a th:href="@{~/buchung/findAll}">Alle Zimmer</a></li> + <li ><a th:href="@{~/buchung/findAll}">Alle Zimmer</a></li> </ul> </li>