摘 要
互联网的兴起从本质上改变了整个社会对信息的管理方式,国内各大市场从上个世纪90年代互联网兴起之时,就产生了通过网络进行系统管理的想法。但是由于在互联网上的信誉难以认证、网络的法规政策不健全等一系列的原因,限制了网上信息管理发展的步伐。进入21世纪以后,随着整个社会的发展、进步,制约网上交流的各个瓶颈问题逐一被击破,比如QQ、微信等各大平台也纷纷的加入到洪潮之中。
开药系统是在的数据存储主要通过MySQL。用户在使用应用时产生的数据通过Python语言传递给数据库。通过此方式促进开药信息管理和数据传输效率,提供一个内容丰富、功能多样、易于操作的平台。述了数据库的设计,系统的详细设计部分主要论述了几个主要模块的详细设计过程。
【关键词】开药; Python;MySQL数据库;
Abstract
The rise of the Internet has essentially changed the way the whole society manages information. Since the rise of the Internet in the 1990s, the idea of system management through the network has come into being in each major domestic market. However, due to the credibility of the Internet is difficult to authenticate, network regulations and policies are not perfect and a series of reasons, limited the pace of the development of online information management. After entering the 21st century, with the development and progress of the whole society, various bottleneck problems restricting online communication have been broken one by one, such as QQ, wechat and other major platforms have also joined the flood.
The prescribing system is in the data store mainly through MySQL. The data generated by the user while using the application is passed to the database through the Python language. In this way, the efficiency of prescribing information management and data transmission is promoted, and a platform with rich content, diverse functions and easy operation is provided. Describes the design of the database, the detailed design part of the system mainly discusses the detailed design process of several main modules.
【 Key words 】 prescribing drugs; Python; MySQL database;
目 录
1 引言
4
1.1 选题背景
4
1.2 研究目的及意义
4
1.3 研究的主要内容
4
2 平台开发相关技术
5
2.1 Python语言
5
2.2 Django框架
5
2.3 MySQL数据库
5
2.4 B/S架构
7
3系统需求分析
8
3.1 功能需求分析
8
3.2性能需求分析
10
3.3 系统可行性分析
10
3.3.1 技术可行性
10
3.3.2 操作可行性
11
3.3.3运行可行性
11
3.3.4社会可行性
11
3.4系统流程图分析
11
3.4.1 登录流程图
11
3.4.2 添加新用户流程图
12
4 系统软件的总体设计
14
4.1系统的基本要求
14
4.2 系统开发目标
14
4.3 系统总体架构设计
14
4.4 系统数据库的设计
15
4.4.1数据库设计原则
15
4.4.2数据库E/R图
15
4.4.3 数据库表
17
5 系统软件功能的具体实现
22
5.1系统注册登录实现
22
5.2管理员模块实现
23
5.3医生功能实现
27
5.4患者功能实现
28
6 系统测试与运行维护
29
6.1系统测试的目的
29
6.2测试用例
29
6.3系统运行与维护
30
结论
32
参考文献
33
致 谢
34
1 引言
1.1 选题背景
由于互联网技术的快速发展,使得各部门都是以数字化、信息化、无纸化的发展趋势,随着趋势的发展,各种决策系统、辅助系统也应运而生,其中,开药系统就是其中的重要组成部分[1]。
计算机技术出现之前人们使用的管理方法已无法满足现代人们的需求,即人工来完成开药的管理,这种方法存在着工作效率低以及保密性差,易出错等问题,同时还会生成大量的文本和数据,在检索数据时极大不便。而此次设计的开药系统,拥有对信息的快速检索、保存了大量的开药信息,具有信息系统保存的稳定性高和维护成本低等优点,对开药管理的工作效率也能提高。它不仅可以提高管理人员的工作效率,减少工作人员的负担,也可以使开药管理工作的质量得到保障,提高管理水平。
1.2 研究目的及意义
本课题的提出意在开发一个基于django的开药系统,它的出发点必须是实用,操作简单,界面友好,让有用户需求的人群共享同一个信息渠道,实现用户的双方线上、线下互动。近年来,随着网络平台和电子媒体越来越深入的合作,用户获得资讯的速度越来越快。同时也能够在第一时间查询到想要的信息,因此给各用户带来了巨大的经济效益,互联网的出现本身存在的节省资源,提高工作效率以及它的庞大的市场需求等特点,用户也就越来越重开药系统带来的便利。
1.3 研究的主要内容
作为一个开药的网络系统,数据流量是非常大的,所以系统的设计必须满足使用方便,操作灵活的要求。所以在设计开药系统应达到以下目标:
(1)界面要美观友好,检索要快捷简易,数据存储要安全可靠;
(2)全面展示所有系统信息管理,并可推荐展示最新开药信息;
(3)便于医生和患者快捷地进行开药信息查询;
(4)医生和患者可以随时修改自己的基本资料;
(5)实现开药信息共享的功能;
2 平台开发相关技术
2.1 Python语言
Python不仅可以取代NCL,还可以实现NCL不具备的许多功能,极大地改善了用户体验,这已成为未来的趋势。与Highcharts和eCharts等Web前端可视化工具相比,Python在气象数据可视化领域更为专业。
Python目前支持使用第三方库,如netCDF4、Numpy、Matplotlib、Canopy和Xarry,以解析和可视化NetCDF格式的数据,从而使Pythone易于处理天气数据。对这些主要的第三方库进行了介绍如下表:
表2.1 主要python库
2.2 Django框架
Django用Python编写,属于开源Web应用程序框架。采用(模型M、视图V和模板t)的框架模式。该框架以比利时吉普赛爵士吉他手詹戈•莱因哈特命名。该架构的主要组件如下:
1.用于创建模型的对象关系映射。
2.最终目标是为用户设计一个完美的管理界面。
3.是目前最流行的URL设计解决方案。
4.模板语言对设计师来说是最友好的。
5.缓存系统。
2.3 MySQL数据库
数据库在软件项目中扮演着操作管理数据的角色同时还能够保证数据的独立性、一致性和安全性,并为系统访问数据提供有效方式不仅如此数据库还能大大减少程序员开发程序时间。在日常能够接触实用的一般有两类数据库,一类是以(Oracle,DB2,SQL Server,MySQL )为代表的关系型数据库和以(NoSql、MongeDB)为代表的非关系型数据库,两类数据库各有各的优缺点。其中非关系型数据库又分为网络数据库和层级数据库。-网络数据库是指在计算机网络系统中应用数据库技术然后借助网络技术将存储于数据库中的大量信息及时发布出去;在成熟的数据库技术的帮助下,计算机网络实现了对网络中的各种数据的有效管理,用户与网络中的数据库数据交互也借此得以进行。IMS也是最早研制成功的数据库系统。关系数据结构、关系操作集合、关系完整性约束构成了关系模型。作为数据库另外一种区分方式的存储介质被大家分为磁盘和内存这 两种。例如:关系型数据库就存储在磁盘中,非关系型数据库则存储在内存中。典型的关系型数据库有:Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL、SQLite。小型关系型数据库:Microsoft Access,SQLite;中型关系型数据库:SQL Server,Mysql;大型关系型数据库:Oracle,DB2。
大家常用的其他关系形数据库系统大多是MySQL AB公司开发的,其中MySQL也是由这家开发的,所应用的分布式数据库管理系统是客户机/服务器体系结构得益于此结构,而且用这个系统建造的数据库具有很强的适用性,用C和C++编写的系统让他拥有很强的适用性所以他可以在大部分操作系统上使用并能和php结合。不同的API函数针对不同的语言(C,C++,JAVA等)来处理不同数据;为了更好地支持多CPU多线程通过使用核心线程来实现;提供的存储机制分为事务和非事务存储机制;MySQL采用双重许可,不管是从MySQL AB公司获得正式的商业许可又或是许可条款下以免费软件或开放源码软件的方式使用MySQL软件都是被允许的。
MySQL作为数据库拥有很多优点,其中由于是开放源码,所以使用成本特别低,而它体积小的特点决定了速度快的特性。因此,My Sql具有开放性,多线程支持多种API,可跨数据库连接,国际化,数据库体积巨大等特点。简单的来说 ,MySql是一个开放的、快速的、多线程的、多用户的数据库服务器。
选用MySQL作为数据库的其中一个原因就是支持多线程,支持多线程的特点为利用系统资源提供了便捷并因此大大提高了系统运行速度和效率,而且连接数据库的方式多样包括但不局限于TCP/IP、ODBC和JDBC等途径;但是没有东西是完美无缺的,即便MySQL也如此,虽说它有着众多优点但其功能不够强大,规模也相对较小,无法应对大型数据哭的处理。但是对于本系统来说,选用MySQL作为数据库,其功能性能已绰绰有余,如果要进行二次开发的数据库表结构空间的扩展也是完全可行的。综上所述,MySQL是作为本系统数据库的最优选择。
2.4 B/S架构
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作[10]。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间。
(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少。
本次的毕业设计主要就是设计并开发一个开药系统软件。运用当前Google提供的django 框架来实现对开药信息查询、新增或删除等功能。当然使用的数据库是mysql。系统主要包括个人信息修改,公告信息管理、医生管理、患者管理、药品信息管理、开药记录管理、入库记录管理、出药记录管理、药品盘点管理等功能;
本管理系统的用例图根据角色权限进行分类,主要可分为管理员用例、医生用例和患者用例。
(1)管理员用例图
管理员用例图依据管理员的权限需求以及对系统的管理需求进行分析,主要包括了登录、个人信息修改、公告信息管理、医生管理、患者管理、药品信息管理、开药记录管理、入库记录管理、出药记录管理、药品盘点管理等,管理员用例图如下所示:
图3-1 管理员用例图
(2)医生用例图
医生用例图根据医生的需求进行分析,包括用户登录注册、个人信息修改、公告信息管理、药品信息管理、开药记录管理等。医生用例图如下所示:
图3-2医生用例图
(3)患者用例图
患者用例图根据患者的需求进行分析,包括用户登录注册、个人信息修改、公告信息管理、开药记录管理、出药记录管理等。患者用例图如下所示:
图3-3患者用例图
如需定做或者获取更多资料,请联系QQ:375279829