From 7286aee9bc2cac0a4e9243431d06607bca462fed Mon Sep 17 00:00:00 2001 From: Haoyu Sun <SunH26@cardiff.ac.uk> Date: Mon, 28 Oct 2024 21:25:24 +0000 Subject: [PATCH] add new secondhand item itemform --- .../takeaway/index/ExchangeController.java | 15 ++++++ .../resources/templates/page/itemForm.html | 47 ++++++++++++++++++- .../resources/templates/page/itemList.html | 1 + 3 files changed, 62 insertions(+), 1 deletion(-) diff --git a/src/main/java/uk/ac/cf/spring/demo/takeaway/index/ExchangeController.java b/src/main/java/uk/ac/cf/spring/demo/takeaway/index/ExchangeController.java index c0ed941..8941d88 100644 --- a/src/main/java/uk/ac/cf/spring/demo/takeaway/index/ExchangeController.java +++ b/src/main/java/uk/ac/cf/spring/demo/takeaway/index/ExchangeController.java @@ -3,6 +3,7 @@ package uk.ac.cf.spring.demo.takeaway.index; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.servlet.ModelAndView; import java.util.List; @@ -27,4 +28,18 @@ public class ExchangeController { modelAndView.addObject("exchangeItem", exchangeItem); return modelAndView; } +// add new ExchangeItem + @GetMapping("/exchange/add") + public ModelAndView addExchangeItem() { + ModelAndView modelAndView = new ModelAndView("/page/itemForm"); + return modelAndView; + } + // address form + @PostMapping("/exchangeItem") + public ModelAndView addExchangeItem(ExchangeItem exchangeItem) { + ExchangeService exchangeService = ExchangeService.getInstance(); + exchangeService.addExchangeItem(exchangeItem); + ModelAndView modelAndView = new ModelAndView("redirect:/exchange"); + return modelAndView; + } } diff --git a/src/main/resources/templates/page/itemForm.html b/src/main/resources/templates/page/itemForm.html index 42571e9..264f91e 100644 --- a/src/main/resources/templates/page/itemForm.html +++ b/src/main/resources/templates/page/itemForm.html @@ -5,6 +5,51 @@ <title>Title</title> </head> <body> - <div>itemForm</div> +<!-- <form action="/exchangeItem" method="post">--> +<!-- <div class="mb-3">--> +<!-- <label class="form-label" for="name">Name</label>--> +<!-- <input class="form-control" type="text" id="name" placeholder="ExchangeItem Name">--> +<!-- </div>--> +<!-- <div class="mb-3">--> +<!-- <label class="form-label" for="description">Description:</label>--> +<!-- <input class="form-control" id="description" placeholder="Description" type="text"/>--> +<!-- </div>--> +<!-- <div class="mb-3">--> +<!-- <label class="form-label" for="exchangeOrNot">exchangeOrNot?</label>--> +<!-- <input checked class="form-check-input" id="exchangeOrNot" name="exchangeOrNot" type="checkbox"/>--> +<!-- </div>--> +<!-- <div class="mb-3">--> +<!-- <label class="form-label" for="moneyOrNot">moneyOrNot?</label>--> +<!-- <input checked class="form-check-input" id="moneyOrNot" name="moneyOrNot" type="checkbox"/>--> +<!-- </div>--> +<!-- <div class="mb-3">--> +<!-- <button class="btn btn-primary">Submit</button>--> +<!-- </div>--> +<!-- </form>--> + <form action="/exchangeItem" method="post"> + <div class="mb-3"> + <label class="form-label" for="name">Name:</label> + <input class="form-control" id="name" name="name" placeholder=" + Item Name" type="text"/> + </div> + <div class="mb-3"> + <label class="form-label" for="description">Description:</label> + <input class="form-control" id="description" name="description" + placeholder="Description" type="text"/> + </div> + <div class="mb-3"> + <label class="form-check-label" for="exchangeOrNot">exchangeOrNot?</label> + <input checked="false" class="form-check-input" id="exchangeOrNot" + name="exchangeOrNot" type="checkbox"/> + </div> + <div class="mb-3"> + <label class="form-check-label" for="moneyOrNot">moneyOrNot?</label> + <input checked="false" class="form-check-input" id="moneyOrNot" + name="moneyOrNot" type="checkbox"/> + </div> + <div class="mb-3"> + <button class="btn btn-primary">Submit</button> + </div> + </form> </body> </html> \ No newline at end of file diff --git a/src/main/resources/templates/page/itemList.html b/src/main/resources/templates/page/itemList.html index 26c9829..e44c4ce 100644 --- a/src/main/resources/templates/page/itemList.html +++ b/src/main/resources/templates/page/itemList.html @@ -29,5 +29,6 @@ </tr> </tbody> </table> + <a href="/exchange/add"><button>add items</button></a> </body> </html> \ No newline at end of file -- GitLab