APP下载

基于J2EE的社区门诊服务系统设计

2018-03-04常李艳王艺叶长青

电脑知识与技术 2018年36期
关键词:服务系统社区医院医疗服务

常李艳 王艺 叶长青

摘要:生活中的医疗服务对我们来说必不可少,每个城市都有各种各样医疗服务健全的医疗系统。这些十分健全功能强大的医疗系统存在于各个大医院,随着生活水平的提高,医疗设备以及医疗服务都做得十分精细。相对于病人病情较小的,病情较缓的病人到各种资源丰富的医院去看病可能耗时长且没有特别的需要,此时我们可以选择附近的社区医院去看病,从而实现医疗资源的有限最大合理化。而本次要做的课题是社区门诊服务系统,简单地实现了病人挂号、看病拿药的过程。该系统易于管理患者的基本信息,使看病过程变成一个简单透明而快速的过程。社区门诊服务系统虽然操作简单,但是功能齐全强大,它可以帮助人们更好地生活。

关键词: 医疗服务;医疗资源;社区医院;J2EE;服务系统

中图分类号:TP311.5        文献标识码:A        文章编号:1009-3044(2018)36-0043-03

1 背景

现代社会医疗事业发展迅速及人们越来越对医疗卫生要求的更高,相关的医疗组织在逐步地增强医疗服务制度和医院管理的建设。国家正在投入大量物力发展社区医疗服务的体系,小病完全就近可以解决,这样对病人自己和对医疗资源都是有益的,社区门诊服务系统会成为今后医疗服务中重要的组成部分。本文设计的社区门诊服务系统主要针对社区医院和社区附近的居民,它实现的是医疗系统简单的基本的功能,对比各种十分完善的大医院的管理系统,此系统有主要提高社区医疗管理的效率。此系统研究的主要使用Eclipse和SQL Server2008等主要工具进行开发。本文设计的社区门诊服务系统主要有挂号系统、就诊系统和收费系统三个子系统组成。

2 系统开发技术

系统采用的是Spring和SpringMVC和Mybatis整合框架也就是SSM框架。Spring是一个开源框架,是一种轻量级的面向对象(AOP)和控制反转(IoC)容器的框架,它用来解决公司在应用开发中碰到的问题的复杂性。SpringMvc: MVC设计模式是一种目前广泛流行的软件设计模式,它把一个应用的各流程按照Model(模型)、View(视图)、Controller(控制器)的方式进行分離。SSH框架优势其一是经典的三层体系架构展现了MVC(模型,视图和控件)的想法,使软件开发者减轻了重新建立复杂问题场景解决方案的工作和负担。本系统是在J2EE框架基础上实现的,J2EE(Java 2 Platform, Enterprise Edition)是一个为大企业主机级的计算类型而设计的Java平台。

3 系统分析

3.1 功能需求分析

社区门诊服务系统有三个大的模块功能,分别是门诊挂号模块,医生就诊模块,和收费拿药模块。首先挂号操作员先对病人进行挂号操作,然后在挂号操作完成后再进行医生就诊处理,最后在通过缴费处理在进行拿药处理。经过功能需求分析,系统需要的功能模块见下表1。

3.2 可行性分析

在技术可行性方面,医院只要装有普通的电脑即可不需要什么复杂的设备和机器。在经济上,社区门诊服务系统肯定比大型的开发成本和维护费用较小,系统性价比很高。从使用目的来分析,社区门诊服务系统是针对小医院应用开发,功能简洁,操作方便,非常符合小型医院的使用要求。因此社区门诊服务系统应该是可行的。

4 数据库的设计和实现

数据库在开发中是非常重要的一部因此,在设计数据库时必须根据实际工作的性质和需要,定义所需的属性。在此系统中一共涉及十一张表的使用分别是患者基本信息(TB_YL_HZXX),挂号表(TB_YL_GH),就诊记录表(TB_YL_JZJL),收费记录表(TB_YL_SFJL),处方明细表(TB_YL_CFMX),收费明细表(TB_YL_SFMX),药品目录表(TB_DIC_YPML),ICD10疾病诊断(TB_DIC_ICD10),科室信息表(TB_DIC_KSXX),操作员表(TB_DIC_CZYXX),通用字典表(TB_DIC_TYZDB)。这些表得数据都与每个界面中与前台进行重要的交互。下面以登录模块、挂号界面的相关表单设计来展示数据库的设计过程

4.1 登录模块的数据库相关表的设计与实现

在登录界面中医院的工作人员需要输入自己的姓名加密码进入系统,医院使用到本模块的角色有前台挂号人员,医生和收费的工作人员。此界面需要操作员表(TB_DIC_CZYXX),该表数据设计如下(见表2)

4.2 挂号界面模块的数据库相关表的涉及与实现

在挂号界面中分为两类功能。一类功能是根据病人的就诊卡id查询以前是否在这家医院是否挂过号,挂过号调出以前病人的基本信息再次挂号。该功能需要用到患者基本信息表(TB_YL_HZXX)(见表3)。第二类功能,对没有在此医院挂过号的病人录入基本信息并进行挂号,需要用到挂号表(TB_YL_GH)(见表3)。

卡类型的编码,0:社保卡;1:医保卡;2:全市统一自费就诊卡;3:医院自费卡;4:区内统一自费就诊卡;5:新农合卡;6:居民健康卡;9:其他卡。对于市管干部、在编军人,这里的卡号、卡类型请填写“TS”

4.3 就诊界面的数据库相关表的涉及与实现

在此界面中医生根据患者就诊卡id调出病人基本信息,并在问诊后记录病人就诊记录,以及给病人开处方。之前使用过的患者基本信息表需要添加就诊记录表(TB_YL_JZJL)表来处理病人的就诊的相关信息,在就诊表中需要调用科室信息表(TB_DIC_KSXX),操作员表(TB_DIC_CZYXX)和ICD10疾病诊断(TB_DIC_ICD10)。在就诊中主要通过这四张表就可以就行数据的操作和处理。然后第二部就是对病人开处方,需要用到处方明细表(TB_YL_CFMX)。处方明细表涉及就诊流水号、处方号、就诊科室代码、就诊科室名称、开方医生代码、开发医生姓名、开方日期、剂型代码、药品规格、药品用法、药品数量、药品单位、使用频次代码、使用频次、每次数量、每次单位、用药途径、用药天数等字段,相关表单设计与登录界面和挂号界面相关表单设计方法相同,设计中注意表单关联调用关系。

5 系统主要功能界面的设计与实现

系統的操作界面是实现系统功能的媒介,显示了系统的结构和布局。系统界面设计的越合越科学,用户体验才更加方便。下面以主要以门诊界面的设计和实现来详细说明各功能模块的设计过程。

5.1 登录界面的设计与实现

本系统中只有是本院的登记的工作人员才有权限使用,在数据库中不同角色按人员类别区分,登录用户按登录名和密码进行与后台数据进行匹配,为安全行密码将以密文的形式进行传输。登录名与密码都与后台数据库匹配成功就可进入此系统。反之就停留在该界面。

5.2 挂号界面的设计与实现

挂号界面分为三个模块病人挂号模块,新病人信息登记模块,病人挂号成功出现的信息模块。挂号界面的用例文档如下表。

在此完成此界面功能主要是首先线初始化界面,从数据库中取得相应的数值,将数值传入到前台,然后将界面病人信息相对应的值存储到数据库中相应的表中,以挂号科室下拉列框为例子分析代码。

首先在Mapper层outpatientRegisterMapper.xml中写出相应查询语句

<select id="queryGhxx" parameterType="Map"resultType="TB_YL_GHXX">

select a.*,b.XM, d,ZDXMMC as xb,c.ZDXMMC as mzlx from abo.TB_YL_GH a

left jiondbo.TB_YL_HZXX b on a.HK

left jion TB_DIC_TYZDB c on c.ZDLXDM= '06' and a.MZLX= c.ZDMDM

left jion TB_DIC_TYZDB d on d.ZDLXDM= '02' and b.XB= d.ZDMDM

where CONVERT(varchar(100),CHSY,23)=CONVERT(varchar(100),GETDATE(),23)

order by a.GHSJ desc

</select>

然后在dao层定义接口在dao.ipml实现接口方法,在service进行逻辑业务处理

public Map initial(){

Map<String,List>dictionaryMap =InitDicListener.dictionaryMap;

Map<String,List>map = new HashMap<String,List>();

//获取挂号科室

List<DIC_KSXX>ksxxDictionary =(List<DIS_KSXX>) dictionaryMap.get("ksxx");

List<DIC_KSXX>ksxxDList= new ArrayList<DIS_KSXX>();

for(DIC_KSXX dic_KSXX: ksxxDictionary){

if(dic_KSXX.getfkgh().equals("1")){

ksxxList.add(dic_KSXX);

}

}

map.put("ksxx",ksxxList);

在controller层调用service层的方法将数据传回前台页面

@RequestMapping("/outpatinentRegister/init")

@RequestBody

public Map initial(){

returnoutPatienRegisterService.inital();

}

最后前端的js代码将数据初始化

//门诊挂号页面初始化

function init() {

$.ajax({

url:"outpatientRegister/init",

dataType:"json",

type: 'get',

success: function (data) {

//科室初始化

varksxx = data.ksxx;

varghksElement = $("#ghks");

ghksElement.empty();

for (var i=0;i<ksxx.length;i++) {

var item = ksxx[i];

ghksElement.append("<option value="+item.ksdm+">"+item.ksmc+"</option>");

}

6 小结

在系统所有功能完成后,进行测试保证基本功能全部实现。其主要测试系统功能是否错误或者是否有遗漏、是否有数据结构或外部数据库访问错误、性能是否能够接受等。本研究对开发的系统采取了黑盒测试。测试显示社区门诊服务系统三个流程基本都能实现。本社区门诊系统中病人不需要做任何操作,非常方便,挂号员医生和收费员得操作也不是特别复杂,只需要选者相应的数据即可。操作简单,功能齐全,对帮助人们在社区就诊系统的效率提升和看病体验有积极作用。

参考文献:

[1] 杨志姝,李光海,等.SQL应用与开发标准教程[M].北京:清华大学大学出版社,2006.

[2] 刘阳, 曹宝香. 基于J2EE考试系统的设计与实现[J]. 计算机工程与设计, 2007, 28(4):990-992.

[3] 沃尔斯. Spring in Action[M]. 北京:人民邮电出版社, 2006:56-59.

[4] 张俊萍, 朱小冬, 侯娜, 等. 基于SSM的软件体系结构开发过程研究[J]. 计算机测量与控制, 2011, 19(8):2029-2032.

[5] 宋远行.J2EE应用开发实践[M].北京:清华大学出版社,2011.

[6] 袁梅冷, 黄烟波, 黄家林,等. J2EE应用模型中MVC软件体系结构的研究与应用[J]. 计算机应用研究, 2003, 20(3):147-149.

[7] 丁振凡. Spring 3.x编程技术与应用[M]. 北京:北京邮电大学出版社, 2013.

[8] 王卫平, 王松涛, 王名茗. 一种基于J2EE、Spring和Hibernate的轻量级EAI构架[J]. 计算机系统应用, 2005(11):38-41.

[通联编辑:代影]

猜你喜欢

服务系统社区医院医疗服务
图书馆用户需求服务系统研究
社区医院高血压患者并发症治疗分析