This repository has been archived on 2025-01-14. You can view files and clone it, but cannot push or open issues/pull-requests.
computer-web/src/main/java/example/controller/OrdersServlet.java

80 lines
2.7 KiB
Java

package example.controller;
import example.model.Computer;
import example.model.User;
import example.service.ICartService;
import example.service.IOrdersService;
import example.service.impl.CartServiceImpl;
import example.service.impl.OrdersServiceImpl;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
@WebServlet("/orders")
public class OrdersServlet extends HttpServlet {
IOrdersService ordersService=new OrdersServiceImpl();
ICartService cartService=new CartServiceImpl();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String action = req.getParameter("action");
switch (action) {
case "waiting":
ordersService.waiting(req, resp);
break;
case "sent":
ordersService.sent(req, resp);
break;
case "all":
ordersService.allOrder(req, resp);
break;
case "my":
ordersService.myOrder(req, resp);
break;
case "deliver":
ordersService.deliver(req, resp);
break;
case "add":
try {
ordersService.checkOrder(req, resp);
} catch (Exception e) {
throw new RuntimeException(e);
}
break;
case "delete":
// ordersService.delete(req, resp);
break;
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("utf-8");
double price = Double.parseDouble(req.getParameter("price"));
String address = req.getParameter("address");
String remark = req.getParameter("remark");
User user = (User) req.getSession().getAttribute("user");
int flag=ordersService.addOrder(user.getId(),price, address, remark);
// 移出购物车所有信息
try {
List<Computer> computers = cartService.myCart(user.getId());
for (Computer computer : computers) {
cartService.removeFromCart(user.getId(), computer.getId());
}
} catch (Exception e) {
throw new RuntimeException(e);
}
req.setAttribute("msg","下单成功");
req.getRequestDispatcher("/result.jsp").forward(req, resp);
}
}