家庭理财管理系统论文.doc_第1页
家庭理财管理系统论文.doc_第2页
家庭理财管理系统论文.doc_第3页
家庭理财管理系统论文.doc_第4页
家庭理财管理系统论文.doc_第5页
免费预览已结束,剩余20页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录一、系统概述2(一)系统开发背景2(二)系统实现目标3(三)系统开发意义3(四)系统可行性分析3(五)需求分析4(六)系统具体功能分析4二、开发平台介绍5(一)Visual Studio 2008介绍5(二)SQL SERVER 2005介绍5三、系统模块设计6(一)系统模块总体规划。6(二)系统模块详细设计7四、数据库设计9(一)E-R模型图10(二)数据库关系模型图11(三)数据库表的设计11五、系统主要模块的设计与实现13(一)用户登录13(二)系统管理15(三)家庭成员管理16(四)收入管理18(五)支出管理20(六)统计管理22(七)修改密码23六、小结24参考文献25家庭理财管理系统(计算机信息管理101班,杨洋)摘要:随着社会的进步经济的发展,家庭收支的规模不断扩大,家庭理财需求急剧增加,理财管理对每一个家庭和个人理财都是一件十分重要的工作,理财管理的好,可以准确地反映家庭收支经营成果和业绩。我们有必要开发一个能满足家庭理财需求的系统,本次毕业设计项目为一个家庭理财管理系统。该系统主要有以下几个功能模块:用户登录、系统管理、家庭成员管理、收入管理、支出管理、统计管理、修改密码以及退出系统等八大模块。该家庭理财管理系统的开发使用Visual Studio 2008,采用面向对象的编程方法,实现了家庭理财的自动化和信息化。论文系统的分析了软件开发的背景及过程,首先介绍了软件的开发环境,其次介绍了本软件的详细设计过程:数据库的设计以及具体界面的设计和功能,最后对本软件开发过程中的问题进行了总结。通过论文可以了解到“家庭理财系统”的规划、设计过程,掌握系统的功能。关键词:家庭理财;统计;信息管理;Visual Studio 2008一、系统概述(一)系统开发背景美国的金融风暴吹醒了很多中产阶级家庭,他们不得已开始节约用每一分钱。在我周围也有一些人有记账的习惯。现在基本上每个家庭都用计算机了,用计算机记账更快捷。如果用Excel表记账,安全度会没有保障,而如果使用该系统,那么每个人有自己的账号,登录系统后就只能查看自己的记账情况。这里的记账包括各种收入和支出。随着家庭收支的规模不断扩大,家庭理财需求急剧增加,有关家庭理财的各种信息也成倍增长。面对庞大的信息量,有必要开发家庭理财管理系统来提高家庭收支管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速查询,从而减少管理方面的工作量。使计算机对家庭理财进行管理、具有手工管理所无法比拟的优点,例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高家庭理财管理的效率,也是家庭理财的科学化、正规化管理与先进科学技术接轨的重要条件。因此,开发这样种管理软件成为很有必要的事情。理财管理对每一个家庭和个人理财都是一件十分重要的工作,理财管理的好,可以准确地反映家庭收支经营成果和业绩。我们有必要开发一个能满足家庭理财需求的系统,本次毕业设计项目为一个家庭理财管理系统。该系统主要有以下几个功能模块:用户登录、用户管理、家庭成员管理、收入管理、支出管理、统计管理、修改密码以及退出系统等八大模块。以上这些功能基本上可以满足家庭理财的需要,但是相对专业的理财软件来说本系统的功能还不甚完善!(二)系统实现目标理财规划就是迈出了理财有道的第一步,并且在减少债务上也会有成效。家庭理财管理系统能为家庭收支提供一个专业管理家庭收支理财的模式。系统的目标是,建立一种用户同信息系统之间的关系,建立和维护一个高质量的管理信息系统,有助于家庭成员实现精神、教育、财务、娱乐等各方面的平衡,促进家庭财富的积累,使家庭财产免遭风险并实现家庭的幸福与和谐。(三)系统开发意义家庭理财管理是家庭管理的一个重要内容。随着家庭人员收入数量的增加,家庭人员的工资管理工作也变的越来越复杂。工资管理既涉及到家庭成员开销及帐户管理,同时也是家庭财务管理的重要组成部分。工资管理需要和家庭成员相联系,同时也统计一段时间的开支和收入等来生成家庭内每个人员的基本工资、津贴、医疗保险、保险费,实际发放工资和存储等。资金是组成家庭活动来源和生活保障的主要元素,资金的流动影响到人们生活质量的运作,家庭成员的工资是家庭资金管理的一个重要的组成部分,方便进一步对自己和家人的了解,提高生活水平、改善生活质量。家庭理财管理系统使用电脑安全保存、快速计算、全面统计,实现理财管理的系统化、规范化、自动化。(四)系统可行性分析经济可行性:随着计算机的大量普及,各种软件的开发成本越来越低,价格也越来越低。本系统也是这样,开发成本较低,只是需要一台配置一般的计算机。该系统运行时占计算机的资源也不多,但并不会因为开发成本低而造成系统功能性能的下降。本系统是一个拥有多种实用功能的家庭理财管理信息系统,它集成了家庭成员管理、收入管理、支出管理、密码管理等多种功能,具有较强的实用性和方便性。本系统的运行可以大大提高居民管理财务的效率,减少不必要的人力和物力,而且更是大大的提高家庭的工作效率,并可以使敏感文档更加安全。技术可行性:我们已学过VS2008和SQL SERVER,所以该系统主要运用这两大软件。法律可行性:该平台是作为毕业设计与商业无关,而且是自主设计,不会构成侵权,因此可行。运行可行性:该系统在Visual Studio平台下运行,并连接到数据库,这都是大家比较熟悉的,是可行的。(五)需求分析需求分析是在建立一个新的或改变一个现存的电脑系统时描写新系统的目的、范围、定义和功能时所要做的所有的工作。需求分析是系统开发中的一个关键过程。在这个过程中,系统分析员和软件工程师确定使用者的需要。只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法。将用户的口头要求转化成需求文档,用简洁明了的语句概括出的主要功能。本系统需要具备如下的功能:1家庭成员信息:包括增加、删除、修改、查看家庭成员记录。增加记录包括成员姓名、称谓、生日。2家庭收入信息:包括增加、修改、查看家庭收入记录。收入记录包括收入编号、收入来源,收入金额,收入时间,成员姓名等详细信息。其中,收入时间是本次收入实际发生的时间,收入来源是指为什么会有该收入。3家庭支出信息:包括增加、修改、查看家庭支出记录。支出记录包括支出编号、支出目的,支出金额,支出时间,成员姓名等详细信息。其中,支出时间是本次支出实际发生的时间,支出目的是指为什么会有该支出。4查看特定时间段内的收入记录和支出记录。5根据收入记录和支出记录,对此人的收入和支出进行统计。(六)系统具体功能分析根据需求分析,了解家庭具体的理财情况需要对系统进行功能上的初步规划和设计。首先系统要有保护功能,其次是添加修改删除,还能够对家庭的收入支出做出记录。能够对总体的数据进行统计和分析。对家庭的财务有指导作用。系统主要功能需求如下:(1)允许用户进行系统管理,包括密码修改和重新登录的功能。(2)用户可以进行基础数据管理,包括家庭成员管理,是对家庭信息表进行添加、修改、删除等操作,实现对数据库中家庭信息表的更新。(3)满足用户进行收入信息的管理,实现对收入信息表的添加、修改以及用户总收入金额的查询等操作,实现对收入信息表的更新。能够允许用户对日常收入信息进行按条件查询。(4)满足用户进行支出信息的管理,实现对支出信息表的添加、修改以及用户总支出金额的查询等操作,实现对支出信息表的更新。能够允许用户对日常支出信息进行按条件查询。(5)允许用户进行日常收支信息的统计管理,实现用户对某个时间段收支的查询以及统计,实现某个成员的收支总金额以及家庭的总收支和余额。能够允许用户对日常收支信息进行按条件查询。二、开发平台介绍(一)Visual Studio 2008介绍Visual Studio 2008 是微软公司集成化开发环境的最新版本,它集成了Windows Forms、WPF、WCF、Silverlight等.NET Framework3.5的新的开发特性,成为目前首选的集成化开发环境。Visual Studio 2008继承了以前版本的使用简单、功能强大及高效等特点。Visual C#是微软公司.NET Frame Work 框架中的一个重要组成部分,也是微软公司在.NET Framework平台上首推的程序开发语言。它集PASCAL愈发的严谨和JAVA面向对象的功能于一身,是一门非常优秀的面向对象的开发语言。C#开发WinForm是.NET开发平台中对Windows From的一种称谓。.NET为C#开发WinForm的应用程序提供了丰富的Class Library(类库)。这些WinForm类库支持RAD(快速应用程序开发),这些类库被封装在一个名称空间之中,这个名称命名空间就是System.Windows.Forms.在此名称空间中定义了许多类,在开发基于.NET的GUI应用程序的时候,就是通过继承和扩展这些类,才使得我们的程序有着多样的用户界面。(二)SQL SERVER 2005介绍SQL(Structured Query Language),结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。绝大多数流行的关系型数据库管理系统都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select, Insert, Update, Delete, Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。本系统主要采用SQL SERVER 2005,具有以下特性:1、Service的增强功能;2、数据库引擎增强功能;3、数据库访问接口方面的增强功能;4、Analysis Services的增强功能;5、Integration Services的增强功能;6、全文搜索的增强功能;7、Notification Services的增强功能;8、复制增强;9、Reporting Services的增强功能;10、工具和使用工具的增强功能;三、系统模块设计(一)系统模块总体规划。如图3-1所示:图3-1系统流程图(二)系统模块详细设计1、家庭成员管理:进入该系统后可以查看成员信息、添加成员信息、删除成员信和返回主界面。如图3-2所示:图3-2 家庭成员流程图2、收入管理:进入该系统后可以按成员姓名或收入时间查看收入记录、查看收入总记录、查看个人收入总记录、添加收入记录、修改收入记录、返回主界面。如图3-3所示:图3-3 收入管理流程图3、支出管理:进入该系统后可以按成员姓名或支出时间查看支出记录、查看支出总记录、查看个人支出总记录、添加支出记录、修改支出记录、返回主界面。如图3-4所示:图3-4 支出管理流程图4、修改密码:进入该系统后修改用户登录密码。如图3-5所示:图3-5 密码管理流程图5、统计管理:进入该系统后可以查询时间内的收支记录、查询一段时间内的收支总金额及余额、家庭全部收支总金额及余额、个人收支总金额及余额、返回主界面。如图3-6所示:图3-6 统计管理流程图四、数据库设计数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建议中的核心技术。由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,因此最佳设计不可能一蹴而就,而只能是一种“反复探寻,逐步求精”的过程,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。(一)E-R模型图实体-联系模型(简称E-R模型)是由P.P.Chen于1976年首先提出的。它提供不受任何DBMS约束的面向用户的表达方法,在数据库设计中被广泛用作数据建模的工具。E-R数据模型问世后,经历了许多修改和扩充。E-R模型在表示复杂实体和实体之间的复杂联系方面有较强的能力。除了可以明确表示二个实体集之间11、1N或MN的联系,还可以:(1) 表示三个以上的实体集之间的联系。(2) 表示一个实体集内部的联系。(3) 表示二个实体集之间的多种联系。本系统E-R模型图,如图4-1所示:图4-1 ER图(二)数据库关系模型图数据库关系图,并非是指描述数据库之间关系的图,而是指某数据库的表之间的关系图,即数据库关系图描述的是表之间的关系也就是平时所说的数据库ER图。至于连接查询, 也只是在查询时,用到多个表。这里所谓的表之间的关系是指在创建表时,确定的表之间的关系,包括一对一关系、一对多关系、多对多关系。而表的这些关系是通过主键和外键实现的。 本系统数据库关系图,如图4-2所示:图4-2 数据关系图(三)数据库表的设计数据库表的建立不仅是字段的建立,表与表之间的关系也不可或缺。主键、外键的关系需要谨慎建立。创建外键关系即是将各表与表之间联系起来。表与表之间一旦脱离了外键之间的关系而独立,那么系统之间的功能也将难以完成。经过分析,系统中建立了数据库名:Family,并创建了如下表:(1)用户信息表: 用户名(UserName),密码(PassWord)如表4-1所示:表4-1 用户信息表(Login)列名数据类型长度小数位标识主键允许空默认值说明UserNamenchar100是否用户名PassWordnchar100否密码FamilyNamenchar100是成员姓名(2)家庭成员表:成员姓名(FamilyName),称谓(Call),生日(Brithday)如表4-2所示:表4-2 家庭成员表(FamilyInfo)列名数据类型长度小数位标识主键允许空默认值说明FamilyNamenchar100是否成员姓名Callnchar100是称谓Brithdaydatetime80是生日(3)收入记录表:收入编号(IncomeId),收入来源(IncomeWay),收入金额(IncomeMoney),收入时间(IncomeDate),成员姓名(FamilyName)如表4-3所示:表4-3 收入记录表(IncomeInfo)列名数据类型长度小数位标识主键允许空默认值说明IncomeIdint40是是否收入编号IncomeWaynchar100是收入来源IncomeMoneyfloat30是收入金额IncomeDatedatetime80是(getdate()收入时间FamilyNamenchar100是成员姓名(4)支出记录表:支出编号(ExpendId),支出目的(ExpendWay),支出金额(ExpendMoney),支出时间(ExpendDate),成员姓名(FamilyName),如表4-4所示:表4-4 支出收入记录表(ExpendInfo)列名数据类型长度小数位标识主键允许空默认值说明ExpendIdint40是是否支出编号ExpendWaynchar100是支出目的ExpendMoneyfloat30是支出金额ExpendDatedatetime80是(getdate()支出时间FamilyNamenchar100是成员姓名五、系统主要模块的设计与实现(一)用户登录用户登录界面,如图5-1所示图5-1 登录界面用户输入正确的用户名和密码登录,跳转到系统管理主界面,取消退出系统实现代码:private void Btn_Login_Click(object sender, EventArgs e) if (this.txt_UserName.Text = ) MessageBox.Show(请输入用户名!); else if (this.txt_PassWord.Text = ) MessageBox.Show(请输入密码!); else string UserName = txt_UserName.Text.Trim(); string PassWord = txt_PassWord.Text.Trim(); Family_Financial_Management.BLL.UserInfo ui=new Family_Financial_Management.BLL.UserInfo (); Family_Financial_Management.Model.LoginInfo userr = ui.UserLogin(UserName); if (txt_UserName.Text.Trim() = userr.UserName.Trim() if (txt_PassWord.Text.Trim() != userr.PassWord.Trim() MessageBox.Show(密码错误,请重输入!); this.txt_PassWord.Text = ; else /MessageBox.Show(登录成功); MainForm frm = new MainForm(); frm.Show(); this.Hide(); else MessageBox.Show(登录失败); (二)系统管理系统管理界面,如图5-2所示图5-2 系统管理界面系统管理主界面该系统的核心部分与各个管理模块部分起到一个连接的作用,主要有以下几个内容:1、家庭成员管理:跳转到家庭成员管理界面。2、收入管理:跳转到收入管理界面。3、支出管理:跳转到支出管理界面。4、统计管理:跳转到统计管理界面。5、修改密码:跳转到用户修改密码界面。6、退出系统:退出该系统。(三)家庭成员管理家庭成员管理界面,如图5-3所示图5-3 家庭成员管理界面家庭成员信息管理模块,是对整个家庭成员信息进行操作以及管理,其中包含以下几个方面的内容:1、 查看成员:查看该家庭所有成员信息。2、 添加成员:给该家庭添加成员信息。3、 删除成员:删除该家庭的某个成员。4、 返回主界面:退回到系统管理主界面。实现代码:private void button2_Click(object sender, EventArgs e)/添加家庭成员 if (Txt_FamilyMember.Text.Trim() = ) MessageBox.Show(请输入家庭成员姓名); else if (Txt_Call.Text.Trim() = ) MessageBox.Show(请输入家庭成员称谓); else string FamilyName = this.Txt_FamilyMember.Text.Trim(); string Call = this.Txt_Call.Text.Trim(); DateTime Brithday = DateTime.Parse(this.dateTimePicker1.Text.ToString(); Family_Financial_Management.BLL.UserManage um = new Family_Financial_Management.BLL.UserManage(); int value = um.INSFamily_Member(FamilyName, Call, Brithday); if (value 0) MessageBox.Show(信息添加成功); else MessageBox.Show(信息添加失败!); (四)收入管理收入管理界面,如图5-4所示:图5-4 收入管理界面收入信息管理模块,是对整个家庭的收入情况进行操作和管理,其中包含以下几个方面的内容:1、查询收入记录:按时间或成员姓名查询收入记录。2、查询收入总记录:查询该家庭收入总金额。3、查询个人收入总记录:按成员姓名查询该成员收入总金额。4、添加收入记录:添加用户收入记录。5、修改收入记录:修改用户收入记录。6、返回主界面:退回系统管理主界面。实现代码:private void btn_Income_Ins_Click(object sender, EventArgs e) if (this.txt_Income_way.Text = ) MessageBox.Show(请输入收入来源!); else if (this.txt_Income_Money.Text = ) MessageBox.Show(请输入收入金额!); else if (this.txt_FamilyName.Text = ) MessageBox.Show(请输入用户名!); else string IncomeWay = this.txt_Income_way.Text.Trim(); float IncomeMoney = float.Parse(this.txt_Income_Money.Text.Trim(); DateTime IncomeDate = DateTime.Parse(this.date_Income_Date.Text.ToString().Trim(); string FamilyName = this.txt_FamilyName.Text.Trim(); Family_Financial_Management.BLL.UserManage um = new Family_Financial_Management.BLL.UserManage(); int value = um.InsertIncomeInfo(IncomeWay, IncomeMoney, IncomeDate, FamilyName); if (value 0) MessageBox.Show(信息添加成功, 用户信息添加); else MessageBox.Show(收入编号已存在,信息添加失败, 用户信息添加); (五)支出管理支出管理界面,如图5-5所示图5-5 支出管理界面支出信息管理模块,是对整个家庭的支出情况进行操作和管理,其中包含以下几个方面的内容:1、查询支出记录:按时间或成员姓名查询支出记录。2、查询支出总记录:查询该家庭支出总金额。3、查询支出收入总记录:按成员姓名查询该成员支出总金额。4、添加支出记录:添加用户支出记录。5、修改支出记录:修改用户支出记录。6、返回主界面:退回系统管理主界面。实现代码:private void button1_Click(object sender, EventArgs e)/按条件查看支出记录 string FamilyName = this.sel_FamilyName.Text.Trim(); string ExpendDate = this.dt_datetime.Text.Trim(); Family_Financial_Management.BLL.UserManage um = new Family_Financial_Management.BLL.UserManage(); DataTable dt = new DataTable(); if (radioButton1.Checked) dt = um .GetFamilyExpendInfo(FamilyName); if (dt.Rows.Count 0) this.dataGridView1.DataSource = um.GetFamilyExpendInfo (FamilyName); else MessageBox.Show(查无记录!); this.sel_FamilyName.Text = ; if (radioButton2.Checked) dt = um.GetFamilyExpend(Convert .ToDateTime (ExpendDate); if (dt.Rows.Count 0) this.dataGridView1.DataSource = um.GetFamilyExpend(Convert.ToDateTime(ExpendDate); else MessageBox.Show(今天没有支出!); (六)统计管理支出管理界面,如图5-6所示图5-6 统计管理界面统计管理模块,是对整个家庭的收入支出情况进行统计管理,其中包含以下几个方面的内容:1、 时间段收支查询:查询该时间段收支记录。2、 时间段收支管理:显示改时间段收支总金额以及所剩余额。3、 收支总记录:查询该家庭收支总金额以及所剩余额。4、 个人收支总记录:查询某个成员收支总金额以及所剩余额5、 返回主界面:退回系统管理主界面。实现代码:private void btn_IncomeSel_Click(object sender, EventArgs e) DateTime date1 = DateTime.Parse(this.date1.Text); DateTime date2 = DateTime.Parse(this.date2.Text); Family_Financial_Management.BLL.UserManage us = new Family_Financial_Management.BLL.UserManage(); DataTable dt = new DataTable(); dt = us.GetAllIncome(Convert.ToDateTime(date1), Convert.ToDateTime(date2); if (dt.Rows.Count 1) this.dataGridView1.DataSource = us.GetAllIncome(Convert.ToDateTime(date1), Convert.ToDateTime(date2); else MessageBox.Show(近期没有收入记录!); (七)修改密码修改密码界面,如图5-7所示:图5-7 修改密码界面修改用户登录的密码实现代码:private void Bbtn_UpdPwd_Click(object sender, EventArgs e) string PassWord = this.txt_NewPwd.Text.Trim(); string UserName = Login.UserName; Family_Financial_Management.BLL.UserManage um = new Family_Financial_Management.BLL.UserManage(); int value = um.ChangeUserPwdInfo(PassWord); if (txt_OldPwd.Text != ) if (txt_NewPw

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论