[Spring][쇼핑몰 프로젝트][41] 주문 구현(주문 페이지) - 2
https://kimvampa.tistory.com/273
This commit is contained in:
@@ -1,21 +1,32 @@
|
||||
package com.vam.controller;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
|
||||
import com.vam.model.OrderPageDTO;
|
||||
import com.vam.service.MemberService;
|
||||
import com.vam.service.OrderService;
|
||||
|
||||
@Controller
|
||||
public class OrderController {
|
||||
|
||||
@Autowired
|
||||
private OrderService orderService;
|
||||
|
||||
@Autowired
|
||||
private MemberService memberService;
|
||||
|
||||
@GetMapping("/order/{memberId}")
|
||||
public void orderPgaeGET(@PathVariable("memberId") String memberId, OrderPageDTO opd, Model model) {
|
||||
public String orderPgaeGET(@PathVariable("memberId") String memberId, OrderPageDTO opd, Model model) {
|
||||
|
||||
System.out.println("memberId : " + memberId);
|
||||
System.out.println("orders : " + opd.getOrders());
|
||||
model.addAttribute("orderList", orderService.getGoodsInfo(opd.getOrders()));
|
||||
model.addAttribute("memberInfo", memberService.getMemberInfo(memberId));
|
||||
|
||||
|
||||
return "/order";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -13,4 +13,7 @@ public interface MemberMapper {
|
||||
/* 로그인 */
|
||||
public MemberVO memberLogin(MemberVO member);
|
||||
|
||||
/* 주문자 주소 정보 */
|
||||
public MemberVO getMemberInfo(String memberId);
|
||||
|
||||
}
|
||||
|
||||
10
VamPa/src/main/java/com/vam/mapper/OrderMapper.java
Normal file
10
VamPa/src/main/java/com/vam/mapper/OrderMapper.java
Normal file
@@ -0,0 +1,10 @@
|
||||
package com.vam.mapper;
|
||||
|
||||
import com.vam.model.OrderPageItemDTO;
|
||||
|
||||
public interface OrderMapper {
|
||||
|
||||
/* 주문 상품 정보 */
|
||||
public OrderPageItemDTO getGoodsInfo(int bookId);
|
||||
|
||||
}
|
||||
@@ -12,5 +12,8 @@ public interface MemberService {
|
||||
|
||||
/* 로그인 */
|
||||
public MemberVO memberLogin(MemberVO member) throws Exception;
|
||||
|
||||
|
||||
/* 주문자 정보 */
|
||||
public MemberVO getMemberInfo(String memberId);
|
||||
|
||||
}
|
||||
|
||||
@@ -34,6 +34,14 @@ public class MemberServiceImpl implements MemberService{
|
||||
return membermapper.memberLogin(member);
|
||||
}
|
||||
|
||||
/* 주문자 정보 */
|
||||
@Override
|
||||
public MemberVO getMemberInfo(String memberId) {
|
||||
|
||||
return membermapper.getMemberInfo(memberId);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
12
VamPa/src/main/java/com/vam/service/OrderService.java
Normal file
12
VamPa/src/main/java/com/vam/service/OrderService.java
Normal file
@@ -0,0 +1,12 @@
|
||||
package com.vam.service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.vam.model.OrderPageItemDTO;
|
||||
|
||||
public interface OrderService {
|
||||
|
||||
/* 주문 정보 */
|
||||
public List<OrderPageItemDTO> getGoodsInfo(List<OrderPageItemDTO> orders);
|
||||
|
||||
}
|
||||
40
VamPa/src/main/java/com/vam/service/OrderServiceImpl.java
Normal file
40
VamPa/src/main/java/com/vam/service/OrderServiceImpl.java
Normal file
@@ -0,0 +1,40 @@
|
||||
package com.vam.service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.vam.mapper.OrderMapper;
|
||||
import com.vam.model.OrderPageItemDTO;
|
||||
|
||||
@Service
|
||||
public class OrderServiceImpl implements OrderService{
|
||||
|
||||
@Autowired
|
||||
private OrderMapper orderMapper;
|
||||
|
||||
@Override
|
||||
public List<OrderPageItemDTO> getGoodsInfo(List<OrderPageItemDTO> orders) {
|
||||
|
||||
List<OrderPageItemDTO> result = new ArrayList<OrderPageItemDTO>();
|
||||
|
||||
for(OrderPageItemDTO ord : orders) {
|
||||
|
||||
OrderPageItemDTO goodsInfo = orderMapper.getGoodsInfo(ord.getBookId());
|
||||
|
||||
goodsInfo.setBookCount(ord.getBookCount());
|
||||
|
||||
goodsInfo.initSaleTotal();
|
||||
|
||||
result.add(goodsInfo);
|
||||
}
|
||||
|
||||
return result;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -27,5 +27,14 @@
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 주문자 정보 -->
|
||||
<select id="getMemberInfo" resultType="com.vam.model.MemberVO">
|
||||
|
||||
SELECT memberId, memberName, memberMail, memberAddr1, memberAddr2, memberAddr3, money, point
|
||||
FROM book_member
|
||||
WHERE memberId = #{memberId}
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
15
VamPa/src/main/resources/com/vam/mapper/OrderMapper.xml
Normal file
15
VamPa/src/main/resources/com/vam/mapper/OrderMapper.xml
Normal file
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.vam.mapper.OrderMapper">
|
||||
|
||||
<!-- 주문 상품 정보 -->
|
||||
<select id="getGoodsInfo" resultType="com.vam.model.OrderPageItemDTO">
|
||||
|
||||
select bookId, bookName, bookPrice, bookDiscount
|
||||
from vam_book where bookId = #{bookId}
|
||||
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
17
VamPa/src/main/webapp/WEB-INF/views/order.jsp
Normal file
17
VamPa/src/main/webapp/WEB-INF/views/order.jsp
Normal file
@@ -0,0 +1,17 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8"
|
||||
pageEncoding="UTF-8"%>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Insert title here</title>
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
${orderList}
|
||||
</div>
|
||||
<div>
|
||||
${memberInfo}
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -27,5 +27,14 @@
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 주문자 정보 -->
|
||||
<select id="getMemberInfo" resultType="com.vam.model.MemberVO">
|
||||
|
||||
SELECT memberId, memberName, memberMail, memberAddr1, memberAddr2, memberAddr3, money, point
|
||||
FROM book_member
|
||||
WHERE memberId = #{memberId}
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
15
VamPa/target/classes/com/vam/mapper/OrderMapper.xml
Normal file
15
VamPa/target/classes/com/vam/mapper/OrderMapper.xml
Normal file
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.vam.mapper.OrderMapper">
|
||||
|
||||
<!-- 주문 상품 정보 -->
|
||||
<select id="getGoodsInfo" resultType="com.vam.model.OrderPageItemDTO">
|
||||
|
||||
select bookId, bookName, bookPrice, bookDiscount
|
||||
from vam_book where bookId = #{bookId}
|
||||
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
@@ -1,5 +1,5 @@
|
||||
#Generated by Maven Integration for Eclipse
|
||||
#Wed Dec 08 02:51:47 KST 2021
|
||||
#Thu Dec 09 15:29:52 KST 2021
|
||||
m2e.projectLocation=C\:\\Users\\sjinj\\git\\Blog_Project2\\VamPa
|
||||
m2e.projectName=VamPa
|
||||
groupId=com.vam
|
||||
|
||||
@@ -1,21 +1,32 @@
|
||||
package com.vam.controller;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
|
||||
import com.vam.model.OrderPageDTO;
|
||||
import com.vam.service.MemberService;
|
||||
import com.vam.service.OrderService;
|
||||
|
||||
@Controller
|
||||
public class OrderController {
|
||||
|
||||
@Autowired
|
||||
private OrderService orderService;
|
||||
|
||||
@Autowired
|
||||
private MemberService memberService;
|
||||
|
||||
@GetMapping("/order/{memberId}")
|
||||
public void orderPgaeGET(@PathVariable("memberId") String memberId, OrderPageDTO opd, Model model) {
|
||||
public String orderPgaeGET(@PathVariable("memberId") String memberId, OrderPageDTO opd, Model model) {
|
||||
|
||||
System.out.println("memberId : " + memberId);
|
||||
System.out.println("orders : " + opd.getOrders());
|
||||
model.addAttribute("orderList", orderService.getGoodsInfo(opd.getOrders()));
|
||||
model.addAttribute("memberInfo", memberService.getMemberInfo(memberId));
|
||||
|
||||
}
|
||||
|
||||
return "/order";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -13,4 +13,7 @@ public interface MemberMapper {
|
||||
/* 로그인 */
|
||||
public MemberVO memberLogin(MemberVO member);
|
||||
|
||||
/* 주문자 주소 정보 */
|
||||
public MemberVO getMemberInfo(String memberId);
|
||||
|
||||
}
|
||||
|
||||
10
VamPa_MySQL/src/main/java/com/vam/mapper/OrderMapper.java
Normal file
10
VamPa_MySQL/src/main/java/com/vam/mapper/OrderMapper.java
Normal file
@@ -0,0 +1,10 @@
|
||||
package com.vam.mapper;
|
||||
|
||||
import com.vam.model.OrderPageItemDTO;
|
||||
|
||||
public interface OrderMapper {
|
||||
|
||||
/* 주문 상품 정보 */
|
||||
public OrderPageItemDTO getGoodsInfo(int bookId);
|
||||
|
||||
}
|
||||
@@ -13,4 +13,7 @@ public interface MemberService {
|
||||
/* 로그인 */
|
||||
public MemberVO memberLogin(MemberVO member) throws Exception;
|
||||
|
||||
/* 주문자 정보 */
|
||||
public MemberVO getMemberInfo(String memberId);
|
||||
|
||||
}
|
||||
|
||||
@@ -33,5 +33,13 @@ public class MemberServiceImpl implements MemberService {
|
||||
|
||||
return membermapper.memberLogin(member);
|
||||
}
|
||||
|
||||
/* 주문자 정보 */
|
||||
@Override
|
||||
public MemberVO getMemberInfo(String memberId) {
|
||||
|
||||
return membermapper.getMemberInfo(memberId);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
12
VamPa_MySQL/src/main/java/com/vam/service/OrderService.java
Normal file
12
VamPa_MySQL/src/main/java/com/vam/service/OrderService.java
Normal file
@@ -0,0 +1,12 @@
|
||||
package com.vam.service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.vam.model.OrderPageItemDTO;
|
||||
|
||||
public interface OrderService {
|
||||
|
||||
/* 주문 정보 */
|
||||
public List<OrderPageItemDTO> getGoodsInfo(List<OrderPageItemDTO> orders);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
package com.vam.service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.vam.mapper.OrderMapper;
|
||||
import com.vam.model.OrderPageItemDTO;
|
||||
|
||||
@Service
|
||||
public class OrderServiceImpl implements OrderService{
|
||||
|
||||
@Autowired
|
||||
private OrderMapper orderMapper;
|
||||
|
||||
@Override
|
||||
public List<OrderPageItemDTO> getGoodsInfo(List<OrderPageItemDTO> orders) {
|
||||
|
||||
List<OrderPageItemDTO> result = new ArrayList<OrderPageItemDTO>();
|
||||
|
||||
for(OrderPageItemDTO ord : orders) {
|
||||
|
||||
OrderPageItemDTO goodsInfo = orderMapper.getGoodsInfo(ord.getBookId());
|
||||
|
||||
goodsInfo.setBookCount(ord.getBookCount());
|
||||
|
||||
goodsInfo.initSaleTotal();
|
||||
|
||||
result.add(goodsInfo);
|
||||
}
|
||||
|
||||
return result;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -27,4 +27,13 @@
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 주문자 정보 -->
|
||||
<select id="getMemberInfo" resultType="com.vam.model.MemberVO">
|
||||
|
||||
SELECT memberId, memberName, memberMail, memberAddr1, memberAddr2, memberAddr3, money, point
|
||||
FROM book_member
|
||||
WHERE memberId = #{memberId}
|
||||
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.vam.mapper.OrderMapper">
|
||||
|
||||
<!-- 주문 상품 정보 -->
|
||||
<select id="getGoodsInfo" resultType="com.vam.model.OrderPageItemDTO">
|
||||
|
||||
select bookId, bookName, bookPrice, bookDiscount
|
||||
from vam_book where bookId = #{bookId}
|
||||
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
17
VamPa_MySQL/src/main/webapp/WEB-INF/views/order.jsp
Normal file
17
VamPa_MySQL/src/main/webapp/WEB-INF/views/order.jsp
Normal file
@@ -0,0 +1,17 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8"
|
||||
pageEncoding="UTF-8"%>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Insert title here</title>
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
${orderList}
|
||||
</div>
|
||||
<div>
|
||||
${memberInfo}
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -27,4 +27,13 @@
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 주문자 정보 -->
|
||||
<select id="getMemberInfo" resultType="com.vam.model.MemberVO">
|
||||
|
||||
SELECT memberId, memberName, memberMail, memberAddr1, memberAddr2, memberAddr3, money, point
|
||||
FROM book_member
|
||||
WHERE memberId = #{memberId}
|
||||
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
15
VamPa_MySQL/target/classes/com/vam/mapper/OrderMapper.xml
Normal file
15
VamPa_MySQL/target/classes/com/vam/mapper/OrderMapper.xml
Normal file
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.vam.mapper.OrderMapper">
|
||||
|
||||
<!-- 주문 상품 정보 -->
|
||||
<select id="getGoodsInfo" resultType="com.vam.model.OrderPageItemDTO">
|
||||
|
||||
select bookId, bookName, bookPrice, bookDiscount
|
||||
from vam_book where bookId = #{bookId}
|
||||
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
@@ -1,5 +1,5 @@
|
||||
#Generated by Maven Integration for Eclipse
|
||||
#Wed Dec 08 23:55:17 KST 2021
|
||||
#Thu Dec 09 15:29:52 KST 2021
|
||||
m2e.projectLocation=C\:\\Users\\sjinj\\git\\Blog_Project2\\VamPa_MySQL
|
||||
m2e.projectName=VamPa_MySQL
|
||||
groupId=com.vam
|
||||
|
||||
Reference in New Issue
Block a user