ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:277.81KB ,
资源ID:4327271      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-4327271.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(医院门诊管理系统说明书.docx)为本站会员(b****4)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

医院门诊管理系统说明书.docx

1、医院门诊管理系统说明书*实践教学* 兰州理工大学计算机与通信学院2013年春季学期 数据库 课程设计题 目: 医院门诊管理系统 专业班级: 计算机(1)班 姓 名: 赵王正 学 号: 10240136 指导教师: 王旭阳 成 绩: 目 录摘 要 2前 言 3正 文 41. 需求分析 42. 概念结构设计 43. 逻辑结构设计 64. 系统实现 85. 系统测试 85.1 登录模块 85.2 用户表选择界面 95.4病房选择界面 105.5科室选择界面 115.6医生选择界面 115.7数据库功能测试 126. 软件使用说明书 13总 结 14参考文献 15致 谢 16附录 17摘 要 医院管理

2、数据库系统,以利用计算机完成病人入院后,对其基本信息、主治医师以及入住病房等信息进行数据库管理,有利于提高入院手续的办理速度以及对医院资源管理的效率。同时可以落实责任,方便信息的集中化管理及应用。本数据库系统是一个小型数据库管理系统,施以款专门用于医院管理系统的软件,具有良好的用户界面,风格独特的设计。 基于B/S 的门诊药房管理系统能在线管理门诊药房的药品器材,实现药品器材的入库,药品的划价结帐,对销售额的报表统计。门诊药房管理系统的设计本着以病人为中心,提高药房内部管理水平。关键词: 门诊药房管理;B/S ;数据库前 言医院管理的门面大,信息流量大,手续较繁琐,在手工方式下,医护人员要做大

3、量不必要的重复工作、效率低、准确性差、不方便管理,影响工作效率,造成了很多就诊病人得不到合理有效的快捷就诊服务,甚至影响医疗质量。为此,越来越多的医院加快了信息化建设的步伐。医院管理系统能有效地优化服务和工作环境、使病人和医生情绪得以放松,提高了服务效率和质量、树立了医院的良好形象,使医院工作可以高效有序的运转,提高了医院的经济效益,促进了医院的发展。正 文1. 需求分析通过对医院门诊日常工作的可行性分析和初步调查,确定建立一个医院门诊管理子系统。本系统的最终目的是为了储存医院门诊每个流程的信息,方便调用、查看。通过对数据的收集、分析,明确了本系统的主要功能是:对每个前来就医的病人信息的登记,

4、安排好病人对应的科室医生的时间表,每种药品的信息和经办人的信息。而且每个病人需要被长期保存,以便今后方便查询。首先要明确一个系统做出来的目的是什么,区分业务流程图和系统流程图的区别,避免把两者弄混。2. 概念结构设计为了便于实现和理解,下面是比较简单的系统E-R图,每个实体及属性如下:处方:处方编号、病人姓名、医生姓名、药品信息;病人:流水号、病人姓名、性别、年龄、病症;科室:科室编号、名称、类别;医生:医生编号、姓名、职务、科室类别;收费票据:流水号、日期、病人姓名、挂号员编号、接诊医生、收款金额、收费员; 图1 图2 图3 图4 图5 图63. 逻辑结构设计对上面所画的E-R图,有6个实体

5、4个关系,每个实体可以用一张表表示,而且多对对2个多对多)的联系又可以转换为一张表,则此系统表有8个表。病人表,处方表,医生表,科室表,就诊表,药品表,收费票据表;病人表:列名数据类型长度说明流水号nchar12主键姓名nchar8病人姓名性别Char2病人性别年龄smallint病人年龄check约束病症varchar50病人病况处方表:列名数据类型长度说明处方编号nchar10主键流水号Nchar12外键病人姓名nchar8医生姓名nchar8药品信息varchar50医生开出的药品医生表:列名数据类型长度说明医生编号nchar12主键姓名nchar8医生的姓名职务nchar20医生的职位

6、科室编号nchar12医生属于的科室科室表:列名数据类型长度说明科室编号nchar12主键科室名称nchar10科室名称科室类别nchar20科室类别就诊表:列名数据类型 长度说明流水号nchar12主键医生编号nchar12外键姓名Varchar8病症Varchar50病人的病症处方编号nchar12触发器日期datetimeYYYY/MM/DDdefaut约束 药品表 列名数据类型长度说明 名称varchar6主键 单价float药品的单价 数量smallint药品数量取药表列名数据类型长度说明处方编号nchar10主键药品名称Varchar6收费票据表:列名数据类型 长度说明流水号nch

7、ar12主键日期datetimeYYYY/MM/DD;default约束病人姓名nchar8病人的姓名经办人编号nchar8开挂号单的人编号医生编号nchar8给病人看病的医生编号收费金额float需要付的金额;check约束收费员nchar8收款人员姓名4. 系统实现数据库完整性设计1、主键及唯一性索引在病人表中,挂号单的流水号是唯一能表明病人的属性,所以将流水号设为主键并建立唯一性索引。同理,医生表、科室表、收费发票、处方表对应的主键是医生编号、科室编号、流水号、处方编号,并一次在上述属性建立唯一性索引。2、参照完整性设计在上面的就诊表,主键均是流水号,而他的外键是医生编号。这个属性又分别

8、是医生表、的主键。所以看病表与医生表,医生表里面的主键是医生编号,外键是科室编号,科室编号又是科室表的主键。所以就诊表与医生表,医生表与科室表之间存在着参照与被参照的关系。3、check约束病人表中,病人的年龄要是正数,因此约束它的值只能是大于等于零,又因为人的寿命的长度,限制它的最大值为120。而性别只有男女之分,也要建立check约束。对于收费票据表中的收费金额设置check约束,收费金额不能为负的,所以check约束它的值大于零。4、default约束就诊表里的看病日期和收费发票表的开出发票的日期,都应该设置default约束,设置的默认值是当天的日期。5触发器设计在就诊表和处方表中,分

9、别对流水号、处方编号建立触发器,当产生这些编号时,则触发提醒病人应该到收费处交钱。5. 系统测试5.1 登录模块用户只要输入用户名、密码,选择登陆角色就可以了。若用户输入的以上三项与数据库中保存的相符,则表明用户登录成功;如果不符,系统会提示错误。首页界面即登录界面,通过下列代码验证考生身份的合法性:登录界面:5.2 用户表选择界面5.3病人信息界面本界面附带添加,删除,修改,清空等功能。5.4病房选择界面5.5科室选择界面5.6医生选择界面 5.7数据库功能测试医生表病人表科室表病房表 6. 软件使用说明书 数据库存储过程设计方便各个角色的用户进行查询,将不同的表存放在不同的地方,各个表之间

10、可以进行连接。数据库存储过程设计主要就是为了不同的角色查询的方便。 如可以将病人表、收费票据表通过流水号连接起来,可以让病人便于查看自己的病症和所花费的钱。 权限设计对于本系统的大致权限分配如下,医生能查看自己的信息,能查看自己检查的病人的基本信息和病例。病人能查看自己的病例,能查看自己的处方,收费票据。收费人员能查看所有挂号人的信息,处方,收取的费用。总 结这次数据库课程设计给我的最大的印象是:流程是一切的根本;架构是重要的,比想象的还要重要;实践比一切空谈和理论更能学到东西。从做这个数据库开始无论遇到什么困难,我都没有一丝的放弃的念头。在设计过程中一定要慎重,仔细。来不得半点马虎。需求分析

11、是整个课程设计的中心,考虑要全面,分析彻底。才会为后来的设计打下良好的基础。否则,前功尽弃,甚至不能完成任务。做实例过程中要注意与说明书中数据项数据类型,数据长度等的一致,命令中心输入任何命令都要谨记一条原则,那就是严格按照格式来,不能像平时在纸上作业。 经过两个星期的努力我的医院门诊管理系统数据库课程设计终于完成了,在这个过程中,我逐个击破,从分析到设计,从表到数据,从基本操作到高级查询,我一一研究,仔细实验,理解了很多。 从这个过程我懂得,更多的实践是帮助你更好的理解理论的办法,而课程设计的完成也是对一个工程和项目的责任心的完整,也使我们懂了更多的方法以及对项目的设计经验,虽然简单,但是也

12、是一种很好的锻炼。参考文献1李明等. 数据库原理及应用M. 西南交大出版社, 2007.72袁方(译). 现代数据库管理(第7版)M. 电子工业出版社, 2006.1 3张瑜等(译). 数据库系统设计实现与管理(第6版)M. 清华大学出版社, 2005.94郑阿奇. SQL Server实用教程(第2版) M. 电子工业出版社, 2007.115熊拥军,刘卫国. 数据库技术与应用实践教程SQL Server 2005 M. 清华大学出版社, 2010,46周涛, 吕伟臣, 夏永和. SQL Server 2005 数据库基础应用M. 清华大学出版社, 2007,127陈磊等. PowerBui

13、lder 9 数据库项目案例导航M. 清华大学出版社, 2005,18杨柠. 进销存管理软件参考流程的研究与分析J. 黑龙江科技信息,2010,59赵晓霞. 进销存管理系统的设计与实现J. 煤炭技术, 2010,1致 谢在这次课程设计的撰写过程中,我得到了很多人的帮助。首先,我要感谢我的老师在课程设计上给予我的指导、提供给我的支持和帮助,这是我能顺利完成这次课设的主要原因,更重要的是老师帮我解决了许多技术上的难题,让我能把系统做得更加完善。在此期间,我不仅学到了许多新的知识,而且也开阔了视野,提高了自己的设计能力。其次,我要感谢帮过我的同学,他们也为我解决了不少我不太明白的问题。同时也感谢学院

14、为我提供良好的做课程设计的坏境。最后,再一次的感谢所有在设计中帮助过我的良师益友和同学。附录(部分源代码)public class dialog extends JDialog private static final long serialVersionUID = 1L; private JPanel jContentPane = null; private JPanel jPanel = null; private JLabel jLabel = null; private JLabel jLabel1 = null; private JLabel jLabel2 = null; priv

15、ate JTextField juserName = null; private JPasswordField jPassword = null; private JButton jOK = null; private JButton jUndo = null; private JButton jExit = null; private static String userName = ; private String userPassword = ; /* * param owner */ public dialog(Frame owner) super(owner); initialize

16、(); /* * This method initializes this * * return void */ private void initialize() this.setSize(441, 316); this.setModal(true); this.setTitle(员工登录); this.setResizable(false); this.setContentPane(getJContentPane(); /* * This method initializes jContentPane * * return javax.swing.JPanel */ private JPa

17、nel getJContentPane() if (jContentPane = null) GridLayout gridLayout = new GridLayout(); gridLayout.setRows(1); jContentPane = new JPanel(); jContentPane.setLayout(gridLayout); jContentPane.add(getJPanel(), null); return jContentPane; /* * This method initializes jPanel * * return javax.swing.JPanel

18、 */ private JPanel getJPanel() if (jPanel = null) jLabel2 = new JLabel(); jLabel2.setBounds(new Rectangle(61, 151, 43, 24); jLabel2.setText(密码:); jLabel1 = new JLabel(); jLabel1.setBounds(new Rectangle(52, 110, 53, 24); jLabel1.setText(用户名:); jLabel = new JLabel(); jLabel.setText(欢迎员工登录 祝您工作愉快); jLa

19、bel.setFont(new Font(Dialog, Font.BOLD | Font.ITALIC, 26); jLabel.setForeground(new Color(252, 5, 5); jLabel.setBounds(new Rectangle(33, 22, 372, 38); jPanel = new JPanel(); jPanel.setLayout(null); jPanel.add(jLabel, null); jPanel.add(jLabel1, null); jPanel.add(jLabel2, null); jPanel.add(getJuserNam

20、e(), null); jPanel.add(getJPassword(), null); jPanel.add(getJOK(), null); jPanel.add(getJUndo(), null); jPanel.add(getJExit(), null); return jPanel; /* * This method initializes juserName * * return javax.swing.JTextField */ private JTextField getJuserName() if (juserName = null) juserName = new JTe

21、xtField(); juserName.setBounds(new Rectangle(105, 110, 193, 22); return juserName; /* * This method initializes jPassword * * return javax.swing.JPasswordField */ private JPasswordField getJPassword() if (jPassword = null) jPassword = new JPasswordField(); jPassword.setBounds(new Rectangle(104, 152,

22、 195, 22); return jPassword; /* * This method initializes jOK * * return javax.swing.JButton */ private JButton getJOK() if (jOK = null) jOK = new JButton(); jOK.setBounds(new Rectangle(62, 200, 71, 26); jOK.setText(登录); jOK.addActionListener(new java.awt.event.ActionListener() public void actionPer

23、formed(java.awt.event.ActionEvent e) /员工登陆 int index = 0; /标记登陆数据位置,获取相应用户名和密码 if(main_Frame.getUserType().equals(挂号处) index = 0; else if(main_Frame.getUserType().equals(科) index = 1; else if(main_Frame.getUserType().equals(收费处) index = 2; else if(main_Frame.getUserType().equals(取药处) index = 3; Syst

24、em.out.println(main_Frame.getdataName(index); /获取登陆数据库的用户名和密码 String DBuser = main_Frame.getdataName(index); String DBpassword = main_Frame.getdataPassword(index); /获取登陆用户的用户名和密码 userName = juserName.getText(); userPassword = jPassword.getText(); System.out.println(cai dao zhe); String sql = select

25、* from 医务人员表 where 工作号 = +userName+ and 密码 =+userPassword + and 科室 like %+main_Frame.getUserType()+; linkDataBase link = new linkDataBase(DBuser,DBpassword); /,userName,userPassword); try ResultSet rs = link.getResultSet(sql); if(!rs.next() JOptionPane.showMessageDialog(null,你输入用户名和密码不正确,请重新输入用户名和密码

26、!,提示,JOptionPane.WARNING_MESSAGE); jPassword.setText(); System.out.println(你的用户名和密码不正确,请重新输入用户名和密码); else if(main_Frame.getUserType().equals(科) /医生登陆 System.out.println(医生登陆成功!); dispose(); jiuzhen_Window J_Window = new jiuzhen_Window(); J_Window.setLocationRelativeTo(null); J_Window.setVisible(true

27、); else if(main_Frame.getUserType().equals(挂号处) /挂号员登陆 if(main_Frame.getg_Statue() main_Frame.setg_Statue(false); dispose(); System.out.println(登陆成功!); guahao g_Window = new guahao(); g_Window.setLocationRelativeTo(null); g_Window.setVisible(true); else JOptionPane.showMessageDialog(null,已经有挂号员登陆!,警告!,JOptionPane.WARNING_MESSAGE); dispose(); else if(main_Frame.getUserType().equals(收费处) /收费员登陆 if(main_Frame.gets_Statue() System.out.println(收费员登陆); main_Frame.sets_Statue(false); dispose();

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2