新农村合作医疗管理系统.docx
《新农村合作医疗管理系统.docx》由会员分享,可在线阅读,更多相关《新农村合作医疗管理系统.docx(31页珍藏版)》请在冰点文库上搜索。
![新农村合作医疗管理系统.docx](https://file1.bingdoc.com/fileroot1/2023-7/17/3b22819d-55fb-4e6f-abc5-1ef10ceddfd8/3b22819d-55fb-4e6f-abc5-1ef10ceddfd81.gif)
新农村合作医疗管理系统
新农村合作医疗管理系统
新农村合作医疗管理系统
课程名称:
空间数据库基础
专业:
测绘工程
班级:
0614121
设计组:
第4小组
设计者:
郜亚东吕亚磊苗辉苏文文
指导教师:
苗东利牛磊宋自影邢晓娜
设计时间:
2014年1月2号
河南城建学院
测绘工程学院
一、课题及任务
1.课题简介
2.任务分派
二、系统需求分析调查
1.系统需求分析
2.系统功能简介
三、系统设计
1.系统总体设计(画出系统设计流程图)
2.系统详细设计(主要模块及模块介绍)
3.数据库设计
四、系统实施
1.数据资源
2.主程序设计
3.主要工作窗口(表单控件的属性及代码)
4.菜单设计
五、设计体会
六、参考文献
一.课题及任务
1.课题简介
随着我国医疗制度改革不断深入的进行,社会保险机构的业务量也大幅度的增加,传统的手工管理方式已经不能够再满足新的业务需要。
为了保证新型农村合作医疗制度的顺利实施,实现对新型农村合作医疗业务高效、准确、快速的管理,提高新型农村合作医疗业务管理的水平。
本文通过分析新农村合作医疗管理
存在的问题,继而设计一种医疗信息管理系统。
2.任务分派
为了顺利的完成这次程序设计,我们组进行了任务分配。
郜亚东负责主窗体,主窗体菜单,主程序,用户,医生管理,药品信息,药品价格,药品管理等设计。
吕亚磊负责统筹支付,添加新用户,启动,密码修改等设计。
苗辉负责门诊查询,门诊病人,就医记录等设计。
苏文文负责技术支持,合作医疗人员信息,关于,帮助,登陆等设计。
二、系统需求分析调查
1.系统需求分析
管理信息系统是一门新兴的,集管理科学,信息科学,系统科学及计算机科学为一体的综合性学科,研究的是信息管理活动的全过程,以便有效地管理信息,提供各类管理决策信息,辅助企业进行现代化管理。
管理信息系统它具备数据管理,计划,控制,预测和辅助决策功能。
用同一标准处理和提供信息,排除使用前后矛盾的不完整的数据完整,及时提供在管理及决策中需要的数据。
(1)利用指定的数据关系分析数据,客观预测未来。
(2)向各级管理机构提供不同详细程度的报告,缩短分析和解释的时间
(3)用最短的费用最短的时间提供尽可能精确,可靠的信息,以便使决策者选者最佳的实施方案,以便提高企业的经济效益。
(4)储存人员基本信息,门诊,住院报账明细到数据库中
(5)及时反映病人拖欠费用情况
(6)对于基金的使用情况,病种发病率情况,药品使用情况等信息的图形化统计制作农村医疗合作信息系统的目的就是支持医院的行政管理与事务处理业务,使医院的业务操作流程和日常管理规范化。
采集,分析处理,储存各种基础数据并使之标准化
2.系统功能简介
(1)为业务范围内所有的农业人口,提供新农合服务;
(2)实现跨地区、跨行业间迅速、准确、安全、可靠的新农合信息交换,保证新农合信息在业务范围内信息传输的畅通和系统资源的共享;
(3)通过Internet/Intranet定期向各级政府部门提供、发布新农合的有关信息、并为全体参合人员提供新农合信息的查询和有关政策法规咨询服务;
(4)建立符合新农合业务要求、管理要求的应用软件系统,通过计算机软、硬件技术的先进手段,在业务上力求减少人员工作强度、规范新农合业务运作、提高业务工作质量、提高管理工作效率;
(5)建立新农合管理的统计指标体系,使指标设置、指标解释、采集周期更具时效性,所设置的指标应能真正反映新农合事业的发展状况。
系统要能够实现:
最高层的预测、决策:
中间层的计划、统计分析:
基础层的事务管理这三个管理层次的功能[1]。
三、系统设计
1.系统总体设计
2.系统详细设计
3.数据库设计
数据库是管理信息系统的核心,一个良好的数据库结构既应具有数据冗余少、操作处理过程简单等特点,同时也应具有信息查找比较容易、系统开销低等特点。
本系统在设计数据库的模式时,先根据分析阶段求得的E-R图构造出数据库的概念模型,这部分的工作可以按照E-R图生成关系模式的成熟方法机械的执行。
对于得到的关系模式再做进一步的完善。
首先为了保证存储数据的准确性和一致性,需要给数据加上完整性约束条件。
根据作用的数据对象和范围不同,完整性措施分为三类,它们分别是标识唯一实体的实体完整性、保证数据正确的域完整性和维持参照表和被参照表之间数据一致性的参照完整性。
约束则是数据库管理系统(DBMS)提供保证上述数据完整性的手段,主要包括主键约束、唯一性约束、缺省约束、外键约束、非空约束和CHECK约束这几种。
本系统在数据库设计阶段主要确定了主键约束,唯一性约束、非空约束、缺省约束,部分外键约束和部分CHECK约束。
有一部分CHECK约束在应用程序设计中通过指定输入的有效性规则实现。
而部分用于参照完整性约束的外键约束由于会在系统开发阶段带来不便,就通过触发器来保证参照完整性。
还有一些较为复杂的数据一致性的要求,也决定使用触发器来实现,如系统中每一缴费期的每一条家庭缴费标准核定记录的内容都应与该家庭多条成员缴纳保险名册记录的内容保持一致。
1)实例化一个数据库连接对象,在VC6.0里需要引用SQL的动态库进行引用。
Sqlconnectionconn=newsqlconnection(“connectstring”);//connectstring为连接字符串(其中connectstring为连接数据库的字符串)。
(2)调用Sqlconnection类的open方法将数据库链接打开。
Conn.open();//打开数据库连接
(3)实例化SQL命令响应类,该类为传递SQL结构化语句并执行的。
其构造函数需要两个参数分别为SQL结构化语句和数据库连接类的对象。
Sqlcommandcomm=newsqlcommand(sql,conn);//执行sql命令
(4)实例化SQL的读数据类,该类实现对数据库读取后的结构和数据存储。
通过调用SQL命令类的执行读(excuteread)方法返回Sqlask类数据赋值给Sqlask类的对象。
Sqlaskreader=comm.excuteread();
(5)数据库执行Sqlask类的读(Read)方法读取存在Sqlask类结构的数据。
Reader.Reader();//数据
(6)完成数据库读取后对数据库连接进行关闭,如果不对其进行关闭会早晨数据库连接资源浪费可能会导致更多的连接失效,所以关闭数据库连接很重要。
四、系统实施
1.数据资源
2.主程序设计
settalkoff
closeall
clearall
publiciasinte
*设置系统参数
setsysmenuoff
setsysmenuto
setnotifyoff
&&设置窗口属性
_screen.maxwidth=714
_screen.maxheight=449
_screen.autocenter=.t.
*设置系统标题及图标
_screen.caption="新农村合作医疗管理系统"
*设置路径
*!
*setdefad:
\vfp
opendatabase数据1.dbc
*调用启动表单
doform启动.scx
readevent
return
3.主要工作窗口
窗体:
对象
对象名
属性
事件
窗体
formstart
Caption:
启动
init
Autocenter:
T-真
计时器
timestartup
Enabled:
t
timer
Interval:
0
图像
image
picturei:
\调试\2.jpg
formstart的init事件代码如下:
this.tirstartup.interval=100
publiciasinteger
i=1
Timestartup的timer事件代码如下:
i=i+1
ifi=10then
releasethisform
doform登陆.scx
endif
对象
对象名
属性
事件
窗体
Frm登陆
Caption:
新农村合作医疗管理系统
init
标签
Lbl欢迎
Caption:
欢迎
Lbl用户名
Caption:
用户名
Lbl密码
Caption:
密码
文本框
Txt用户名
Txt密码
按钮
Cmd登陆
Caption:
登陆
click
Cmd退出
Caption:
退出
Frm登陆的init事件代码如下:
publiciasinteger
i=0
Cmd登陆的click事件代码如下:
i=i+1
locateforalltrim(用户名密码表.用户名)==alltrim(thisform.txt用户名.value)
iffound()andalltrim(用户名密码表.密码)==alltrim(thisform.txt密码.value)
doform主窗体.scx
releasethisform
else
ifi<3then
=messagebox("操作员或密码错误请重新输入!
!
!
",48,"警告")
thisform.txt密码.setfocus
else
=messagebox("对不起,您是非法用户,系统将会退出!
!
!
",48,"严重警告")
quit
endif
endif
Cmd退出的click事件代码如下:
releasethisform
对象
对象名
属性
事件
窗体
Frm新农合
Caption:
新农村合作医疗管理系统
Autocenter:
.t.真
图片
image
Picture:
f:
\课程设计\1.jpg
命令按钮
Cmd退出
Caption:
退出
click
Cmd退出的click事件代码如下:
releasethisform
onshutdown
Quit
对象
对象名
属性
事件
窗体
Frm医生管理
Caption:
医生管理
标签
lbltitle
Caption:
医生基本信息浏览
Backstyle:
0-透明
Autosize:
.t.真
Lbl科室
Caption:
科室
Backstyle:
0-透明
Autosize:
.t.真
Lbl姓名
Caption:
姓名
Backstyle:
0-透明
Autosize:
.t.真
Lbl年龄
Caption:
年龄
Backstyle:
0-透明
Autosize:
.t.真
Lbl职称
Caption:
职称
Backstyle:
0-透明
Autosize:
.t.真
文本框
txt科室
Controlsour:
医生.科室
txt姓名
Controlsour:
医生.姓名
txt年龄
Controlsour:
医生.年龄
txt职称
Controlsour:
医生.职称
命令按钮
Cmd首个
Caption:
首个
click
Cmd上一个
Caption:
上一个
Cmd下一个
Caption:
下一个
Cmd末个
Caption:
末个
Cmd取消
Caption:
取消
线条
Line1
Cmd首个的click事件代码如下:
gotop
this.enabled=.f.
thisform.cmd上一个.enabled=.f.
thisform.cmd下一个.enabled=.t.
thisform.cmd末个.enabled=.t.
Cmd上一个的click事件代码如下:
skip-1
this.enabled=.f.
thisform.cmd下一个.enabled=.t.
thisform.cmd末个.enabled=.t.
ifbof()then
gotop
this.enabled=.f.
thisform.cmd首个.enabled=.f.
endif
thisform.refresh
Cmd下一个的click事件代码如下:
skip-1
thisform.cmd下一个.enabled=.t.
thisform.cmd末个.enabled=.t.
ifbof()then
gotop
this.enabled=.f.
thisform.cmd首个.enabled=.f.
endif
thisform.refresh
Cmd末个的click事件代码如下:
gobottom
this.enabled=.f.
thisform.cmd下一个.enable=.f.
thisform.cmd上一个.enabled=.t.
thisform.cmd首个.enabled=.t.
thisform.refresh
Cmd取消的click事件代码如下:
releasethisform
对象
对象名
属性
事件
窗体
Frm药品管理
Caption:
药品管理
标签
Lbl助记码
Caption:
助记码
Lbl名称
Caption:
名称
Lbl规格
Caption:
规格
Lbl单价
Caption:
单价
Lbl生产日期
Caption:
生产日期
文本框
txt助记码
txt名称
txt规格
txt单价
txt生产日期
命令按钮
Cmd查询
Caption:
查询
click
Cmd添加
Caption:
添加
Cmd删除
Caption:
删除
Cmd取消
Cmd查询的click事件代码如下:
zjm=alltrim(thisform.txt助记码.value)
select药品
setordertotag助记码
seekzjm&&查找记录
iffound()
select药品.药品名称,药品.单位规格,药品.生产日期,药品,产地,药品价格.单价;
from药品;
where药品.助记码==alltrim(thisform.txt助记码.value)and药品.助记码=药品价格.助记码;
intocursorchx
thisform.txt名称.value=chx.药品名称
thisform.txt规格.value=chx.单位规格
thisform.txt单价.value=chx.单价
thisform.txt生产日期.value=chx.生产日期
thisform.txt助记码.value=chx.药品名称
else
thisform.txt名称.value=""
thisform.txt规格.value=""
thisform.txt单价.value=""
thisform.txt生产日期.value=""
thisform.txt助记码.value=""
thisform.refresh
*!
*messagebox("没有查找到记录,是否添加?
",48,"提示")
endif
*!
*hzylh=alltrim(thisform.txt合作医疗号.value)
*!
*select统筹支付
*!
*setordertotag合作医疗号
*!
*seekhzylh
*!
*iffound()
*!
*select统筹支付.费用,统筹支付.个人支付,统筹.支付个人支付比例,统筹支付,基金支付;
*!
*from统筹支付;
*!
*where统筹支付.合作医疗号=hzylh;&&alltrim(thisform.txt合作医疗号.value)
*!
*intocursorchx
*!
*thisform.txt费用.value=chx.费用
*!
*thisform.txt个人支付.value=chx.个人支付
*!
*thisform.txt个人支付比例.value=chx.个人支付比例
*!
*thisform.txt基金支付.value=chx.基金支付
*!
*else
*!
*thisform.txt费用.value=""
*!
*thisform.txt个人支付.value=""
*!
*thisform.txt个人支付比例.value=""
*!
*thisform.txt基金支付.value=""
*!
*messagebox("没有查询到此记录!
",48,"警告")
*!
*endif
Cmd取消的click事件代码如下:
releasethisform
对象
对象名
属性
事件
窗体
Frm用户添加
Caption:
用户添加
标签
lbl新用户名
Caption:
新用户名
Lbl新用户名密码
Caption:
新用户名密码
文本框
Txt新用户名
Txt新用户名密码
命令按钮
cmd确认添加
click
cmd取消
cmd确认添加的click事件代码如下:
a=messagebox("确定添加?
",4+32+0,"询问")
ifa=6
use用户exclusive
a1=alltrim(thisform.txt新用户.value)
a2=alltrim(thisform.txt新用户密码.value)
insertinto用户(用户名,密码)values(a1,a2)
endif
Cmd取消的click事件代码如下:
releasethisform
onshutdown
对象
对象名
属性
事件
窗体
Frm修改密码
Caption:
修改密码
Lbl用户名
Caption:
用户名
标签
Lbl原始密码
Caption:
原始密码
Lbl新密码
Caption:
新密码
Lbl验证密码
Caption:
验证密码
组合框
Cbo用户名
文本框
Txt原始密码
Txt新密码
Txt验证密码
命令按钮
Cmd确定
Caption:
确定
click
Cmd取消
Caption:
取消
Cmd确定的click事件代码如下:
USE用户
select用户
locafor用户名=alltrim(thisform.cbo用户名.value)
a1=alltrim(thisform.txt新密码.value)&&新密码
a2=alltrim(thisform.txt验证密码.value)&&验证密码
pass1=alltrim(thisform.txt原始密码.value)&&旧密码
ifpass1!
=ALLTRIM(密码)
thisform.txt原始密码.value=''
thisform.txt新密码.value=''
thisform.txt验证密码.value=''
thisform.txt原始密码.setfocus
messagebox('旧密码错误!
请重新输入!
',64,'错误信息')
else
IF""=a1
messagebox('密码不可为空',64,'错误信息')
RETURN
endif
ifa1!
=a2
messagebox('两新密码不相同,请再次输入',64,'错误信息')
thisform.txt原始密码.value=''
thisform.txt新密码.value=''
thisform.txt验证密码.setfocus
else
repl密码witha1
messagebox('密码修改成功',54,'系统信息')
thisform.Release
endif
ENDIF
SELECT用户
Use
Cmd取消的click事件代码如下:
releasethisform
对象
对象名
属性
事件
窗体
Frm统筹支付
Autocenter:
.T.真
标签
Lbl合作医疗号
Caption:
合作医疗号
Lbl费用
Caption:
费用
Lbl个人支付
Caption:
个人支付
Lbl个人支付比例
Caption:
个人支付比例
Lbl基金支付
Caption:
基金支付
按钮
Cmd查询
Caption:
查询
Click
Cmd取消
Caption:
取消
Cmd查询的click代码如下:
hzylh=alltrim(thisform.txt合作医疗号.value)
select统筹支付
setordertotag合作医疗号
seekhzylh
iffound()
select统筹支付.费用,统筹支付.个人支付,统筹.支付个人支付比例,统筹支付,基金支付;
from统筹支付;
where统筹支付.合作医疗号=hzylh;&&alltrim(thisform.txt合作医疗号.value)
intocursorchx
thisform.txt费用.value=chx.费用
thisform.txt个人支付.value=chx.个人支付
thisform.txt个人支付比例.value=chx.个人支付比例
thisform.txt基金支付.value=chx.基金支付
else
thisform.txt费用.value=""
thisform.txt个人支付.value=""
thisform.txt个人支付比例.value=""
thisform.txt基金支付.value=""
messagebox("没有查询到此记录!
",48,"警告")
endif
cmd取消的click事件代码如下:
releasethisform
对象
对象名
属性
事件
窗体
Frm门诊查询
Caption:
门诊查询
Autocenter:
.T.-真
标签
Lbl合作医疗号
Caption:
合作医疗号
Lbl姓名
Caption:
姓名
Lbl用药名称
Caption:
用药名称
Lbl用药名称1
Caption:
用药名称1
Lbl用药名称2
Caption:
用药名称2
Lbl用药名称3
Caption:
用药名称3
Lbl用药名称4
Caption:
用药名称4
Lbl用药名称5
Caption:
用药名称5
Lbl用药名称6
Caption:
用药名称6
Lbl费用
Caption:
费用
Lbl费用
Caption:
费用
文本框
Txt合作医疗号
Txt姓名
Txt用药名称1
Txt用药名称2
Txt用药名称3
Txt用药名称4
Txt用药名称5
Txt用药名称6
Txt收费
线条
Line1
Backcolor:
0.0.255
Line2
Line3
按钮
Cmd查询
Caption:
查询
Cmd