银行存取款业务受理 课程设计
目录
目录................................................................................................................................................... 1
一、前沿........................................................................................................................................... 3
二、系统分析 ................................................................................................................................... 3
2、1 需求分析......................................................................................................................... 3
2.1.1 功能需求分析 ......................................................................................................... 3
2.1.2 性能需求分析 ......................................................................................................... 4 2.2 可行性分析........................................................................................................................ 4
2.2.1(目标可行性分析 ................................................................................................... 4
2.2.2(技术可行性分析 ................................................................................................... 5
2.2.3(经济可行性分析 ................................................................................................... 5
2.2.4(社会可行性分析 ................................................................................................... 5 2.3 系统开发的目标分析 ........................................................................................................ 5 2.4业务流程分析..................................................................................................................... 7 2.5数据流程分析..................................................................................................................... 8
三、系统设计 ................................................................................................................................... 9
3.1、数据字典.......................................................................................................................... 9
3.1.1、数据项................................................................................................................... 9
3.1.2、数据结构 ............................................................................................................... 9
3.1.3、数据存储 ............................................................................................................. 10 3.2、逻辑设计........................................................................................................................ 10
3.2.1 关系模型 ............................................................................................................. 10
3.2.2 数据库结构设计 ................................................................................................. 10
3.2.3 数据库设计 ......................................................................................................... 11 3.3 系统设计结构................................................................................................................ 13
3.3.1 系统功能设计 ....................................................................................................... 13
四、程序模块设计 ......................................................................................................................... 14 4.1 读卡操作详细设计 .......................................................................................................... 14
4.1.1 读卡操作界面设计 ............................................................................................. 14
4.1.2 读卡操作后台程序设计 ..................................................................................... 14 4.2 密码验证操作详细设计 ................................................................................................ 16
4.2.1 密码验证操作界面设计 ..................................................................................... 16
4.2.2 密码验证操作后台程序设计 ............................................................................. 16
4.3 存取款操作详细设计 .................................................................................................... 19
4.3.1 存取款操作界面设计 ......................................................................................... 19
4.3.2 存取款操作后台程序设计 ................................................................................. 20
4.4 查询客户存取款详细设计 ............................................................................................ 23
4.4.1 查询客户存取款界面设计 ................................................................................. 23
4.4.2 查询客户存取款后台程序设计 ......................................................................... 23 五、总结:..................................................................................................................................... 26
六、参考文献 ................................................................................................................................. 26
前沿
系统开发背景
随着社会经济的不断发展,社会各行业、各领域的交流沟通越来越频繁,在财务上的交流也日益增多。并且在经济刺激的条件下,人们对金钱的收入和支出的频率也不断加大。但带着大量的现金,存在着很多不便。此时,银行的优势就
现出来了。银行为客户提供方便的存取款业务,给客户带来了很大的方便。因此,一个方便快捷的银行存取款业务受理管理信息系统对一个银行来说至关重要。银行工作人员可以使用此系统对每个客户提出的存取款业务进行方便快捷的处理。
系统介绍
本系统为银行存取款业务受理管理信息系统,该系统是为了银行更方便的为客户提供存取款的服务而进行开发的。适用于银行内部工作人员操作,对客户提出的存取款业务进行处理。本系统连接银行数据库,对客户信息、存款金额信息以及业务单据进行操作。 系统分析
2、1 需求分析
2.1.1 功能需求分析
(1):可以通过本系统添加新的银行工作人员的信息。
(2):银行相关工作人员可以通过本系统添加新客户,对新客户的身份证、姓名等信息进
行录入,并自动为其产生一个银行卡号。
(3):银行相关人员能通过银行卡号查询持有此银行卡客户的信息,并进行一定修改。 (4):银行相关人员能通过银行卡号查询此银行卡下的存款的总额。
(5):银行相关人员能通过银行卡号查询客户对此银行卡存取款操作的单据。 (6):银行相关人员能通过银行卡号对此银行卡下的存款进行修改,以实现客户的存取款
的请求。
2.1.2 性能需求分析
从实用、好用的目标出发开发银行存取款业务受理管理信息系统,在设计过程中主要考虑以下原则:
1( 可操作性
原始信息皆由数据录入员录入,系统应尽量减少录入员的数据录入量。要求系统处理的数据能准确无误,同时输出信息要求直观、简洁。并对数据的操作要符合正常银行义务的规则,例如密码输入三次卡会被锁定、取款金额不能超过银行的余额数据等。 2( 可靠性
系统运行具有较高的可靠性,提供严格的并发控制,确保数据的一致性和正确性。 3( 实用性
从用户的实际需要出发进行系统开发,不盲目追求高新技术的应用。 4. 安全性
系统安全措施可靠、高效、可维护性好,有权限控制、口令控制,其中口令录入界面便于系统识别登录用户。
5( 可维护性
为了保证系统的可维护性,要求具有详细的文档资料,同时,要求系统在功能设计上考虑可扩展性,以满足业务变动的需求。
6( 可移植性
系统开发完成后,要能运行于各种Windows系统环境中。
2.2 可行性分析
2.2.1(目标可行性分析
根据实际情况,取款和存款都是进过银行代理操作。取款和存款都是对银行数据进
行减加操作,银行工作人员会根据用户的需求,对数据进行操作,并会给用户进行现金
的操作。银行的存取款是根据唯一的银行卡号来进行操作的,每个银行卡号都对应着一
个密码和一个用户。因此,从系统开发方法和具体调查情况来看,该系统在目标方面是
可行的。
2.2.2(技术可行性分析
银行存取款业务受理管理信息系统主要是根据用户的需求,对用户的银行卡的余额
进行数据操作,包括验证密码是否正确、存款、取款等操作,主要用到的技术就是数据
库和一门可视化开发的编程语言。,,, ,,,,,,作为后台数据库开发工具可运
行于各种Windows系统环境中,不仅易于使用,而且界面友好。它并不需要数据库管理
者具有专业的程序设计水平,任何非专业的用户都可以用它来创建功能强大的数据库管
理系统。而中文版,,;,,,,,, ,,,,,, ,,,,,,完全中文化的环
境使我们能够很快地熟悉,,;,,,,,, ,,,,,, ,,,,,,的开发
环境,更易操作;其语句生成器和快速提示帮助我们不必记忆成千上万的属性和方法,
在较短的时间就能开发出功能强大的应用程序;其较强的数据库处理功能,能对多种数
据库进行读写操作。这两种成熟技术,我们已基本掌握,所以该系统在技术上是可行的。 2.2.3(经济可行性分析
拥有开发该系统的硬件和软件以及免费人力和技术,所以开发该系统的经济成本
很低,但是该系统的实施却能很好地处理银行存取款业务,产生很好的社会效益。因
此,该系统的开发满足其经济可行性。
2.2.4(社会可行性分析
现在的银行部门都有电脑,银行工作人员都懂得电脑的基本操作和业务的基本流
程操作。所以在社会可行性方面,该系统是可行的。
2.3 系统开发的目标分析
(1)界面设计友好、美观。
(2)数据录入、修改方便和快捷。
(3)数据存储安全、可靠。
(4)信息分类清晰、准确。
(5)强大的查询功能,保证资料查询的灵活性。
6)强大的统计功能,方便用户提高工作效率和质量。 (
(7)银行存取款管理工作
化、系统化、程序化。 (8)提供灵活、方便的权限设置功能,使整个系统的管理分工明确。 (9)系统运行稳定、安全可靠,具有易维护性和易操作性。
2.4业务流程分析
客户
客户进入银行,把银行
卡交给银行工作人员
银行工作人员接到
客户的银行卡后,
进行读卡操作
密码不正确
读卡成功后,客户输入操作金额密码正确密码正确输入密码数
存款/取款取款
存款
进行取款操作进行存款操作
对操作记
录
系统流程图
2.5数据流程分析
读取银行卡号
客户输入密码
进入客户操作系统
存取款操作查询存取款记录
查询所有查询取款查询存款存款操作取款操作存取款操记录记录 作
数据流程图
系统设计
3.1、数据字典
3.1.1、数据项
客户名称、银行卡号、客户身份证编号、密码、操作编号、操作类别、操作时间、余额、
操作金额、操作类型编号。
3.1.2、数据结构
客户数据流
客户信息
DS01-01:客户信息 I1:客户名
I2:客户编号
I3:客户身份证号
银行卡的数据结构
DS01-02:银行卡信息 I4:银行卡号
I5:密码
I6:余额
I7:客户编号
存取信息数据结构
DS01-03:存取信息 I8:操作类型编号
I9:操作金额
I10:操作日期
I11:操作银行卡号
操作类型数据结构
DS01-04:操作类型 I12:操作类型编号
I13:操作类型名称
3.1.3、数据存储
客户存取款记录:操作类型编号、操作金额、操作日期、操作银行卡号;
银行卡信息记录:银行卡号、密码、余额、客户编号;
客户信息编号:客户名、客户编号、客户身份;
操作类型记录:操作类型编号、操作类型名称。 3.2、逻辑设计
3.2.1 关系模型
客户信息:(客户编号、客户名称、客户身份证编号); 银行卡信息:(银行卡编号、密码、余额、客户编号); 操作类型:(操作类型编号、操作类型);
存取操作信息:(操作类型编号、操作金额、操作日期、银行卡编号)
3.2.2 数据库结构设计
表3.1 客户详细设计 字段名 数据类型 是否主键 是否必要 字段说明
userID 数字 是 是 用户编号 UserName 文本 否 是 用户名称 Identitycard 文本 否 是 用户身份
表3.2 存取类型详细设计
字段名 数据类型 是否主键 是否必要 字段说明 accessID 数字 是 是 存取类型编号 accessName 文本 否 是 存取类型名称
表3.3 存取信息详细设计
字段名 数据类型 是否主键 是否必要 字段说明 accessID 数字 是 是 存取类型 money 数字 否 是 存取金额 dateline 文本 否 是 存取日期 cardNo 文本 否 是 银行卡号
表3.4 银行卡信息
字段名 数据类型 是否主键 是否必要 字段说明 cardNo 数字 是 是 银行卡号 Pwd 文本 否 是 密码 balance 文本 否 是 余额 userID 文本 否 是 用户编号
3.2.3 数据库设计
本车站售票系统有三个实体,分别是客户、存取信息、银行卡信息、存取类型,利用SQL建表如下:
客户:
存取信息:
银行卡信息:
存取类型:
3.3 系统设计结构
3.3.1 系统功能设计
交通事故记录与统计信息系统主要有五个功能模块:分别是:密码验证模块、存取模块、存取信息查询模块。
1、 密码验证模块
通过此模块,客户通过银行卡的身份验证,银行工作人员凭借此身份验证,可
以为客户进行存取款操作。
2、 存取模块
通过此模块,银行相关人员可以通过客户的请求对银行卡的余额进行加减操作。
并对客户的请求做出相应的回复。
3、 存取信息查询模块
通过此模块,银行的相关人员和客户通过此模块对客户的历史存取操作进行查
询,看看客户的历史存取操作。
程序模块设计
4.1 读卡操作详细设计
4.1.1 读卡操作界面设计
4.1.2 读卡操作后台程序设计
///
/// 查询银行卡号对应的密码
///
///
银行卡号
///
密码
public static UserInfo SelectCardNo(String cardNo)
{
// 创建参数
List
paras = new List()
{
new SqlParameter("@cardNo",SqlDbType.VarChar)
{
Value = cardNo
}
};
// 执行查询操作
DataSet ds = SqlHelper.SqlHelper.ExectQuery(SelectCardNoStr, paras);
// 提出结果
foreach (DataTable dt in ds.Tables)
{
foreach (DataRow dr in dt.Rows)
{
UserInfo userInfo = new UserInfo();
userInfo.CardNo = cardNo;
userInfo.Paw = dr[0].ToString();
userInfo.UserName = dr[1].ToString();
userInfo.Balance = float.Parse(dr[2].ToString());
userInfo.UserID = (int)dr[3];
userInfo.Identitycard = dr[4].ToString();
// 返回银行卡对应的用户信息
return userInfo;
}
}
// 若没有查询到,则返回null
return null;
}
4.2 密码验证操作详细设计
4.2.1 密码验证操作界面设计
4.2.2 密码验证操作后台程序设计
///
/// 页面加载
///
///
///
protected void Page_Load(object sender, EventArgs e)
{
if (Session["cardNo"] != null && Session["paw"] != null)
{
this.Label_BankCord2.Text = Session["cardNo"].ToString();
}
else
{
String js = @"";
ClientScript.RegisterStartupScript(Page.GetType(), "", js);
}
}
///
/// 按钮点击事件,判断密码是否输入正确
///
///
///
protected void Button_submit_Click(object sender, EventArgs e)
{
if (TextBox_paw.Text.Equals(Session["paw"].ToString()))
{
// 输入密码正确则将错误密码计数器重置
Session["errorPaw"] = null;
// 跳转到下个页面
Response.Redirect("manage.aspx", true);
}
else
{
// 输入错误密码次数计数器
if (Session["errorPaw"] != null)
{
Session["errorPaw"] = (int)Session["errorPaw"] + 1;
}
else
{
Session["errorPaw"] = 1;
}
if ((int)Session["errorPaw"] < 3)
{
// 输入错误密码提醒
String js = string.Format(@"", (3 - (int)Session["errorPaw"]));
Response.Write(js);
}
else
{
// 清空Session
Session.Clear();
// 跳转到第一个页面,并在跳转之前做出提示
String js = @"";
ClientScript.RegisterStartupScript(Page.GetType(), "", js);
}
}
}
///
/// 点击取消时触发的事件
///
///
///
protected void Button_cancel_Click(object sender, EventArgs e)
{
// 清空Session
Session.Clear();
Response.Redirect("CheckCardNo.aspx", true);
}
4.3 存取款操作详细设计
4.3.1 存取款操作界面设计
4.3.2 存取款操作后台程序设计
///
/// 更新银行卡余额
///
/// 银行卡号
/// 更改数目
/// 存取款类型
///
public static int UpDataBalance(String cardNo, int money, int access)
{
// 创建参数
List paras = new List()
{
new SqlParameter("@cardNo",SqlDbType.VarChar)
{
Value = cardNo
},
new SqlParameter("@money",SqlDbType.Int)
{
Value = money
}
};
// 判断操作类型,access表示存取款标志
string sqlStr = null;
if (access == 1)
{
sqlStr = AddBalance;
}
else
{
sqlStr = ReduceBalance;
}
// 执行查询操作
int n = SqlHelper.SqlHelper.ExectNonQuery(sqlStr, paras);
// 返回银行卡对应的用户信息
return n;
}
///
/// 插入存取款信息
///
/// 银行卡号
/// 操作金额
/// 存取款类型
///
public static int InsertAccessInfo(String cardNo, int money, int access)
{
// 创建参数
List paras = new List()
{
new SqlParameter("@cardNo",SqlDbType.VarChar)
{
Value = cardNo
},
new SqlParameter("@money",SqlDbType.Int)
{
Value = money
},
new SqlParameter("@accessID",SqlDbType.Int)
{
Value = access
},
new SqlParameter("@dateline",SqlDbType.DateTime)
{
Value = DateTime.Now
}
};
// 执行插入操作
int n = SqlHelper.SqlHelper.ExectNonQuery(AccessInfo, paras);
// 返回插入成败标记
return n;
}
4.4 查询客户存取款详细设计
4.4.1 查询客户存取款界面设计
4.4.2 查询客户存取款后台程序设计
public static List SeleceAccessInfo(String cardNo, int startIndex,int
pageSize, object where)
{
// 查询数据语句
if (where != null)
{
where = where.ToString();
}
else
{
where = " and 1=1";
}
// 创建参数
List paras = new List()
{
new SqlParameter("@cardNo",SqlDbType.VarChar)
{
Value = cardNo
},
new SqlParameter("@where",SqlDbType.VarChar)
{
Value = where
},
new SqlParameter("@startIndex",SqlDbType.Int)
{
Value = startIndex
},
new SqlParameter("@pageSize",SqlDbType.Int)
{
Value = pageSize
}
};
// 执行查询操作
DataSet ds = SqlHelper.SqlHelper.ExectQuery_sp(SeleceAccessInfoStr,
paras);
List accessInfos = new List();
// 提出结果
foreach (DataTable dt in ds.Tables)
{
foreach (DataRow dr in dt.Rows)
{
AccessInfo accessInfo = new AccessInfo();
accessInfo.CardNo = cardNo;
accessInfo.Row = dr[0].ToString();
accessInfo.AccessName = dr[3].ToString();
accessInfo.Money = float.Parse(dr[1].ToString());
accessInfo.AccessDate = DateTime.Parse(dr[2].ToString());
accessInfos.Add(accessInfo);
}
}
// 返回银行卡对应的用户信息
return accessInfos;
}
总结:
随着我国信息产业发展迅速以及中国加入世界贸易组织,国内银行之间以及与外国
银行之间的竞争也越来越激烈,怎样发展业务以吸引更多顾客是各银行面队的当务之急。
而存取款帐目管理是银行业务流程过程中十分重要且必备的环节之一,在银行业务流程
当中起着相当重要的作用。现在银行的业务越来越多,吸引的客户也越来越多,银行帐
目的管理就越显重要。
银行存取款系统是针对银行帐目的日常管理而设计。银行帐目管理系统不仅要求操
作方便而且要求界面简洁,它还需要实现帐目管理,用户查询和查询统计功能。
通过本次课程设计,我对ASP.Net这门语言有了更深入的了解,对系统开发的步骤有了全面的了解与认识。在本系统开发的过程中也遇到了很多问题,但通过各种方式查找资料和请教别人,终于把本系统的基本功能实现完成了。
参考文献
[1] 丁广贵,《ASP编程基础与实例》机械工业出版社2003.4
[2] 刘瑞新、汪远征、程伯言 等编著,《ASP编程基础及应用教程》 机械工业出版社2005.2 [3] 萨师煊、王珊编著, . 高等教育出版社2000.2 [4]严辉,刘卫国.数据库技术与应用实践教程——SQL SERVER [M].北京:清华大学出版社,2007