4.1.6 Patient_Personal_Info表 此表是病人的基本信息表,包括病人的姓名(SName,FName)、出生日期(Date_Of_Birth)、性别(Sex)、家庭住址(Home_Add)和职业(Occupation): 内容来自www.paper51.com 表5 Patient_Lab_Info表 内容来自论文无忧网 www.paper51.com 列名 http://www.paper51.com 数据类型 内容来自论文无忧网 www.paper51.com 长度 内容来自论文无忧网 www.paper51.com 允许空 内容来自论文无忧网 www.paper51.com Hosp_No 内容来自www.paper51.com int paper51.com 4 内容来自www.paper51.com
SName 内容来自www.paper51.com varchar paper51.com 20 http://www.paper51.com FName 内容来自www.paper51.com varchar http://www.paper51.com 20 copyright paper51.com Date_Of_Birth http://www.paper51.com datetime copyright paper51.com 8 内容来自论文无忧网 www.paper51.com Sex paper51.com varchar http://www.paper51.com
10 内容来自论文无忧网 www.paper51.com
Home_Add 内容来自论文无忧网 www.paper51.com varchar http://www.paper51.com 80 http://www.paper51.com
State_of_Origin copyright paper51.com varchar copyright paper51.com 20 copyright paper51.com Occupation 内容来自www.paper51.com varchar http://www.paper51.com 20 内容来自www.paper51.com 4.1.7 Symptoms表 内容来自论文无忧网 www.paper51.com 这是“病情症状”表,对不同病症的描述以便病人就诊时能准确判断其病症所在,包括症状编号(Symptom_ID)、疾病编号(Disease_ID)、症状名(Symptom_Name)和描述(Desrciption)几个方面: http://www.paper51.com 表6 Symptoms表 内容来自论文无忧网 www.paper51.com
列名 paper51.com 数据类型 内容来自www.paper51.com 长度 http://www.paper51.com 允许空 paper51.com
Symptom_ID paper51.com int paper51.com 4 copyright paper51.com Disease_ID 内容来自论文无忧网 www.paper51.com int 内容来自论文无忧网 www.paper51.com
4 内容来自论文无忧网 www.paper51.com Symptom_Name 内容来自www.paper51.com varchar 内容来自www.paper51.com 80 内容来自论文无忧网 www.paper51.com Desrciption 内容来自www.paper51.com varchar 内容来自www.paper51.com 20 内容来自www.paper51.com √ http://www.paper51.com 4.2 系统登陆模块 paper51.com 4.2.1 启动界面 内容来自论文无忧网 www.paper51.com 这是整个系统开始运行时出现的第一个界面,是由frmSplash具体控制和实现的: http://www.paper51.com
copyright paper51.com 图2 系统启动界面 copyright paper51.com
在这个部分,系统会完成与数据库的连接工作,具体的代码实现如下: paper51.com Private Sub Form_Load() 内容来自www.paper51.com ConnectString ="Provider=SQLOLEDB.1; Password=123; Persist Security Info=True; UserID=sa; Initial Catalog=IHMS;Data Source=(local)" http://www.paper51.com Me.MousePointer = 11 内容来自论文无忧网 www.paper51.com Set somePatient = NewCPatient 内容来自论文无忧网 www.paper51.com
End Sub 内容来自www.paper51.com
时钟的设计,可以控制从该初始界面进入到系统主界面的时间: 内容来自论文无忧网 www.paper51.com Private Sub Timer1_Timer() http://www.paper51.com
Unload Me paper51.com End Sub 内容来自论文无忧网 www.paper51.com 然后,整个系统就进入主界面。 http://www.paper51.com 4.2.2 系统主界面 paper51.com 所谓系统主界面,也就是程序主窗体frmmain,它是整个系统的主要操作界面,也是在登陆之后首先出现的系统操作界面(图3),采用菜单结构,简单明了,操作方便: http://www.paper51.com
内容来自www.paper51.com 图3 系统主界面 内容来自论文无忧网 www.paper51.com 4.2.3 登陆界面 http://www.paper51.com 该模块具体是由frmLogin窗体控制并实现的。本HIS系统可供两种身份的用户登陆:一个是Admin,另一个是医生。二者唯一的权限区别就是Admin可以对医生用户进行管理:添加、删除、密码修改。以下实现的是以医生的身份登陆该系统: http://www.paper51.com http://www.paper51.com 图4 登陆对话框 copyright paper51.com Do While Not .EOF And Not LoginSucceeded copyright paper51.com If (cboUserName = .Fields("users")) And Trim(txtPassword) =.Fields("pass") Then copyright paper51.com TypeStr = .Fields("Type") '登陆生效 copyright paper51.com If (TypeStr = "医生") Then 内容来自论文无忧网 www.paper51.com Departments = .Fields("Departments") http://www.paper51.com End If 内容来自www.paper51.com MsgBox "登陆成功,欢迎进入系统.", vbInformation, "欢迎" paper51.com LoginSucceeded = True http://www.paper51.com Call ConfigMenus(cboUserName) copyright paper51.com Unload Me paper51.com End If copyright paper51.com .MoveNext http://www.paper51.com Loop 内容来自论文无忧网 www.paper51.com
4.2.4 系统管理员权限界面 copyright paper51.com
Admin可以对医生用户进行管理:添加、删除、密码修改: http://www.paper51.com paper51.com 图5 权限管理 内容来自www.paper51.com 4.3 医生信息模块 http://www.paper51.com 本模块的设计主要是对医生的信息进行收集管理,其中包括的项目有:医生性命、医生性别、医生年龄、医生籍贯、医生手机号、医生科室、医生职称七个项目,同时还可以进行医生账户的新增和依据生命对医生信息进行查询等功能。frmDoctor窗体具体负责这个模块的设计和实现: 内容来自论文无忧网 www.paper51.com Private Sub Command2_Click() copyright paper51.com datDoctors.Recordset.Fields("Name") = TextName.Text paper51.com datDoctors.Recordset.Fields("Sex") =ComboSex.ListIndex http://www.paper51.com
datDoctors.Recordset.Fields("Age") = Val(TextAge.Text) 内容来自论文无忧网 www.paper51.com datDoctors.Recordset.Fields("Province") =TextProvince.Text copyright paper51.com
datDoctors.Recordset.Fields("Mobile") = TextMobile.Text copyright paper51.com datDoctors.Recordset.Fields("Dept") = TextDept.Text 内容来自论文无忧网 www.paper51.com datDoctors.Recordset.Fields("Grade") = TextGrade.Text copyright paper51.com
datDoctors.Recordset.Save 内容来自www.paper51.com MsgBox "保存成功!" 内容来自www.paper51.com End Sub http://www.paper51.com Do http://www.paper51.com If datDoctors.Recordset.EOF Then Exit Do http://www.paper51.com If (datDoctors.Recordset.Fields("Name")= TextSearch.Text) Then paper51.com find_flag = True 内容来自www.paper51.com Else http://www.paper51.com datDoctors.Recordset.MoveNext paper51.com End If paper51.com
Loop Until (find_flag) copyright paper51.com
If find_flag Then http://www.paper51.com RefreshData http://www.paper51.com
MsgBox "查询成功!" http://www.paper51.com Else copyright paper51.com MsgBox "没有查到您要的记录!" 内容来自www.paper51.com 内容来自www.paper51.com 图6 新增、查询医生信息对话框 copyright paper51.com
4.4 病人登记管理模块 paper51.com 病人到医院就诊,需要在HIS里建立一个属于自己的“账户”,里面将包括病人最基本的一些信息。通过下图,可以很清晰地看到,这个模块主要使用了一些TextBox和ComboBox来进行病人信息的录入,其中“性别”、“血型”、“Rh因子”三项是由ComboBox控制实现的,其下拉菜单比较方便系统用户的操作并可以防止录入不合法的信息: copyright paper51.com
copyright paper51.com 图7 病人注册 http://www.paper51.com
Private Sub cmdRegAndAdmit_Click() copyright paper51.com Set thisNewPatient = NewCPatient '新建一个病人对象 内容来自论文无忧网 www.paper51.com With thisNewPatient '向新建的病人对象写入信息 http://www.paper51.com
.HospNo = Val(txtHospNo) copyright paper51.com .SName = Trim(txtSName) 内容来自www.paper51.com .FName = Trim(txtFName) copyright paper51.com
.DoB = Trim(txtDOB) 内容来自www.paper51.com .Sex = cboSex copyright paper51.com .HomeAdd = Trim(txtHomeAdd) paper51.com
.StateOfOrigin = Trim(txtStateOfOrigin) 内容来自www.paper51.com .Occupation = Trim(txtOccupation) http://www.paper51.com .NameNoK = Trim(txtKinName) 内容来自论文无忧网 www.paper51.com
.RelaNok = Trim(txtRelationship) copyright paper51.com .AddNok = Trim(txtKinAddress) 内容来自www.paper51.com .SponsorName =Trim(txtNameOfSponsor) '写入担保人信息 http://www.paper51.com .SponsorAdd = Trim(txtAddOfSponsor) paper51.com
.BloodGrp = Trim(cboBloodGrp) '写入化验室数据信息 copyright paper51.com .RHFactor = cboRHFactor 内容来自www.paper51.com .Allergy = Trim(txtAllergy) 内容来自论文无忧网 www.paper51.com End With paper51.com .frmAdmission.Show 1 内容来自www.paper51.com Call ClearRegForm 内容来自www.paper51.com
Unload Me 内容来自论文无忧网 www.paper51.com
End Sub 内容来自www.paper51.com 4.5 病人就诊信息模块 copyright paper51.com
按照正常的流程,成功登记的病人用户应该就诊。以成功登记的病人,可以通过对病症的描述方式得出初步诊断结果。这部分工作由frmDiagnosis窗体具体控制和实现。在这个模块里,对于文本性的信息仍旧使用TextBox实现,而对于病症的描述,采取了用五条病症同时描述来实现,每一条病症选择出都采用ComboBox来实现,其下拉菜单出将出现DB表里所存储的病症的所有描述。 http://www.paper51.com
http://www.paper51.com
图8 诊断信息 copyright paper51.com
Dim symptom(4)As String copyright paper51.com Dim diseaseID(4)As Integer copyright paper51.com Dim diseaseName(4)As String 内容来自www.paper51.com
Dim diagnosisResults(4)As String paper51.com Dim X AsInteger copyright paper51.com For X = 0 To 4 内容来自www.paper51.com symptom(X) = cboSymptom(X) 内容来自论文无忧网 www.paper51.com Next X 内容来自论文无忧网 www.paper51.com If symptom(0) = "N/A" Orsymptom(0) = "" Then '保证病人至少选择一个病症描述,否则退出 内容来自论文无忧网 www.paper51.com MsgBox "You must specify ATLEAST one sign/symptom to diagnose a patient, starting with Symptom 1.", vbInformation 内容来自www.paper51.com Exit Sub 内容来自www.paper51.com
End If 内容来自www.paper51.com
http://www.paper51.com |