jpashop : orderForm view, controller
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
package com.example.jpashop.controller;
|
||||
|
||||
import com.example.jpashop.domain.Member;
|
||||
import com.example.jpashop.domain.item.Item;
|
||||
import com.example.jpashop.service.ItemService;
|
||||
import com.example.jpashop.service.MemberService;
|
||||
import com.example.jpashop.service.OrderService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Controller
|
||||
@RequiredArgsConstructor
|
||||
public class OrderController {
|
||||
|
||||
private final OrderService orderService;
|
||||
private final MemberService memberService;
|
||||
private final ItemService itemService;
|
||||
|
||||
@GetMapping("/order")
|
||||
public String createForm(Model model) {
|
||||
|
||||
List<Member> members = memberService.findMembers();
|
||||
List<Item> items = itemService.findItem();
|
||||
|
||||
model.addAttribute("members", members);
|
||||
model.addAttribute("items", items);
|
||||
|
||||
return "order/orderForm";
|
||||
}
|
||||
|
||||
@PostMapping("/order")
|
||||
public String order(Long memberId, Long itemId, int count){
|
||||
orderService.order(memberId, itemId, count);
|
||||
return "redirect:/orders";
|
||||
}
|
||||
}
|
||||
37
jpashop/src/main/resources/templates/order/orderForm.html
Normal file
37
jpashop/src/main/resources/templates/order/orderForm.html
Normal file
@@ -0,0 +1,37 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html xmlns:th="http://www.thymeleaf.org">
|
||||
<head th:replace="fragments/header :: header" />
|
||||
<body>
|
||||
<div class="container">
|
||||
<div th:replace="fragments/bodyHeader :: bodyHeader"/>
|
||||
<form role="form" action="/order" method="post">
|
||||
<div class="form-group">
|
||||
<label for="member">주문회원</label>
|
||||
<select name="memberId" id="member" class="form-control">
|
||||
<option value="">회원선택</option>
|
||||
<option th:each="member : ${members}"
|
||||
th:value="${member.id}"
|
||||
th:text="${member.name}" />
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="item">상품명</label>
|
||||
<select name="itemId" id="item" class="form-control">
|
||||
<option value="">상품선택</option>
|
||||
<option th:each="item : ${items}"
|
||||
th:value="${item.id}"
|
||||
th:text="${item.name}" />
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="count">주문수량</label>
|
||||
<input type="number" name="count" class="form-control" id="count"
|
||||
placeholder="주문 수량을 입력하세요">
|
||||
</div>
|
||||
<button type="submit" class="btn btn-primary">Submit</button>
|
||||
</form>
|
||||
<br/>
|
||||
<div th:replace="fragments/footer :: footer" />
|
||||
</div> <!-- /container -->
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user