java+mysql+servlet+机房管理系统

机房管理系统有管理员,审核员和学生3类用户。具有七大功能模块。系统用例图,如图4.1所示:

 代码已经上传github,下载地址:https://github.com/21503882/machine-room
 
图1.1 系统用例图
1.2 主要功能需求讲解
1.2.1 用户登陆功能
系统有管理员,审核员和学生3类用户,它们都是一个登陆界面,各有不同的权限。用户登陆后,系统提取用户权限,按照不同的用户权限执行不同的操作。
1.2.2 修改密码功能
在人员信息管理中模块,学生可以修改自己的登陆密码。管理员只能在数据库中进行手动修改密码。
1.2.3 审核功能
在审核信息管理模块中,审核员登陆后对管理员所编排的课程进行逐条的审核,若通过,当管理员进入后就不能再对课表进行修改等功能,若审核不通过,可以加上审核评语,管理员根据审核评语对课表进行修改。
1.2.4 排课功能
在排课信息管理模块中,管理员逐条的对班级信息、课程信息、机房信息等基本表中的信息进行选择。还要对周次、节数等信息进行选择,这又对所有信息进行选择才能添加到课表中去。
1.2.5 人员管理功能
管理员可以对各种权限的人员进行添加,修改、删除。同时管理员可以对所添加的人员进行设置权限。
1.3 细节分析
在班级信息管理模块中,对所录入的信息如果班级编号相同,则给出提示该条记录已经存在。在课程信息管理模块中,如过所录入的是同一门课程,则给出相应的提示。在排课管理模块中,如果当录入的课程、班级、机房、周数、节数同时相同时,则不能录入,并跳到错误页面给出相应的提示。在录入机房时,机房中有一个机房总人数的字段,在班级信息管理模块中有个班级人数,在录入课表时,当录入的班级总人数大于机房的人数,则提示错误。
用户登陆界面,如图6.1所示
 
图1.2 用户登陆界面
 
图1.3 班级信息管理界面
 
图1.4 课程信息管理界面
 
图1.5 机房信息管理界面
 
图1.6 电脑信息管理界面
 
图1.7 审核信息管理界面
 
图1.8 排课管理模块界面
 
人员管理

 
审核员登录
 
班级管理
 
审核管理
 
学生登录

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import javax.servlet.http.HttpSession;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import cn.hungry.pojo.Cart;
import cn.hungry.pojo.Category;
import cn.hungry.pojo.Food;
import cn.hungry.pojo.Order;
import cn.hungry.pojo.OrderItem;
import cn.hungry.pojo.User;
import cn.hungry.service.CartService;
import cn.hungry.service.CategoryService;
import cn.hungry.service.FoodService;
import cn.hungry.service.OrderItemService;
import cn.hungry.service.OrderService;
import cn.hungry.service.UserService;


@Controller
public class ForeController {
    
    @Autowired
    CategoryService categoryService;
    @Autowired
    FoodService foodService;
    @Autowired
    UserService userService;
    @Autowired
    CartService cartService;
    @Autowired
    OrderItemService orderItemService;
    @Autowired
    OrderService orderService;
    
    
        
    @RequestMapping("home")
    public String home(Model model,HttpSession session) {
        List<Category> cs = categoryService.list();
       
        foodService.fill(cs);        
        User user = (User) session.getAttribute("user");
        model.addAttribute("user",user);
        model.addAttribute("cs",cs);
        
        return "fore/home";
    }
    
    @RequestMapping("shoppingCart")
    public String shoppingCart(Model model,HttpSession session) {
        //session 获取用户id    
        User user = (User) session.getAttribute("user");
        
        
        List<OrderItem> ois = orderItemService.listCartByUser(user.getId());
        Float totalPrice = orderItemService.getTotalPrice(ois);
        /*for(OrderItem oi : ois) {
            Float orderItemPrice = (Float)(oi.getNumber()*oi.getFood().getPrice());
            System.out.println(orderItemPrice);
            oi.setOrderItemPrice(orderItemPrice);
        }*/
        int foodNumber = orderItemService.getCartCountByUid(user.getId());
        model.addAttribute("user",user);
        model.addAttribute("foodNumber",foodNumber);
        model.addAttribute("totalPrice", totalPrice);
        model.addAttribute("ois", ois);        
        return "fore/shoppingCart";
    }
    
    @RequestMapping("search")
    public String search() {        
        return "fore/search";
    }
        
    @RequestMapping("toSearch")
    public String toSearch(Model model,HttpSession session,String keyword) {        
        List<Food> fs = foodService.search(keyword);
        User user = (User) session.getAttribute("user");
        model.addAttribute("user",user);
        model.addAttribute("fs",fs);        
        return "fore/showSearch";
    }
    
    @RequestMapping("order")
    public String order(Model model,HttpSession session) {
        //session 获取用户id
        User user = (User) session.getAttribute("user");
        
        List<Order> os = orderService.listByUser(user.getId());
        //有查询所有有oid的orderitem
        for(Order o : os) {
            o.setOis(orderItemService.listOrderByUser(user.getId(),o.getId()));
        }
        
        model.addAttribute("user",user);
        model.addAttribute("os", os);
                        
        return "fore/order";
    }
    
    @RequestMapping("confirmReceive")
    public String confirmReceive(Order o) {    
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
        o.setConfirm_date(df.format(new Date()));    
        orderService.setConfirm_date(o);            
        return "redirect:order";
    }
    
    @RequestMapping("deleteOrder")
    public String deleteOrder(Order o) {        
        orderService.delete(o);            
        return "redirect:order";
    }
    
    
    
    @RequestMapping("confirmPay")
    public String confirmPay(int oid) {
        
        orderService.setPay(oid);
        
        return "redirect:order";
        
    }
    
    @RequestMapping("pay")
    public String pay(int oid,Model model) {
        System.out.println("pay"+oid);
        //List<OrderItem> ois = orderItemService.listByUser(1);
        
        Float totalPrice = orderService.getTotalPrice(oid);
        
        System.out.println("Float"+totalPrice);
        model.addAttribute("oid", oid);
        model.addAttribute("totalPrice", totalPrice);
        return "fore/pay";
    }
    
    @RequestMapping("deleteCartItem")
    public String deleteCartItem(int oiid,HttpSession session) {
       
        User user = (User) session.getAttribute("user");
       
        orderItemService.deleteCartItem(user.getId(),oiid);
        return "redirect:shoppingCart";    
    }
    
    
    @ResponseBody
    @RequestMapping("creatOrder")
    public int creatOrder(Order order,HttpSession session) {        
        SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd");//设置日期格式
        SimpleDateFormat df2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
        
        //session 获取用户id
        User user = (User) session.getAttribute("user");
        
        order.setUid(user.getId());
        // + (int)((Math.random()*9+1)*1000000)+""
        order.setOrder_code(df.format(new Date()) + (int)((Math.random()*9+1)*1000));
        order.setCreate_date(df2.format(new Date()));// new Date()为获取当前系统时间
                
        
        orderService.add(order);
        System.out.println(order.getId());
        if(orderItemService.creatOrder(order.getId(), user.getId())) {
            return order.getId();
        }else {
            return 0;
        }
        
        
    }
    
    @RequestMapping("forefood")
    public String food(int id, Model model,HttpSession session) {
        
        //session 获取用户id
        User user = (User) session.getAttribute("user");    
        int cartCount = orderItemService.getCartCountByUid(user.getId());
        
        Food fs = foodService.get(id);    
        model.addAttribute("cartCount", cartCount);
        model.addAttribute("fs",fs);
        return "fore/food";        
    }
    
    /*
     *
     */
    @ResponseBody
    @RequestMapping("addCart")
    public Integer addCart(OrderItem orderItem,HttpSession session) {
        
        //session 获取用户id
        User user = (User) session.getAttribute("user");
        
        
     
        OrderItem oi = orderItemService.checkFidExistCart(user.getId(), orderItem.getFid());
        if(oi==null) {
            orderItem.setUid(user.getId());
           
            if(orderItemService.addCart(orderItem)) {
              
                int cartCount = orderItemService.getCartCountByUid(user.getId());
                System.out.println(cartCount);
                
                return cartCount;
            }else {
                return null;
            }
        }else {
            orderItem.setUid(user.getId());
          
            orderItem.setNumber(oi.getNumber()+orderItem.getNumber());
          
            if(orderItemService.updateNumber(orderItem)) {
               
                int cartCount = orderItemService.getCartCountByUid(user.getId());
                System.out.println(cartCount);
                
                return cartCount;
            }
            return null;            
        }
        
        
    }
        
    @RequestMapping("CategoryPage")
    public String CategoryPage(Food f,Model model) {        
        List<Food> fs = foodService.list(f.getCid());
        Category cs = categoryService.get(f.getCid());
        model.addAttribute("cs",cs);
        model.addAttribute("fs",fs);                
        return "fore/CategoryPage";
    }
    
    
    
}
代码已经上传github,下载地址:https://github.com/21503882/machine-room

发布了38 篇原创文章 · 获赞 10 · 访问量 4158

猜你喜欢

转载自blog.csdn.net/QQ21503882/article/details/101701153