4.4 系统流程 基本设计思想和流程:储户进入系统之前只能作为一般用户浏览新闻和发布留言,经过帐号密码验证进入系统之后,才能完成查看帐户和申请挂失等主要功能。主要流程如下所示: copyright paper51.com 图4-2 系统流程图 内容来自www.paper51.com 5 系统实现 内容来自www.paper51.com
5.1 用户登陆 http://www.paper51.com 5.1.1 储户登陆 内容来自www.paper51.com 图5-1 用户登陆页面 copyright paper51.com 系统会自动判断身份证号,帐户号码,密码,验证码是否为空,还会验证身份证号是否符合国家规定的标准格式 内容来自论文无忧网 www.paper51.com //验证码的实现 内容来自论文无忧网 www.paper51.com asp:TextBoxID="txtCode" runat="server" Font-Size="0.8em"Width="74px" MaxLength="4"></asp:TextBox> 内容来自论文无忧网 www.paper51.com <img alt="点击刷新验证码" src="CodeImg.aspx" height="15"width="45" onclick="this.src='CodeImg.aspx'"/></td> http://www.paper51.com if (txtCode.Text !=Session["VerifyCode"].ToString()) http://www.paper51.com
{Response.Write("<script>alert('"+ "验证码不正确!" +"');</script>"); paper51.com
return; } 内容来自论文无忧网 www.paper51.com 5.1.2 管理员登陆 http://www.paper51.com 图5-2 管理员登陆页面 内容来自www.paper51.com 5.2 查询帐户信息 内容来自论文无忧网 www.paper51.com 成功登陆系统过后,所要查询的帐户信息就会马上显示出来。存折类型会用红色字体注明,挂失时间和处理时间在帐户正常的时候不会有显示。信息显示采用.NET2005的GridView控件(存折帐户相同): http://www.paper51.com 图5-3 帐户显示效果图 内容来自www.paper51.com 后台动作: 内容来自www.paper51.com SQLstr = "select account as 帐户,balance as 帐户余额,estate as 帐户状态,firsttime as 挂失时间,secondtime as 处理时间 from account where ucard = '"+ Session["logincard"].ToString() + "' and sort = '信用卡'"; copyright paper51.com //获取数据库连接字符串 内容来自论文无忧网 www.paper51.com
strConnection = ConfigurationManager.AppSettings.Get("strConnection"); http://www.paper51.com
//建立数据库连接 内容来自论文无忧网 www.paper51.com myConnection = new SqlConnection(strConnection); copyright paper51.com myAdapter = new SqlDataAdapter(SQLstr, myConnection); copyright paper51.com //定义内存数据库 内容来自论文无忧网 www.paper51.com Dsak = new DataSet(); 内容来自论文无忧网 www.paper51.com
myAdapter.Fill(Dsak, "ak"); paper51.com GVmyaccount_k.DataSource = Dsak.Tables["ak"]; 内容来自论文无忧网 www.paper51.com GVmyaccount_k.DataBind(); http://www.paper51.com 追加显示多个帐户:用户可以通过继续输入帐户号码和密码添加更多的帐户进行查询,系统会自动搜寻数据库中是否存在此帐户。 copyright paper51.com 图5-4 帐户追加功能图 paper51.com 5.3 新闻浏览 paper51.com 用户可以浏览最近发布的几条新闻题目,其中新闻题目过多的时候,系统会分页显示它们。通过点选题目可以在新的页面看到新闻的具体内容。 http://www.paper51.com
图5-5 新闻标题显示效果图 http://www.paper51.com 图5-6 新闻内容显示效果图 http://www.paper51.com
管理员可以对新闻内容添加和删除。 内容来自www.paper51.com 图5-7 新闻删除示意 paper51.com 图5-8 新闻发布示意图 内容来自论文无忧网 www.paper51.com 5.4 留言管理 内容来自www.paper51.com
任何权限的用户均可以发布留言,留言必须输入题目。只有管理员才能回复用户的留言,已回复留言的内容系统用黄色注明。 paper51.com 图5-9 处理回复留言图 内容来自www.paper51.com
图5-10 回复示意图 http://www.paper51.com 5.5 消费日志查询 paper51.com 用户通过设置时间起点和终点查询选择帐户的金额发生记录,可以作为帐户改变的日志记录。 http://www.paper51.com 图5-11 帐户消费查询示意图 copyright paper51.com 5.6 自助交费 copyright paper51.com 本系统提供简单代收费管理功能,交费项目由管理员后台添加,用户需要选择需要交费的项目和输入自己的某个帐号和其密码(定期帐号不能进行交费),便可以缴纳不多于自己帐户余额的金额。交费金额精确到小数点后一位。 内容来自www.paper51.com 图5-12 自助交费功能图 paper51.com SQLstr = "select * from accountwhere account = '" + DDLrepchargeaccount.Text + "'"; http://www.paper51.com //获取数据库连接字符串和建立数据库连接省略…… http://www.paper51.com myAdapter = new SqlDataAdapter(SQLstr,myConnection); http://www.paper51.com Dsbalance = new DataSet(); http://www.paper51.com
myAdapter.Fill(Dsbalance,"balance"); paper51.com if(Convert.ToInt64(Dsbalance.Tables["balance"].Rows[0]["balance"].ToString())<Convert.ToInt64(TBrepchargemoney.Text)) 内容来自论文无忧网 www.paper51.com { http://www.paper51.com Response.Write("<scriptlanguage='javascript'>alert('你的帐户 " +DDLrepchargeaccount.Text + " 没有足够的余额来交纳此项费用');</script>"); paper51.com return; 内容来自www.paper51.com
} 内容来自www.paper51.com SQLstr = "INSERT INTOnote(account,citem,csum) VALUES ('" + DDLrepchargeaccount.Text +"','" + DDLrepchargeitem.Text + "','" + TBrepchargemoney.Text+ "')"; 内容来自www.paper51.com myCmd = new SqlCommand(SQLstr,myConnection); 内容来自www.paper51.com myCmd.Connection.Open(); copyright paper51.com //异常捕获语句省略…… 内容来自论文无忧网 www.paper51.com
//扣除消费的金额 http://www.paper51.com Lstr = "update account set balance= '" +Convert.ToString(Convert.ToInt64(Dsbalance.Tables["balance"].Rows[0]["balance"].ToString())Convert.ToInt64(TBrepchargemoney.Text)) + "' where account = '" +DDLrepchargeaccount.Text + "'"; 内容来自论文无忧网 www.paper51.com
myCmd = new SqlCommand(SQLstr,myConnection); copyright paper51.com myCmd.Connection.Open(); copyright paper51.com //异常捕获语句省略…… 内容来自论文无忧网 www.paper51.com 5.7 挂失处理 内容来自论文无忧网 www.paper51.com
5.7.1 用户挂失申请和取消挂失申请 copyright paper51.com 帐号挂失功能主要采用用户申请挂失,管理员批准挂失;处理完成后用户申请取消挂失,管理员批准的模式。一般用户申请挂失后24小时之内,银行要对申请作出回应,系统会自动记录申请提交的时间,和处理的时间,方便用户查看。 copyright paper51.com 图5-13 用户挂失申请和取消挂失申请图 http://www.paper51.com //帐户状态改变处理 copyright paper51.com protected voidGridViewreport_SelectedIndexChanged(object sender, EventArgs e) 内容来自论文无忧网 www.paper51.com
{ http://www.paper51.com SQLstr= "update account set estate = '挂失处理中',firsttime ='" +DateTime.Now.ToString() + "' where account = '" +GridViewreport.SelectedRow.Cells[1].Text + "'"; http://www.paper51.com myCmd= new SqlCommand(SQLstr, myConnection); http://www.paper51.com myCmd.Connection.Open(); 内容来自论文无忧网 www.paper51.com } http://www.paper51.com //异常捕获语句省略…… paper51.com
//帐户状态改变处理 paper51.com protected voidGridViewureport_SelectedIndexChanged(object sender, EventArgs e) 内容来自论文无忧网 www.paper51.com { 内容来自论文无忧网 www.paper51.com SQLstr= "update account set estate = '取消挂失中' where account = '" +GridViewureport.SelectedRow.Cells[1].Text.ToString().Trim() + "'"; paper51.com
myCmd= new SqlCommand(SQLstr, myConnection); copyright paper51.com myCmd.Connection.Open();} http://www.paper51.com //异常捕获语句省略…… paper51.com 5.7.2 管理员处理挂失和处理申请挂失 内容来自www.paper51.com 图5-14 管理员处理挂失和处理申请挂失图 copyright paper51.com protected voidGridViewadmindeluser_SelectedIndexChanged(object sender, EventArgs e) 内容来自www.paper51.com { 内容来自www.paper51.com
SQLstr= "select * from account where account = '" +GridViewadmindeluser.SelectedRow.Cells[1].Text + "'"; 内容来自www.paper51.com myAdapter= new SqlDataAdapter(SQLstr, myConnection); paper51.com Dsuser= new DataSet(); copyright paper51.com
myAdapter.Fill(Dsuser,"account"); copyright paper51.com
} paper51.com if(Dsuser.Tables["account"].Rows[0]["estate"].ToString() =="挂失处理中") copyright paper51.com { paper51.com
SQLstr= "update account set estate = '挂失',secondtime ='" +DateTime.Now.ToString() + "' where account = '" +GridViewadmindeluser.SelectedRow.Cells[1].Text + "'"; http://www.paper51.com } paper51.com
else 内容来自论文无忧网 www.paper51.com { 内容来自www.paper51.com SQLstr= "update account set estate = '正常',firsttime =null,secondtime = null where account = '" +GridViewadmindeluser.SelectedRow.Cells[1].Text + "'"; copyright paper51.com
} 内容来自论文无忧网 www.paper51.com myCmd= new SqlCommand(SQLstr, myConnection); http://www.paper51.com myCmd.Connection.Open(); paper51.com 图5-15 用户看到的帐户状态改变图 内容来自www.paper51.com 5.8 密码修改 内容来自www.paper51.com 5.8.1 用户帐户密码修改 paper51.com 系统会要求用户输入原有密码并确认后,便可以将旧有密码替换成新密码,系统会自动判断两次输入的新密码是否一致。 copyright paper51.com 图5-16 用户帐户密码修改图 内容来自www.paper51.com
5.8.2 管理员修改登陆密码 内容来自论文无忧网 www.paper51.com 图5-17 管理员修改登陆密码图 paper51.com
5.9 帐号锁定 paper51.com 此功能是为了防止恶意猜测帐户密码的行为,当用户输入错误密码,登陆某个帐户不成功达到五次,此帐号便暂时锁定,用户必须申请管理员取消锁定。 http://www.paper51.com 图5-18 帐号锁定图 copyright paper51.com if (Convert.ToInt32(Session["loginoverflow"].ToString())>= 5) 内容来自www.paper51.com { 内容来自www.paper51.com
SQLstr= "INSERT INTO loginoverflow(lofucard,lofip) VALUES ('" +TBuname.Text + "','" + Page.Request.UserHostAddress+ "')"; copyright paper51.com myCmd= new SqlCommand(SQLstr, myConnection); 内容来自www.paper51.com myCmd.Connection.Open(); 内容来自www.paper51.com try http://www.paper51.com { http://www.paper51.com myCmd.ExecuteNonQuery(); 内容来自论文无忧网 www.paper51.com myCmd.Connection.Close(); paper51.com } paper51.com catch copyright paper51.com { 内容来自论文无忧网 www.paper51.com myCmd.Connection.Close(); copyright paper51.com
return; copyright paper51.com } http://www.paper51.com { copyright paper51.com Response.Redirect("~/index.aspx"); paper51.com
Response.Write("<scriptlanguage='javascript'>alert('登陆失败');</script>"); 内容来自www.paper51.com } 内容来自www.paper51.com } http://www.paper51.com try http://www.paper51.com { paper51.com strConnection= ConfigurationManager.AppSettings.Get("strConnection"); http://www.paper51.com //获取数据库连接字符串 http://www.paper51.com //建立数据库连接 内容来自论文无忧网 www.paper51.com myConnection= new SqlConnection(strConnection); copyright paper51.com SQLstr= "select lofucard as 锁定帐号,loftime as 锁定时间from loginoverflow order by id desc"; copyright paper51.com
myAdapter= new SqlDataAdapter(SQLstr, myConnection); 内容来自论文无忧网 www.paper51.com Dslw= new DataSet(); 内容来自论文无忧网 www.paper51.com
myAdapter.Fill(Dslw,"ip"); copyright paper51.com GridViewadmindellw.DataSource= Dslw.Tables["ip"]; copyright paper51.com GridViewadmindellw.DataBind(); paper51.com } http://www.paper51.com catch paper51.com { return;} paper51.com } 内容来自论文无忧网 www.paper51.com
protectedvoid GridViewadmindellw_SelectedIndexChanged(object sender, EventArgs e) http://www.paper51.com { 内容来自www.paper51.com //删除黑名单中的记录 内容来自论文无忧网 www.paper51.com SQLstr= "delete loginoverflow where lofucard = '" + GridViewadmindellw.SelectedRow.Cells[1].Text+ "' and lofip = '" + GridViewadmindellw.SelectedRow.Cells[2].Text+ "'"; 内容来自论文无忧网 www.paper51.com myCmd= new SqlCommand(SQLstr, myConnection); copyright paper51.com myCmd.Connection.Open(); paper51.com try copyright paper51.com
{ 内容来自论文无忧网 www.paper51.com myCmd.ExecuteNonQuery(); copyright paper51.com myCmd.Connection.Close(); paper51.com } 内容来自论文无忧网 www.paper51.com catch copyright paper51.com { 内容来自论文无忧网 www.paper51.com myCmd.Connection.Close(); 内容来自论文无忧网 www.paper51.com return; paper51.com
} paper51.com Response.Redirect("~/adminipkill.aspx"); 内容来自论文无忧网 www.paper51.com } http://www.paper51.com |