From 2935bc047eaeeac07cc8e22542fa1519b1c6381f Mon Sep 17 00:00:00 2001
From: Johannes Wilhelm <johannes.wilhelm2@stud.th-deg.de>
Date: Tue, 7 Jul 2020 15:10:52 +0200
Subject: [PATCH] new

Signed-off-by: Johannes Wilhelm <johannes.wilhelm2@stud.th-deg.de>
---
 .../thd/pms/controller/BuchungController.java |  7 +++---
 .../thd/pms/controller/KundeController.java   | 21 ++++++++++-------
 .../main/java/de/thd/pms/model/Buchung.java   |  6 ++---
 .../src/main/java/de/thd/pms/model/Kunde.java | 23 ++++++++++++++++---
 .../de/thd/pms/service/BuchungService.java    |  2 +-
 .../java/de/thd/pms/service/KundeService.java |  3 ++-
 .../src/main/resources/templates/buchung.html |  4 ++++
 .../src/main/resources/templates/home.html    |  9 +++++---
 .../src/main/resources/templates/kunde.html   |  9 ++++++--
 .../main/resources/templates/list-zimmer.html | 10 ++++----
 .../src/main/resources/templates/menu.html    |  8 +++----
 11 files changed, 68 insertions(+), 34 deletions(-)

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 7dd0871..066a8d1 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 ff07869..fa40aca 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 2b9eea8..f6379cd 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 1250841..02a8f38 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 ca626f2..da5e6ac 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 1bf9b63..4ec7a34 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 9a57b35..5de2a37 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 e4d3208..ad23e6a 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 b53f4dc..0f1bc4b 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 956eb48..40039cb 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>&nbsp;</td>
diff --git a/schleicherhof_pms/src/main/resources/templates/menu.html b/schleicherhof_pms/src/main/resources/templates/menu.html
index d9a57bb..77816d6 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>
-- 
GitLab