收藏 分销(赏)

个人财目管理系统.doc

上传人:丰**** 文档编号:9800962 上传时间:2025-04-08 格式:DOC 页数:19 大小:1.63MB
下载 相关 举报
个人财目管理系统.doc_第1页
第1页 / 共19页
个人财目管理系统.doc_第2页
第2页 / 共19页
点击查看更多>>
资源描述
个人财目管理系统方案设计 1.课程设计的目的 个人财务管理系统针对个人用户设计,是一个单用户系统,它提供各全方位的财务数据统计、数据查询、数据打印,方便个人理财,做出正确的财务决策。为了更加适应现代越来越快的生活节奏和越来越多的个人收支情况,以科学的管理、使用的简便为出发点,建立了一个具有实用性、高效性及功能划分细致的个人财务管理系统。系统以SQL2005作为后台数据库,Visual Studio 2005 ASP.NET 2.0作为前台开发工具,运用面向对象的设计方法,完成了该管理系统的模块和功能设计。结果表明:系统具有较高的可靠性和灵活性,且便于扩充和维护。 2.需求分析 2.1 需求 当今社会,随着社会经济的发展,价值的交换也越来越多,货币的流通量也随之变得越来越大。人们可能常常会有一种不知道自己的钱的去处的疑问,如果仅仅用笔和纸来记录显得相当麻烦且不实际,并且也不符合当代人的生活习惯。目前的电子理财软件偏向于商业级别,且主要用于企业级和部门级,但是个人理财的需求越来越迫切,而专业的大型商业软件价格昂贵并且功能庞杂而无法满足需求。为了方便用户更好的理财,以及对资金去向有一个更清晰的了解,我们就需要一个可以帮我们完成对收入和支出资金的信息进行整理、查询等功能的个人财务管理系统。本系统是针对用户要求,使用计算机对自己日常的资金和物品的收入、支出以及相关的各种信息进行记录、修改、添加、删除等操作,并实现对信息进行统计和以文档形式输出的操作而设计的一种现代化个人财务管理软件。 2.2 分析 (1)了解个人财务信息管理的基本内容; (2)综合的理解每个用户的不同需求; (3)了解账户信息的基本组成要素; (4)了解用户账务管理模式; (5)通过调查和与用户的交流,了解用户对账务管理系统的业务要求,安全性和完整性要求。 2.3 功能实现 (1).能够实现个人财务管理方面各项功能,能成功的对用户各种信息进行管理。 (2).实现查询、修改、删除、添加数据方便,数据的稳定性和可靠性好。 (3).能够实现按日期查询以及对库存数据进行按月统计和以文本形式输出。 (4).拥有良好的人机交互界面。 3、设计方案论证 3.1系统结构 图1系统结构 3.2数据库的E-R图 图2 用户表 图3 消费表 图4 收入表 3.3数据库的设计 表1 用户表结构 列名称 数据类型 长度 用户名 字符型 20 用户密码 字符型 20 用户编号 字符型 20 用户头像 备注 20 用户邮箱 字符型 20 用户等级 字符型 20 表2 消费表结构 列名称 数据类型 长度 用户编号 字符型 20 用户邮箱 字符型 20 消费项目 字符型 20 消费金额 数值型 20 消费类型 字符型 20 消费地点 字符型 20 消费心得 字符型 100 表3 收入表结构 列名称 数据类型 长度 用户编号 字符型 20 用户邮箱 字符型 20 收入项目 字符型 20 收入金额 数值型 20 收入类型 字符型 20 收入地点 字符型 20 收入心得 字符型 100 4.1 页面设计 4.1.1登录界面 图5 登录界面 用户在使用本系统时均需要登录后,才能使用,登录时会提示你输入的用户名,以及用户密码。用户可以更改自己的密码。用户开始登录时,用户输入的自己的邮箱和密码就可以进入到用户界面,在用户界面里,首先显示的是消费统计。他显示的是你已输入的历史消费记录。并且可以按照你的意愿查询相关月,以及相关类型的消费统计。 主要代码: public partial class Default3 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //读取cookies if (Request.Cookies["useremail"] != null) { txtuseremail.Text = Request.Cookies["useremail"].Value; } else if (Request.Cookies["useremail"] == null) { return; } } } protected void LinkButton1_Click(object sender, EventArgs e) { Response.Redirect("rejist.aspx"); } protected void ImgBtn_Click(object sender, ImageClickEventArgs e) { SqlConnection con = new SqlConnection(); con.ConnectionString = @"Data Source=.\SQLEXPRESS;Initial Catalog=ReportServer;database=zhangmu;Integrated Security=True";//"Integrated Security=true;Data Source=WWW-3A034B5863C;database=zhangmu";//Data Source=.\SQLEXPRESS;Initial Catalog=ReportServer;database=zhangmu;Integrated Security=True con.Open(); SqlCommand cmd = new SqlCommand(); cmd.CommandText = "Select * from [User] where useremail=@useremail and userpwd=@userpwd"; SqlParameter pauseremail=cmd.Parameters.Add("@useremail", SqlDbType.NVarChar, 50); SqlParameter pauserpwd = cmd.Parameters.Add("@userpwd", SqlDbType.NVarChar, 50); pauseremail.Value = txtuseremail.Text; pauserpwd.Value = txtuserpwd.Text; cmd.Connection = con; cmd.ExecuteNonQuery(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { Session["userid"] = dr["userid"].ToString(); Session["useremail"] = txtuseremail.Text; if (txtuserpwd.Text == "admin") Response.Redirect("admin.aspx"); else Response.Redirect("user.aspx"); } else Label2.Text = "用户名和密码错误"; con.Close(); } } 4.1.2注册界面 图6:注册界面 用户第一次进入该界面时,要根据提示输入相关信息完成注册,之后才能登录进入该系统。 4.1.3用户界面 图7:用户界面 此界面为用户界面,用户可以根据年份或消费类型完成查找功能。 4.1.3管理员界面 图8:管理员界面 管理员在登录界面进行登入,有特定的账号以及密码对其进行验证。当登入到管理员界面时。管理员可以对用户表,收入表以及支出表进行管理。目的就是对数据库的维护,对于一些长久不使用本系统的用户。可以进行删除,这样可以节约数据库的使用。对于一些凌乱的数据可以进行整顿。这样也可以起到维护数据库的作用。所以管理员的主要职责就是维护数据库。让系统可以正常的运行下去,不会因为数据量的过大而对本系统的运行起到妨碍。 4.1.4会员界面 图9:会员界面 该界面管理员可以查看会员信息。 对于以上界面中的GridView控件的相关重要属性的设定如下: DataKeyNames:usermail 对数据绑定的设置如下: ConnectionSting:Data Source=.\SQLEXPRESS;Initial Catalog=zhangmu;Integrated Security=True ProviderNames:System.Data.OracleC DeleteQuery : LETE FROM [user] WHERE [useremail] = @useremail InsertQuery: INSERT INTO [user] ([username], [useremail], [userpwd], [userphotourl], [userdegree]) VALUES (@username, @useremail, @userpwd, @userphotourl, @userdegree) SclectQuery: ELECT [username], [useremail], [userpwd], [userphotourl], [userdegree] FROM [user] UpdataQuery: PDATE [user] SET [username] = @username, [userpwd] = @userpwd, [userphotourl] = @userphotourl, [userdegree] = @userdegree WHERE [useremail] = @useremail 4.1.5消费界面 图9:消费界面 该界面为管理员管理的消费界面。 对于以上界面中的GridView控件的相关重要属性的设定如下: DataKeyNames:id 对数据绑定的设置如下: CoctionSting:Data Source=.\SQLEXPRESS;Initial Catalog=zhangmu;Integrated Security=True DeleteQuery:DELETE FROM [CPI] WHERE [id] = @id InsertQuery:INSERT INTO [CPI] ([useremail], [CPI], [CPIAmount], [CPIpatterns], [Consumersite], [Consumerex], [CPItime]) VALUES (@useremail, @CPI, @CPIAmount, @CPIpatterns, @Consumersite, @Consumerex, @CPItime) SclectQuery: SELECT [useremail], [CPI], [CPIAmount], [CPIpatterns], [Consumersite], [Consumerex], [CPItime], [id] FROM [CPI] UpdataQuery: UPDATE [CPI] SET [useremail] = @useremail, [CPI] = @CPI, [CPIAmount] = @CPIAmount, [CPIpatterns] = @CPIpatterns, [Consumersite] = @Consumersite, [Consumerex] = @Consumerex, [CPItime] = @CPItime WHERE [id] = @id 4.1.6收入界面 图10:收入界面 该界面为管理员管理的消费界面。 对于以上界面中的GridView控件的相关重要属性的设定如下: DataKeyNames:id 对数据绑定的设置如下: ConnectionSting:Data Source=.\SQLEXPRESS;Initial Catalog=zhangmu;Integrated Security=True DeleteQuery:DELETE FROM [Revenue] WHERE [id] = @id InsertQuery: INSERT INTO [Revenue] ([useremail], [Revenue], [TRevenue], [RType], [RevenueL], [time], [Rex]) VALUES (@useremail, @Revenue, @TRevenue, @RType, @RevenueL, @time, @Rex) SclectQuery: SELECT [useremail], [Revenue], [TRevenue], [RType], [RevenueL], [time], [Rex], [id] FROM [Revenue] UpdataQuery: UPDATE [Revenue] SET [useremail] = @useremail, [Revenue] = @Revenue, [TRevenue] = @TRevenue, [RType] = @RType, [RevenueL] = @RevenueL, [time] = @time, [Rex] = @Rex WHERE [id] = @id 返回主页的代码设置: Response.Redirect("login.aspx"); 会员管理的跳转代码: MultiView1.ActiveViewIndex = 0; 消费管理的跳转代码: MultiView1.ActiveViewIndex =2; 收入管理的调整代码: MultiView1.ActiveViewIndex = 1; 4.2反馈 通过设计,首先,认识到自己对于专业知识掌握的不足,以及对所用开发工具运用的不熟,这使我完成这个课程设计的程序比较费劲,在老师和同学的多次帮助下才完成。现在所呈现的效果已基本达到预期效果,用C#制作的个人财务管理系统提供了计算,查询,添加,删除等功能,但是仍还有许多不足之处,例如没有考虑到用户权限问题。我认为完善数据库功能,让内部信息直接和网络上的数据库服务器上传下载数据,实时同步消息,年末汇总成收入支出表,这些问题在以后的学习中我会更多注意。 5、设计体会 通过本次课程设计使我认识到自己的基础知识并不扎实,自己所掌握的知识面还很窄,虽然我们有以前的实训经验,但是还是远远不够,在开发系统时,我们遇到了很多的问题。但是通过老师和同学的帮助下,解决自己在设计过程中遇到的问题,或者在自己在网上查找一些相关的资料来解决问题。在毕业设计过程中,我们学习到了很多的知识,也不断丰富自己的知识面。 6、参考文献 [1] 李华.ASP.NET(C#)C程序设计。北京:清华大学出版社.2014.9 [2] 陈建伟,陈焕英.asp动态网站开发教程.北京:清华大学出版社. 2008.1 [3] 袁理.asp完全自学手册.北京: 机械工业出版社. 2007.7 [4] 吴鹏,丁利群.asp程序设计教程与实训.北京:北京大学出版社. 2006.1 [5] 白勇.用B/S模式构建在线考试系统[J].重庆电力高等专科学校学报.2013.10(4) [6] Jiang Guo,Yuehong Liao,Behzad Parviz.A Survey of J2EE Application Performance Management Systems[J],Proceedings of the IEEE International Conference on Web Services (ICWS'04).2014.6(5):17~32. [7] C# 数据库管理范例: [8] 薛万欣.电子商务网站建设[M].北京:机械工业出版社. 2005.8 [9] 启明工作室.ASP.NET+SQL SERVER 网络应用系统开发与实例[M].北京:人民邮电出版社.2005.2 [10] 徐国智,汪孝宜.SQL SERVER数据库开发实例精粹[M].北京:电子工业出版社.2006.1 附录: public partial class Default3 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //读取cookies if (Request.Cookies["useremail"] != null) { txtuseremail.Text = Request.Cookies["useremail"].Value; } else if (Request.Cookies["useremail"] == null) { return; } } } protected void LinkButton1_Click(object sender, EventArgs e) { Response.Redirect("rejist.aspx"); } protected void ImgBtn_Click(object sender, ImageClickEventArgs e) { SqlConnection con = new SqlConnection(); con.ConnectionString = @"Data Source=.\SQLEXPRESS;Initial Catalog=ReportServer;database=zhangmu;Integrated Security=True";//"Integrated Security=true;Data Source=WWW-3A034B5863C;database=zhangmu";//Data Source=.\SQLEXPRESS;Initial Catalog=ReportServer;database=zhangmu;Integrated Security=True con.Open(); SqlCommand cmd = new SqlCommand(); cmd.CommandText = "Select * from [User] where useremail=@useremail and userpwd=@userpwd"; SqlParameter pauseremail = cmd.Parameters.Add("@useremail", SqlDbType.NVarChar, 50); SqlParameter pauserpwd = cmd.Parameters.Add("@userpwd", SqlDbType.NVarChar, 50); pauseremail.Value = txtuseremail.Text; pauserpwd.Value = txtuserpwd.Text; cmd.Connection = con; cmd.ExecuteNonQuery(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { Session["userid"] = dr["userid"].ToString(); Session["useremail"] = txtuseremail.Text; if (txtuserpwd.Text == "admin") Response.Redirect("admin.aspx"); else Response.Redirect("user.aspx"); } else Label2.Text = "用户名和密码错误"; con.Close(); } } public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //生成随机数 Random r = new Random(); int randomNumber = r.Next(1000, 9999); // 在标签上显示验证码 lbCode.Text = randomNumber.ToString(); // 设置验证控件的验证值 cmpCode.ValueToCompare = randomNumber.ToString(); } } protected void ImageButton1_Click(object sender, ImageClickEventArgs e) { string filePath = null; if (Page.IsValid) { if (upphoto.HasFile) { if (CheckFileType(upphoto.FileName)) { filePath = "~/userphotos/" + upphoto.FileName; } else { Label24.Text = "图片格式不正确,必须是gif、png、jpg格式"; return; } } else { filePath = "~/userphotos/wlh.jpg"; } #region zhuce SqlConnection con = new SqlConnection(); con.ConnectionString = @"Data Source=.\SQLEXPRESS;Initial Catalog=ReportServer;database=zhangmu;Integrated Security=True"; con.Open(); SqlCommand cmd = new SqlCommand(); SqlParameter pausername = cmd.Parameters.Add("@username", SqlDbType.NChar, 10); SqlParameter pauserpwd = cmd.Parameters.Add("@userpwd", SqlDbType.NChar, 15); SqlParameter pauseremail = cmd.Parameters.Add("@useremail", SqlDbType.NChar, 20); SqlParameter pauserphotourl = cmd.Parameters.Add("@userphotourl", SqlDbType.NVarChar, 50); SqlParameter pauserdegree = cmd.Parameters.Add("@userdegree", SqlDbType.NChar, 10); pausername.Value = txtusername.Text; pauserpwd.Value = txtuserpwd.Text; pauseremail.Value = txtuseremail.Text; pauserphotourl.Value = filePath; pauserdegree.Value = "普通会员"; cmd.CommandText = "Select useremail from [User] where useremail=@useremail"; cmd.Connection = con; cmd.ExecuteNonQuery(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { con.Close(); lbname.Text = "邮箱已存在"; Label24.Text = ""; } else { lbname.Text = ""; con.Close(); con.Open(); cmd.CommandText = "insert into [User](username,userpwd,useremail,userphotourl,userdegree) values(@username,@userpwd,@useremail,@userphotourl,@userdegree)"; cmd.Connection = con; cmd.ExecuteNonQuery(); con.Close(); //Label24.Text = "恭喜你注册成功"; upphoto.SaveAs(MapPath(filePath)); MultiView1.ActiveViewIndex = 1; } #endregion //Label24.Text = "请选择图片"; } } bool CheckFileType(string fileName) { string ext = Path.GetExtension(fileName); switch (ext.ToLower()) { case ".gif": return true; case ".png": return true; case ".jpg": return true; case ".jpeg": return true; default: return false; } } protected void valPasswordLength_ServerValidate(object source, ServerValidateEventArgs args) { args.IsValid = true; if (args.Value.Length < 6 || args.Value.Length > 15) { args.IsValid = false; return; } } protected void Button1_Click(object sender, EventArgs e) { Response.Redirect("login.aspx"); } protected void Button2_Click(object sender, EventArgs e) { Response.Redirect("Default.aspx"); } } protected void Button2_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(); con.ConnectionString = @"Data Source=.\SQLEXPRESS;Initial Catalog=ReportServer;database=zhangmu;Integrated Security=True"; con.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = con; SqlParameter paCPI = cmd.Parameters.Add("@CPI", SqlDbType.NVarChar, 50); SqlParameter paCPIAmount = cmd.Parameters.Add("@CPIAmount", SqlDbType.NChar, 10); SqlParameter paCPIpatterns = cmd.Parameters.Add("@CPIpatterns", SqlDbType.NVarChar, 50); SqlParameter paConsumersite = cmd.Parameters.Add("@Consumersite", SqlDbType.NVarChar, 100); SqlParameter paConsumerex = cmd.Parameters.Add("@Consumerex", SqlDbType.Text); SqlParameter paCPItime = cmd.Parameters.Add("@CPItime", SqlDbType.DateTime); //SqlParameter paid = cmd.Parameters.Add("@id", SqlDbType.NVarChar, 50); SqlParameter paid = cmd.Parameters.Add("@useremail", SqlDbType.NVarChar, 50); paCPI.Value = txtCPI.Text; paCPIAmount.Value = txtCPIAmount.Text; paCPIpatterns.Value = ListCPIpatterns.SelectedValue.ToString(); paConsumersite.Value = txtConsumersite.Text; pa
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服