ImageVerifierCode 换一换
格式:DOC , 页数:36 ,大小:170.54KB ,
资源ID:3879741      下载积分:12 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/3879741.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(基于JSP的网上处方跟踪系统.doc)为本站上传会员【a199****6536】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

基于JSP的网上处方跟踪系统.doc

1、长沙理工大学软件工程综合课程设计报告基于JSP的网上处方跟踪系统专业:软件工程班级:姓名:报告日期:2016年6月30日目录1 背景与意义1。1 背景与现状1。2 趋势与前景1。3 工作基础、条件与优势2 需求分析2.1 功能与性能需求2。2 其它需求3 内容和目标3。1 主要内容3。2 预期目标4 技术路线4。1 总体功能4。2 运行平台具4。2.1 网络环境4.2。2 设备情况4.2。3 支撑软件4.3 程序语言与开发工具4.4 关键技术5 进度计划6 条件、假定和限制7 系统设计与原型UI(或系统设计与实现)7。1 数据库表设计7.2 关键算法与实现技术7。3 主要原型UI(或主要功能实

2、现)7。4 测试方案与测试用例7。5 安装与运行情况7.5.1 安装与配置7。5。2 运行情况图8 总结参考文献附件:主要功能的源代码1 背景与意义1。1 背景与现状随着互联网不断的发展,计算机已经深入到了各行各业,计算机不再局限于对科学技术的研究,当今时代,计算机可以决解大部分的具体问题,而且有利于人们的控制,这大大方便了人们的需求.当今的中小型医院中一般还没有全面采用信息技术来进行管理,所以建议一套计算机辅助经营管理系统是必不可少的。本系统是专门为处方专门设计的,我们知道,传统的记录使用手工的方式来记录数据,但是如果用手工的方式记录数据,如果数据量很大,那么结果往往就很容易出错;而且,随着

3、时间的积累,数据变得越来越多,且容易丢失,传统的手工管理极大的浪费了人力和财力,不能满足医师和医院之间的需求。总的来说,使用一个高效率的系统来处理这些繁杂的流程是必须的,所以我们有必要建立一个处方跟踪系统来处理这一系列的问题,让医师可以通过系统方便的记录病史症状,开处方,查阅历史处方,保存.通过这样,这些数据能被即使、准确、有效的处理.这不仅可以提高工作效率还可以确保信息的安全和准确。1.2 趋势与前景目前,国内的大多数医院均不同程度的将计算机技术应用于医院管理。该系统对软件没有太高的要求,市场上已存在各式各样的软件足以满足各方面的要求。但是不同软件之间由于需求的不一致或者是根据不同的政策标准

4、难以实现软件统一化,现在医疗行业飞速发展,国家政策不断的推陈出新也使软件的开发出现多样化,模块的多样化造成了维护原有系统上的困难,传统的软件业务有的已经也不符合当今的要求,所以开发一款符合当今社会需求的软件是有必要的。1.3 工作基础、条件和优势(1)技术可行性该系统对软件没有太高的要求,但是开发人员必须具有该软件开发的专业知识,已经开发过相关的医学管理系统,在熟悉业务的情况下进行开发,完善更多的功能业务.(2)经济可行性该软件的开发成本较低,在有前人开发的经验中开发风险小,系统投入运行后会给医院带来可观的经济效益:一方面提高了工作效率,增加了市场竞争力。另一方面,所需要的人员减少也提高了经济

5、效益。(3)人才设备可行性对于针对医疗行业软件开发的人员是相当多的,在设备方面同样比较容易进行,所以在人才设备上是可行的。2 需求分析2.1 功能和性能需求功能需求:处方管理系统的构建是以医师处方为中心,实时录入病人信息,开处方,生成处方,进行数据的统计,简化了传统处方信息处理的过程。本系统的重点是跟踪处方的信息数据并处理数据,处理数据时相关的数据对象有如下有以下:(1)系统跟踪每位顾客的以下信息:顾客姓名、电话号码、出生日期、承保公司、保险号、处方历史记录(2)每位顾客的服药史将记录下列每次处方信息:由药房给出的唯一的处方ID 号、处方开出的药物、开处方的医生姓名和电话号码、处方日期、处方终

6、止日期、有效购药次数、配药“单位”数量(此处的“单位”可能是片、匙和毫升等-见后面关于药品的讨论)、如果有其它替代品,是否可以向顾客提供替代品。(3)对于药房存货的每种药品,系统应跟踪的如下:药品名称,药品“单位”(片、匙和毫升等),哪些其它药品可以作为另一种这种药品的替代品,服用药品可能引起的副作用。(4)系统所支持的查询功能:服药史,即给定顾客的所有处方历史记录根据顾客的要求提供的报告,某种给定药品的副作用报告,随处方一起提供某种给定药品的可替换药品列表一份给定处方是否还有购药许可:即,是否还可以凭处方购药,以及处方是否已经过期。性能需求:(1)时间特性要求服务器启动时间不超过1分钟;系统

7、响应时间:用户在使用软件的过程中对各个功能模块中的鼠标点击、键盘输入等操作响应的时间不操作1秒。(2)数据精度要按照严格的数据格式输入,对符合数据格式要求的输入进行提示.(3)服务器并发和可伸缩性软件应采用界面层、应用程、数据层三层架构,若以后用户数量增多,只需要增加应用层的服务器数量,实现可裁减、可扩充和可移植等不同方面的要求.采用模块化的应用软件结构,确保系统可以灵活的扩充其业务功能,并可与其他业务系统进行无缝连接。(4)系统安全性数据库设计阐明使用何种方式保证系统的安全。2.2 其它需求可靠性和可用性需求:出错处理需求:接口需求:Mysql、Soap、约束需求:暂无逆向需求:暂无将来可能

8、的需求:3 内容和目标3.1 主要内容(1)用户信息维护,实现用户信息的录入、查询、修改以及删除等功能。(2)处方信息处理,针对不同的用户记录用户的处方信息,其中处方信息中记录处方开出的药物、开处方的医生姓名和电话号码、处方日期、处方终止日期、有效购药次数、配药“单位数量(此处的“单位”可能是片、匙和毫升等-见后面关于药品的讨论)、如果有其它替代品,是否可以向顾客提供替代品等信息,并可对该处方进行修改以及删除等操作.(3)处方历史查询,查询所有的处方信息,或者根据用户的信息模糊查询到该用户的处方信息。(4)处方药物信息处理,药方根据处方信息处理药物并确认处理。3。2 预期目标系统必须根据需求实

9、现核心业务上的需求内容,系统必须严格按照说明书上来开发,最终的系统必须达到需求说明书上的要求,实现一个可靠的、易用的处方跟踪系统,该系统实现了对用户信息、处方信息的一体化处理。4 技术路线4。1 总体功能图4。1-1总体功能结构图图4。13系统数据流图4。2 运行平台4。2。1网络环境局域网网络环境以及私有的IP地址该局域网的网拓扑结构如图4-2-1-1所示:图421-1网络拓扑图4。2。2 设备情况服务器端:处理器主频1000MHz内存容量64GB主机型号与数量PA8800 / 2外存容量16GB设备型号与数量惠普9000 rp7420 / 2输入及输出设备型号与数量L455有线多媒体键盘/

10、1、S22B360HW显示器/1、N215鼠标/1数据通信设备型号与数量交换机华为S1724G / 1其他专用硬件设备与数量无客户端:处理器主频不限定设备的型号与数量不限定主机型号与数量不限定外存容量不限定设备型号与数量无输入及输出设备型号与数量交换机华为S1724G / 1数据通信设备型号与数量无其他专用硬件设备与数量无4。2。3 支撑软件支撑软件软件版本操作系统Linuxlinux red hat5。6以上,内核版本kernel-2。6.18238。el5数据库管理系统Mysql5.1Web服务器Tomcat7。0浏览器Chrome46。0。2490。86其他软件JVM1。74.3 程序语

11、言与开发工具程序语言:HTML/CSS、JavaScript、Jquery、Java、Jsp、Jstl、Spring、Spring MVC、Hibernate、Spring Data Jpa、Mysql开发工具:Spring Tool Suit3。7、Maven3.3、Mysql5.1、Tomcat7。0、Java Runtime Enviroment1.7、Git项目管理工具4。4 关键技术(1)HTML5 WebSocket API客户端与服务器端进行全双工通讯,WebSocket的出现是基于Web应用的实时性需要而产生的,它允许客户端和服务器在任意时刻互相推送消息.Web Socket是

12、下一代客户端服务器异步通讯的方法,它本事上任然是一个基于TCP的协议,它使用ws或wss协议,可用于任意的客户端和服务器。为了建立一个 WebSocket 连接,客户端浏览器首先要向服务器发起一个 HTTP 请求,这个请求和通常的 HTTP 请求不同,包含了一些附加头信息,其中附加头信息”Upgrade: WebSocket”(Upgrade:WebSocket表示这是一个特殊的 HTTP 请求,请求的目的就是要将客户端和服务器端的通讯协议从 HTTP 协议升级到 WebSocket 协议。)表明这是一个申请协议升级的 HTTP 请求,服务器端解析这些附加的头信息然后产生应答信息返回给客户端,

13、客户端和服务器端的 WebSocket 连接就建立起来了,双方就可以通过这个连接通道自由的传递信息,并且这个连接会持续存在直到客户端或者服务器端的某一方主动的关闭连接.它的通讯方式如下:图441客户端和服务器websocket通讯.图4-4-1客户端和服务器websocket通讯(2)HighChats一套由纯Javascript写的表现层框架,它提供曲线、面积、柱形图、条形图、饼图、散点图、区域范围图、气泡、漏斗等等一系列的图形表现形式.HighChars不需要像Flash和Java那样需要插件才可以运行,而且运行速度快,它是轻量级的JavaScript脚本,它使用的是json数据格式,数据

14、传输更加方便,而且它的数据是在客户端解析的,减轻了服务器的压力,所以它比JFreeChart更方便(JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写在我看来JFreeChart有点笨重了,而且它生成的图形也比HighChart少,并且好像是收费的)。另外HighCharts还有很好的兼容性,能够完美支持当前大多数浏览器。(3)Spring Data JPA提供了一整套数据访问层(DAO)的解决方案,致力于减少数据访问层的开发量,并支持云服务的开源框架。Spring Data 作为SpringSource的其中一个父项目, 旨在统一和简化对各类型持久化存储

15、, 而不拘泥于是关系型数据库还是NoSQL 数据存储.无论是哪种持久化存储, 数据访问对象(或称作为DAO,即Data Access Objects)通常都会提供对单一域对象的CRUD (创建、读取、更新、删除)操作、查询方法、排序和分页方法等。Spring Data则提供了基于这些层面的统一接口(Repository、CrudRepository、PagingAndSortingRepository、JpaRepository)以及对持久化存储的实现。JPA(Java Persistence API,Java持久化API)是sun提出的一个对象持久化规范,各JavaEE应用服务器自主选择实现

16、,JPA的底层实现是一些流行的开源ORM(对象关系映射)框架(如Hibernate、OpenJPA、TopLink、Ibatis等等),因此JPA其实也就是java实体对象和关系型数据库建立起映射关系,通过面向对象编程的思想操作关系型数据库的规范。JPA,定义了对象-关系映射以及实体对象持久化的标准接口。如下图:图442JPA在 应用程序中的位置:图44-2JPA在 应用程序中的位置Spring Data Jpa是Spring Data对JPA提供的一套解决方案.Spring Data Jpa实现了大部分的持久层的逻辑代码,你需要做的只是声明持久层的接口,其他的都交给Spring Data J

17、pa完成.Spring Data Jpa中Repository是一个空接口,CrudRepository: 继承Repository,实现了一组CRUD相关的方法 ,PagingAndSortingRepository: 继承CrudRepository,实现了一组分页排序相关的方法 ,JpaRepository:继承PagingAndSortingRepository,实现一组JPA规范相关的方法.相关技术方案参考Spring Data实战的书籍2.Spring Data Jpa提供的接口如下图44-3Spring Data Jpa提供的接口图:图4-43Spring Data Jpa提供的

18、接口图(4)Spring MVC,Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。它的请求处理流程图如下:图442springMVC请求处理流程图前端控制器首先接收到用户的请求,前端控制器根据接收的请求信息把请求委托给页面控制器来处理.处理器接收请求后调用相应的业务对象处理请求,如果有数据库操作会向数据库请求数据,并返回一个模型视图(一般是Model

19、AndView),返回的模型经过视图解析器把,模型数据解析到页面中并返回给客户端。Spring MVC充分对模型、视图、控制器进行充分的解耦,并利用Spring IOC的功能更加方便管理。相关技术方案参考Spring MVC 学习指南的书籍1.(5)REST风格URL,REST架构风格是全新的针对Web应用的开发风格,是当今世界最成功的互联网超媒体分布式系统架构,它使得人们真正理解了Http协议本来面貌。随着REST架构成为主流技术,一种全新的互联网网络应用开发的思维方式开始流行。REST是基于Http协议的,任何对资源的操作行为都是通过Http协议来实现。以往的Web开发大多数用的都是Htt

20、p协议中的GET和POST方法,对其他方法很少使用,这实际上是因为对Http协议认识片面的理解造成的。Http不仅仅是一个简单的运载数据的协议,而是一个具有丰富内涵的网络软件的协议.他不仅仅能对互联网资源进行唯一定位,而且还能告诉我们如何对该资源进行操作.Http把对一个资源的操作限制在4个方法以内:GET,POST,PUT和DELETE,这正是对资源CRUD操作的实现。由于资源和URI是一一对应的,执行这些操作的时候URI是没有变化的,这和以往的Web开发有很大的区别。正由于这一点,极大的简化了Web开发,也使得URI可以被设计成更为直观的反映资源的结构,这种URI的设计被称作RESTful

21、的URI.基于REST URL风格的请求方式如下:图442基于REST URL风格的请求5 进度计划说明本项目的进度要求,参照软件工程的三个时期中的八个阶段时间安排问题定义3日可行性分析2日需求分析5日总体设计5日详细设计10日编码和单元测试15日综合测试5日软件维护5日操作培训3日验收测试2日项目验收2日总计为57天6 条件、假定和限制(1)建议开发软件开发投入的时间:两个月(2)经费来源及限制:由需求方提供(3)软件的预期寿命:两年(4)网络环境:局域网(5)运行环境:mysql5.1, Java Runtime Enviroment1.7及以上版本(6)客户端环境:Internet Ex

22、plorer8.0及以上的版本(7)硬件设备:处理器Inter Pentinm3或者更高,内存至少256M以上,硬盘至少2G(8)平台:linux red hat5.6以上,内核版本kernel-2。6.18238.el5 (9)法律和政策:遵守相关的法律法规,以保护用户的隐私为前提开发软件7 系统设计与原型UI(或系统设计与实现)7.1 数据库表设计1) 数据库名:Prescription数据库管理者账号:root 密码:root账号操作权限:CREATE、DROP、DELETE、INSERT、UPDATE、SELECT、ALTER2) User表:记录用户的基本信息。表User(用户表)用

23、于保存用户的基本信息字段名数据类型长度主键描述IdInt11是用户编号NameVarchar64否用户姓名TelephoneVarchar20否电话号码BirthdayData10否出生日期insurance_companyVarchar32否承保公司Policy_numberVarchar64否保单号表711 User表Department表:部门表,医师所属部门。表Department(部门表)用于保存医师的部门字段名数据类型长度主键描述IdInt11是部门编号NameVarchar64否部门名称表7-12 Department表Position表:医师所属职位。表Position(职位表

24、)用于保存医师的职位信息字段名数据类型长度主键描述IdInt11是职位编号NameVarchar64否职位名称表713 Department表 Doctor表:医师基本信息,包括两个外键,表示医师所属的部门和职位。表Doctor(医师表)用于保存医师的基本信息字段名数据类型长度主键描述IdInt11是医师编号NameVarchar64否医师姓名TelephoneVarchar20否电话号码DidInt11否医师所属部门PidInt11 否医师所属职位表7-14 Doctor表 Prescription表:处方信息表,记录处方基本信息以及两个外键,一个是该处方所属的用户,另一个是处方所属医师。表

25、Prescription(处方信息表)用于保存处方的基本信息字段名数据类型长度主键描述IdInt11是处方编号UidInt11否该处方所属用户DidInt11否该处方所属医师BeginDateDate16否处方日期EndDateDate16 否处方终止日期CrawlAgainstInt4否再次抓药的次数表71-5 Prescription表 PrescriptionDetail表:处方详细信息表,记录一个处方中多个处方详细信息记录,两个外键,一个表示该处方详细所属的处方,另一个表示该处方详细中具体的药物信息。表PrescriptionDetail(处方详细信息表)用于保存处方的具体的信息字段名

26、数据类型长度主键描述IdInt11是处方详细编号CountInt4否数量CanuseString16否是否可用替代药品Take_methodString255否服用的方式UnitString16否单位MidInt11否药物的编号PidInt11否处方的编号表7-1-6 PrescriptionDetail表Medicine表:记录药物的基本信息。表Medicine(药物信息表)用于保存药物的信息字段名数据类型长度主键描述IdInt11是药物的编号NameString64否药物的名称SideeffectString255否副作用表717 Medicine表Subtitute表:药物可替代的药品表

27、,每个药物如果有可替代的药物,那么该药物将会维持一份药物替代表,其中两个字段都是外间,一个是指向具体的某个药物,另外一个是指向可替代药物的id编号.表Subtitute(药物替代表)用于保存药物的可替代药物的信息字段名数据类型长度主键描述M_idInt11是药物的编号S_idInt 11是药物的标号表7-1-8 Subtitute表数据库总体UML如下图719 数据库UML图71-9 数据库UML数据库设计相关技术方案参考据库设计与关系理论4与数据库设计与应用开发实践5.3) 无,由于使用了spring data jpa操作数据库,spring data jpa简化了数据库访问的操作.7。2

28、关键算法与实现技术1.系统难点:添加一个处方信息可一次性提交多个处方详细信息(相当于每次开药方包含多种药物,每种药物的数量也不一致),每个处方详细信息中又包含了基本信息以及药品对象。为了解决该问题,每次选择和填好一种药物后都实用ajax保存到服务器上的session中,当然,在服务器上建立了两个类来暂时存放这些数据,分别是PrescriptionDetailOperator和PrescriptionOperator两个类.class PrescriptionDetailOperator private int count;/每个药品的数量private String unit;/每个药品的单位

29、private Medicine medicine;/该药品的对象private String takeMethod;/服用方法private String canuse;/是否可以实用替代药品/省略getter和setter方法class PrescriptionOperator/声明一个map来保存多个PrescriptionDetailOperator对象,实用药品的id作为主键private MapInteger, PrescriptionDetailOperator map = new LinkedHashMapInteger, PrescriptionDetailOperator(

30、);public CollectionPrescriptionDetailOperator getPreDetail()return map.values();/每次添加的时候都检查是否存在药物,存在则在原来的数量上增加public void addPrescriptionDetail(PrescriptionDetailOperator preDetail) Integer id = preDetail。getMedicine()。getId();if(map.containsKey(id)PrescriptionDetailOperator _preDetail = map。get(id)

31、;_preDetail.setCount(_preDetail。getCount() + preDetail.getCount());elsemap。put(id, preDetail); /可以移除处方详细信息 public void removePreDetail(Integer pid) if (map。containsKey(pid)map。remove(pid); 前台使用ajax发送数据保存到服务器端:var pdid;/保存处方详细的idvar tmp;/用于保存当前删除的对象的引用/保存更新处方详细信息function saveDetail(item)var pdid = (i

32、tem)。attr(”lang”)。trim();/处方详细唯一编号var count;/数量var canuse;/是否可用替代药品var unit;/实用药品单位var take_method;/服用方法/遍历找到一个处方详细的信息(item).parent().parent()。find(”.modal-body).each(function(index)count = (this).find(”count);canuse = $(this).find(”#canuse”).find(”option:selected)。val().trim();unit = (this).find(#u

33、nit).val()。trim();take_method = (this)。find(”#take_method).val().trim(););if (!/+?1-909*$/。test(count。val().trim()).tooltip( 请输入正确的数字,该数字不能小于1!, 2000, false);$count。val(”1”)。focus();return;/发送ajax保存处方详细信息。ajax(type:”POST”,data:”id”:pdid,”count:$count.val()。trim(),”canuse”:canuse,unit”:unit,”takemeth

34、od”:take_method,url:window.location。pathname。substring(0,25)+saveUpdateDetail”,success:function(data) if (data) 。tooltip(保存成功成功!, 2000, true); else$。tooltip(删除失败,请检查服务器或网络状态!, 2000, false);,error:function()。tooltip(删除失败,请检查服务器或网络状态!, 2000, false););2.关键SQL:(1)查询存在处方数据的用户以及处方的数量:Selectu.name,u。policy

35、_number,u。telephone,u。insurance_company,u。uid,count() from prescription p inner join user u where u.id = p。uid group by p。uid;(2).全表扫描user表查询用户对象from User u where concat(u。name,u。birthday,u。telephone,u.insuranceCompany,u。policyNumber) like CONCAT(%,:search,);(HQL语法)(3).根据不同的年龄段统计用户的数量select count(*)

36、,left(birthday,4) from user group by left(birthday,4);(4)。查询所有用户的出生年份,月份,日期分布select left(birthday,4),substring(birthday,6,2),substring(birthday,9,2) from user;3。核心算法:(1)WebSocket存储和分发消息代码,基于WebSocket服务器与客户端通讯的问题,医师每添加一条处方记录或者对处方记录执行删除修改等操作时会及时通知客户端服务器数据状态的改变并及时更新获取最新的数据.针对以上的问题,我首先针对需要及时处理消息的页面与服务器建

37、立WebSocket连接,服务器端使用一个Map保存客户端的连接,如下:private static MapString, Session sessions = new HashMapString, Session();,每次请求时就根据session的id进行存储,对每个医师处方信息操作的页面每个在页面初始化时都与服务器(与上面处理的请求是同一个)也建立一个WebScoket连接(多个WebSocket连接到同一个请求),医师每次操作成功时立即就发送WebScoket消息到服务器,服务器根据接受到的消息遍历Map中客户端中的多个连接循环发送消息到客户端,客户端根据接受到的消息以根据消息的内容

38、重新请求服务器上的数据。7。3 主要原型UI(或主要功能实现)(1)系统登录和主界面图731系统登录界面功能作用:实现医师的登录功能图73-2系统主界面功能作用:介绍系统以及显示不同年龄或者部门人数占有的比率(2)用户信息管理图7-3-3所有用户的基本信息功能作用:实用highcharts像是所有的用户信息,可进行搜索图7-34分页显示用户信息以及操作功能作用:对用户信息进行分页处理以及显示操作图7-3-5弹出层显示可编辑的用户修改(3)处方信息管理功能作用:实现对用户信息的修改图736添加处方信息功能作用:实现添加处方信息图73-7弹出层选择药品功能作用:实现添加处方信息中具体的一个药品图7

39、-3-8可搜索药品功能作用:实现药品的搜索图7-38添加多个药品功能作用:实用ajax保存数据,一次性可添加多个药品的信息,即一个处方中可添加多个药品信息,每个药品信息中有不同的单位,数量,服用方式和是否可用替代的药品。(3)处方记录管理图73-9处方历史记录的显示功能作用:实用时间轴显示每个用户开过的处方记录,该记录上记录正医师的姓名和电话,以及每个处方中多个处方详细信息,如果该药品是可实用替代药品,则列出可替代药品的药品名称。图73-9处方信息的修改界面功能作用:每个处方信息中都有多个处方详细,即每个处方中有多个药品信息,在该页面中可对每个药品进行修改和删除。图7-310弹出确认删除的模态

40、框(4)用户处方查询图7-3-11查询所有处方记录图73-12实用关键字姓名搜索图73-13实用关键字出生年份搜索图7314实用关键字电话号码搜索(5)取药信息查询管理图7315实用承保单号唯一搜索图7-316 药物管理主页功能作用:使用WebSocket实时处理处方数据,显示登记的处方信息。图7-3-16 药物处理(6)系统出错管理图7316处理404错误页面图7317处理500错误页面7。4 测试方案与测试用例制定测试计划:(1)确定测试需求(2)制定测试策略(3)建立测试通过准则(4)确定资源和进度(5)评审测试计划(6)更新测试计划设计测试:(1) 设计测试用例针对每一个测试需求,确定

41、其需要的测试用例对每个测试用例,确定其输入的预期结果确定测试用例文档的测试环境配置对测试用例进行评审(2) 开发测试过程根据界面原型为每一个测试用例定义详细的测试步骤为每一个格式步骤定义详细的测试结果验证方法为测试用例准备输入数据在实施测试时对测试过程进行更改1.单元测试首先在项目开发中使用单元测试,如:Junit、SpringJUnit4ClassRunner进行单元测试,按照测试过程手工执行单元测试或运行测试脚本自动执行单元测试,如下:RunWith(SpringJUnit4ClassRunner。class)ContextConfiguration(locations =”applica

42、tionContext。xml”)TransactionalTransactionConfiguration(transactionManager = transactionManager”)public class TestModule Test public void test () 2。集成测试:使用回归测试方法,对软件的新版本测试时,验证是否解决了软件缺陷,而且保证以前所有运行正常的功能依旧保持正常,而不会影响本次的修改.按照测试过程手工执行集成测试或运行测试脚本自动执行集成测试将集成测试结果作详细记录,并评审测试结果对修改后的工作版本执行回归测试,或者对增量集成后的版本执行回归测试2

43、。验收测试:以用户为主,前提是已经通过系统测试的软件系统,根据需求规格说明书或者概要设计文档验证需求的合理性和正确性,包括文档资料是否完整、正确,人机界面和其他方面(如,可移植性、兼容性、错误回复能力和可维护性等)是否令用户满意.7。5 安装与运行情况(1)JDK1。7首先系统必须有JRE的支持,为了能够完成在该环境下的编译,最好能够安装下完整的JDK环境,JDK选用1。7或者更高的版本。(2)Maven3。3或更高的版本,本系统添加对Maven的支持,方便在不同类型的机器上完成编译工作。(3)MYSQL5。1或更高的版本,与系统集成。(4)WEB服务器,Tomcat17.0或更高的版本,为了

44、支持WebSocket,Tomcat只有在7。0或者更高的版本中才添加了对WebScoket的支持。7。5。1 安装与配置描述服务器端运行环境的配置情况,包括:安装与初始化数据库、安装与配置服务器安装、安装支撑软件、配置系统运行参数,等等。1.JDK环境配置:(1)如果系统中存在JDK1。7或更高的版本则这一步可以省略,可以实用java version查看当前系统JDK的版本,如下图所示。首先到Oracle官网下载下载JDK,官网地址如下:www。oracle。com/technetwork/java/javase/downloads/javaarchive-downloadsjavase7521261.html,假设当前的文件名称为jdk7u67linux-x64。tar.gz,进入到该文件的目录下.(2)使用命令tar -zxvf jdk-7u67linuxx64。tar.gz -C path解压到path路径下,path为你想要放置JDK的本地位置,假设我放在/home/silence/software/jdk1.7.0_67就要执行命令tar zxvf jdk7u67linuxx64。tar.gz /home

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服