python毕业设计基于Django教学楼日常管理系统

一、项目介绍

  
教学楼日常管理系统是使用Python开发的一款管理系统,数据存储到MySQL数据库中,前台使用vue对界面进行设计和实现。本文先充分调查教学楼日常管理系统的需求分析,深入剖析系统应有的功能,并设计完善的数据库。利用成熟的开发技术完成编码工作,最后进行投入前的测试工作。最终,完成前端和后端的教学楼日常管理系统的功能,主要包括学生管理、教师管理、教学楼管理、教室管理、设备管理、设备巡检管理、通知管理、系统管理等,通过前后台实现数据的传递。

关键词:Python;Django;教学楼日常管理管理系统;MySQL

二、开发环境

开发语言:Python
python框架:django
软件版本:python3.7/python3.8
数据库:mysql 5.7或更高版本
数据库工具:Navicat11
开发软件:PyCharm/vs code
前端框架:vue.js

————————————————

三、功能介绍

   
本基于互联网的教学楼日常管理系统,围绕信息系统的典型功能展开。学生可选择对空余教室,指定教室,指定教师,指定课程中的一种进行查询。教师除学生的功能外,还有调课功能,发布通知功能。管理员除了学生与老师的功能外,还可以对学生和教师的信息进行增删改查功能,还需要数据统计功能,临时信息发布功能。
所以从用户角度,本系统包括系统管理员、老师和学生三种用户,下面对这三种用户进行介绍。
2.2.1 管理员用户需求分析
管理员具有系统最高权限,管理员登录系统主要完成的功能包括,学生管理、教师管理、教学楼管理、教室管理、设备管理、设备巡检管理、通知管理、系统管理。
其中管理员用户用例图如图2-1所示:
在这里插入图片描述

图2-1 管理员用户管理用例分析图
2.2.2 老师用户需求分析
老师用户登录系统后,查看个人信息,点击修改个人密码,教室管理、设备管理、教室预约管理、设备申请管理、调课管理、通知管理。
其中老师用户用例图如图2-2所示:
在这里插入图片描述

图2-2 教师用户管理用例分析图
2.2.3 学生用户需求分析
学生主要功能是教室查询、教室预约查询、调课查询、通知查看、个人中心。
其中学生用户用例图如图2-3所示:
在这里插入图片描述

图2-3 学生管理用例分析图

教学楼日常管理系统包括学生管理、教师管理、教学楼管理、教室管理、设备管理、设备巡检管理、通知管理、教室预约管理、设备申请管理、调课管理等。在用户角色上分为管理员、老师和学生。
其中教学楼日常管理系统的系统模块图如图3-2所示。
在这里插入图片描述

图3-2 系统整体功能模板图
三种不同的用户都具有登录的功能,而登录的流程设计流程一样,都是通过查询对应的数据库表中的数据来验证是否具有权限,通过验证后进行功能的操作。
主要用于教学楼管理人员、教师、工作人员的业务办理、工作安排、信息交流等目的,实现一个便捷、高效的业务管理和交流平台。

四、核心代码

部分代码:


def users_login(request):
    if request.method in ["POST", "GET"]:
        msg = {'code': normal_code, "msg": mes.normal_code}
        req_dict = request.session.get("req_dict")
        if req_dict.get('role')!=None:
            del req_dict['role']
        datas = users.getbyparams(users, users, req_dict)
        if not datas:
            msg['code'] = password_error_code
            msg['msg'] = mes.password_error_code
            return JsonResponse(msg)

        req_dict['id'] = datas[0].get('id')
        return Auth.authenticate(Auth, users, req_dict)


def users_register(request):
    if request.method in ["POST", "GET"]:
        msg = {'code': normal_code, "msg": mes.normal_code}
        req_dict = request.session.get("req_dict")

        error = users.createbyreq(users, users, req_dict)
        if error != None:
            msg['code'] = crud_error_code
            msg['msg'] = error
        return JsonResponse(msg)


def users_session(request):
    '''
    '''
    if request.method in ["POST", "GET"]:
        msg = {"code": normal_code,"msg":mes.normal_code, "data": {}}

        req_dict = {"id": request.session.get('params').get("id")}
        msg['data'] = users.getbyparams(users, users, req_dict)[0]

        return JsonResponse(msg)


def users_logout(request):
    if request.method in ["POST", "GET"]:
        msg = {
            "msg": "退出成功",
            "code": 0
        }

        return JsonResponse(msg)


def users_page(request):
    '''
    '''
    if request.method in ["POST", "GET"]:
        msg = {"code": normal_code, "msg": mes.normal_code,
               "data": {"currPage": 1, "totalPage": 1, "total": 1, "pageSize": 10, "list": []}}
        req_dict = request.session.get("req_dict")
        tablename = request.session.get("tablename")
        try:
            __hasMessage__ = users.__hasMessage__
        except:
            __hasMessage__ = None
        if __hasMessage__ and __hasMessage__ != "否":

            if tablename != "users":
                req_dict["userid"] = request.session.get("params").get("id")
        if tablename == "users":
            msg['data']['list'], msg['data']['currPage'], msg['data']['totalPage'], msg['data']['total'], \
            msg['data']['pageSize'] = users.page(users, users, req_dict)
        else:
            msg['data']['list'], msg['data']['currPage'], msg['data']['totalPage'], msg['data']['total'], \
            msg['data']['pageSize'] = [],1,0,0,10

        return JsonResponse(msg)


五、效果图

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

六、文章目录

目录

1 绪论 1
1.1 背景和意义 1
1.2 研究综述和主要方法 2
1.2.1 开发工具介绍 2
1.2.2 开发技术介绍 2
1.3 主要内容和结构安排 4
1.3.1 主要内容 4
1.3.2 结构安排 4
2 需求分析 5
2.1 可行性分析 5
2.1.1 技术可行性分析 5
2.1.2 经济可行性分析 5
2.1.3 操作可行性分析 5
2.2 功能性需求分析 5
2.2.1 管理员用户需求分析 6
2.2.2 老师用户需求分析 6
2.2.3 学生用户需求分析 7
2.2.4 教学楼及教室信息需求分析 8
2.2.5 非功能性需求分析 8
3 系统设计 8
3.1 系统结构设计 9
3.2 系统功能设计 10
3.3 数据库设计 11
3.3.1 E-R图 11
3.3.2 数据库结构 12
4 系统实现 18
4.1 用户登录的实现 18
4.2 用户功能的实现 18
4.3 教室的实现 20
4.4 教师预约管理的实现 20
4.5 设备管理的实现 22
4.6 教师调课管理的实现 23
4.7 个人中心的实现 24
5 系统测试 25
5.1 测试说明 25
5.2 测试实例 26
5.3 测试结论 27
6 结论 28
参考文献 30
致 谢 32

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值