本高校教师科研成果管理系统采用的数据库是Mysql,使用python技术开发。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。实现首页、个人中心、教师管理、院级管理员管理、论文分类管理、课题分类管理、专利分类管理、著作分类管理、科研成果管理、论文登记管理、课题登记管理、专利登记管理、著作登记管理、院内评比管理等信息管理功能,从而达到对高校教师科研成果管理系统信息的高效管理。
教学和科研是高等院校工作中最重要的两个环节,其中科研工作的好坏,体现了一个高校的科技创新能力和学术研究水平。所以,对学校科研情况的管理是整个高等院校管理的核心和基础。随着高校科研工作不断的发展和深入,高校科研管理部门的工作量和责任也与日俱增,面对各项复杂的科研项目、种类繁多的数据和报表,简单借助word、excel等通用办公软件,手工或半手工进行数据收集、数据传递、数据处理、报表生成等已不能满足现实管理的需要,该种方式难以及时、有效地反映最新的科研情况,不仅增加了科研统计工作量,还在一定程度上影响了领导科学决策。因此,构建一种快捷、高效的科研成果统计系统,对促进高校科研管理工作模式的转变,提高学院科研管理工作水平,具有重要的意义。实时在线是网络信息管理的优势,实时在线的科研成果统计,方便高等学校及时、有效地进行科研成果统计和管理。
本python+nodejs+vue+Elementui+mysql系统可以定制,源码开源,运动稳定,采用pycharm开发,基于web的B/S架构设计完成,前端使用vue.js+Elementui进行前后端分离,前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状态管理,Ajax实现前后端通信,Element UI组件库使页面快速成型充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点,覆盖知识面大,非常适合作为计算机专业的同学参考资料进行学习.
Python 是一个高层次的脚本语言结合了解释性、编译性、互动性和面向对象的。Python 的设计,相比其他语言经常使用英文关键字和其他语言的一些标点符号,它具有比其他语言更有特色语法结构,具有很强的可读性。
目 录
摘 要 I
ABSTRACT II
目 录 III
第1章 绪论 1
1.1背景及意义 1
1.2 国内外研究概况 1
1.3 研究的内容 1
第2章 相关技术 3
2.1 Python简介 3
2.2 Django框架 3
2.3 MySQL数据库 3
第3章 系统分析 5
3.1 需求分析 5
3.2 系统可行性分析 5
3.2.1技术可行性:技术背景 5
3.2.2经济可行性 5
3.2.3操作可行性: 6
3.3 项目设计目标与原则 6
3.4系统流程分析 7
3.4.1操作流程 7
3.4.2添加信息流程 8
3.4.3删除信息流程 9
第4章 系统设计 11
4.1 系统体系结构 11
4.2开发流程设计 12
4.3 数据库设计原则 13
4.4 数据表 15
第5章 系统详细设计 22
5.1管理员功能模块 22
5.2教师功能模块 27
5.3院级管理员功能模块 29
第6章 系统测试 31
6.1系统测试的目的 31
6.2系统测试方法 31
6.3功能测试 32
结 论 33
致 谢 34
参考文献 35
- #coding:utf-8
- __author__ = "ila"
- import base64, copy, logging, os, time, xlrd
- from django.http import JsonResponse
- from django.apps import apps
- from django.db.models.aggregates import Count,Sum
- from .models import jiaoshi
- from util.codes import *
- from util.auth import Auth
- from util.common import Common
- import util.message as mes
- from django.db import connection
- import random
- from django.core.mail import send_mail
- from alipay import AliPayConfig, AliPay
- from django.conf import settings
- from django.shortcuts import redirect
-
- def jiaoshi_register(request):
- if request.method in ["POST", "GET"]:
- msg = {'code': normal_code, "msg": mes.normal_code}
- req_dict = request.session.get("req_dict")
-
-
- error = jiaoshi.createbyreq(jiaoshi, jiaoshi, req_dict)
- if error != None:
- msg['code'] = crud_error_code
- msg['msg'] = "用户已存在,请勿重复注册!"
- return JsonResponse(msg)
-
- def jiaoshi_login(request):
- if request.method in ["POST", "GET"]:
- msg = {'code': normal_code, "msg": mes.normal_code}
- req_dict = request.session.get("req_dict")
-
- datas = jiaoshi.getbyparams(jiaoshi, jiaoshi, req_dict)
- if not datas:
- msg['code'] = password_error_code
- msg['msg'] = mes.password_error_code
- return JsonResponse(msg)
- try:
- __sfsh__= jiaoshi.__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, jiaoshi, req_dict)
-
-
- def jiaoshi_logout(request):
- if request.method in ["POST", "GET"]:
- msg = {
- "msg": "登出成功",
- "code": 0
- }
-
- return JsonResponse(msg)
-
-
- def jiaoshi_resetPass(request):
- '''
- '''
- if request.method in ["POST", "GET"]:
- msg = {"code": normal_code, "msg": mes.normal_code}
-
- req_dict = request.session.get("req_dict")
-
- columns= jiaoshi.getallcolumn( jiaoshi, jiaoshi)
-
- try:
- __loginUserColumn__= jiaoshi.__loginUserColumn__
- except:
- __loginUserColumn__=None
- username=req_dict.get(list(req_dict.keys())[0])
- if __loginUserColumn__:
- username_str=__loginUserColumn__
- else:
- username_str=username
- if 'mima' in columns:
- password_str='mima'
- else:
- password_str='password'
-
- init_pwd = '123456'
-
- eval('''jiaoshi.objects.filter({}='{}').update({}='{}')'''.format(username_str,username,password_str,init_pwd))
-
- return JsonResponse(msg)