基于javaweb+mysql的ssm+mavenktv管理系统ktv(java+ssm+jsp+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+mysql的SSM+Mavenktv管理系统KTV(java+ssm+jsp+mysql)

项目介绍

主要功能包括: 登陆页,房间信息,房间管理,开取房间,房间查询,会员管理,食物管理,查看订单,查询订单,查看房间消费使用情况等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.数据库:MySql 5.7版本;

技术栈

  1. 后端:Spring+SpringMVC+Mybatis 2. 前端:HTML+CSS+JavaScript+jsp

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/ 登录
* Description: Account相关页面的Controller
 */

@Controller
@RequestMapping("/account")
public class AccountController {

    @Autowired
    private FoodService foodService;

    @Autowired
    private OrderService orderService;

    @RequestMapping(method = RequestMethod.GET)
    public String AccountManagement() {
        return "accountManagement";
    }

    @RequestMapping(value = "/food", method = RequestMethod.GET)
    public String FoodManagement() {
        return "foodManagement";
    }

    @RequestMapping(value = "/food/all", method = RequestMethod.GET)
    public String allRoom(Model model) {
        List<Food> foodList = foodService.queryAllFood();
        model.addAttribute("list", foodList);
        model.addAttribute("rows", Math.ceil(foodList.size() / 6.0));
        model.addAttribute("title", "所有食物");
        return "foodList";
    }

    @RequestMapping(value = "/food/query", method = RequestMethod.GET)
    public String queryFood() {
        return "foodQuery";
    }

    @RequestMapping(value = "/food/query")
    public String doFoodQuery(HttpServletRequest request, Model model) throws UnsupportedEncodingException {
        request.setCharacterEncoding("UTF-8");
        String keyWord = request.getParameter("key");
        if (keyWord.equals("")) {
            model.addAttribute("msg", "请输入有效字符!");
            return "foodQuery";
        }
        Food food = foodService.queryFoodByFName(keyWord);
        if (food == null) {
            model.addAttribute("msg", "未查询到相关食物信息!");
            return "foodQuery";
        }
        model.addAttribute("food", food);
        model.addAttribute("title", "查询结果");
}

    @RequestMapping(value = "/food/increase")
    public String doFoodIncrease(HttpServletRequest request, Model model) throws UnsupportedEncodingException {
        request.setCharacterEncoding("UTF-8");
        String fname = request.getParameter("fname");
        String increase = request.getParameter("increase");
        OperationStatus result;
        Food food = foodService.queryFoodByFName(fname);
        try {
            result = foodService.increaseStock(fname, Integer.parseInt(increase));
            food = foodService.queryFoodByFName(fname);
        } catch (KTVException e) {
            model.addAttribute("food", food);
            model.addAttribute("succeed", false);
            model.addAttribute("msg", e.getMessage());
            return "foodDetail";
        }
        model.addAttribute("food", food);
        model.addAttribute("succeed", true);
        model.addAttribute("msg", result.getMessage());
        return "foodDetail";
    }

    @RequestMapping(value = "/food/id={id}/detail", method = RequestMethod.GET)
    public String foodDetail(@PathVariable("id") Integer id, Model model) {
        if (id == null) {
            return "redirect:account/food/all";
        }
        Food food = foodService.queryFoodById(id);
        if (food == null) {
            return "redirect:account/food/all";
        }
        model.addAttribute("food", food);
        model.addAttribute("title", "食物详情");
        return "foodDetail";
    }

    @RequestMapping(value = "/order", method = RequestMethod.GET)
    public String OrderManagement() {
        return "orderManagement";
    }

    @RequestMapping(value = "/order/all", method = RequestMethod.GET)
    public String allOrder(Model model) {
        List<Order> orderList = orderService.queryAllOrder();
        model.addAttribute("list", orderList);
@RequestMapping(value = "/add", method = RequestMethod.GET)
    public String addVIP() {
        return "vipAdd";
    }

    @RequestMapping(value = "/add")
    public String doVIPAdd(HttpServletRequest request, Model model) throws UnsupportedEncodingException {
        request.setCharacterEncoding("UTF-8");
        String cname = request.getParameter("cname");
        String phone = request.getParameter("phone");
        VIP vip = new VIP();
        vip.setCname(cname);
        vip.setPhone(phone);
        OperationStatus result;
        try {
            result = vipService.addVIP(vip);
        } catch (KTVException e) {
            model.addAttribute("succeed", false);
            model.addAttribute("msg", e.getMessage());
            return "vipAdd";
        }
        model.addAttribute("succeed", true);
        model.addAttribute("msg", result.getMessage());
        return "vipAdd";
    }

    @RequestMapping(value = "/delete")
    public String doVIPDelete(HttpServletRequest request, Model model) throws UnsupportedEncodingException {
        request.setCharacterEncoding("UTF-8");
        String cname = request.getParameter("cname");
        try {
            vipService.deleteVIP(cname);
        } catch (KTVException e) {
            model.addAttribute("msg", e.getMessage());
            return "redirect:vip/all";
        }
        return "redirect:vip/all";
    }
@Autowired
    private FoodService foodService;

    @Autowired
    private OrderService orderService;

    @RequestMapping(method = RequestMethod.GET)
    public String AccountManagement() {
        return "accountManagement";
    }

    @RequestMapping(value = "/food", method = RequestMethod.GET)
    public String FoodManagement() {
        return "foodManagement";
    }

    @RequestMapping(value = "/food/all", method = RequestMethod.GET)
    public String allRoom(Model model) {
        List<Food> foodList = foodService.queryAllFood();
        model.addAttribute("list", foodList);
        model.addAttribute("rows", Math.ceil(foodList.size() / 6.0));
        model.addAttribute("title", "所有食物");
        return "foodList";
    }

    @RequestMapping(value = "/food/query", method = RequestMethod.GET)
    public String queryFood() {
        return "foodQuery";
    }

    @RequestMapping(value = "/food/query")
    public String doFoodQuery(HttpServletRequest request, Model model) throws UnsupportedEncodingException {
        request.setCharacterEncoding("UTF-8");
        String keyWord = request.getParameter("key");
        if (keyWord.equals("")) {
            model.addAttribute("msg", "请输入有效字符!");
            return "foodQuery";
        }
        Food food = foodService.queryFoodByFName(keyWord);
        if (food == null) {
            model.addAttribute("msg", "未查询到相关食物信息!");
            return "foodQuery";
        }
        model.addAttribute("food", food);
        model.addAttribute("title", "查询结果");
        return "foodDetail";
    }
public String detail(@PathVariable("id") Integer id,
                         @PathVariable("type") String type, Model model) {
        if (id == null) {
            return "redirect:room/all";
        }
        Room room = roomService.queryRoom(id, type);
        if (room == null) {
            return "redirect:room/all";
        }
        model.addAttribute("room", room);
        model.addAttribute("title", "房间详情");
        return "roomDetail";
    }

    @RequestMapping(value = "/booking")
    public String bookingRoom(HttpServletRequest request, Model model) throws UnsupportedEncodingException, JsonProcessingException {
        request.setCharacterEncoding("UTF-8");
        String roomType = request.getParameter("roomType");
        String roomNum = request.getParameter("roomNum");
        String hours = request.getParameter("hours");
        String cname = request.getParameter("cname");
        Room room = roomService.queryRoom(Integer.parseInt(roomNum), roomType);
        OperationStatus result;
        try {
            VIP vip = vipService.queryVIPByName(cname);
            if (vip == null) {
                throw new KTVException("会员名字错误,请重新输入!");
            }
            Date now = new Date();
            result = roomService.bookingRoom(Integer.parseInt(roomNum), roomType, now, Integer.parseInt(hours));
            ObjectMapper mapper = new ObjectMapper();
            OrderDetail roomDetail = new OrderDetail();
            double unitPrice = roomType.equals("L") ? 200.0 : roomType.equals("M") ? 130.0 : 80.0;
            roomDetail.setName(roomType + roomNum);
            roomDetail.setUnitPrice(unitPrice);
            roomDetail.setNumber(Integer.parseInt(hours));
            roomDetail.setTotalPrice(unitPrice * Integer.parseInt(hours));
            List<OrderDetail> detail = new ArrayList<>();
            detail.add(roomDetail);
            Order order = new Order();
            order.setRoom(roomType + roomNum);
            order.setOrderTime(now);
            order.setCname(cname);
            order.setPhone(vip.getPhone());
            order.setPrice(unitPrice * Integer.parseInt(hours));
            order.setPay(0);
            order.setDetail(mapper.writeValueAsString(detail));
            orderService.addOrder(order);
            room = roomService.queryRoom(Integer.parseInt(roomNum), roomType);
        } catch (KTVException e) {
@RequestMapping(value = "/order", method = RequestMethod.GET)
    public String OrderManagement() {
        return "orderManagement";
    }

    @RequestMapping(value = "/order/all", method = RequestMethod.GET)
    public String allOrder(Model model) {
        List<Order> orderList = orderService.queryAllOrder();
        model.addAttribute("list", orderList);
        model.addAttribute("rows", Math.ceil(orderList.size() / 6.0));
        model.addAttribute("title", "所有订单");
        return "orderList";
    }

    @RequestMapping(value = "/order/query", method = RequestMethod.GET)
    public String queryOrder() {
        return "orderQuery";
    }

    @RequestMapping(value = "/order/query")
    public String doOrderQuery(HttpServletRequest request, Model model) throws UnsupportedEncodingException {
        request.setCharacterEncoding("UTF-8");
        String keyWord = request.getParameter("key");
        if (keyWord.equals("")) {
            model.addAttribute("msg", "请输入有效字符!");
            return "orderQuery";
        }
        List<Order> result = orderService.queryOrderByVIP(keyWord);
        model.addAttribute("list", result);
        model.addAttribute("rows", Math.ceil(result.size() / 6.0));
        model.addAttribute("title", "查询结果");
        return "orderList";
    }

    @RequestMapping(value = "/order/id={id}/detail", method = RequestMethod.GET)
    public String orderDetail(@PathVariable("id") Integer id, Model model) throws IOException {
        if (id == null) {
            return "redirect:account/order/all";
        }
        Order order = orderService.queryOrderById(id);
        if (order == null) {
            return "redirect:account/order/all";
        }
        ObjectMapper mapper = new ObjectMapper();
        String orderDetail = order.getDetail();
        List<OrderDetail> detailList = mapper
                .readValue(orderDetail, new TypeReference<List<OrderDetail>>() {
                });
        model.addAttribute("list", detailList);
        model.addAttribute("order", order);
        model.addAttribute("title", "账单详情");
/**
 * Project name: KTV-System
 * Package name: cn.edu.sysu.Web
 * Description:
 */

@Controller
@RequestMapping("/consume")
public class ConsumeController {

    @Autowired
    private RoomService roomService;

    @Autowired
    private FoodService foodService;

    @Autowired
    private OrderService orderService;

    @RequestMapping(value = "/id={id}", method = RequestMethod.GET)
    public String consumeDetail(@PathVariable("id") Integer id, Model model) {
        Order order = orderService.queryOrderById(id);
        if (order == null || order.getPay() == 1) {
            return "welcome";
        }
        List<Food> allFood = foodService.queryAllFood();
        model.addAttribute("oid", id);
        model.addAttribute("allfood", allFood);
        model.addAttribute("rows", Math.ceil(allFood.size() / 6.0));
        return "consume";
    }

    @RequestMapping(value = "/placeorder")
    public String placeAnOrder(HttpServletRequest request) throws IOException {
        request.setCharacterEncoding("UTF-8");
        String add = request.getParameter("jsonStr");
        String oid = request.getParameter("oid");
        String totalPrice = request.getParameter("total");
        Order order = orderService.queryOrderById(Integer.parseInt(oid));
        if (order == null || order.getPay() == 1) {
            return "welcome";
@Autowired
    private FoodService foodService;

    @Autowired
    private OrderService orderService;

    @RequestMapping(value = "/id={id}", method = RequestMethod.GET)
    public String consumeDetail(@PathVariable("id") Integer id, Model model) {
        Order order = orderService.queryOrderById(id);
        if (order == null || order.getPay() == 1) {
            return "welcome";
        }
        List<Food> allFood = foodService.queryAllFood();
        model.addAttribute("oid", id);
        model.addAttribute("allfood", allFood);
        model.addAttribute("rows", Math.ceil(allFood.size() / 6.0));
        return "consume";
    }

    @RequestMapping(value = "/placeorder")
    public String placeAnOrder(HttpServletRequest request) throws IOException {
        request.setCharacterEncoding("UTF-8");
        String add = request.getParameter("jsonStr");
        String oid = request.getParameter("oid");
        String totalPrice = request.getParameter("total");
        Order order = orderService.queryOrderById(Integer.parseInt(oid));
        if (order == null || order.getPay() == 1) {
            return "welcome";
        }
        ObjectMapper mapper = new ObjectMapper();
        CollectionType listType = mapper.getTypeFactory().constructCollectionType(ArrayList.class, OrderDetail.class);
        List<OrderDetail> addDetail = mapper.readValue(add, listType);
        List<OrderDetail> listDetail = mapper.readValue(order.getDetail(), listType);
        listDetail.addAll(addDetail);
        String newDetail = mapper.writeValueAsString(listDetail);
        double newPrice = Double.parseDouble(totalPrice) + order.getPrice();
        try {
            addDetail.forEach(orderDetail -> foodService.reduceStock(orderDetail.getName(), orderDetail.getNumber()));
            orderService.updateDetail(Integer.parseInt(oid), newDetail, newPrice);
        } catch (KTVException e) {
            return null;
        }
        return "consume";
    }

    @RequestMapping(value = "renew")
    public String renewRoom(HttpServletRequest request, Model model) throws IOException {
return "welcome";
        }
        List<Food> allFood = foodService.queryAllFood();
        model.addAttribute("oid", id);
        model.addAttribute("allfood", allFood);
        model.addAttribute("rows", Math.ceil(allFood.size() / 6.0));
        return "consume";
    }

    @RequestMapping(value = "/placeorder")
    public String placeAnOrder(HttpServletRequest request) throws IOException {
        request.setCharacterEncoding("UTF-8");
        String add = request.getParameter("jsonStr");
        String oid = request.getParameter("oid");
        String totalPrice = request.getParameter("total");
        Order order = orderService.queryOrderById(Integer.parseInt(oid));
        if (order == null || order.getPay() == 1) {
            return "welcome";
        }
        ObjectMapper mapper = new ObjectMapper();
        CollectionType listType = mapper.getTypeFactory().constructCollectionType(ArrayList.class, OrderDetail.class);
        List<OrderDetail> addDetail = mapper.readValue(add, listType);
        List<OrderDetail> listDetail = mapper.readValue(order.getDetail(), listType);
        listDetail.addAll(addDetail);
        String newDetail = mapper.writeValueAsString(listDetail);
        double newPrice = Double.parseDouble(totalPrice) + order.getPrice();
        try {
            addDetail.forEach(orderDetail -> foodService.reduceStock(orderDetail.getName(), orderDetail.getNumber()));
            orderService.updateDetail(Integer.parseInt(oid), newDetail, newPrice);
        } catch (KTVException e) {
            return null;
        }
        return "consume";
    }

    @RequestMapping(value = "renew")
    public String renewRoom(HttpServletRequest request, Model model) throws IOException {
        request.setCharacterEncoding("UTF-8");
        String hours = request.getParameter("hours");
        String oid = request.getParameter("oid");
        List<Food> allFood = foodService.queryAllFood();
        Order order = orderService.queryOrderById(Integer.parseInt(oid));
        if (order == null || order.getPay() == 1) {
            return "welcome";
        }
request.setCharacterEncoding("UTF-8");
        String keyWord = request.getParameter("key");
        if (keyWord.equals("")) {
            model.addAttribute("msg", "请输入有效字符!");
            return "foodQuery";
        }
        Food food = foodService.queryFoodByFName(keyWord);
        if (food == null) {
            model.addAttribute("msg", "未查询到相关食物信息!");
            return "foodQuery";
        }
        model.addAttribute("food", food);
        model.addAttribute("title", "查询结果");
        return "foodDetail";
    }

    @RequestMapping(value = "/food/add", method = RequestMethod.GET)
    public String addFood() {
        return "foodAdd";
    }

    @RequestMapping(value = "/food/add")
    public String doFoodAdd(HttpServletRequest request, Model model) throws UnsupportedEncodingException {
        request.setCharacterEncoding("UTF-8");
        String foodName = request.getParameter("name");
        String foodPrice = request.getParameter("price");
        String foodStock = request.getParameter("number");
        Food food = new Food();
        food.setFname(foodName);
        food.setPrice(Double.parseDouble(foodPrice));
        food.setStock(Integer.parseInt(foodStock));
        OperationStatus result;
        try {
            result = foodService.addFood(food);
        } catch (KTVException e) {
            model.addAttribute("succeed", false);
            model.addAttribute("msg", e.getMessage());
            return "foodAdd";
        }
        model.addAttribute("succeed", true);
        model.addAttribute("msg", result.getMessage());
        return "foodAdd";
    }

    @RequestMapping(value = "/food/delete")
    public String doFoodDelete(HttpServletRequest request, Model model) throws UnsupportedEncodingException {
        request.setCharacterEncoding("UTF-8");
        String fname = request.getParameter("fname");
        try {
            foodService.deleteFood(fname);
        } catch (KTVException e) {
List<OrderDetail> listDetail = mapper.readValue(order.getDetail(), listType);
        listDetail.addAll(addDetail);
        String newDetail = mapper.writeValueAsString(listDetail);
        double newPrice = Double.parseDouble(totalPrice) + order.getPrice();
        try {
            addDetail.forEach(orderDetail -> foodService.reduceStock(orderDetail.getName(), orderDetail.getNumber()));
            orderService.updateDetail(Integer.parseInt(oid), newDetail, newPrice);
        } catch (KTVException e) {
            return null;
        }
        return "consume";
    }

    @RequestMapping(value = "renew")
    public String renewRoom(HttpServletRequest request, Model model) throws IOException {
        request.setCharacterEncoding("UTF-8");
        String hours = request.getParameter("hours");
        String oid = request.getParameter("oid");
        List<Food> allFood = foodService.queryAllFood();
        Order order = orderService.queryOrderById(Integer.parseInt(oid));
        if (order == null || order.getPay() == 1) {
            return "welcome";
        }
        String room = order.getRoom();
        OperationStatus result;
        try {
            result = roomService.renewRoom(Integer.parseInt(room.substring(1)),
                    room.substring(0, 1), Integer.parseInt(hours));
            ObjectMapper mapper = new ObjectMapper();
            String detail = order.getDetail();
            CollectionType listType = mapper.getTypeFactory().constructCollectionType(ArrayList.class, OrderDetail.class);
            List<OrderDetail> listDetail = mapper.readValue(detail, listType);
            listDetail.get(0).setNumber(listDetail.get(0).getNumber() + Integer.parseInt(hours));
            listDetail.get(0).setTotalPrice(listDetail.get(0).getNumber() * listDetail.get(0).getUnitPrice());
            String newDetail = mapper.writeValueAsString(listDetail);
            double unitPrice = room.substring(0, 1).equals("L") ? 200.0 : room.substring(0, 1).equals("M") ? 130.0 : 80.0;
            double newPrice = order.getPrice() + Integer.parseInt(hours) * unitPrice;
            orderService.updateDetail(Integer.parseInt(oid), newDetail, newPrice);
        } catch (KTVException e) {
            model.addAttribute("oid", oid);
            model.addAttribute("allfood", allFood);
            model.addAttribute("rows", Math.ceil(allFood.size() / 6.0));
            model.addAttribute("succeed", false);
            model.addAttribute("msg", e.getMessage());
            return "consume";
        }
        model.addAttribute("oid", oid);
        model.addAttribute("allfood", allFood);
        model.addAttribute("rows", Math.ceil(allFood.size() / 6.0));
        model.addAttribute("succeed", true);
        model.addAttribute("msg", result.getMessage());
        return "consume";
    }
return "foodDetail";
    }

    @RequestMapping(value = "/food/increase")
    public String doFoodIncrease(HttpServletRequest request, Model model) throws UnsupportedEncodingException {
        request.setCharacterEncoding("UTF-8");
        String fname = request.getParameter("fname");
        String increase = request.getParameter("increase");
        OperationStatus result;
        Food food = foodService.queryFoodByFName(fname);
        try {
            result = foodService.increaseStock(fname, Integer.parseInt(increase));
            food = foodService.queryFoodByFName(fname);
        } catch (KTVException e) {
            model.addAttribute("food", food);
            model.addAttribute("succeed", false);
            model.addAttribute("msg", e.getMessage());
            return "foodDetail";
        }
        model.addAttribute("food", food);
        model.addAttribute("succeed", true);
        model.addAttribute("msg", result.getMessage());
        return "foodDetail";
    }

    @RequestMapping(value = "/food/id={id}/detail", method = RequestMethod.GET)
    public String foodDetail(@PathVariable("id") Integer id, Model model) {
        if (id == null) {
            return "redirect:account/food/all";
        }
        Food food = foodService.queryFoodById(id);
        if (food == null) {
            return "redirect:account/food/all";
        }
        model.addAttribute("food", food);
        model.addAttribute("title", "食物详情");
        return "foodDetail";
    }

    @RequestMapping(value = "/order", method = RequestMethod.GET)
    public String OrderManagement() {
String keyWord = request.getParameter("key");
        if (keyWord.equals("")) {
            model.addAttribute("msg", "请输入有效字符!");
            return "vipQuery";
        }
        VIP name = vipService.queryVIPByName(keyWord);
        VIP phone = vipService.queryVIPByPhone(keyWord);
        List<VIP> result = new ArrayList<>();
        if (name != null) {
            result.add(name);
        }
        if (phone != null) {
            result.add(phone);
        }
        if (result.size() == 0) {
            model.addAttribute("msg", "未查询到相关会员信息!");
            return "vipQuery";
        }
        model.addAttribute("list", result);
        model.addAttribute("rows", Math.ceil(result.size() / 6.0));
        model.addAttribute("title", "查询结果");
        return "vipList";
    }

    @RequestMapping(value = "/add", method = RequestMethod.GET)
    public String addVIP() {
        return "vipAdd";
    }

    @RequestMapping(value = "/add")
    public String doVIPAdd(HttpServletRequest request, Model model) throws UnsupportedEncodingException {
        request.setCharacterEncoding("UTF-8");
        String cname = request.getParameter("cname");
        String phone = request.getParameter("phone");
        VIP vip = new VIP();
        vip.setCname(cname);
        vip.setPhone(phone);
        OperationStatus result;
        try {
            result = vipService.addVIP(vip);
        } catch (KTVException e) {
            model.addAttribute("succeed", false);
            model.addAttribute("msg", e.getMessage());
            return "vipAdd";
/**
 * Project name: KTV-System
 * Package name: cn.edu.sysu.Web
 * Description: Room相关页面的Controller
 */

@Controller
@RequestMapping("/room")
public class RoomController {

    @Autowired
    private RoomService roomService;

    @Autowired
    private OrderService orderService;

    @Autowired
    private VIPService vipService;

    @RequestMapping(method = RequestMethod.GET)
    public String RoomManagement() {
        return "roomManagement";
    }

    @RequestMapping(value = "/all", method = RequestMethod.GET)
    public String allRoom(Model model) {
        List<Room> roomList = roomService.queryAllRoom();
        model.addAttribute("list", roomList);
return "roomDetail";
    }

}

/**
 * Project name: KTV-System
 * Package name: cn.edu.sysu.Web
 * Description: Account相关页面的Controller
 */

@Controller
@RequestMapping("/account")
public class AccountController {

    @Autowired
    private FoodService foodService;

    @Autowired
    private OrderService orderService;

    @RequestMapping(method = RequestMethod.GET)
    public String AccountManagement() {
        return "accountManagement";
    }

    @RequestMapping(value = "/food", method = RequestMethod.GET)
    public String FoodManagement() {
/**
 * Project name: KTV-System
 * Package name: cn.edu.sysu.Web
 * Description: Room相关页面的Controller
 */

@Controller
@RequestMapping("/room")
public class RoomController {

    @Autowired
    private RoomService roomService;

    @Autowired
    private OrderService orderService;

    @Autowired
    private VIPService vipService;

    @RequestMapping(method = RequestMethod.GET)
    public String RoomManagement() {
        return "roomManagement";
    }

    @RequestMapping(value = "/all", method = RequestMethod.GET)
    public String allRoom(Model model) {
        List<Room> roomList = roomService.queryAllRoom();
        model.addAttribute("list", roomList);
        model.addAttribute("rows", Math.ceil(roomList.size() / 6.0));
        model.addAttribute("title", "所有房间");
        return "roomList";
    }

    @RequestMapping(value = "/query", method = RequestMethod.GET)
    public String queryRoom() {
        return "roomQuery";
request.setCharacterEncoding("UTF-8");
        String fname = request.getParameter("fname");
        String increase = request.getParameter("increase");
        OperationStatus result;
        Food food = foodService.queryFoodByFName(fname);
        try {
            result = foodService.increaseStock(fname, Integer.parseInt(increase));
            food = foodService.queryFoodByFName(fname);
        } catch (KTVException e) {
            model.addAttribute("food", food);
            model.addAttribute("succeed", false);
            model.addAttribute("msg", e.getMessage());
            return "foodDetail";
        }
        model.addAttribute("food", food);
        model.addAttribute("succeed", true);
        model.addAttribute("msg", result.getMessage());
        return "foodDetail";
    }

    @RequestMapping(value = "/food/id={id}/detail", method = RequestMethod.GET)
    public String foodDetail(@PathVariable("id") Integer id, Model model) {
        if (id == null) {
            return "redirect:account/food/all";
        }
        Food food = foodService.queryFoodById(id);
        if (food == null) {
            return "redirect:account/food/all";
        }
        model.addAttribute("food", food);
        model.addAttribute("title", "食物详情");
        return "foodDetail";
    }

    @RequestMapping(value = "/order", method = RequestMethod.GET)
    public String OrderManagement() {
        return "orderManagement";
    }

    @RequestMapping(value = "/order/all", method = RequestMethod.GET)
    public String allOrder(Model model) {
        List<Order> orderList = orderService.queryAllOrder();
        model.addAttribute("list", orderList);
        model.addAttribute("rows", Math.ceil(orderList.size() / 6.0));
        model.addAttribute("title", "所有订单");
        return "orderList";
    }

    @RequestMapping(value = "/order/query", method = RequestMethod.GET)
    public String queryOrder() {

KTV管理系统Java课设_KTV管理系统Java课设


KTV管理系统Java课设_KTV管理系统Java课设_02


KTV管理系统Java课设_java_03


KTV管理系统Java课设_KTV管理系统Java课设_04


KTV管理系统Java课设_List_05


KTV管理系统Java课设_mysql_06


KTV管理系统Java课设_List_07


KTV管理系统Java课设_java_08


KTV管理系统Java课设_List_09

KTV管理系统Java课设_List_10