家庭财务管理.docx
- 文档编号:7521370
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:21
- 大小:134.54KB
家庭财务管理.docx
《家庭财务管理.docx》由会员分享,可在线阅读,更多相关《家庭财务管理.docx(21页珍藏版)》请在冰豆网上搜索。
家庭财务管理
家庭财务管理系统设计
1.课程设计的目的
伴随着信息时代的到来,信息的种类、数量越来越多,容量也越来越大,在竞争越来越激烈的今天,随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
而使用计算机对家庭财务进行管理,已经成为一种趋势,与传统的手工式家庭财务管理相比,利用计算机软件对家庭财务实行管理具有检索迅速、查找方便、可行性高、存储量大、保密性好、寿命长、成本低等优点。
家庭理财管理系统正是在这种环境下应运而生,其开发的整体任务是实现家庭财务管理的系统化、规范化、科学化,从而达到有效管理家庭财务的目的。
2.设计方案论证
2.1设计思想
家庭理财系统,即FamilyConductFinancialTransactionsSystem。
它利用计算机应用技术,使家庭理财逐步信息化,从而形成由家庭成员与计算机共同构成服务于家庭的人机信息财务管理系统。
使用计算机对家庭财务进行管理,已经成为一种趋势,与传统的手工式家庭财务管理相比,利用计算机软件对家庭财务实行管理具有检索迅速、查找方便、可行性高、存储量大、保密性好、寿命长、成本低等优点。
家庭理财管理系统正是在这种环境下应运而生,其开发的整体任务是实现家庭财务管理的系统化、规范化、科学化,从而达到有效管理家庭财务的目的。
2.2设计方法
家庭财务管理系统软件是为用户进行家庭成员的收支构成及信息管理进行辅助的应用软件、功能需求描述如下:
(1)用户登录:
系统获取的家庭成员用户名和密码判断该家庭成员能否成功登录系统,并且当用户登录后根据权限判断该家庭成员是管理员还是普通成员,可以使用哪些对应的功能。
普通级别的用户只有浏览等权限而不能进行实质性的改动。
(2)给家庭成员提供功能选择界面:
不同级别的家庭成员对应不同的功能选择界面.功能选择界面包括输入功能选项、调用相应程序两大需求。
管理员和普通用户对应的功能选择界面是不同的。
(3)管理收支信息:
用户根据提示输入家庭成员的姓名、各项财务信息,如收入、支出、合计。
(4)增加家庭成员收支信息:
可在原有收支信息文件的基础上增加新的家庭成员财务信息记录,并继续保存至数据库。
(5)删除家庭成员收支信息:
提示用户输入要进行删除操作的家庭成员,如果在文件中有该家庭成员的收支信息存在,则将该序号所对应的姓名、序号、各种收入信息等在对应项目中加以删除。
(6)修改家庭成员收支信息:
提示用户输入要进行修改操作的家庭成员,如果有该家庭成员的收支信息存在,则提示用户输入该序号对应的家庭成姓名、收入和支出构成等需要修改的选项,并将修改结果存储于数据库。
(7)查询家庭成员财务情况:
分为根据家庭成员查询和项目查询两个具体需求,选择其中一项用户输入要查询家庭成员信息或项目,如果在数据库中有对应的家庭成员财务信息,则逐项列出对应家庭成员的收支状况。
(8)家庭成员管理:
家长对普通家庭成员的管理也需要进行家庭成员的创建、增加、删除、修改和浏览。
每当有家庭成员登录系统时,系统都会根据数据库中的用户名和密码进行核实判断,用户才能够顺得登录。
家长还具有增加新家庭成员的功能。
当某些家庭成员不再使用系统时,还可进行删除操作,并且家长具有修改家庭成员权限的功能。
2.3程序流程图
图1内部功能模块图
2.4系统工作原理
本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。
只要用户能连上Internet,便可以在任何时间、任何地点使用。
系统工作原理图如图2所示。
图2系统工作原理图
2.5数据库设计
2.5.1数据库需求分析
数据库的设计通常是以一个已经存在的数据库管理系统为基础的,常用的数据库管理系统有MYSQL,SQLServer,Oracle等。
我采用了SQLserver2005数据库管理系统,建立的数据库名为FinancialManagement。
2.5.2数据库结构设计
主要用于保存家庭人员的基本信息,该表的结构如表1所示
表1Users表(家庭人员信息表)
列名
数据类型
长度
允许空
Id
Int
4
否
Name
Nvarchar
50
是
Pwd
Nvarchar
50
是
RealName
Navarre
50
是
主要用于保存记账类型的基本信息,该表的结构如表2所示
表2Type表(记账类型信息表)
列名
数据类型
长度
允许空
Id
Int
4
否
Name
Nvarchar
50
是
Type
Nvarchar
50
是
主要用于收入记账的基本信息,该表的结构如表3所示
表3F_shouru表(财务信息表)
列名
数据类型
长度
允许空
Id
Int
4
否
Name
Nvarchar
50
是
Type
Nvarchar
50
是
Addtime
Datetime
8
是
UserName
Nvarchar
50
是
AddMoney
Float
8
是
Ds
Text
16
是
主要用于支出记账的基本信息,该表的结构如表4所示
表4F_zhichu表(财务信息表)
列名
数据类型
长度
允许空
Id
Int
4
否
Name
Nvarchar
50
是
Type
Nvarchar
50
是
Addtime
Datetime
8
是
UserName
Nvarchar
50
是
AddMoney
Float
8
是
Ds
Text
16
是
主要用于保存数据类型的基本信息,该表的结构如表5所示
表5Data表(数据类型信息表)
列名
数据类型
长度
允许空
Id
Int
4
否
Path
Nvarchar
500
是
Addtime
Addtime
50
是
2.6系统E-R图
家庭财务管理系统如图3所示
图3E-R图
2.7处理流程设计
2.7.1系统操作流程
如图4所示:
图4系统操作流程
2.7.2数据增加流程
添加信息时,编号字段由系统自动生成,且不能修改,其他信息由用户输入,之后对数据进行合法判断,合法则写入保存至数据库,不合法则重新输入数据。
数据增加流程图:
如下图5所示。
图5数据增加流程图
2.7.3数据修改流程
在修改信息时,先选中一条待修改的记录,然后直接输入数据,判断合法性,合法则保存至数据库,不合法重新输入。
数据修改流程图如下图6所示。
图6数据修改流程图
2.7.4数据删除流程
当用户选定一条记录时,单击删除按钮,会提示用户是否确定删除,然后删除数据库相关内容。
数据删除流程图如下图7所示。
图7数据删除流程图
3功能模块设计
3.1用户登陆模块
系统的登录界面,需要家庭成员才能登录进入使用系统,当输入错误的帐号、密码会有提示框提醒重新输入。
如图8所示:
图8用户登录模块
主要代码如下:
privatevoidchkUser()
{
if(TxtUserName.Text==""&&TxtPassword.Text=="")
{
Alert.AlertAndRedirect("没有输入账号和密码!
","Login.aspx");
}
else
{
dr=data.GetDataReader("select*from[Users]whereName='"+TxtUserName.Text.Trim()+"'andPwd='"+TxtPassword.Text.Trim()+"'");
if(dr.Read())
{
Session["User"]=dr["Name"].ToString();
Response.Redirect("Default.aspx");
}
else
{
Alert.AlertAndRedirect("账号或者密码不对请重新登陆!
","Login.aspx");
}
}
}
protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse)
{
chkUser();
}
protectedvoidImageButton2_Click(objectsender,ImageClickEventArgse)
{
TxtPassword.Text="";
TxtUserName.Text="";
}
protectedvoidLinkButton1_Click(objectsender,EventArgse)
{
Response.Redirect("Login.aspx");
}
3.2账目管理模块
进入账簿管理可以对录入的收支项目进行查看、修改、删除、新增和查找管理账目信息。
如下图9所示:
图9账目管理模块
主要代码如下:
protectedvoidgvFilms_RowDeleting(objectsender,GridViewDeleteEventArgse)
{
SqlHelpermydata=newSqlHelper();
stringID=gvFilms.DataKeys[e.RowIndex].Values[0].ToString();
try
{
mydata.RunSql("deletefromF_Moneywhereid='"+ID+"'");
Label4.Text="删除成功!
";
gvFilms.EditIndex=-1;
Get_Article();
}
catch
{
Label4.Text="删除失败!
";
}
}
privatevoidGet_Article()
{
try
{
gvFilms.DataSource=GetCodeBy(0);
gvFilms.DataBind();
}
catch
{
}
}
protectedvoidgvFilms_PageIndexChanging(objectsender,GridViewPageEventArgse)
{
gvFilms.PageIndex=e.NewPageIndex;
Get_Article();
}
protectedvoidgvFilms_RowDataBound(objectsender,GridViewRowEventArgse)
{
//鼠标移动变色
if(e.Row.RowType==DataControlRowType.DataRow)
{
//当鼠标放上去的时候先保存当前行的背景颜色并给附一颜色
e.Row.Attributes.Add("onmouseover","currentcolor=this.style.backgroundColor;this.style.backgroundColor='#f6f6f6',this.style.fontWeight='';");
//当鼠标离开的时候将背景颜色还原的以前的颜色
e.Row.Attributes.Add("onmouseout","this.style.backgroundColor=currentcolor,this.style.fontWeight='';");
}
//单击行改变行背景颜色
if(e.Row.RowType==DataControlRowType.DataRow)
{
e.Row.Attributes.Add("onclick","this.style.backgroundColor='#f6f6f6';this.style.color='buttontext';this.style.cursor='default';");
}
}
publicDataSetGetCodeBy(intiCount)
{
SqlHelperdate=newSqlHelper();
stringstrTop="";
if(iCount>1)
{
strTop="top"+iCount.ToString();
}
stringsql="select"+strTop+"*from[F_Money]";
SqlConnectioncon=newSqlConnection(SqlHelper.connstring);
SqlCommandcmd=newSqlCommand(sql,con);
SqlDataAdapterda=newSqlDataAdapter(cmd);
DataSetds=null;
try
{
con.Open();
ds=newDataSet();
da.Fill(ds);
}
catch(SqlExceptionex)
{
throwex;
}
catch(Exceptionex)
{
throwex;
}
finally
{
con.Close();
}
returnds;
}
protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse)
{
Response.Redirect("AddMoney.aspx");
}
protectedvoidImageButton2_Click(objectsender,ImageClickEventArgse)
{Response.Redirect("Search.aspx");}
3.3添加账目模块
家庭成员登陆后可以进入账簿管理,在这里可以添加账目信息,包括收支的项目、收支类型、收支成员类型、收支的金额和可以对这笔记账进行备注。
如图10所示:
图10添加模块
主要代码如下:
Alertalert=newAlert();
SqlHelperdata=newSqlHelper();
publicstringDownPath;
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!
IsPostBack)
{
Type();
Users();
}
}
privatevoidType()
{
drpParentItem.DataSource=data.GetDataReader("select*fromType");
drpParentItem.DataTextField="name";
drpParentItem.DataValueField="id";
drpParentItem.DataBind();
}
privatevoidUsers()
{
drpUserName.DataSource=data.GetDataReader("select*fromUsers");
drpUserName.DataTextField="RealName";
drpUserName.DataValueField="id";
drpUserName.DataBind();
}
protectedvoidIbnOk_Click(objectsender,ImageClickEventArgse)
{
data.RunSql("insertintoF_Money(name,Type,UserName,AddMoney,Ds)values('"+drpParentItem.SelectedItem.Text+"','"+drpSubItem.SelectedItem.Text+"','"+drpUserName.SelectedItem.Text+"','"+TxtMoney.Text+"','"+TxtStatement.Text+"')");
Alert.AlertAndRedirect("添加成功!
","MangerZb.aspx");
}
protectedvoidIbnCanel_Click(objectsender,ImageClickEventArgse)
{
Response.Redirect("MangerZb.aspx");
}
3.4查找账目信息
家庭成员登陆后进入账簿管理,可以按时间对账目信息进行查询。
如图11所示:
图11查找模块
主要代码如下:
protectedvoidIbnOk_Click(objectsender,ImageClickEventArgse)
{
stringbeingtime=txttime1.Value;
stringendtime=Text1.Value;
Response.Redirect("SearchList.aspx?
b="+beingtime+"&e="+endtime);
}
protectedvoidIbnCanel_Click1(objectsender,ImageClickEventArgse)
{
Response.Redirect("MangerZb.aspx");
}
3.5家庭人员管理模块
家庭成员登陆后,进入家庭成员管理模块,对现有的家庭成员进行添加、删除和修改。
如图12所示:
图12家庭成员管理模块
主要代码如下:
protectedvoidImageButton2_Click1(objectsender,ImageClickEventArgse)
{
Response.Redirect("AddUser.aspx");
}
protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse)
{
data.RunSql("insertintoUsers(Pwd,Name,RealName)values('"+TextBox4.Text+"','"+TextBox3.Text+"','"+TextBox2.Text+"')");
Alert.AlertAndRedirect("添加成功!
","UserList.aspx");
}
3.6账目类别信息管理
家庭成员登陆后,进入收支项目管理可以对所需要的项目进行添加、修改和删除账目类别信息。
如图13所示:
图13收支项目管理模块
主要代码如下:
protectedvoidInitData()
{
SqlHelpermydata=newSqlHelper();
GridView1.DataSource=mydata.GetDataReader("select*fromType");
GridView1.DataBind();
}
//GridView控件RowDeleting事件
protectedvoidGridView1_RowDeleting(objectsender,GridViewDeleteEventArgse)
{
SqlHelpermydata=newSqlHelper();
stringID=GridView1.DataKeys[e.RowIndex].Values[0].ToString();
try
{
mydata.RunSql("deletefromTypewhereid='"+ID+"'");
Label4.Text="删除成功!
";
GridView1.EditIndex=-1;
InitData();
}
catch
{
Label4.Text="删除失败!
";
}
}
3.7账目统计信息
家庭成员登陆后,进入报表统计模块,可以查询现有账目信息,可以导出Excel保存和打印所需要的数据。
如图14所示:
图14账目统计模块
主要代码如下:
publicDataSetGetCodeBy(intiCount)
{
SqlHelperdate=newSqlHelper();
stringstrTop="";
if(iCount>1)
{
strTop="top"+iCount.ToString();
}
stringsql="select"+strTop+"*from[F_Money]";
SqlConnectioncon=newSqlConnection(SqlHelper.connstring);
SqlCommandcmd=newSqlCommand(sql,con);
SqlDataAdapterda=newSqlDataAdapter(cmd);
DataSetds=null;
try
{
con.Open();
ds=newDataSet();
da.Fill(ds);
}
catch(SqlExceptionex)
{throwex;}
catch(Exceptionex)
{throwex;}
finally
{con.Close();}
returnds;
}
privatevoidDisableControls(Controlgv)
{
LinkButtonlb=newLinkButton();
Literall=newLiteral();
stringname=String.Empty;
for(inti=0;i { if(gv.Controls[i].GetType()==typeof(LinkButton)) { l.Text=(gv.Controls[i]asLinkButton).Text; gv.Controls.Remove(gv.Controls[i]); gv.Controls.AddAt(i,l); } elseif(gv.Controls[i].GetType()==typ
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 家庭 财务管理
![提示](https://static.bdocx.com/images/bang_tan.gif)