[Spring][쇼핑몰 프로젝트][44] 주문 취소 - 2

https://kimvampa.tistory.com/286
This commit is contained in:
SeoJin Kim
2021-12-29 04:59:58 +09:00
parent e7a0d46763
commit 5266fd2dcd
6 changed files with 97 additions and 4 deletions

View File

@@ -36,10 +36,12 @@ import com.vam.model.AttachImageVO;
import com.vam.model.AuthorVO;
import com.vam.model.BookVO;
import com.vam.model.Criteria;
import com.vam.model.OrderCancelDTO;
import com.vam.model.OrderDTO;
import com.vam.model.PageDTO;
import com.vam.service.AdminService;
import com.vam.service.AuthorService;
import com.vam.service.OrderService;
import net.coobird.thumbnailator.Thumbnails;
@@ -55,6 +57,9 @@ public class AdminController {
@Autowired
private AdminService adminService;
@Autowired
private OrderService orderService;
/* 관리자 메인 페이지 이동 */
@RequestMapping(value="main", method = RequestMethod.GET)
public void adminMainGET() throws Exception{
@@ -484,6 +489,16 @@ public class AdminController {
return "/admin/orderList";
}
/* 주문삭제 */
@PostMapping("/orderCancle")
public String orderCanclePOST(OrderCancelDTO dto) {
orderService.orderCancle(dto);
return "redirect:/admin/orderList?keyword=" + dto.getKeyword() + "&amount=" + dto.getAmount() + "&pageNum=" + dto.getPageNum();
}
}

View File

@@ -48,7 +48,9 @@
<td><fmt:formatDate value="${list.orderDate}" pattern="yyyy-MM-dd"/></td>
<td><c:out value="${list.orderState}"/></td>
<td>
<c:if test="${list.orderState == '배송준비' }">
<button class="delete_btn" data-orderid="${list.orderId}">취소</button>
</c:if>
</td>
</tr>
</c:forEach>
@@ -112,7 +114,16 @@
<input type="hidden" name="pageNum" value="${pageMaker.cri.pageNum}">
<input type="hidden" name="amount" value="${pageMaker.cri.amount}">
<input type="hidden" name="keyword" value="${pageMaker.cri.keyword}">
</form>
</form>
<form id="deleteForm" action="/admin/orderCancle" method="post">
<input type="hidden" name="orderId">
<input type="hidden" name="pageNum" value="${pageMaker.cri.pageNum}">
<input type="hidden" name="amount" value="${pageMaker.cri.amount}">
<input type="hidden" name="keyword" value="${pageMaker.cri.keyword}">
<input type="hidden" name="memberId" value="${member.memberId}">
</form>
<%@include file="../includes/admin/footer.jsp" %>
@@ -152,6 +163,16 @@ $(".pageMaker_btn a").on("click", function(e){
});
$(".delete_btn").on("click", function(e){
e.preventDefault();
let id = $(this).data("orderid");
$("#deleteForm").find("input[name='orderId']").val(id);
$("#deleteForm").submit();
});
</script>
</body>

View File

@@ -128,6 +128,17 @@ ul{
font-weight: 600;
}
.delete_btn{
border: none;
color: white;
padding: 5px 15px;
cursor: pointer;
background-color: #f7564b;
}
.delete_btn:hover{
background-color : #da190b;
}
.table_empty{
height: 50px;
text-align: center;

View File

@@ -36,10 +36,12 @@ import com.vam.model.AttachImageVO;
import com.vam.model.AuthorVO;
import com.vam.model.BookVO;
import com.vam.model.Criteria;
import com.vam.model.OrderCancelDTO;
import com.vam.model.OrderDTO;
import com.vam.model.PageDTO;
import com.vam.service.AdminService;
import com.vam.service.AuthorService;
import com.vam.service.OrderService;
import net.coobird.thumbnailator.Thumbnails;
@@ -55,6 +57,9 @@ public class AdminController {
@Autowired
private AdminService adminService;
@Autowired
private OrderService orderService;
/* 관리자 메인 페이지 이동 */
@RequestMapping(value="main", method = RequestMethod.GET)
public void adminMainGET() throws Exception{
@@ -489,4 +494,13 @@ public class AdminController {
return "/admin/orderList";
}
/* 주문삭제 */
@PostMapping("/orderCancle")
public String orderCanclePOST(OrderCancelDTO dto) {
orderService.orderCancle(dto);
return "redirect:/admin/orderList?keyword=" + dto.getKeyword() + "&amount=" + dto.getAmount() + "&pageNum=" + dto.getPageNum();
}
}

View File

@@ -48,7 +48,9 @@
<td><fmt:formatDate value="${list.orderDate}" pattern="yyyy-MM-dd"/></td>
<td><c:out value="${list.orderState}"/></td>
<td>
<c:if test="${list.orderState == '배송준비' }">
<button class="delete_btn" data-orderid="${list.orderId}">취소</button>
</c:if>
</td>
</tr>
</c:forEach>
@@ -112,7 +114,16 @@
<input type="hidden" name="pageNum" value="${pageMaker.cri.pageNum}">
<input type="hidden" name="amount" value="${pageMaker.cri.amount}">
<input type="hidden" name="keyword" value="${pageMaker.cri.keyword}">
</form>
</form>
<form id="deleteForm" action="/admin/orderCancle" method="post">
<input type="hidden" name="orderId">
<input type="hidden" name="pageNum" value="${pageMaker.cri.pageNum}">
<input type="hidden" name="amount" value="${pageMaker.cri.amount}">
<input type="hidden" name="keyword" value="${pageMaker.cri.keyword}">
<input type="hidden" name="memberId" value="${member.memberId}">
</form>
<%@include file="../includes/admin/footer.jsp" %>
@@ -152,6 +163,16 @@ $(".pageMaker_btn a").on("click", function(e){
});
$(".delete_btn").on("click", function(e){
e.preventDefault();
let id = $(this).data("orderid");
$("#deleteForm").find("input[name='orderId']").val(id);
$("#deleteForm").submit();
});
</script>
</body>

View File

@@ -128,6 +128,17 @@ ul{
font-weight: 600;
}
.delete_btn{
border: none;
color: white;
padding: 5px 15px;
cursor: pointer;
background-color: #f7564b;
}
.delete_btn:hover{
background-color : #da190b;
}
.table_empty{
height: 50px;
text-align: center;