基于java的工费医疗报销管理系统设计与实现
博主介绍:专注于Java vue .net php phython 小程序 等诸多技术领域和毕业项目实战、企业信息化系统建设,从业十五余年开发设计教学工作☆☆☆ 精彩专栏推荐订阅☆☆☆☆☆不然下次找不到哟
我的博客空间发布了1000+毕设题目 方便大家学习使用
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人
第三章 系统需求分析和数据库设计
需求分析不仅是确定系统必须完成哪些工作,而且必须对所开发的系统提出完整、准确、清晰、具体的要求。需求分析的结果是系统开发的基础,关系到工程的成败和软件产品的质量,因此我们就以下几个方面来进行系统的需求分析。
3.1 系统的功能要求
3.1.1系统主要模块划分:
数据管理模块和报销模块
3.1.2数据管理模块所要实现的主要功能有:
1.药品信息管理
包括增、删与修改药品信息,更改每种药品报销比例,同时也要能实现批量操作,比如每次药品进货后,本系统要能实现药品的批量添加。
2.用户信息管理
包括学生和职工两块。不仅要能实现对单个用户信息的增删与修改,而且要能实现对其的批量操作。如学生入学后本系统要能对其进行批量的添加等等。
3.系统操作员的管理
增、删与修改操作员信息。
4.药品、用户信息的查询
能按照不同的查询条件查询所需信息,最简单的要能实现用户可以按照用户名和编号查询,药品可以按照药品名称和编号查询。
5.数据库的备份与恢复
给用户(此处指操作员,即医务室的工作人员)一个简捷的界面,通过简单的操作,就可以实现人员信息数据和药品信息由sql server数据库向excel数据表的导入于导出,而不需要用户直接与sql服务器打交道。
3.1.3报销子模块的主要业务有:
1. 医疗费的报销
2. 个人报销信息的查询打印
3.2 系统的逻辑模型
综合上述分析的结果可以导出系统的详细的逻辑模型,我们用页面逻辑和数据流图来描述。
3.2.1系统的页面逻辑结构:
整个系统的页面逻辑结构示意图如图2-1所示:
图2-1 系统的页面逻辑结构示意图
3.2.2数据流图
数据流图主要是描绘信息在系统中流动和处理的情况。如图2-2所示:
报销 图2-2 系统数据流图
3.3 数据库设计
为了使开发的Web应用具有良好的可扩展性和易于分工,我们必须要做到:1.将业务逻辑与用户界面分离;2.将动态页面显示逻辑与静态的HTML代码分离。由Apache Jakarta项目组提供的Struts应用框架正是用来解决这些问题的,它采用了模型-视图-控制器(Model View Controller,MVC)设计思想,很好地实现了业务逻辑与用户面的分离。同时,由于JSTL标签库提供了标准化的标记集,可以在JSP页面中分离动态显示逻辑与静态的HTML,使页面代码更清晰,简化了从JSP内部访问JAVA语言结构的流程,可读性大大提高,从而成为使用Struct开发JSP的首选方法。而数据的持久化则可以由Hibernate来创建,这样代码的可重用性得到了提高,并且具有相对独立性,当持久化层的实现发生变化时,不会影响到上层的实现。除此之外,还能够灵活的支持多种数据库平台。Hibernate不仅仅管理JAVA类到数据库表的映射,还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL和JDBC处理数据的时间。
其系统架构图如图2-3所示:
图2-3 系统架构图
3.3.1 数据库的设计
在本系统的数据模块开发过程中,我们需要用到以下相关数据表:
表2-1 t_user_type(人员类别表)
序号 | 字段 | 字段名 | 类型 | 长度 | NULL | 备注 |
1 | 类别代码 | Typecode | Varchar | 10 | xj(现金)zz 在职lx( 离休)xs(学生)tx (退休) | |
2 | 类别名称 | Typename | Varchar | 20 | 1 |
表2-2 t_depart(部门表)
序号 | 字段 | 字段名 | 类型 | 长度 | NULL | 备注 |
1 | 部门代码 | departcode | varchar | 4 | ||
2 | 部门名称 | departname | varchar | 20 |
表2-3 t_zj_type(证件类型)
序号 | 字段 | 字段名 | 类型 | 长度 | NULL | 备注 |
1 | 类型类型 | Zjtype | varchar | 2 | 0 | 1 学生证2 职工号 3 一卡通 |
2 | 类型名称 | Zjname | Varchar | 20 | 0 |
表2-4 t_employee(职工表)
序号 | 字段 | 字段名 | 类型 | 长度 | NULL | 备注 |
1 | 编号 | employeeid | varchar | 12 | PK | |
2 | 医疗卡号 | medicalID | Varchar | 12 | ||
3 | 姓名 | name | varchar | 12 | ||
4 | 性别 | Sex | varchar | 4 | ||
5 | 年龄 | Age | varchar | 10 | ||
6 | 部门 | departcode | varchar | 4 | FK ,T_depart | |
7 | 类别 | typecode | varchar | 10 | FK, T_user_type | |
8 | 证件编号 | Zjcode | varchar | 18 | ||
9 | 证件类型 | Zjtype | varchar | 2 | FK,T_zj_type | |
10 | 密码 | pass | varchar | 20 | 没有初始化为职工编号 |
表2-5 t_student(学生)
序号 | 字段 | 字段名 | 类型 | 长度 | NULL | 备注 |
1 | 学号 | Studentid | Varchar | 12 | Not | PK |
2 | 医疗卡号 | Medicalid | varchar | 12 | ||
3 | 姓名 | Name | varchar | 12 | ||
4 | 性别 | Sex | varchar | 4 | ||
5 | 年龄 | Age | varchar | 10 | ||
6 | 部门 | departcode | varchar | 4 | FK ,T_depart | |
7 | 类别 | typecode | varchar | 10 | FK ,T_user_type | |
8 | 证件编号 | Zjcode | varchar | 18 | ||
9 | 证件类型 | Zjtype | varchar | 2 | FK,T_zj_type | |
10 | 年级 | Grade | varchar | 10 | 99级00级01级… | |
11 | 密码 | Pass | varchar | 20 | 初始化为学生编号 |
表2-6 t_worker(操作员表)
序号 | 字段 | 字段名 | 类型 | 长度 | NULL | 备注 |
1 | 操作员代码 | Workerid | char | 5 | Not | Pk |
2 | 操作员名称 | Workername | char | 12 | ||
3 | 操作员口令 | workerPass | varchar | 8 | ||
4 | 所属科室 | Room | char | 3 | ||
5 | 权限科室 | Rightroom | char | 200 | ||
6 | 权限代码 | Rightcode | Varchar | 2 | FK,T_sys_right |
表2-7 t_sys_right(系统权限表)
序号 | 字段 | 字段名 | 类型 | 长度 | NULL | 备注 |
1 | 权限代码 | Rightcode | Varchar | 2 | PK | |
2 | 权限名称 | Rightname | Varchar | 12 |
表2-8 t_yp(药品)
序号 | 字段 | 字段名 | 类型 | 长度 | NULL | 备注 |
2 | 药品代码 | Ypid | varchar | 12 | Not | Pk |
3 | 药品编号 | Ypcode | varchar | 18 | 国家规定编号 | |
4 | 药品中文名称 | Ypcname | varchar | 50 | ||
5 | 药品英文名称 | Ypename | Varchar | 50 | ||
剂型 | ypJx | Varchar | 10 | |||
5 | 药品类型 | Yptype | varchar | 4 | Fk,T_bx_yp_type | |
6 | 药品单位 | Ypunit | varchar | 4 | ||
7 | 药品单价 | Ypprice | numeric | 9 | ||
8 | 是否医保药品 | Canbx | Varhcar | 2 | 1 是,可以报销 0 不是,不可报销 | |
9 | 五笔代码 | Wb | varchar | 4 | ||
10 | 拼音代码 | py | varchar | 4 |
表2-9 t_yp_type(药品类型)
序号 | 字段 | 字段名 | 类型 | 长度 | NULL | 备注 |
1 | 药品类型 | Yptype | varchar | 4 | Pk,1 西药2 中成药3 中药饮片 | |
2 | 类型名称 | Yptypename | Varchar | 20 |
表2-10 t_yp_infor(药品类特殊信息)
序号 | 字段 | 字段名 | 类型 | 长度 | NULL | 备注 |
1 | 药品特殊信息 | Ypinfo | varchar | 4 | Pk | 1 ★药品2*★药品 |
2 | 药品特殊信息 | Ypinfoname | varchar | 20 |
图2-3说明的本系统所有用到的数据表间的逻辑关系:
图2-3 系统数据表的逻辑关系
第四章 系统实现
4.1系统运行环境
- 操作系统:WindowsXP
- JDK版本:1.4.2
- 浏览器:IE 6.0
- 服务器:Tomcat5.05
- 数据库:MS Server2000
4.2系统运行结果及分析
4.2.1用户管理
- 所有用户
说明:这里是对用户(管理员)进行管理,管理员用户要进入系统,就要拥有自己的登陆入口这是任何一个系统管理功能能保密性的需要。根据数据库部分的设计知道,初始化填入了一个管理员的用户记录,用户名为songbingqiao,密码为19900424。
-
- 用户管理界面
- 添加管理员
说明:这里是对管理员进行添加的模块,只有在这里进行了添加的管理员才能进入系统进行操作,每个管理员都拥有自己的用户名和密码,这些信息存储在数据库中。
3-2 添加管理员界面
4.2.2报销管理
- 医疗报销模块
说明:这个模块是管理员最常用的模块,每个来报销的学生或者老师,在输入学号或工号后,即会出现以下界面,在这里管理根据实际情况填写表单,包括药品报销,治疗报销和检查报销三种类型,其中药品报销只需输入关键字,数据库中包含有该关键字的药品即会提示出来供管理员选择,并且每种药品的费用也已经存储在数据库中,这样就方便了对药品总费用的统计。点击计算按钮,系统就会把所有报销的金额汇总,乘以相应的报销比例,就可以知道实际可以报销的金额。填写完之后点击提交,该条记录即被保存在数据库之中了。同时也可以进行打印。
-
- 报销管理界面
- 报销记录查询模块
说明:这个模块是对报销的记录进行查询,每个人员所有的报销记录都存储在数据库中,并且每个人员的消费总金额都可以自动统计,方便管理员进行管理和查找,还可以提供按时期查找,可以可以了解到一段时间内的报销情况,从而为医院进行报销的管理。这里统计出来的表单可以打印出来。
3-5 报销记录查询界面
- 报销统计
说明:这个模块是对已有报销表单进行统计,点击计算按钮,系统就会把所有报销的金额汇总,乘以相应的报销比例,就可以知道实际可以报销的金额。填写完之后点击提交,该条记录即被保存在数据库之中了。同时也可以进行打印。
4.2.3数据信息管理
1)药品信息管理:这个模块实现的是药品信息的修改,删除和查询,系统支持三个查询选项:1.按药品名称;2.按药品编号;3按生产单位.。这里直接和数据库相连,调出药品显示的表单,药品在数据库中是按照药品ID来存储的,并且每个药品都支持模糊查询,输入信息后可以从数据库调出和输入内容相关的药品名称,方便查找。
3-6 药品信息管理
2)人员信息管理
说明:人员信息管理:这个模块实现的是药品信息的修改,删除和查询,系统支持三个查询选项: 1.按人员名称;2.按医保卡号;3按所属单位.;这里直接和数据库相连,调出人员显示的表单,人员在数据库中是按照人员ID来存储的。
3-7 人员信息管理界面
大家点赞、收藏、关注、评论啦 其他的定制服务 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 或者私信作者