医药连锁店管理系统库存管理系统.docx
《医药连锁店管理系统库存管理系统.docx》由会员分享,可在线阅读,更多相关《医药连锁店管理系统库存管理系统.docx(31页珍藏版)》请在冰豆网上搜索。
医药连锁店管理系统库存管理系统
河北农业大学
本科毕业论文(设计)
题目:
医药连锁店管理系统-库存管理系统
摘要
随着医疗技术的不断发展,医院规模的不断扩大,药品进货量、销售量的急剧增加,药品进销存管理系统在药品的进货、销售和库存管理中发挥着越来越重要的作用。
与此同时,传统的医院药品进销存管理系统已不能满足目前药品进、销、存流程高效管理的需求。
如何根据医院实际情况设计出适合自身使用的药品进销存管理系统,是当前需要研究的问题。
本文通过对某医院药品进销存管理流程的调研和需求分析,提出了基于B/S架构的药品进销存管理系统,并根据JavaEE规范分析和设计了药品进销存管理系统。
本文系统与传统药品进销存管理系统相比,采用了更合理的模块化设计,实现了管理员、药品管理、类别管理、销售管理、进货/需求管理和系统管理六大模块,从而实现了对医药进货、销售和库存各个环节的有效监督和管理。
整个系统在Windows7系统下,以MyEclipse为开发工具,MySQL为后台数据库管理系统,采用Java应用框架Struts、Hibernate开发而成。
关键字:
药品进销存管理系统;B/S;Struts;Hibernate
ABSTRACT
Withthedevelopmentofmedicinetechnologyandtheextensionofthehospital,pharmaceuticalpurchaseandsalesincreasedramatically,themedicineinventorymanagementsystemplaysanincreasinglyimportantrole.Atthesametime,traditionalinventorymanagementsystemcannotmeetthecurrentneedsofefficiencymanagementofmedicinepurchase,salesandstorage.Howtodesignanappropriatesystemfortheactualsituationofthehospitalisthenecessaryissuetobestudied.
Inthispaper,weanalysisandinvestigatetheflowofmedicinepurchase,sales,inventoryofTaianTraditionalChineseMedicinehospital,andthenweproposeaninventorymanagementsystembasedonB/Smodel,designandimplementthesystemunderJavaEEspecification.Comparedwithtraditionalmedicineinventorymanagementsystem,oursystemusesamorerationalmodulardesignforbettermanagementofmedicineinventoryprocess.Implementationsoftheadministrators,drugmanagement,categorymanagement,salesmanagement,stock/requirementsmanagementandsystemmanagementofsixmodules,whichcanmakeallaspectsofpurchase,salesandstoragebemanagedmuchmoreefficientandalsoarisetheeconomiceffectivenessofthehospital.
ThiswholesystemisdevelopedunderWindows7operatingsystembyMyEclipseSDK.WeuseMySQLasthedatabasemanagementsystem.AndthepopularJavaapplicationframeworks,StrutsandHibernate,areusedintheimplementationofsystem.Testingandpracticeshowsthatsystemhasgoodopenness,maintainabilityandstabilityandmeetstherequirementsofthepracticalapplicationsofTaianTraditionalChineseMedicinehospital.
Keywords:
medicineinventorymanagementsystem;B/S;Struts;Hibernate
1绪论
1.1课题研究背景
随着现代信息技术的迅猛发展,计算机技术和网络技术的日渐成熟,自动化办公和管理软件的深入应用为日常事务的处理提供了便利条件,给人们日常工作方式带来了巨大的变革。
随着科学技术的不断发展,医疗水平的不断提高,医院规模的不断扩大,药品供给量的不断增加,原始的药品进销存系统已经不能满足现代化的管理方式,新一代的药品进销存系统已经由过去单纯的记账模式转变为分类、汇总以及数据查询、报表生成、信息跟踪、数据统计等多功能模式。
医院药品进销存系统主要用来对医院药品进货、销售、库存进行统一全程跟踪管理。
由于医院药品种类繁多,流通量大,药品进销存管理任务繁重,保证药品进销存管理工作有秩序、有条理、有章可循的进行尤为重要。
利用计算机来进行自动化管理有着诸多人工管理所不具备的优势,例如:
查找方便、检索迅速、保密性好、可靠性高、存储量大、成本低、寿命长。
使用自动化管理方式不仅能够保证信息统计的准确无误,还能对信息记录进行跟踪和处理,为安全用药、放心用药提供保障。
如今已经投入使用的药品进销存系统版本繁多,各有特点。
但各医院的硬件条件、规模大小、员工技能素质、管理需求、业务流程及工作模式等各不相同,如何根据自身的实际需求设计一套适合自身医院使用的药品进销存管理系统,将直接关系着药品进销存管理的效率和医院的经济效益。
本文在对某医院药品进销存管理进行详细调研的基础上,根据医院的实际需求,分析和设计了本文的系统。
1.2国内外研究现状
医院药品进销存系统是医院信息系统(HIS)的一部分。
西方发达国家对计算机在医院的应用研究开始的比较早,早在四十多年前美国开始研究医院信息系统时,就已经开始了对药品进销存系统的研究,但由于计算机技术的限制,美国对HIS的研究一直停留在理论阶段。
随着计算机技术的不断发展,70年代时,欧美日等发达国家开始了关于HIS的开发,为后来医院信息系统的发展奠定了基础。
70、80年代时,美国在HIS产业上有了较大的发展。
经过这几十年的经验总结和版本的不断更新换代,如今已有许多成功的系统在各大医院投入使用,并有效运转着。
虽然各医院药品进销存管理系统大致流程和功能需求相似,但在实际应用中,各医院的硬件条件、规模大小、员工技能素质、管理需求、业务流程及工作模式等各不相同,因此,如今即使是在发达国家,也没有任何一个能够适用于所有医院的标准系统。
各医院仍需根据自己的实际规模和需求来设计和开发适合自身条件的药品进销存管理系统。
由于计算机技术引进的相对较晚,我国开始研究计算机技术在医疗行业的应用比西方国家晚。
80年代中期,我国一些医院建立了自己的小型局域网,开发了药品进销存管理和住院管理系统等小型网络管理系统。
进入90年代,随着数据库技术的盛行,拥有计算机技术支持的大型医院开始着手开发适合自己医院的HIS系统,包括药品进销存管理系统。
如今,我国大中型医院中基本都已经建立了适用于自己医院的药品进销存管理系统,并很好的融合于医院信息管理系统中,稳定运行。
但规模较小的医院由于部分医院领导者缺乏强烈的信息化意识,不能适应现代化管理思想的要求,习惯于旧的管理模式,不能够清楚的认识到医院信息化管理的重要性,造成了整个医院信息化建设步调缓慢,影响了药品进销存系统的有效建设和及时更新扩展。
1.3相关技术介绍
本系统主要是依靠SSH框架实现,集成SSH框架的系统从职责上分为四层:
表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。
其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,利用Hibernate框架对持久层提供支持,业务逻辑层也是用的Struts框架。
相比传统的J2EE开发工具,它具有一系列独特的优点。
首先,SSH框架能够有效的降低开发成本、缩短开发周期。
SSH作为一款开源的框架,无需部署在成本极高的大型服务器上,很多时候只需要配合APACHE一类较便宜的服务器使用。
其次,SSH作为一款轻量级的框架可以有效降低系统开销,同时它还可以与异步JavaScript和XML框架同时使用,不仅能够对用户体验产生极大的改善,且有助于提升系统性能。
最后,由于SSH框架建立于J2EE的基础之上,所以其同时具备了J2EE的安全性与跨平台优势。
同时由于其往往将组件相关的配置与关系写入XML配置文件,使其在面对需求变化时可通过简单的对配置信息的修改来加以实现而无需对系统进行大的修改。
1.4论文主要工作与结构
首先,本文讨论了该项目背景,并介绍了国内外研究现状和医院信息化管理大趋势下药品进销存管理系统所面临的问题。
在此基础上,对系统进行了功能性需求分析和非功能性需求分析,为下一步对系统进行详细设计和实现打下基础。
其次,在需求分析的基础上,对系统进行了详细设计。
提出了本文系统的设计目标和原则,并从可扩展性、可维护性以及系统性能等方面对系统的技术架构进行了分析,确立了系统的MVC三层架构模型,并对各层的功能进行了描述。
根据药品进货、销售和库存管理的流程和特点,对系统进行了模块划分,并对各模块进行了详细的功能设计。
然后,根据药品的分类和管理特点对数据库进行了详细设计,利用E-R关系图对数据库设计进行了描述,并给出了详细的数据表设计。
本文各章节内容组织如下。
第一章:
介绍了本文的研究背景和国内外研究现状,并阐述了本文的主要工作,并对调研过程中所发现的问题和相应解决方案进行了陈述。
第二章:
根据调研结果和实际管理流程对系统进行需求分析,主要包括功能性、非功能性需求分析和总体流程分析,为系统的详细设计和实现打下基础。
第三章:
对系统架构进行设计,确定了系统的体系架构,对系统开发技术和功能架构进行了分析,提出了确保系统数据安全的安全性策略。
第四章:
详细描述了系统数据库设计。
包括设计原则、逻辑设计和数据表设计,给出了系统数据库的总体E-R图和详细的数据库表结构。
第五章:
对各个子系统进行实现。
对系统的实现进行了描述,给出了关键代码以及相应的注释说明,并对最终得到的系统进行了展示。
结束语:
对整个系统从需求分析到最终的实现过程做了总结,并对系统以后的进一步研究提出了意见。
2系统需求分析
2.1系统概述
医院药品进销存管理系统是集药品进货、销售、库存管理于一身的信息化管理系统,其作为医院管理的一个重要组成部分,在医院管理中发挥着十分重要的作用。
药品进销存管理系统是部署快、成本低、效果直观的医院内部信息系统。
其在医院的应用使得医药管理人员告别了效率低下的人工管理时代,其强大的信息录入、管理、查询以及统计和报表生成功能,代替了以往的纸张登记、人工查询、更新、维护和统计,全自动化管理和流程追踪使得药品的使用明细一目了然,为安全用药、放心用药提供了坚实的基础。
其在HIS系统中的融合,使得挂号、就诊、拿药和复诊趋于一体化流程管理,节省了过往病人看病中复杂的流程,提高了医疗诊断的社会效率。
伴随着信息化时代的发展,在这个分秒必争的竞争型社会中,医院也同样面临着各种挑战,高效的信息管理是在激烈的竞争中立于不败之地的先决条件。
药品进销存管理系统作为一种信息化管理系统,其在医院的应用提高了医院内部数据信息的条理性和准确度,规范了药品管理业务流程,提高了医院的管理水平和药品流动的透明度,加快了资金的周转速度,从而提高了医院的经营水平,提升了医院的经济效益。
本文的系统总体分布模型,如下图2-1所示:
库存信息管理
图2-1系统分布模型图
2.2系统功能性需求分析
统一软件开发过程一般采用用例图对系统的功能性需求分析进行描述。
通过用例图对系统的参与者和用例之间关系的描述,有利于以可视化的方式理解系统的功能需求。
本文系统根据前期调研和业务流程分析,确定了药品进销存管理系统的功能性需求。
该药品进销存管理系统可以分为四大功能六大模块。
四大功能分别为“基本信息管理”、“进货/需求管理”、“药品销售管理”、“系统管理”。
六大模块分别为:
用户登录、医药管理模块、类别管理模块、销售管理模块、进货/需求管理模块、系统管理模块。
系统总体用例图如图2-2所示。
药品管理
<>
类别管理
<>
<>
登录
销售管理
<>
管理员
<>
进货/需求管理管理
系统管理
图2-2系统总用例图
2.2.1管理员登录
本系统是针对固定药店的药品的管理,所以只是提供了管理员的登录入口,并且管理员账号也是固定的,没有再设置注册功能,但是在后面的系统管理模块中可以添加管理员也可以删除管理员。
在本文系统中登录管理系统并未将密码修改功能和登录功能一同放在登录界面上,为了提高系统的安全性,将密码修改功能设计为登录后才拥有该操作权限。
具体用例图太简单了就不在此给出。
2.2.2药品管理
药品管理子系统主要管理药品信息的录入与维护。
包括药品信息的增加、删除、修改、查询,同时把库存查看也放在这个模块中。
增加功能主要是针对新入库药品和合作供应商信息的录入;删除功能主要是针对弃用药品信息的删除;修改功能主要是针对录入错误的药品信息的修改,包括对药品单价、库存数量、所属类别、出厂地址的修改及更新;查询功能有查看药品,这时是把所有药品详细信息以表格形式列出,还有高级查询和模糊查询功能,高级查询时需要输入药品的详细信息,模糊查询主要是通过输入药品名称关键字来查询。
具体用例图如下图2-3所示:
添加药品
<>
药品管理
<>
删除药品
高级查询
<>
<>
查询药品
模糊查询
<>
<>
查看库存
图2-3药品管理用例图
2.2.3类别管理
其实药品分类十分重要,现在好多投入使用的医药管理系统都是药品分类不合理导致低效率和错误。
本系统的类别管理模块主要包括添加类别,查看类别,类别统计功能。
其中添加类别主要是添加类别名称和类别描述;查看类别就是把类别信息以表格形式列出来,同时提供了修改和删除功能,其中删除类别时会连带把属于该类别的药品信息也删除。
类别统计功能会把类别分类以饼状图显示出来,计算出具体每个类别占的百分比。
具体用例图如图2-4所示:
<>
图2-4类别管理用例图
2.2.4销售管理
本系统的销售管理模块主要是对销售明细的查看管理和查看销售排行。
查看明细时主要以表格形式列出所销售的药品信息,包括销售编号、药品名称、单价、销售数量、销售金额、销售时间和操作员。
同时提供了模糊查询功能,管理员可以通过输入药品关键字来查看相关药品的销售情况。
还有今日明细的查询,查看今日的销售记录。
还有日期查询功能,管理员输入起始日期和结束日期来查看这段时间的销售记录。
最后有销售排行功能,根据各类药品的销售情况排序,是以销售数量为排序参数,在查看销售排行的时候可以进行进货和查看药品操作。
具体用例图如图2-5所示:
查看明细
进货
日期查询
<>
<>
销售管理
<>
查看药品
<>
销售排行
<>
图2-5销售管理用例图
2.2.5进货/需求管理
本系统的进货/需求管理很简单,就是添加进货,通过输入药品编号来添加,然后输入添加数量就完成了药品的需求。
也可以添加库存中没有的药品,这时需要添加药品的详细信息,和药品管理模块中的添加药品一样。
还有查看进货的功能,这时显示的是有需求药品但是还没有完成进货操作的药品,如果点击完成进货则完成了该药品的进货需求,相应的药品信息也会更新。
2.2.6系统管理
本系统的系统管理模块主要包括添加管理员、查看管理员、删除管理员、修改密码、系统初始化和退出系统功能。
其中在查看管理员的时候提供删除管理员的功能;系统初始化主要是当药店想重新整理药品时用的功能。
具体用例图如图2-6所示:
添加管理员
查看管理员员
<>
<>
修改密码
<>
删除管理员
<>
系统管理
<>
系统初始化
<>
退出系统
图2-6系统管理用例图
2.3系统非功能性需求分析
非功能性需求一般指的是根据系统所实现的业务特点和性质,对系统的性能、可靠性、可扩展性以及开发期的质量属性等方面的需求。
根据对系统的使用环境以及业务具体细节的分析,我们得到如下几个非功能性需求:
(1)性能方面
由于医院药品进销存管理系统主要是针对医院内部使用,主要涉及到数据的增、删、查、改以及数据的统计,而且,医院药品具有品种繁多、数量大、流动量大、流动频繁等特点。
因此,对非功能性需求中常需要考虑的用户数、吞吐量、数据存储量等因素要求较低,但对数据库的操作响应要求较高,包括数据的查询、数据的修改以及数据的删除等都需要有较快的响应。
1)响应时间:
本系统将各子系统分为日常频繁交互类、日常查询统计类和批量处理类来分别考虑。
日常频繁交互类,如药品销售子系统,其需要与HIS系统连接获得药方数据,属于操作频繁而且响应时间要求相对较高的部分。
因此,在设计时应该保证其高效性,如响应时间在1秒左右。
日常查询统计类,如库存管理和查询统计子系统,其主要是对数据库中各种信息的查询与数字运算,此类操作与查询条件的复杂度和数据库相应数据量的大小相关。
虽然涉及到大量的数据库操作和统计运算工作,但是统计工作操作并不频繁,而且对实时性的要求并不荀刻,因此,响应时间一般控制在10秒左右。
2)用户数和吞吐量:
由于本系统属于内部使用系统,并不对外开放,用户数比较稳定。
因此对用户数和吞吐量并不做特别的要求。
3)数据存储量:
医院药品数据虽然较多,但对于现代的数据库技术而言完全能够承受,所以,设计时数据存储量也不做特别的要求。
4)要求系统具有较好的安全性,采用身份验证和操作权限来保证系统的安全,不同的用户具有不同的操作权限,不能进行越界操作。
(2)可靠性
系统的可靠运行需要硬件和软件两个部分的可靠支撑。
对于硬件而言,根据医院的经济条件选择相对较好的硬件配置,将硬件故障的风险降到最低。
对于软件而言,保证软件设计的鲁棒性。
由于药品进销存系统,尤其是销售子系统的可靠性与医院的正常运行紧密相关。
因此应保证系统具有较强的抗故障能力、容错能力和恢复能力,提供数据库的手动和自动备份与恢复功能。
充分考虑用户可能执行的错误操作(比如数据的漏填、错误的命名、数据格式的填写错误等),对于用户的错误操作给予错误提示,并向客户指引正确的操作提示,确保系统的可靠运行。
由于进销存系统涉及到网络数据的传输,对于网络数据的传输进行验证,确保无数据丢失,保证数据的正确性。
(3)扩展性
系统的扩展性主要是指系统使用过程中添加新的功能或模块。
系统在使用过程中难免会遇到新的需求,这就需要在系统开发设计的过程中,要充分考虑系统的可扩展性,为以后系统的功能扩展预留接口,为以后的升级和维护提供便利,减少维护升级成本。
因此,在系统的开发和设计中应尽量保证系统的高内聚低耦合性,各模块功能分明,釆用接口化设计,为系统的扩展打下良好的基础。
(4)整体性
将药品进销存系统作为医院信息化系统(HIS)的一个部分来设计,结合HIS的特点和接口,遵循硬件、软件以及系统界面为整体的设计原则,采用面向对象的思想和接口化方法进行设计和开发,增加系统与HIS的融合性,使得整个医院信息系统保持整体性。
(5)节约性
在硬件选择和软件开发的过程中,秉承为用户节约成本的原则,根据医院现有硬件和软件环境,充分利用医院已有的基础设施(如网络、服务器、PC机等)来架构药品进销存管理系统的实施环境。
(6)简单、实用性
由于系统使用人员的计算机水平和操作动手能力不尽相同,因此要求药品进销存管理系统应该与先前版本系统的风格尽量保持一致,设计尽量简单,容易掌握,而且布局要合理,避免用户需要花较长时间来适应各个操作界面,保证系统使用人员能很快上手,提高系统的实施效率。
(7)可复用性
软件的复用性是指能够利用现存的设计和编码对系统进行二次开发。
系统的大体的框架可以借鉴最新的、已经成熟的、符合国际标准的系统架构和服务器技术以及网络技术,自主设计和实现符合自己需求的模块和细节时也遵循同样的标准。
这不仅保证了系统的技术可行性和稳定性,还使得系统能够满足复用性,降低了系统的开发成本,并为未来可能的二次开发打下良好的基础。
(8)开发期的质量属性
1)SQL语句执行:
由于药品进销存管理系统主要基于对数据库的操作,因此在设计时应充分考虑对数据库操作语句的效率优化。
在数据库设计时充分考虑对数据的优化,使得在适应简单事务和增删查改等操作的同时,不减少复杂的动态SQL的查询优化总量。
尽量避免对全表进行查询,采用视图对数据库操作权限进行控制,采用索引技术优化查询效率,尽量采取事务集中处理方式避免事务频繁更新。
2)程序设计:
因为药品进销存管理系统中的业务逻辑复杂,模块数量多,在操作过程中会不断有新的对象产生,每个对象都会占用系统的资源。
因此,应避免在循环体内申明对象,对大的对象进行有效分解,尽量保证系统开销最小,避免系统内存溢出。
对系统整体采用模块化设计,采用接口技术保证系统简洁、各个类职能分明,保证系统的高内聚低耦合性。
2.4系统总体流程分析
流程图是一种将工作流程用图解的方式直观呈现的图表。
在规范的软件开发过程当中经常用流程图来描述系统的整体流程分析。
如下图2-7所示:
类别统计
图2-7医药管理系统流程图
系统初始化
图2-7医药管理系统流程图(续)
系统的总体流程如下:
首先管理员进入登录管理系统,输入用户名和密码。
系统进行身份验证,若账户不存在,在登录界面给出提示,若存在,进行密码验证,密码验证错误需要重新输入。
通过验证后,启动主控制模块,主控制模块查询数据库中账号的权限信息,根据权限信息来决定该账户使用者能使用的子系统。
管理员对自己所能操作的子系统进行操作,完成操作后,确认保存所进行操作到数据库。
至此,一次完整的操作流程结束。
在实际操作中,管理员保存操作到数据库后,仍能继续对本模块或其他模块进行操作,如此完