




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
辽宁财贸学院本科毕业设计(2017届本科毕业生)题目:基于web的审批系统设计学生姓名:学生学号:系别:经济系专业名称:信息管理与信息系统指导教师:二一七年五月摘要本系统利用python开发技术,以MySQL作为后台数据库,完成校园审批系统的设计。全文主要分为6个部分:第1部分主要介绍设计背景以及现实意义;第2部分主要论述了开发工具以及数据库的选择;第3部分主要分析了系统的各项功能和性能需求,介绍系统功能;第4部分展示具体模块设计和数据库设计;第5部分总结。关键词:审批 python MySQL 全套设计加扣 3012250582目录1 绪论11.1 审批系统研究的背景以及现实意义11.1.1 审批系统的研究背景11.1.2 审批系统的现实意义12 开发工具以及数据库的选择12.1 python技术介绍12.2 MySQL数据库技术43.系统的各项功能和性能需求,介绍系统功能53.1审批系统的使用53.2详细设计64系统具体模块设计和数据库设计94.1模块设计94.2系统设计105总结10参 考 文 献111 绪论 审批系统,通过网络办公实现在网络平台上审批假条,提高工作效率、减少资源浪费。1.1 审批系统研究的背景以及现实意义1.1.1 审批系统的研究背景随着信息需求的增长,传统的信息交流方式早已不能满足企业对传递和处理大量信息的需要,因此亟需把网络技术渗透到企业的日常工作。而网络办公与管理的应用则满足了企业对办公网络化、自动化的管理需求,不仅可以极大地提高企业内部的管理水平,并加快内部信息流通,确保信息有效利用,增强企业的核心竞争力。20世纪70年代中期在企业和行政机关中兴起使用公自动化系统,而后因其给企业和单位带来的便利而迅速被用于中小型企业单位中,其是采用一系列现代化的办公设备和先进的通信技术,广泛、全面、迅速地收集、整理、加工、存储和使用信息,使企业内部人员方便快捷地共享信息,高效地协同工作;改变过去复杂、低效的手工办公方式,为科学管理和决策服务,从而达到提高行政效率的目的。一个企业实现办公自动化的程度也是衡量其实现现代化管理的标准。1.1.2 审批系统的现实意义我国办公自动化的发展过程中,办公自动化建设取得了很多成绩,同时也暴露了很多问题,如投资大、效果不明显、水平低、重复建设多、硬件投入多、软件投入少、模拟手工作业增加管理负担等。 办公人员大都非计算机专业人员,他们的计算机知识尤其是计算机操作系统及硬件知识的缺乏,导致办公效率的降低,也造成系统管理员工作量的增大如系统维护及软件升级。 成本计算机技术的发展可谓一日千里,软硬件的升级换代将更加的频繁,这就意味着系统后期成本居高不下。 当今政府、企事业对信息的价值有了更深的认识,因而对信息的存储和保密也就更加重视。而今,病毒的破坏、黑客的入侵等都将对系统信息以致使的打击。 传统纸质的审批方式浪费了很多人力、物力、财力,且效率低下,增加工作人员压力和办公经费。2 开发工具以及数据库的选择本系统用python开发,MySQL作为后台数据库平台。2.1 python技术介绍2.1.1概述Python1 (英国发音:/pan/ 美国发音:/pan/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议。Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。 Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C+)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C+重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。2.1.2发展历程 自从20世纪90年代初Python语言诞生至今,它已被逐渐广泛应用于系统管理任务的处理和Web编程。 Python的创始人为Guido van Rossum。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承。之所以选中Python(大蟒蛇的意思)作为该编程语言的名字,是因为他是一个叫Monty Python的喜剧团体的爱好者。 ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido 认为是其非开放造成的。Guido 决心在Python 中避免这一错误。同时,他还想实现在ABC 中闪现过但未曾实现的东西。 就这样,Python在Guido手中诞生了。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unix shell和C的习惯。2.1.3应用以及优缺点 Python 已经成为最受欢迎的程序设计语言之一。2011年1月,它被TIOBE编程语言排行榜评为2010年度语言。自从2004年以后,python的使用率呈线性增长 。 由于Python语言的简洁性、易读性以及可扩展性,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计课程。例如卡耐基梅隆大学的编程基础、麻省理工学院的计算机科学及编程导论就使用Python语言讲授。众多开源的科学计算软件包都提供了Python的调用接口,例如著名的计算机视觉库OpenCV、三维可视化库VTK、医学图像处理库ITK。而Python专用的科学计算扩展库就更多了,例如如下3个十分经典的科学计算扩展库:NumPy、SciPy和matplotlib,它们分别为Python提供了快速数组处理、数值运算以及绘图功能。因此Python语言及其众多的扩展库所构成的开发环境十分适合工程技术、科研人员处理实验数据、制作图表,甚至开发科学计算应用程序。优点 简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。 易学:Python极其容易上手,因为Python有极其简单的说明文档 。 速度快:Python 的底层是用 C 语言写的,很多标准库和第三方库也都是用 C 写的,运行速度非常快。 免费、开源:Python是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。 高层语言:用Python语言编写程序的时候无需考虑诸如如何管理你的程序使用的内存一类的底层细节。 可移植性:由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE、PocketPC、Symbian以及Google基于linux开发的android平台。 解释性:一个用编译性语言比如C或C+写的程序可以从源文件(即C或C+语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。 运行程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。 在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。这使得使用Python更加简单。也使得Python程序更加易于移植。 面向对象:Python既支持面向过程的编程也支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。 可扩展性:如果需要一段关键代码运行得更快或者希望某些算法不公开,可以部分程序用C或C+编写,然后在Python程序中使用它们。 可嵌入性:可以把Python嵌入C/C+程序,从而向程序用户提供脚本功能。 丰富的库:Python标准库确实很庞大。它可以帮助处理各种工作,包括正则表达式、 文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。 规范的代码:Python采用强制缩进的方式使得代码具有较好可读性。而Python语言写的程序不需要编译成二进制代码。缺点 单行语句和命令行输出问题:很多时候不能将程序连写成一行,如import sys;for i in sys.path:print i。而perl和awk就无此限制,可以较为方便的在shell下完成简单程序,不需要如Python一样,必须将程序写入一个.py文件。独特的语法 这也许不应该被称为局限,但是它用缩进来区分语句关系的方式还是给很多初学者带来了困惑。即便是很有经验的Python程序员,也可能陷入陷阱当中。最常见的情况是tab和空格的混用会导致错误,而这是用肉眼无法分别的。 运行速度慢:这里是指与C和C+相比。2.2 MySQL数据库技术2.2.1概述MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。MySQL数据库由瑞典MySql公司开发和维护的一个精巧的SQL(Structured Query Language,结构化查询语言)关系型数据库管理系统(DBMS)。MySQL数据早在90年代中期就开始出现,经过近10年的发展,它已经成为一个功能相对强大,技术非常成熟,应用广泛的数据库。由于它的强大功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了众多程序员和企业级用户的青睐,特别是它的数据库文件小巧,存放便捷,数据库管理系统运行简单,为建立基于数据库的动态网站提供了强大动力,并且得到了广大网站开发人缘的认可。 MySQL数据库提供完善的SQL-92标准的结构化查询语言,如select、delete、insert、update语句。通过MySQL在操作系统上建立的ODBC可以轻松将这些SQL语句翻译成为相应的MySQL数据库管理系统指令并对数据库进行管理。如图10所示。 图10 MySQL数据库管理系统原理 作为关系型数据,MySQL完全支持对于各种数据库对象的管理和便捷操作,这里包括表(Table)、视图(View)、存储过程(Stored Procedure)和触发器(Trigger)等。MySQL数据库提供完全的可视化管理环境,能够直观便捷而快速地对数据库的各种数据库对象和元素进行修改和管理。当然,MySQL数据库也完全支持ADO(ActiveX Data Objects)数据库应用程序的数据库访问技术。ADO它被设计用来同新的数据库访问层OLE DB Provider一起协同工作,以提供通用数据访问(Universal Data MySQL)。OLE DB是一个底层的数据库访问接口,用它可以访问各种数据源,包括传统的关系数据库。ADO封装了OLE DB程序中使用的大量COM接口,所以是一种高层访问技术。所以MySQL非常适合PHP技术开发动态网站。3系统的各项功能和性能需求,介绍系统功能3.1审批系统的使用3.1.1使用主体分为教师登录和学生登录,每个主体有自己相对应的用户名和登录密码,有相对应的操作权限。3.1.2优点以往纸质假条可能存在审批不及时、出错难以修改、假条丢失损坏等情况,电子假条则解决了这些问题。3.2详细设计1. 首页2. 用户登录,分为学生和教师3. 状态显示审批系统设计中涉及到的登录主体十分简单,记录数目较多,在这里主要呈现登录界面、增加记录、删除记录、状态显示。1、审批系统首页首页用户名、登录密码、是否记录密码,如图所示。系统首页2、 学生登录自己账号可以查看自己的假条记录,如图所示点击添加请假,若时间不符合逻辑会出现错误提示,正确才可以添加成功。成功以后,最上面一行出现最新请假记录切换账号,输入相应登录名和密码,和上述操作相同,最底端同样显示记录条数和页数登录主体为教师时,同样输入用户名和密码,具有批准和拒绝的权限以批准为例,点击批准以后,审批状态发生变化主体切换,点击电源按钮,可以重新进入登录页面,点击退出,即为退出系统。4系统具体模块设计和数据库设计4.1模块设计数据库表格有leaves和users,以及表的结构 模块包括:姓名、专业、班级、请假时间起、请假时间止、类型、事由。4.2系统设计后端API包括:登录页面:get(/login)获取用户信息:post(/api_login)检测用户身份:get(/)请假信息录入:post(/api/leaves)删除请假记录:post(/api/leaves/delete/id)批准判断:post(/api/leaves/approve/id)拒绝判断:post(/api/leaves/reject/id)注销页:get(/signout)获取记录:get(/register)提交注册信息:post(/api/register)提交登录信息:post(/api/login)管理:get(/manage/categories)获取:get(/manage)5总结本系统采用了python技术、MySQL数据库,本系统开发的目的是审批系统设计的平台。充分发扬了电子办公便捷、高效的特点,实现了较为完整的审批系统的各项功能,包括用户注册;用户登录和退出;假条的添加、修改和删除。 完成这个系统,我得到了很大的锻炼,从系统相关技术的资料搜集和学习,网站的可行性分析,需求分析,到架构设计,数据库设计,详细设计,再到具体的编码和开发、辅助工具的使用,全是在导师的指导和同班同学的帮助下由个人完成的,它涉及到了方方面面。在之前所学知识的基础上,这次毕业设计让我对开发一个工程有了更为深刻的认识。在系统的设计和开发过程中,我不断学习新的软件设计知识和开发技术
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 门诊承包协议合同范本
- 保利华府购房合同范本
- 青少年成长观察课程合同
- 耕地承包出租合同范本
- 安全生产总承包合同
- 员工餐厅服务合同范本
- 整人收费服务合同范本
- 特种空调采购合同范本
- 温控大棚租赁合同范本
- 简易板房销售合同范本
- 锂离子电池正极材料研究进展
- 二手房屋买卖物品交接清单
- 技师论文 变频器的维修与保养
- 非标自动化设备项目进度表
- 诊断学教学胸部查体
- 桥梁安全事故案例警示
- YY/T 1095-2015肌电生物反馈仪
- SB/T 10460-2008商用电开水器
- GB/T 9124.1-2019钢制管法兰第1部分:PN系列
- GA 1800.2-2021电力系统治安反恐防范要求第2部分:火力发电企业
- 欣旺集团种禽养殖管理制度手册
评论
0/150
提交评论