UML家庭理财管理系统课程设计说明书.docx

上传人:b****3 文档编号:3782865 上传时间:2023-05-06 格式:DOCX 页数:40 大小:692.94KB
下载 相关 举报
UML家庭理财管理系统课程设计说明书.docx_第1页
第1页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第2页
第2页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第3页
第3页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第4页
第4页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第5页
第5页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第6页
第6页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第7页
第7页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第8页
第8页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第9页
第9页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第10页
第10页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第11页
第11页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第12页
第12页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第13页
第13页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第14页
第14页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第15页
第15页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第16页
第16页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第17页
第17页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第18页
第18页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第19页
第19页 / 共40页
UML家庭理财管理系统课程设计说明书.docx_第20页
第20页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

UML家庭理财管理系统课程设计说明书.docx

《UML家庭理财管理系统课程设计说明书.docx》由会员分享,可在线阅读,更多相关《UML家庭理财管理系统课程设计说明书.docx(40页珍藏版)》请在冰点文库上搜索。

UML家庭理财管理系统课程设计说明书.docx

UML家庭理财管理系统课程设计说明书

 

《数据库原理及应用》课程设计

设计报告

院系

班级

学号

姓名

指导教师

题目

 

12

14

摘要:

家庭理财系统,即FamilyConductFinancialTransactionsSystem。

它利用计算机应用技术,使家庭理财逐步信息化,从而形成由家庭成员与计算机共同构成服务于家庭的人机信息财务管理系统。

随着计算机发展,家庭理财系统已经成为很多家庭财务管理的一个重要途径。

计算机的最大优点在于利用它能够高效准确地进行财务信息管理。

使用计算机进行信息财务管理,不仅提高了工作效率,而且大大的提高了其安全性。

家庭财务管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。

对于前者要求建立起数据一致性和完整性强、数据安全性好的库。

而对于后者则要求应用程序功能完备,易使用等特点。

关键字:

家庭理财;数据库;

Summary:

Thefamilyfinancialmanagementsystem,namelytheFamilyConductFinancialTransactionsSystem. Itusescomputertechnologytomakefamilyfinancialmanagementstepbystepinformation,toformthecomputerbyfamilymemberstogetherconstitutethehuman-computerinformationservicesinthefamilyfinancialmanagementsystem. Withthecomputerdevelopment,familyfinancialmanagementsystem,manyfamiliesinfinancialmanagementhasbecomeanimportantway. Thebiggestadvantageisthatthecomputercanuseittocarryoutefficientandaccuratefinancialinformationmanagement. Financialmanagementofinformationusingcomputersnotonlyimprovetheworkingefficiency,butalsogreatlyimproveitssafety.Familyfinancialmanagementsystemisatypicalmanagementinformationsystem(MIS),whichmainlyincludestheestablishmentandmaintenanceofback-enddatabaseandfront-endapplicationdevelopmentaspects. Requestfortheestablishmentofdataconsistencyandintegrity,datasecurity,agoodlibrary. Forthelatterapplicationpowerful,easytouseandsoon.

Keywords:

familyfinancialmanagement;database;

1家庭理财管理

1.1需求分析

长期以来人们使用传统的大脑记忆方式来管理家里的日常消费,这非常麻烦,靠大脑的记忆,只能记住很短的时间,所以常常为钱不知去向而烦恼。

而有时常常会想不起一些消费记录,家里的理财很是混乱。

综上所述,靠人脑记忆理财存在很大的不足。

而家庭理财系统则为家庭解决了上述问题,提供了快速,直观明了的理财过程,方便使用。

家庭理财管理系统是针对用户的要求,用计算机对自己的财务的收入、支出以及相关的各种信息,进行记录、修改、添加、删除而设计的一种现代化管理软件。

通过需求分析,本系统需要具有以下功能:

(1)要求系统具有良好的人机界面。

(2)能够完善家庭理财管理系统的各项功能,能成功的对用户各种信息进行管理。

(3)查询、修改、删除、添加数据方便,数据的安全性和可靠性好。

(4)系统最大限度地实现了易维护性和易操作性。

1.2数据库概念结构设计

1.2.1概念结构设计

建立系统数据模型的主要工具是实体-联系图,即E-R图。

E-R图的图形符号约定如表1-1所示:

表1-1E—R图的图形符号

图形符号

说明

表示实体集合

表示属性

表示关系集

将属性连接到实体集或将实体集连接到联系集

系统的E-R图,如图1-1所示,每个实体及属性如下:

家庭成员:

姓名、称呼、密码、出生日期

收入记录:

收入项目编号、收入项目名称、收入人员、收入金额、收入日期

支出记录:

支出项目编号、支出项目名称、支出人员、支出金额、支出日期

银行信息:

银行账号、银行名称、开户人、存款金额、开户日期

 

家庭成员关系E-R图

 

收入记录E-R图

 

支出记录E-R图

 

银行信息E-R图

 

图1-1系统总E-R图

1.2.2数据库设计

系统数据库名为:

财务管理,数据库中包括:

家庭成员表(member),收入记录表(income),支出记录表(outcome),银行信息表(bank),各个表的数据结构如下表1-1~表1-4所示。

表1-1家庭成员表(member)的数据结构

字段名

类型

描述

name

nchar(8)

姓名

call

nchar(10)

称呼

pwd

nchar(10)

密码

birth

nchar(20)

出生日期

表1-2收入记录表(income)的数据结构

字段名

类型

描述

inproID

smallint

收入项目编号

inproName

nchar(15)

收入项目名称

call

nchar(10)

收入人员

inmoney

int

收入金额

indata

nchar(15)

收入日期

表1-3支出记录表(outcome)的数据结构

字段名

类型

描述

outproID

smallint

支出项目编号

outproName

nchar(15)

支出项目名称

call

nchar(10)

支出人员

outmoney

int

支出金额

outdata

nchar(15)

支出日期

 

表1-4银行信息表(bank)的数据结构

字段名

类型

描述

bankID

nchar(15)

银行账号

bankName

nchar(20)

银行名称

call

nchar(10)

开户人

money

int

存款金额

data

nchar(15)

开户日期

表与表之间的关系:

 

图1-2表与表的关系图

1.3系统功能模块设计

1.3.1系统功能模块划分

具体说来,要求本系统具有以下几个功能模块:

用户登录模块、用户管理模块、收入模块、支出模块、密码管理模块、账目统计模块、报表输出模块以及查询模块。

各模块具体的需求描述如下:

(1)用户登录模块

用户登录:

验证用户的信息是否合法,以及验证用户是否为系统的合法用户。

(2)用户管理模块

在系统中主要包括添加用户、删除用户、更改用户、用户修改密码。

(3)收支输入模块

主要实现对收入和支出记录的添加、删除、修改。

(6)报表输出模块

主要实现对收入、支出记录的输出及打印。

(7)查询模块

主要实现对收入、支出记录按时间按类型查询、消费提醒(实际消费额快接近预消费额)、收入、支出记录的输出。

1.3.2系统功能模块图

图1-3系统功能模块结构图

1.4系统详细设计

启动VisualStudio2008,选择“文件”|“新建”|“项目”即命令,建立家庭理财管理应用程序。

下面介绍各窗体的程序设计。

1.4.1登录界面设计

登录界面的作用就是判断用户身份的合法性。

输入用户名和密码,若用户名、密码正确,单击[登录系统]按钮,即可进入主界面,否则不能进入。

登录界面效果,如图1-4所示:

 

图1-4登录界面

该窗体中设计了2个TextBox控件和两个Button控件。

各个控件的名称、作用如表4-7所示:

表1-5登录界面主要控件设计

控件类型

控件名称

作用

TextBox

textBox1

用户名

textBox2

用户密码

Button

loginbtn

登录系统

exitbtn

退出系统

●登录界面部分代码:

privatevoidloginbtn_Click_1(objectsender,EventArgse)//登录

{

SqlConnectioncn=newSqlConnection("datasource=.;InitialCatalog=财务管理;IntegratedSecurity=true;");

try{

cn.Open();

SqlCommandcmd=newSqlCommand("selectname,pwdfrommemberwherename='"+textBox1.Text+"'andpwd='"+textBox2.Text+"'",cn);

cmd.ExecuteNonQuery();

MainFormform2=newMainForm(textBox1.Text);

form2.Show();

this.Hide();

}

catch(SqlExceptionex){

MessageBox.Show("用户名或密码错误!

请检查!

"+ex.Message);

}

finally{

cn.Close();

}

}

当单击“退出系统”按钮时,触发exitbtn_Click事件,关闭当前窗体。

代码如下:

privatevoidexitbtn_Click_1(objectsender,EventArgse)//退出

{

this.Close();

}

另外,在登录界面出现前,Login窗体设置为消隐,代码如下:

privatevoidtimer1_Tick(objectsender,EventArgse)

{

this.Opacity-=0.03;

if(this.Opacity==0){

timer1.Enabled=false;

this.FormBorderStyle=FormBorderStyle.Sizable;

this.Opacity=1;

label1.Visible=true;

label2.Visible=true;

label3.Visible=true;

textBox1.Visible=true;

textBox2.Visible=true;

loginbtn.Visible=true;

exitbtn.Visible=true;

}

}

在窗体加载时,启动Timer,代码如下:

privatevoidForm1_Load(objectsender,EventArgse)

{

timer1.Enabled=true;

}

1.4.2系统主界面

通过身份验证后,进入系统主界面,如图1-5所示,该主界面的作用就是显示用户所拥有的所有的功能菜单项,当用户单击相应的菜单项时,打开对应的模块窗口。

图1-5系统主界面

●系统主界面部分代码:

1、在主界面中选择【系统管理】|【修改密码】命令菜单,就会触发修改密码ToolStripMenuItem_Click事件,进入修改密码界面。

代码如下:

privatevoid修改密码ToolStripMenuItem1_Click(objectsender,EventArgse)

{

ModifyPwdform3=newModifyPwd(name);

form3.Show();

}

2、在主界面中选择【重新登录】命令菜单,就会触发重新登录ToolStripMenuItem_Click事,进入登录界面。

代码如下:

privatevoid重新登录ToolStripMenuItem2_Click(objectsender,EventArgse)

{

Loginf1=newLogin();

f1.Show();

this.Close();

}

3、在管理员主界面中选择【退出系统】命令菜单,就会触发退出系统ToolStripMenuItem_Click事件,整个程序退出。

代码如下:

privatevoid退出系统ToolStripMenuItem2_Click(objectsender,EventArgse)

{

this.Close();

}

1.4.3系统管理

1.4.3.1修改密码

在主界面中选择【系统管理】|【修改密码】命令菜单,即可进入修改密码界面,如图1-6所示。

该窗体中需要提供的信息包括:

用户名、密码、确认密码。

信息录入后单击“确认”按钮,代码如下:

 

图1-6修改密码界面

在该窗体中主要设计了4个TextBox控件、2个Button控件。

各个控件的名称、作用如表5-8所示。

表1-6添加管理员界面控件设计

控件类型

控件名称

作用

TextBox

textBox1

用户名

textBox2

原密码

textBox3

用户新密码

textBox4

确认密码

Button

Button1

确认

Button2

取消

1、单击“确认”按钮时触发button1_Click事件,第一步判断原密码是否正确;若正确,第二步判断两次密码是否相同;若相同则修改密码。

代码如下:

privatevoidbutton1_Click(objectsender,EventArgse)//确认

{

Stringpwd="";

SqlConnectioncn=newSqlConnection("datasource=.;InitialCatalog=财务管理;IntegratedSecurity=true;");

try{

cn.Open();

SqlCommandcheckCmd=newSqlCommand("selectpwdfrommemberwherename='"+textBox1.Text+"'",cn);

SqlDataReaderdr=checkCmd.ExecuteReader();

if(dr.Read()){

pwd=dr[0].ToString();

}

if(textBox2.Text!

=pwd.Trim()){

MessageBox.Show("原密码输入错误!

请重新输入!

");

}

if(textBox2.Text==""||textBox3.Text==""||textBox4.Text==""){

MessageBox.Show("警告:

密码不能为空!

");

}

if(textBox3.Text!

=textBox4.Text){

MessageBox.Show("警告:

两次输入的密码必须相同!

");

}

}

catch(SqlExceptionex){

MessageBox.Show(ex.Message);

}

finally{

cn.Close();

}

try{

cn.Open();

SqlCommandmodifyCmd=newSqlCommand("updatemembersetpwd='"+textBox3.Text+"'wherename='"+textBox1.Text+"'",cn);

modifyCmd.ExecuteNonQuery();

MessageBox.Show("修改成功!

");

this.Close();

}

catch(SqlExceptionex){

MessageBox.Show("修改失败!

"+ex.Message);

}

finally{

cn.Close();

}

}

2、单击“取消”按钮时,将触发cancel_Click事件,关闭当前窗体。

代码如下:

privatevoidcancelbtn_Click(objectsender,EventArgse)

{

this.Close();

}

1.4.4基础数据管理

1.4.4.1家庭成员管理

在主界面中选择【基础数据管理】|【家庭成员管理】命令菜单,即可进入家庭成员管理界面,如图1-7所示。

 

图1-7家庭成员管理

●家庭成员添加界面主要代码:

1、窗体加载时触发Form4_Load事件,通过该事件向dataGridView控件中填入member表的内容,代码如下:

voiddisplay()

{

ds.Clear();

SqlCommandcmd=newSqlCommand("selectname'姓名',pwd'密码',call'称呼',birth'出生日期'frommember",cn);

da=newSqlDataAdapter(cmd);

da.Fill(ds,"member");

dataGridView1.DataSource=ds.Tables["member"];

}

privatevoidForm4_Load(objectsender,EventArgse)

{

display();

cn.Open();

channametxb.DataBindings.Add("Text",ds.Tables["member"],ds.Tables["member"].Columns["姓名"].ColumnName);

chanpwdtxb.DataBindings.Add("Text",ds.Tables["member"],ds.Tables["member"].Columns["密码"].ColumnName);

chancalltxb.DataBindings.Add("Text",ds.Tables["member"],ds.Tables["member"].Columns["称呼"].ColumnName);

chanbirtxb.DataBindings.Add("Text",ds.Tables["member"],ds.Tables["member"].Columns["出生日期"].ColumnName);

delnametxb.DataBindings.Add("Text",ds.Tables["member"],ds.Tables["member"].Columns["姓名"].ColumnName);

delpwdtxb.DataBindings.Add("Text",ds.Tables["member"],ds.Tables["member"].Columns["密码"].ColumnName);

delcalltxb.DataBindings.Add("Text",ds.Tables["member"],ds.Tables["member"].Columns["称呼"].ColumnName);

delbirtxb.DataBindings.Add("Text",ds.Tables["member"],ds.Tables["member"].Columns["出生日期"].ColumnName);

cn.Close();

}

2、点击“添加“按钮时,触发addbtn_Click事件,向member表中添加一条信息,并在dataGridView中显示,代码如下:

privatevoidaddbtn_Click(objectsender,EventArgse)//添加

{

Stringstr=String.Format("insertintomembervalues('{0}','{1}','{2}','{3}')",addnametxb.Text.Trim(),addcalltxb.Text.Trim(),addpwdtxb.Text.Trim(),addbirtxb.Text.Trim());

SqlCommandcmd=newSqlCommand(str,cn);

try{

cn.Open();

cmd.ExecuteNonQuery();

display();

MessageBox.Show("添加成功!

");

}

catch(SqlExceptionex){

MessageBox.Show(ex.Message);

}

finally{

cn.Close();

}

}

3、点击“修改“按钮时,触发modifybtn_Click事件,修改member表中的某条信息,并在dataGridView中显示,代码如下:

privatevoidmodifybtn_Click(objectsender,EventArgse)//修改

{

Stringstr=String.Format("updatemembersetcall='"+chancalltxb.Text.Trim()+"',pwd='"+chanpwdtxb.Text.Trim()+"',birth='"+chanbirtxb.Text.Trim()+"'wherename='"+channametxb.Text.Trim()+"'");

SqlCommandcmd=newSqlCommand(str,cn);

try{

cn.Open();

cmd.ExecuteNonQuery();

display();

MessageBox.Show("修改成功!

");

}

catch(SqlExceptionex){

MessageBox.Show(ex.Message);

}

finally{

cn.Close();

}

}

4、点击“删除“按钮时,触发deltn_Click事件,从me

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2