基于前后端分离java的云创网络办公系统(源码+文档+部署讲解等)

博主主页:猫头鹰源码
博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作
​主要内容:毕业设计(Javaweb项目|小程序|Python|HTML|数据可视化|SSM|SpringBoot|Vue|Jsp|PHP等)、简历模板、学习资料、面试题库、技术咨询、文档编写和辅导、论文降重、长期答辩答疑辅导、腾讯会议一对一专业讲解辅导答辩
☑️ 文末联系获取

👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟

2024年最新计算机软件毕业设计选题大全:数百热门选题推荐✅

2024最新精品毕业设计项目,已整理自取
感兴趣可以先收藏起来,以防走丢,有任何选题、文档编写、代码问题也可以咨询我们
项目不是烂大街的模板项目,手写,代码适合学生学习和二次开发

其它优秀案例看文末

项目介绍

该系统为原创项目,创作于2025年,包含参考文档。基于springboot技术,数据层为MyBatis,mysql数据库,具有完整的业务逻辑,适合选题:网络、网络办公、云上办公、办公、Java项目、javaweb等。

功能详情

管理员:
登陆,维护信息、修改密码
统计展示:统计帖子数、文档数、评论数、用户数,可以用折线图展示每日新增文档数和每天的评论数
用户管理:维护用户的信息
论坛管理:维护所有的帖子信息,如果有违规的,可以删除帖子
评论管理:可以看到所有人的评论信息
考勤管理:查看所有用户的考勤信息
请假管理:审核用户的请假
文档管理:可以维护文档信息


用户:
登陆、注册、修改个人信息、修改密码
我的帖子:用户可以发布帖子,可以维护自己的帖子
论坛交流:可以查看所有用户的帖子,可以搜索帖子,评论帖子
评论管理:可以看到自己的评论,可以回复别人的评论
考勤管理:可以看到自己的考勤记录,每日可以上下班打卡(上班时间是9:00-18:00)
请假管理:用户可以请假,等管理员审批
文档管理:可以维护文档,文档包含标题、内容、发布人这些字段

系统包含技术

后端:springboot、mybatis
前端:layui、js、css等
开发工具:idea
数据库:mysql 5.7
JDK版本:jdk1.8
语言:Java语言
是否Maven:是
页面类型:html

部分截图

登录

首页

统计分析

用户管理

帖子管理

论坛交流

评论

部分代码

/**
     * 后端分页查询
     */
    @GetMapping("/selectPage")
    @ResponseBody
    public Result selectPage(Attendance attendance, Integer limit, Integer page, HttpSession session){
        String type = (String) session.getAttribute("type");
        if(type.equals("02")){
            User user = (User) session.getAttribute("userInfo");
            attendance.setUserId(user.getId());
        }
        PageHelper.startPage(page,limit);
        List<Attendance> list = attendanceService.queryCondition(attendance);
        PageInfo<Attendance> pages = new PageInfo<>(list);
        return Result.success(list,pages.getTotal(),0);
    }

    /**
     * 后端查询所有
     */
    @PostMapping("/queryAll")
    @ResponseBody
    public Result queryAll(Attendance attendance) {
        List<Attendance> list = attendanceService.queryCondition(attendance);
        return Result.success(list);
    }

    /**
     * 后端通过主键查询单条数据
     */
    @GetMapping("/selectOne")
    @ResponseBody
    public Result selectOne(Integer id) {
        Attendance attendance = attendanceService.queryById(id);
        return Result.success(attendance);
    }

    /**
     * 新增
     */
    @PostMapping("/add")
    @ResponseBody
    public Result add(Attendance attendance) {
        Date date = new Date();
        attendance.setCreateTime(date);
        attendanceService.insert(attendance);
        return Result.success("操作成功");
    }

    /**
     * 上班打卡
     */
    @PostMapping("/upInfo")
    @ResponseBody
    public Result upInfo(HttpServletRequest request) {
        // 获取当前用户
        HttpSession session = request.getSession();
        User user = (User) session.getAttribute("userInfo");
        if(user==null){
            return Result.error("登录失效,请重新登录");
        }
        //获取当前时间并格式化
        Date date = new Date();
        SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
        SimpleDateFormat sf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String dataForm = sf.format(date);
        String dataForm2 = sf2.format(date);
        // 判断是否已打卡,根据用户id和当前时间查询
        Attendance attendance = new Attendance();
        attendance.setUserId(user.getId());
        attendance.setCheckin(dataForm);
        List<Attendance> attendances = attendanceService.queryCondition(attendance);
        if (attendances.size()>0) {
            return Result.error("请勿重复打卡");
        }
        //判断是否异常打卡,比如下班打卡,仍然点击上班打卡
        Attendance attendance2 = new Attendance();
        attendance2.setUserId(user.getId());
        attendance2.setCheckout(dataForm);
        List<Attendance> attendances2 = attendanceService.queryCondition(attendance2);
        if (attendances2.size()>0) {
            return Result.error("请勿异常打卡");
        }
        //判断状态是否迟到 上班时间是上午9点,不要使用 date.getHours()方式
        SimpleDateFormat sf3 = new SimpleDateFormat("HH:mm:ss");
        String dataForm3 = sf3.format(date);
        if (dataForm3.compareTo("09:00:00")<0) {
            attendance.setStatus("01");
        }else{
            attendance.setStatus("02");
        }
        attendance.setUserId(user.getId());
        attendance.setCheckin(dataForm2);
        attendance.setCreateTime(date);
        attendanceService.insert(attendance);
        return Result.success("操作成功");
    }

其他优秀案例

 



案例3

项目获取

项目不是烂大街的模板项目,手写,代码适合学生学习和二次开发
大家点赞、收藏、关注、评论啦 、查看👇🏻下方名片👇🏻

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猫头鹰源码(同名B站)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值