基于javaweb+mysql的KTV管理系统(java+SSM+HTML+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/ 登录

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

适用

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

        return admin_productImage_list(pid,request);
    }
    //添加房间图片
    @RequestMapping(value = "/admin_productImage_add",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public ModelAndView admin_productImage_add(@RequestParam("filepath") MultipartFile filepath,@RequestParam("type") String type,@RequestParam("pid") int pid,HttpServletRequest request) throws IOException {
        Productimage productimage = new Productimage();
        productimage.setPid(pid);
        productimage.setType(type);
        Integer imageId = productService.insertImage(productimage);
        // Mac系统参考路径 注:此处必须为本地src及target下category的路径
        String path1 = "";
        String path2 = "";
        if (type.equals("type_detail")){
            // windows系统参考路径 注:此处必须为本地src及target下productDetail的路径
            path1 = imgPath+"src\\main\\webapp\\img\\productDetail\\"+imageId.toString()+".jpg";
            path2 = imgPath+"target\\Gotrip-1.0-SNAPSHOT\\img\\productDetail\\"+imageId.toString()+".jpg";
            // Mac系统参考路径
//            path1 = imgPath+"src/main/webapp/img/productDetail/"+imageId.toString()+".jpg";
//            path2 = imgPath+"target/Gotrip-1.0-SNAPSHOT/img/productDetail/"+imageId.toString()+".jpg";
            filepath.transferTo(new File(path1));
            FileUtils.copyFile(new File(path1),new File(path2));
        }
        if (type.equals("type_single")){
            // windows系统参考路径
            path1 = imgPath+"src\\main\\webapp\\img\\productSingle\\"+imageId.toString()+".jpg";
    }
    //提交更新房间属性值
    @RequestMapping(value = "/admin_product_updatePropertyValue",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public String admin_product_updatePropertyValue(Integer id, Integer pvid, String value){
        productService.updatePropertyValue(pvid, value);
        return "success";
    }
    //提交房间修改信息
    @RequestMapping(value = "/admin_product_update",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public ModelAndView admin_product_update(Product product){
        productService.update(product);
            dataList.add(objs);
        }
        String fileName = "exportUserExcel";
        //执行导出
        ExportExcel.exportExcel(request,response,fileName, rowsName, dataList, "yyyy-MM-dd HH:mm:ss");
    }
    //删除用户
    @RequestMapping(value = "/admin_user_delete",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public ModelAndView admin_user_delete(Integer id, HttpServletRequest request){
        try{
            userService.deleteByPrimaryKey(id);
        }catch (Exception e){
     * @return
     * @throws Exception
     */
    @RequestMapping(value = "/forebuyone",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public  ModelAndView forebuyone(HttpServletRequest request, Orderitem orderitem) throws Exception{
        User user = (User) request.getSession().getAttribute("user");
        Map map =  orderItemService.buyOne(user, orderitem);
        request.getSession(true).setAttribute("order",map.get("order"));
        request.getSession(true).setAttribute("pid",orderitem.getPid());
        Product product = productService.getProduct(orderitem.getPid());
        product.setSaleCount(product.getSaleCount()+orderitem.getNumber());
        product.setStock(product.getStock()-orderitem.getNumber());
        productService.update(product);
        modelAndView.addObject("ois",map.get("ois"));
        modelAndView.addObject("total",((Order)map.get("order")).getTotal());
        modelAndView.setViewName("/buy");
        return modelAndView;
    }
    @RequestMapping(value = "/home",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public ModelAndView home(HttpServletRequest request) throws  Exception{
        List<Category> c = categoryService.listTwoCategory();
        for(Category cs: c){
            cs.setProducts(productService.listProducts(cs.getId()));
        }
        modelAndView.addObject("cs",c);
        modelAndView.addObject("o",origin_order);
        modelAndView.setViewName("/confirmPay");
        return modelAndView;
    }
    /**
     * 确认支付,订单状态:waitReview
     * @param oid
     * @return
     * @throws Exception
     */
    @RequestMapping(value = "/foreorderConfirmed", produces = "text/html; charset=UTF-8")
    @ResponseBody
    public ModelAndView confirm(Integer oid) throws Exception{
        Order order = orderService.getOrder(oid);
        order.setStatus("waitReview");
        orderService.update(order);
        modelAndView.setViewName("orderConfirmed");
        return 0;
    }
    /**
     * 预定房间按钮点击后的操作,此时便创建了order,订单状态:waitConfirm
     * @param request
     * @param orderitem
     * @return
     * @throws Exception
     */
    @RequestMapping(value = "/forebuyone",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public  ModelAndView forebuyone(HttpServletRequest request, Orderitem orderitem) throws Exception{
        User user = (User) request.getSession().getAttribute("user");
        Map map =  orderItemService.buyOne(user, orderitem);
        request.getSession(true).setAttribute("order",map.get("order"));
        request.getSession(true).setAttribute("pid",orderitem.getPid());
        Product product = productService.getProduct(orderitem.getPid());
        product.setSaleCount(product.getSaleCount()+orderitem.getNumber());
        product.setStock(product.getStock()-orderitem.getNumber());
        productService.update(product);
        modelAndView.addObject("ois",map.get("ois"));
        modelAndView.addObject("total",((Order)map.get("order")).getTotal());
        modelAndView.setViewName("/buy");
        return modelAndView;
        mav.setViewName("admin/listCategory");
        return mav;
    }
    //打印页面
    @RequestMapping(value = "/admin_print_category_list",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public ModelAndView printListCategory(){
        List<Category> categories = categoryService.listAll();
        mav.addObject("thecs", categories);
        mav.setViewName("admin/printListCategory");
        return mav;
    }
    //导出分类EXCEL文件
    @RequestMapping(value = "/admin_export_category_list",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public void exportListCategory(HttpServletRequest request, HttpServletResponse response) throws Exception{
        List<Category> categories = categoryService.listAll();
        order.setOrderItems(orderItemService.getOrderItem(order.getId()));
        modelAndView.addObject("o",order);
        modelAndView.setViewName("confirmPay");
        return modelAndView;
    }
    /**
     * 跳转到支付页面
     * @return
     * @throws Exception
     */
    @RequestMapping(value = "/forealipay",produces = "text/html; charset=UTF-8")
    @ResponseBody
    public ModelAndView alipay() throws Exception{
        modelAndView.setViewName("alipay");
        return modelAndView;
    }
    /**
     * 跳转到评价页面
     * @param oid:订单id
     * @param request
     * @return
     * @throws Exception
     */
    @RequestMapping(value = "/forereview", produces = "text/html; charset=UTF-8")
    @ResponseBody
    public ModelAndView review(int oid, HttpServletRequest request)throws Exception{
        Order order = orderService.getOrder(oid);
    //修改订单信息页面
    @RequestMapping(value = "/admin_order_edit",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public ModelAndView admin_order_edit(Integer id, HttpServletRequest request){
        Order order = orderService.getOrder(id);
        request.getSession().setAttribute("oid",id);
        mav.addObject("c",order);
        mav.setViewName("/admin/editOrder");
        return mav;
    }
    //条件查询订单
    @RequestMapping(value = "/select_order_list",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public ModelAndView select_order_list(@RequestParam("status") String status, @RequestParam("min") Integer min, @RequestParam("max") Integer max){
        if(status==null || status.equals("")){
            status = "%";
        }
        if(min==null){
            min = -1;
        }
        if(max==null){
            max = Integer.MAX_VALUE;
        }
        List<Order> orders = orderService.selectOrder(status,min,max);
        for(Order order:orders){
        }
        modelAndView.addObject("cs",c);
        modelAndView.setViewName("home");
        return modelAndView;
    }
    /**
     * 创建订单;订单状态:waitPay
     * @param order
     * @param request
     * @return
     * @throws Exception
     */
    @RequestMapping(value = "/forecreateOrder",produces = "text/html;charset=UTF-8")
    @ResponseBody
    public ModelAndView buy(Order order, HttpServletRequest request) throws  Exception{
        /**确定支付**/
        Order origin_order = (Order)request.getSession().getAttribute("order");
        origin_order.setOrderCode(UUID.randomUUID().toString().replace("-", "").toLowerCase());
        origin_order.setReceiver(order.getReceiver());
        origin_order.setMobile(order.getMobile());
        origin_order.setUserMessage(order.getUserMessage());
        origin_order.setStatus("waitPay");
        origin_order.setPayDate(new Date());
        if(order.getReceiver()==null || order.getReceiver().equals("")){
            User user = (User)request.getSession().getAttribute("user");

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值