功能介绍

结合用户的使用需求,本系统采用运用较为广泛的Python语言,DJANGO框架,vue语言等关键技术,并在pycharm开发平台上设计与研发本系统。同时,使用MySQL数据库,设计实体-联系图和数据表格,用于更好的存储和管理数据信息的数据仓库。
以文档data.csv里面的数据进行分析操作
用户需求(要能申请软著,要有源代码和数据库)
依据具体的调查分析,因为该系统面向的是学校,因而本系统客户分为学校管理员、教职工管理员、食堂管理员、学生、及系统软件管理员。该系统适用于普及了学生在学校内消费一律使用一卡通的学校。
学校管理员可以登录系统软件。登录后,他们可以查看并导出学校学生一卡通消费记录阶段性分析报告、消费预警异常学生信息表、学生心理健康阶段性报告、心理预警异常学生信息表、光盘行动学生留言数据分析报告。
教职工管理员可以登录系统软件,登录后可以查看班级学生一卡通消费记录阶段性分析报告、消费预警异常学生信息表、学生心理阶段性报告、心理预警异常学生信息表。
食堂管理员可以登录系统软件,登录后可以查看光盘行动学生留言数据分析报告。
学生可以登录系统软件,维护个人信息,绑定一卡通;对食堂提出建议,进行留言,以供食堂改进;进入系统树洞匿名表达近期心情,探讨一些事情,反映宿舍或者学校的状况(匿名为选择性匿名,只有学校管理员和教职工可以看到实名,以便于校园管理),以供学校管理员以及教职工查看心理健康阶段性报告。
系统软件管理员可以登录系统软件,登录后可以加上、删掉、查询和变更客户和学校单位管理员的帐户。总得来说,用例图如下图3.1、图3.2和图3.3所显示。
功能逻辑关系:
系统内设三个栏目,分别是心灵驿站,光盘行动,勤俭节约。
心灵驿站栏目为学生提供树洞,以供学生匿名留言,自由讨论,学生留言数据作为心理健康分析数据,以供系统分析,从而能够为教职工和学校管理员提供学生心理阶段性报告。
光盘行动栏目为食堂提供改进建议,以供学生留言,学生留言数据作为光盘行动数据分析的样本数据,一共系统分析,从而能够为食堂管理员提供学生光盘行动学生留言数据分析报告。
勤俭节约栏目为教职工和学校管理员提供学生一卡通消费记录阶段性报告,从而为学校评定助学金等提供可靠真实依据,以预防假贫困生以不当手段取得助学金的事情发生。

图3.1 客户用例图
由图3.1得出的主要用例描述为查看学生信息的用例描述,关注学生的用例描述,食堂留言的用例描述,树洞讨论的用例描述,账号管理的用例描述。以下对这几种描述进行简单介绍:
(1)查看学生信息:学校管理员或教职工管理员进到校园管理系统网页页面,在输入框中检索学生学号等基本信息模糊查找时如表3.1所示。

(2) 关注学生:学校管理员或教职工管理员进到系统网页页面并登陆,关注学生的用例描述如表3.2所显示。

(3)食堂留言:学生进入系统页面并登录,在光盘行动栏目可以对指定食堂商家进行分类留言或讨论。

表3.3 购买项目的用例描述

(4)树洞讨论:学生进入系统页面并登录,在心灵驿站栏目进行留言或讨论,如表3.4所示。

表3.4 树洞讨论的用例描述

(5)账号管理:顾客进到系统页面并登陆,本人页面改动私人信息和PIN码以及绑定操作的用例描述如表3.5所显示。

表3.5 账号管理的用例描述

具体实现截图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

技术栈和环境说明

本课题使用Python语言进行开发。代码层面的操作主要在PyCharm中进行,将系统所使用到的表以及数据存储到MySQL数据库中,方便对数据进行操作本课题基于WEB的开发平台
开发语言:Python
框架:flask/django的都有
Python版本:python3.7.7
数据库:mysql
数据库工具:Navicat
开发软件:PyCharm
浏览器:谷歌浏览器
本系统的开发与设计是基于vue为前端页面核心框架为django/flask,技术方面主要采用了Html、Js、CSS3、python、Mysql。

通过使用关键技术研发本系统,并根据需求分析得出用户的主要需求,设计与实现本系统的功能模块。再通过系统测试,主要是功能测试,对系统进行纠错和改进,完善系统的不足之处,使得最后设计出的系统更能够符合使用者的需求。

python语言

Python的扩展性也很好,其可以利用c语言编写模块,编译链接到解释器,从而使Python能够调用该c模块中的接口。反之,C语言也能将Python解释器连接到C中,从而在C中调用Python。
因此Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言,其设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。

框架介绍

Flask是目前十分流行的web框架,采用Python编程语言来实现相关功能。Flask框架的主要特征是核心构成比较简单,但具有很强的扩展性和兼容性,程序员可以使用Python语言快速实现一个网站或Web服务。一般情况下,它不会指定数据库和模板引擎等对象,用户可以根据需要自己选择各种数据库。
Django也是一个MVC框架。但是在Django中,控制器接受用户输入的部分由框架自行处理,所以 Django 里更关注的是模型(Model)、模板(Template)和视图(Views)

技术路线

②前端开发选择:Vue。
②后端开发选择:python、django/flask。
③数据库选择:MySQL。
④开发工具选择:pycharm、Navicat for MySQL。

解决的思路

前端的数据收集及可视化研究,熟悉Django框架,python编程设计语法。
解决的问题是如何更好的设计一个简易而方便操作前端的页面,解决数据间的关系,调整数据表的结构
该系统采用面向对象的程序设计方法,该方法是一种基于结构分析的以数据为中心的程序设计方法,其主要思想是将数据及处理这些数据的操作都封装在一个叫做类的数据结构里。这种方法描述的现实世界模型贴切、合理,更符合人们认识世界的思维方法。

性能/安全/负载方面

在设计系统时,充分考虑到当前系统可能存在的最高并发数量,并由此选择对应的硬件服务器和对应的宽带容量,上传下载的速率等问题。对于系统的查询速度已经控制在两秒之内。同时考虑当遇到高并发时是否会影响查询时间。
安全性需求,对于所有的管理系统来说,数据安全都是非常重要的,要严格控制其数据的安全性,防止外泄和被不法分子盗取。所以,系统应该设置不同的操作权限,并加强数据库的加密管理和访问控制,并定期对数据进行维护,及时进行数据备份。

核心代码部分展示

# coding:utf-8
__author__ = "ila"

from django.http import JsonResponse

from .users_model import users
from util.codes import *
from util.auth import Auth
import util.message as mes


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)

详细视频演示

请联系我获取更详细的演示视频

源码获取方式

技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。

文章下方名片联系我即可~

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐