实训内容:《承德附属医院高值管理系统》软件开发
学生姓名:
学
号:
专业班级:
指导教师:
2012 年 1 月 6 日
一、实训内容 承德附属医院高值管理系统 软件开发
二、实训地点
三、实训时间 2011.12.13-2012.01.07
四、实训报告(包括实训过程、实训设备)
1.实训设备:计算机
硬件:计算机
软件:Microsoft Visual Studio 2005,SQL Server 2005
2.实训过程: (工作步骤和完成的任务描述)
1.任务一 数据库连接
实现目的:创建数据库 HospitalStuff
本系统的各功能模块需要同数据库进行实时的交互通信,所以先创建出程序
连 接 及 操 作 数 据 库 的 类 文 件 , 在 该 系 统 中 , 分 别 创 建 两 个 文 件 是
DBConnection.cs(数据库连接类)、DBOperate .cs(数据库操作类),并通过这
两个公共类,实现数据库和.NET 程序之间的相互通信。
public class DBConnection
{
string strConn =
"Server=LIU;DataBase=HospitalStuff;Uid=sa;Pwd=123";//数据库连接字符
串。
SqlConnection conn;
public DBConnection()
{
conn = new SqlConnection(strConn);
conn.Open();
}
public SqlConnection GetSqlConnnection()
{
return conn;
}
}
2.任务二 科室及用户信息功能的设计实现
需求分析:在整个医院物资管理系统中,科室信息是系统中其它功能实现
的先决条件与基础,系统用户都有自己所属的科室,系统的采购计划是需由
系统用户进行的申请,材料的领用与使用登记等功能都与用户及科室关联。
本任务需要根据软件设计流程,完成系统科室及用户信息管理模块,设计系
科室信息窗体设计及后台程序运用到的相关知识点:
界面中运用了 TreeView 控件,并添加 ImageList 控件绑定到 TreeView 中,通
过树形结构来显示科室的组织关系。
然后初始化 TreeView 控件的方法,控件中包含根节点及子节点,初始化该控
件中,首先获取根节点,然后将根节点下的所包含的所有子节点加入本身的
根节点上,编写获取并绑定根节点的方法如下:
this.treeView1.Nodes.Clear()
string SetTreeView = "select * from Department where
PartentID='0'";
DataTable dtbTreeView = new DataTable();
dtbTreeView = dbo.GetDataTable(SetTreeView);
……
将所需数据添加到TreeView中,
并完成增加、查看、编辑、删除等按钮的编写。
增加用户页面相关知识点:
Windows 窗体 ComboBox 控件用于在下拉列表组合框中显示数据。
绑定数据到 Combobox 控件中
string setDepartment = "select DepartmentName,DepartmentID from
Department where IsLeaf='true'";
DataTable dtbDepartment = new DataTable();
dtbDepartment = dbo.GetDataTable(setDepartment);
cboDepartment.DataSource = dtbDepartment;
cboDepartment.DisplayMember = "DepartmentName";
cboDepartment.ValueMember = "DepartmentID";、
……
并完成整个窗体及整体设计。
3.任务三 系统登录及用户信息修改
需求分析:用户通过登录界面,登录系统,系统通过记录用户的唯一标识,
可进行个人信息的修改,及判断用户角色及系统的登录权限。
密码修改,重新登录,利用之前所学知识,完成界面及代码的设计。
实现用前面注册的用户名和密码进行登录,不同的用户将会有不同的权限。
相关知识点:Environment 类:提供有关当前环境和平台的信息以及操作他们
的方法。
登录界面:
4.任务四 高值材料基本信息模块
需求分析:根据实际需求的描述,实现用户可根据不同类型选择相应的
类型下的不同型号。相同的材料有不用的生产商和供应商。为了使库存的材
料存储数量合理,此模块设计了一个预警线,超过或低于预警线范围,系统
将自动提示使用者。同时,相同的材料有不用的生产商和供应商。为了使库
存的材料存储数量合理,此模块设计了一个预警线,超过或低于预警线范围,
系统将自动提示使用者。
相关知识点:主要学习应用了 ListView 和 TreeView 控件,并巩固了下拉菜单
列表的控件 ComboBox 控件的使用。
5.任务五 材料的库存管理
需求分析:各科室人员根据自己部门的不用情况,提出自己科室所需材料的
采购计划,相关人员通过系统对个科室的计划进行汇总,经过权限用户对汇
总过来的计划进行审核,通过则系统生成采购单并输出,用户可进行线下采
购,在系统中进行采购完成操作。
相关知识点:DataGridView 控件提供一种强大而灵活的以表格形式显示数据
的方式。可以使用 DatagridView 空间来显示少量的只读视图,也可以对其进
行缩放以显示特大数据的可编辑视图。并可以用很多方式扩展 DataGridView
控件,以便将自定义行为内置在应用程序中。
PrintDocument 组件用于在 Windows 应用程序中设置描述打印内容和打印文
档能力的属性。
完成模块:计划管理、计划汇总、计划审核、计划采购
for (int i = 0; i < dtbListView.Rows.Count; i++)
{
ListViewItem item = new ListViewItem();
ArrayList list = new ArrayList();
list.Add(dtbListView.Rows[i]["ImportID"].ToString());//0
list.Add(dtbListView.Rows[i]["ImportName"].ToString());//1
list.Add(dtbListView.Rows[i]["SupplierID"].ToString());//2
list.Add(dtbListView.Rows[i]["ImportDate"].ToString());//3
list.Add(dtbListView.Rows[i]["Status"].ToString());//4
list.Add(dtbListView.Rows[i]["CreatedDate"].ToString());//5
list.Add(dtbListView.Rows[i]["CreatedByID"].ToString());//6
item.SubItems[0].Text = list[1].ToString();
item.SubItems.Add(list[5].ToString());
if (list[4].ToString() == "1")
{
item.SubItems.Add("未入库");
}
if (list[4].ToString() == "2")
{
item.SubItems.Add("部分入库");
}
if (list[4].ToString() == "3")
{
item.SubItems.Add("已入库");
}
item.Tag = list;
this.listView1.Items.Insert(i, item);
}