基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统

项目介绍

疫情数据可视化分析系统采用Django框架,基于mysql开发,实现了首页、个人中心、用户管理、员工管理、疫情信息管理、核酸检测管理、检测预约管理、检测结果管理、行程信息管理、系统管理等内容进行管理,本系统具有良好的兼容性和适应性,为用户提供更多的疫情数据可视化分析信息,也提供了良好的平台,从而提高系统的核心竞争力。

通过前面的功能分析可以将疫情数据可视化分析系统的功能分为管理员、员工和用户三个部分,系统的主要功能包括首页、个人中心、用户管理、员工管理、疫情信息管理、核酸检测管理、检测预约管理、检测结果管理、行程信息管理、系统管理等内容。任何用户只要进入系统不需登录也可浏览到的信息,后台管理是针对已登录的用户看到满意的疫情数据可视化分析信息而设计的。
1、一般用户的功能及权限
所谓一般用户就是指还没有注册的过客,他们可以浏览主页面上的信息。但如果有中意的疫情数据可视化分析信息时,要登录注册,只有注册成功才有的权限。
2、管理员的功能及权限
用户信息的添加和管理,疫情数据可视化分析详细信息添加和管理,文档信息添加和管理以及系统信息管理,这些都是管理员的功能。

基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第1张图片

开发环境

开发语言:Python
数据库 :MySQL
系统架构:B/S
后端框架:Django
前端框架:Vue
开发工具:Pycharm
支持定做:Java/PHP/Python/Android/小程序/Vue/爬虫/C#/Asp.net

系统截图

基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第2张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第3张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第4张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第5张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第6张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第7张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第8张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第9张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第10张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第11张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第12张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第13张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第14张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第15张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第16张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第17张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第18张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第19张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第20张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第21张图片
基于Python+Django+Vue+MYSQL的疫情数据可视化分析系统_第22张图片

部分代码

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

        error = yonghu.createbyreq(yonghu, yonghu, req_dict)
        if error != None:
            msg['code'] = crud_error_code
            msg['msg'] = "用户已存在,请勿重复注册!"
        return JsonResponse(msg)

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

        datas = yonghu.getbyparams(yonghu, yonghu, req_dict)
        if not datas:
            msg['code'] = password_error_code
            msg['msg'] = mes.password_error_code
            return JsonResponse(msg)
        try:
            __sfsh__= yonghu.__sfsh__
        except:
            __sfsh__=None

        if  __sfsh__=='是':
            if datas[0].get('sfsh')=='否':
                msg['code']=other_code
                msg['msg'] = "账号已锁定,请联系管理员审核!"
                return JsonResponse(msg)
                
        req_dict['id'] = datas[0].get('id')
        return Auth.authenticate(Auth, yonghu, req_dict)


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

        return JsonResponse(msg)


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

        req_dict = request.session.get("req_dict")

        error = yonghu.updatebyparams(yonghu,yonghu, req_dict)

        if error != None:
            msg['code'] = crud_error_code
            msg['msg'] = error
        return JsonResponse(msg)



def yonghu_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']  = yonghu.getbyparams(yonghu, yonghu, req_dict)[0]

        return JsonResponse(msg)


def yonghu_default(request):

    if request.method in ["POST", "GET"]:
        msg = {"code": normal_code,"msg": mes.normal_code, "data": {}}
        req_dict = request.session.get("req_dict")
        req_dict.update({"isdefault":"是"})
        data=yonghu.getbyparams(yonghu, yonghu, req_dict)
        if len(data)>0:
            msg['data']  = data[0]
        else:
            msg['data']  = {}
        return JsonResponse(msg)

def yonghu_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")

        #获取全部列名
        columns=  yonghu.getallcolumn( yonghu, yonghu)

        #当前登录用户所在表
        tablename = request.session.get("tablename")


            #authColumn=list(__authTables__.keys())[0]
            #authTable=__authTables__.get(authColumn)

            # if authTable==tablename:
                #params = request.session.get("params")
                #req_dict[authColumn]=params.get(authColumn)

        '''__authSeparate__此属性为真,params添加userid,后台只查询个人数据'''
        try:
            __authSeparate__=yonghu.__authSeparate__
        except:
            __authSeparate__=None

        if __authSeparate__=="是":
            tablename=request.session.get("tablename")
            if tablename!="users" and 'userid' in columns:
                try:
                    req_dict['userid']=request.session.get("params").get("id")
                except:
                    pass

        #当项目属性hasMessage为”是”,生成系统自动生成留言板的表messages,同时该表的表属性hasMessage也被设置为”是”,字段包括userid(用户id),username(用户名),content(留言内容),reply(回复)
        #接口page需要区分权限,普通用户查看自己的留言和回复记录,管理员查看所有的留言和回复记录
        try:
            __hasMessage__=yonghu.__hasMessage__
        except:
            __hasMessage__=None
        if  __hasMessage__=="是":
            tablename=request.session.get("tablename")
            if tablename!="users":
                req_dict["userid"]=request.session.get("params").get("id")



        # 判断当前表的表属性isAdmin,为真则是管理员表
        # 当表属性isAdmin=”是”,刷出来的用户表也是管理员,即page和list可以查看所有人的考试记录(同时应用于其他表)
        __isAdmin__ = None

        allModels = apps.get_app_config('main').get_models()
        for m in allModels:
            if m.__tablename__==tablename:

                try:
                    __isAdmin__ = m.__isAdmin__
                except:
                    __isAdmin__ = None
                break

        # 当前表也是有管理员权限的表
        if  __isAdmin__ == "是":
            if req_dict.get("userid"):
                del req_dict["userid"]

        else:
            #非管理员权限的表,判断当前表字段名是否有userid
            if tablename!="users" and "userid" in yonghu.getallcolumn(yonghu,yonghu):
                req_dict["userid"] = request.session.get("params").get("id")

        #当列属性authTable有值(某个用户表)[该列的列名必须和该用户表的登陆字段名一致],则对应的表有个隐藏属性authTable为”是”,那么该用户查看该表信息时,只能查看自己的
        try:
            __authTables__=yonghu.__authTables__
        except:
            __authTables__=None

        if __authTables__!=None and  __authTables__!={}:
            try:
                del req_dict['userid']
            except:
                pass
            for authColumn,authTable in __authTables__.items():
                if authTable==tablename:
                    params = request.session.get("params")
                    req_dict[authColumn]=params.get(authColumn)
                    break
        msg['data']['list'], msg['data']['currPage'], msg['data']['totalPage'], msg['data']['total'], \
        msg['data']['pageSize']  =yonghu.page(yonghu, yonghu, req_dict)

        return JsonResponse(msg)

你可能感兴趣的:(Python项目,python,django,vue,mysql)