基于springboot的科技馆设备巡检系统

简介: 该系统为原创项目,创作于2022年3月,包含详细数据库设计。基于springboot技术,数据层为MyBatis,mysql数据库,具有完整的业务逻辑,适合选题:科技馆、设备、巡检、设备管理等。

项目介绍:



该系统为原创项目,创作于2022年3月,包含详细数据库设计。基于springboot技术,数据层为MyBatis,mysql数据库,具有完整的业务逻辑,适合选题:科技馆、设备、巡检、设备管理等。


项目功能:



系统共分为管理员,巡检员工,两种角色,管理员新增员工的时候,可以新增科技馆展品,可以新增巡检部管理员等
管理员:
员工管理:新增员工(不同角色),修改,查看,删除
信息管理:新建科技馆展品,删除,修改,查看
请假管理:查看请假,同意请假审批 
考勤管理:查看考勤情况
公告管理:新增公告,修改,查看,删除 
巡检员工:
个人信息管理:查看个人信息,修改
考勤管理:查看考勤情况,每日打卡
公告管理:查看
主要体现巡检功能,巡检人员到指定地点打卡


数据库表结构文档:



f4b95959bebd421e95cd91d8b532efd7.png


系统包含技术:



后端:springboot、mybatis

前端:bootstrap、layui、js、css等

开发工具:idea

数据库:mysql 5.7

JDK版本:jdk1.8


部分截图说明:



下面是登录


bffc080f3e5d4505898899c84b1be0e8.png


管理员-员工管理


25bdb714d26641b2820cf7f8e5adf736.png


管理员-信息管理


44c0d4b47e274995b2636a9cbd7b511b.png


管理员-请假管理


0838e37b40cb44f1b7194bfdc960330a.png


管理员-考勤管理


0b769ee8455840ac8fc8ff8bc5a6267f.png


员工-请假


8a611c2c0728474fa6cc311e424d4103.png


员工-考勤


d7506c709ae44304aec5f71aa331bfcf.png


部分代码:



拦截器


 @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        HttpSession session = request.getSession();
        if(session.getAttribute("ad") != null){
            return true;
        }
        // 不符合条件的给出提示信息,并转发到主页面
        request.setAttribute("msg", "您还没有登录,请先登录!");
        request.getRequestDispatcher("/gologin.jsp").forward(request, response);
        //返回true通过,返回false拦截
        return false;
    }


请假操作


 /**
     * 分页查询
     * pageIndex 当前页码
     * pageSize  显示条数
     */
    @RequestMapping(value = "/findLeaves")
    public String findLeaves(Integer pageIndex, Integer pageSize,String uid, Model model,HttpServletRequest request) {
        HttpSession session = request.getSession();
        if(session.getAttribute("ad") == null){
            session.setAttribute("msg", "对不起,请登录!");
            return "login";
        }
        Map mp = new HashMap();
        String type = (String)session.getAttribute("type");
        if(type.equals("02")){
            User u = (User)session.getAttribute("ad");
            mp.put("uid",u.getId());
        }else{
            mp.put("uid",uid);
        }
        PageInfo<Leaves> pageList = leavesService.findPageInfo(pageIndex,pageSize,mp);
        model.addAttribute("pageList",pageList);
        if(type.equals("02")){
            User u = (User)session.getAttribute("ad");
            Map mps = new HashMap();
            mps.put("id",u.getId());
            List<User> userList = userService.queryFilter(mps);
            model.addAttribute("userList",userList);
        }else{
            List<User> userList = userService.getAll();
            model.addAttribute("userList",userList);
        }
        return "LeavesList";
    }
    /**
     * 添加
     */
    @RequestMapping(value = "/addLeaves" ,method = RequestMethod.POST)
    @ResponseBody
    public String addLeaves( @RequestBody Leaves leaves) {
        try{
            leaves.setStatus("01");
            SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            leaves.setCreateTime(sf.format(new Date()));
            leavesService.addLeaves(leaves);
            return "200";
        }catch (Exception e){
            e.printStackTrace();
            return "201";
        }
    }
    /**
     * 状态变更
     */
    @RequestMapping( "/updateStatus")
    @ResponseBody
    public String updateStatus(String id,String status) {
        Leaves leavesById = leavesService.findLeavesById(id);
        leavesById.setStatus(status);
        int d = leavesService.updateLeaves(leavesById);
        return "200";
    }
    /**
     * 删除
     */
    @RequestMapping( "/deleteLeaves")
    @ResponseBody
    public String deleteLeaves(String id) {
        int d = leavesService.deleteLeaves(id);
        return "LeavesList";
    }
    /**
     * 修改
     */
    @RequestMapping( "/updateLeaves")
    @ResponseBody
    public String updateLeaves(@RequestBody  Leaves leaves) {
        try{
            leavesService.updateLeaves(leaves);
            return "200";
        }catch (Exception e){
            e.printStackTrace();
            return "201";
        }
    }


以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。


好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~


相关文章
|
12天前
|
Java 数据库连接 应用服务中间件
基于springboot的母婴健康交流系统
本平台旨在为新手父母提供专业、系统的婴幼儿健康知识与交流空间,整合权威资源,解决育儿信息碎片化与误导问题,支持经验分享与情感互助,助力科学育儿。
|
10天前
|
JavaScript Java 关系型数据库
基于springboot的电影购票管理系统
本系统基于Spring Boot框架,结合Vue、Java与MySQL技术,实现电影信息管理、在线选座、购票支付等核心功能,提升观众购票体验与影院管理效率,推动电影产业数字化发展。
|
14天前
|
JavaScript Java 关系型数据库
基于springboot的小区车位租售管理系统
针对城市化进程中小区停车难问题,本文设计基于SpringBoot的车位租售管理系统,结合Vue前端与MySQL数据库,实现车位信息数字化、租售流程自动化。系统支持在线查询、申请、支付及数据统计,提升管理效率与用户体验,促进资源优化配置。
|
13天前
|
JavaScript Java 关系型数据库
基于springboot的家政服务预约系统
随着社会节奏加快与老龄化加剧,家政服务需求激增,但传统模式存在信息不对称、服务不规范等问题。基于Spring Boot、Vue、MySQL等技术构建的家政预约系统,实现服务线上化、标准化与智能化,提升用户体验与行业效率,推动家政服务向信息化、规范化发展。
|
8天前
|
存储 JavaScript Java
基于springboot的大学公文收发管理系统
本文介绍公文收发系统的研究背景与意义,分析其在数字化阅读趋势下的必要性。系统采用Vue、Java、Spring Boot与MySQL技术,实现高效、便捷的公文管理与在线阅读,提升用户体验与信息处理效率。
|
10天前
|
人工智能 JavaScript Java
基于springboot的大学生创新能力比赛系统
本研究聚焦大学生能力培养系统,结合AI、大数据、区块链及VR/AR等前沿技术,构建个性化、全过程的能力发展框架。通过Java、Spring Boot、MySQL与Vue技术实现系统开发,旨在提升学生综合素质与社会竞争力,推动高等教育改革与创新发展。
|
17天前
|
搜索推荐 算法 JavaScript
基于springboot的健康饮食营养管理系统
本系统基于Spring Boot、Vue与MySQL技术,融合大数据与AI算法,构建个性化健康饮食管理平台。结合用户身体状况、目标需求,智能推荐营养方案,助力科学饮食与健康管理。
|
11天前
|
JavaScript Java 数据库连接
基于springboot的网球场场地预约系统
本系统基于Vue、Spring Boot、Java等技术,构建智能化网球场预约平台,提升用户体验与场地利用率,推动体育产业数字化发展。
|
15天前
|
JavaScript Java 关系型数据库
基于springboot的校内跑腿管理系统
针对校园跑腿服务效率低、信任难等问题,本研究设计基于Spring Boot与Vue的校内跑腿管理系统,融合MySQL数据库与智能化调度技术,实现任务发布、智能匹配、实时追踪与评价反馈一体化,提升服务效率与质量,助力智慧校园建设。
|
15天前
|
JavaScript Java 关系型数据库
基于springboot的快递分拣管理系统
本系统基于SpringBoot框架,结合Java、MySQL与Vue技术,构建智能化快递分拣管理平台。通过自动化识别、精准分拣与实时跟踪,提升分拣效率与准确性,降低人力成本,推动快递行业向智能化、高效化转型,助力电商物流高质量发展。